4 #ifndef FACE_SDK_FACE_H
5 #define FACE_SDK_FACE_H
19 const float UNKNOWN_CONFIDENCE = .0f;
20 const uint32_t UNKNOWN_VERSION = 0;
31 virtual ~
face() =
default;
35 virtual float confidence()
const = 0;
39 virtual int32_t x()
const = 0;
43 virtual int32_t y()
const = 0;
47 virtual int32_t width()
const = 0;
51 virtual int32_t height()
const = 0;
55 virtual std::shared_ptr<face_sdk::image> img()
const = 0;
59 virtual std::shared_ptr<face_sdk::image> cropped_image()
const = 0;
63 virtual bool has_landmarks()
const = 0;
67 virtual std::vector< std::tuple<int32_t, int32_t> > landmarks()
const = 0;
71 virtual bool is_out_of_bounds_set()
const = 0;
76 virtual bool out_of_bounds()
const = 0;
80 virtual uint32_t version()
const = 0;
83 typedef std::vector< std::shared_ptr<face_sdk::face> > face_set;
90 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img);
92 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
95 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
110 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
111 int32_t x, int32_t y, int32_t width, int32_t height,
114 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
115 int32_t x, int32_t y, int32_t width, int32_t height,
119 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
120 int32_t x, int32_t y, int32_t width, int32_t height,
136 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
137 int32_t x, int32_t y, int32_t width, int32_t height,
139 const std::vector< std::tuple<int32_t, int32_t> > &landmarks);
141 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
142 int32_t x, int32_t y, int32_t width, int32_t height,
144 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
147 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
148 int32_t x, int32_t y, int32_t width, int32_t height,
150 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
166 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
167 int32_t x, int32_t y, int32_t width, int32_t height,
169 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
170 const std::shared_ptr<image> &cropped_image);
173 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
174 int32_t x, int32_t y, int32_t width, int32_t height,
176 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
177 const std::shared_ptr<image> &cropped_image,
180 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
181 int32_t x, int32_t y, int32_t width, int32_t height,
183 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
184 const std::shared_ptr<image> &cropped_image,
192 #endif // FACE_SDK_FACE_H