Face SDK  1.7 Mozart rc
Face Recognition Software Development Kit
alignment_info.h
Go to the documentation of this file.
1 
3 #ifndef FACE_SDK_ALIGNMENT_INFO_H
4 #define FACE_SDK_ALIGNMENT_INFO_H
5 
6 #include <face_sdk_base/face.h>
7 
8 namespace face_sdk
9 {
17  struct matrix
18  {
19  matrix() :
20  m00(0.f), m10(0.f),
21  m01(0.f), m11(0.f),
22  m02(0.f), m12(0.f)
23  {
24  }
25 
26  matrix(float _m00, float _m01, float _m02,
27  float _m10, float _m11, float _m12) :
28  m00(_m00), m10(_m10),
29  m01(_m01), m11(_m11),
30  m02(_m02), m12(_m12)
31  {
32  }
33 
34  float m00;
35  float m01;
36  float m02;
37 
38  float m10;
39  float m11;
40  float m12;
41  };
42 
48  class FACE_SDK_EXPORT alignment_info
49  {
50  public:
51  virtual ~alignment_info() = default;
52 
55  virtual std::shared_ptr<face_sdk::face> face() const noexcept = 0;
56 
59  virtual uint32_t version() const noexcept = 0;
60 
63  virtual std::shared_ptr<face_sdk::image> aligned_image() const noexcept = 0;
64 
67  virtual bool is_support_face_exists() const noexcept = 0;
68 
72  virtual float face_exists() const = 0;
73 
76  virtual bool has_affine_transform_matrix() const = 0;
77 
81  virtual const matrix& affine_transform_matrix() const = 0;
82  };
83 
84  typedef std::vector< std::shared_ptr<face_sdk::alignment_info> > alignment_info_set;
85 
87 }
88 
89 #endif // FACE_SDK_ALIGNMENT_INFO_H
face.h
face_sdk::matrix
Matrix for affine transform, used by alignment_info class.
Definition: alignment_info.h:17
face_sdk::face
The face object. Face object contains information about face bounding box on the image and the origin...
Definition: face.h:28
face_sdk::alignment_info
Alignment info. Contains results of alignment.
Definition: alignment_info.h:48