4 #ifndef FACE_SDK_FACE_H 5 #define FACE_SDK_FACE_H 8 #include <face_sdk_base/image.h> 15 typedef std::tuple<int32_t, int32_t> landmark;
16 typedef std::vector<landmark> landmark_set;
28 const float UNKNOWN_CONFIDENCE = .0f;
29 const uint32_t UNKNOWN_VERSION = 0;
40 virtual ~
face() =
default;
44 virtual float confidence()
const = 0;
48 virtual int32_t x()
const = 0;
52 virtual int32_t y()
const = 0;
56 virtual int32_t width()
const = 0;
60 virtual int32_t height()
const = 0;
64 virtual std::shared_ptr<face_sdk::image> img()
const = 0;
68 virtual std::shared_ptr<face_sdk::image> cropped_image()
const = 0;
72 virtual bool has_landmarks()
const = 0;
76 virtual std::vector< std::tuple<int32_t, int32_t> > landmarks()
const = 0;
80 virtual bool is_out_of_bounds_set()
const = 0;
85 virtual bool out_of_bounds()
const = 0;
89 virtual uint32_t version()
const = 0;
92 typedef std::vector< std::shared_ptr<face_sdk::face> > face_set;
101 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,
121 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
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,
152 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
153 int32_t x, int32_t y, int32_t width, int32_t height,
170 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
171 int32_t x, int32_t y, int32_t width, int32_t height,
188 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
189 int32_t x, int32_t y, int32_t width, int32_t height,
191 const std::vector< std::tuple<int32_t, int32_t> > &landmarks);
206 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
207 int32_t x, int32_t y, int32_t width, int32_t height,
209 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
226 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
227 int32_t x, int32_t y, int32_t width, int32_t height,
229 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
246 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
247 int32_t x, int32_t y, int32_t width, int32_t height,
249 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
250 const std::shared_ptr<image> &cropped_image);
267 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
268 int32_t x, int32_t y, int32_t width, int32_t height,
270 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
271 const std::shared_ptr<image> &cropped_image,
288 std::shared_ptr<face_sdk::face> FACE_SDK_EXPORT
make_face(
const std::shared_ptr<image> &img,
289 int32_t x, int32_t y, int32_t width, int32_t height,
291 const std::vector< std::tuple<int32_t, int32_t> > &landmarks,
292 const std::shared_ptr<image> &cropped_image,
300 #endif // FACE_SDK_FACE_H
std::shared_ptr< face_sdk::face > make_face(const std::shared_ptr< image > &img, int32_t x, int32_t y, int32_t width, int32_t height, float confidence, const std::vector< std::tuple< int32_t, int32_t > > &landmarks, const std::shared_ptr< image > &cropped_image, bool out_of_bounds, uint32_t version)
Makes the face object with specified coordinates of bounding box, landmarks, cropped_image, out_of_bounds flag and version.
The face object. Face object contains information about face bounding box on the image and the origin...
Definition: face.h:37
Definition: alignment_info.h:8