Face Engine SDK  4.6.0
A face detection, recognition and tracking engine.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
IHeadPoseEstimator.h
1 #pragma once
2 
3 #include <fsdk/IObject.h>
4 #include <fsdk/FSDKError.h>
5 #include <fsdk/Optional.h>
6 #include <fsdk/Types.h>
7 
8 #include <cmath>
9 
10 namespace fsdk {
11 
12 #ifndef DOXYGEN_SHOULD_SKIP_THIS
13  DECLARE_SMARTPTR(IHeadPoseEstimator);
14 #endif
15 
22  float pitch;
23  float yaw;
24  float roll;
25 
30  };
31 
35  inline FrontalFaceType getFrontalFaceType() const;
36  };
37 
56  const Landmarks68 &landmarks,
57  HeadPoseEstimation& out) const noexcept = 0;
65  virtual Result<FSDKError>
66  estimate(
67  const fsdk::Image& image,
68  const fsdk::Detection& detection,
69  HeadPoseEstimation& out) const noexcept = 0;
78  virtual Result<FSDKError>
79  estimate(
80  const fsdk::Image images[],
81  const fsdk::Detection detections[],
82  const uint32_t batchSize,
83  HeadPoseEstimation out[]) const noexcept = 0;
84  };
85 
86  /*
87  Implementation details.
88  */
91  if(std::abs(roll) <= 8 && std::abs(pitch) <= 5 && std::abs(yaw) <= 5)
93  if(std::abs(roll) <= 30 && std::abs(pitch) <= 40 && std::abs(yaw) <= 40)
96  }
97 
98 } // namespace fsdk
GOST/ISO angles.
Definition: IHeadPoseEstimator.h:29
Head pose estimation output.
Definition: IHeadPoseEstimator.h:21
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:59
Non-frontal face.
Definition: IHeadPoseEstimator.h:27
Common data types and structures.
Face landmarks template structure.
Definition: Landmarks.h:18
float roll
Roll angle estimation.
Definition: IHeadPoseEstimator.h:24
virtual Result< FSDKError > estimate(const Landmarks68 &landmarks, HeadPoseEstimation &out) const noexcept=0
Estimate the angles.
float yaw
Yaw angle estimation.
Definition: IHeadPoseEstimator.h:23
Object system types and interfaces.
Common SDK error codes.
Base strong reference counted object interface.
Definition: IRefCounted.h:36
Good for recognition; Doesn&#39;t descrease recall and looks fine.
Definition: IHeadPoseEstimator.h:28
Image.
Definition: Image.h:37
FrontalFaceType
Definition: IHeadPoseEstimator.h:26
float pitch
Pitch angle estimation.
Definition: IHeadPoseEstimator.h:22
Head pose angles estimator interface.
Definition: IHeadPoseEstimator.h:48
FrontalFaceType getFrontalFaceType() const
Returns type of face frontality.
Definition: IHeadPoseEstimator.h:90
Face detection. Stores a detected face bounding box within a source image frame as well as detection...
Definition: Detection.h:10