Face Engine SDK  5.3.0
A face detection, recognition and tracking engine.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
fsdk::IDetector Struct Referenceabstract

face detector interface. More...

#include <IDetector.h>

Inheritance diagram for fsdk::IDetector:
fsdk::IRefCounted

Public Member Functions

virtual ResultValue< FSDKError,
Ref< IFaceDetectionBatch > > 
detect (Span< const Image > images, Span< const Rect > ROIs, uint32_t perImageNum, DetectionType type=DT_BBOX) noexcept=0
 Detect faces and their parameters on multiple images. More...
 
virtual ResultValue< FSDKError,
Face
detectOne (const Image &image, const Rect &rect, DetectionType type=DT_BBOX) noexcept=0
 Light function to get just one best detection from single input image. More...
 
virtual ResultValue< FSDKError,
Ref< IFaceDetectionBatch > > 
redetect (Span< const Image > images, Ref< IFaceDetectionBatch > detectionBatch, DetectionType type=DT_BBOX) noexcept=0
 Batched redetect faces on multiple images based on the detection results for the previous frames. More...
 
virtual ResultValue< FSDKError,
Ref< IFaceDetectionBatch > > 
redetect (Span< const Image > images, Span< Span< const Detection >> detections, DetectionType type=DT_BBOX) noexcept=0
 Batched redetect faces on multiple images based on the detection results for the previous frames. More...
 
virtual ResultValue< FSDKError,
Face
redetectOne (const Image &image, const Detection &detection, DetectionType type=DT_BBOX) noexcept=0
 Redetect face. More...
 
virtual void setDetectionComparer (DetectionComparerType comparerType) noexcept=0
 Set detection comparer from SDK defined list. More...
 
virtual void setCustomDetectionComparer (const IDetectionComparer *comparer) noexcept=0
 Set custom detection comparer object. More...
 
virtual Result< FSDKErrorvalidate (Span< const Image > images, Span< Span< const Detection >> detections, Span< Span< Result< FSDKError >>> errors) const noexcept=0
 Validate input of multiple frames in a single function call. More...
 
virtual Result< FSDKErrorvalidate (Span< const Image > images, Span< const Rect > rects, uint32_t detectionPerImageNum, Span< Result< FSDKError >> outErrors) const noexcept=0
 Validate input of multiple frames in a single function call. More...
 
virtual Result< FSDKErrorvalidate (Span< const Image > images, Ref< IFaceDetectionBatch > detectionBatch, Span< Result< FSDKError >> outErrors) const noexcept=0
 Validate input of multiple frames in a single function call. More...
 
- Public Member Functions inherited from fsdk::IRefCounted
virtual int32_t retain () noexcept=0
 Increase strong reference count. More...
 
virtual int32_t release () noexcept=0
 Decrease strong reference count. More...
 
virtual int32_t getRefCount () const noexcept=0
 Get actual strong reference count. More...
 
virtual int32_t retainWeak () noexcept=0
 Increase weak reference count. More...
 
virtual int32_t releaseWeak () noexcept=0
 Decrease weak reference count. More...
 
virtual int32_t getWeakRefCount () const noexcept=0
 Get actual weak reference count. More...
 

Detailed Description

face detector interface.

Member Function Documentation

virtual ResultValue<FSDKError, Ref<IFaceDetectionBatch> > fsdk::IDetector::detect ( Span< const Image images,
Span< const Rect ROIs,
uint32_t  perImageNum,
DetectionType  type = DT_BBOX 
)
pure virtualnoexcept

Detect faces and their parameters on multiple images.

Parameters
[in]imagesinput images span; format must be R8G8B8.
[in]rectanglesinput rectangles of interest (ROI) span.
[in]perImageNumthe max number of detections per input image.
[in]typetype of the detection.
Returns
ResultValue with error code and IFaceDetectionBatch object.
See Also
Span, Image, Rect, DetectionType, ResultValue, FSDKError and IFaceDetectionBatch for details.
Note
all spans should be based on user owned continuous collections.
all spans should be equal size.
virtual ResultValue<FSDKError, Face> fsdk::IDetector::detectOne ( const Image image,
const Rect rect,
DetectionType  type = DT_BBOX 
)
pure virtualnoexcept

Light function to get just one best detection from single input image.

Parameters
imageinput image
rectrectangle of interest on image
typetype of detection: BBox, 5landmarks or 68landmarks
Returns
ResultValue with error code and a Face object (detection bbox, landmarks, etc)
virtual ResultValue<FSDKError, Ref<IFaceDetectionBatch> > fsdk::IDetector::redetect ( Span< const Image images,
Ref< IFaceDetectionBatch detectionBatch,
DetectionType  type = DT_BBOX 
)
pure virtualnoexcept

Batched redetect faces on multiple images based on the detection results for the previous frames.

Parameters
[in]imagesinput images span; format must be R8G8B8.
[in]detectionBatchresult of detection on the previous frames - Ref with an IFaceDetectionBatch object.
See Also
IFaceDetectionBatch for details.
Parameters
[in]typetype of redetection.
See Also
DetectionType for details.
Returns
ResultValue with error code and IFaceDetectionBatch object
Note
images span should be based on user owned continuous collections.
images span should be the same size with detectionBatch size.
In case if some face from the input detectionBatch was not found the corresponding detection in the output IFaceDetectionBatch object will be invalid.
virtual ResultValue<FSDKError, Ref<IFaceDetectionBatch> > fsdk::IDetector::redetect ( Span< const Image images,
Span< Span< const Detection >>  detections,
DetectionType  type = DT_BBOX 
)
pure virtualnoexcept

Batched redetect faces on multiple images based on the detection results for the previous frames.

Parameters
[in]imagesinput images span; format must be R8G8B8.
[in]detectionsinput detections from the previous frames. It is a two dimentional Span. There is one Span of the rectangles for each image.
[in]typetype of redetection.
See Also
DetectionType for details.
Returns
ResultValue with error code and IFaceDetectionBatch object
See Also
IFaceDetectionBatch for details.
Note
all spans should be based on user owned continuous collections.
all spans should be equal size.
If for some of the input detections the redetected face will not be found the appropriate detection in the IFaceDetectionBatch object will be invalid.
virtual ResultValue<FSDKError, Face> fsdk::IDetector::redetectOne ( const Image image,
const Detection detection,
DetectionType  type = DT_BBOX 
)
pure virtualnoexcept

Redetect face.

Parameters
imageinput image. Format must be R8G8B8.
detectiondetection from the previous frame to make redetect.
typetype of detection: BBox, 5landmarks or 68landmarks
Returns
ResultValue with ErrorCode and Face
virtual void fsdk::IDetector::setCustomDetectionComparer ( const IDetectionComparer comparer)
pure virtualnoexcept

Set custom detection comparer object.

Parameters
pointerto user defined comparer object
Note
Client code still owns comparer object
virtual void fsdk::IDetector::setDetectionComparer ( DetectionComparerType  comparerType)
pure virtualnoexcept

Set detection comparer from SDK defined list.

Parameters
comparerType
virtual Result<FSDKError> fsdk::IDetector::validate ( Span< const Image images,
Span< Span< const Detection >>  detections,
Span< Span< Result< FSDKError >>>  errors 
) const
pure virtualnoexcept

Validate input of multiple frames in a single function call.

Parameters
[in]imagesinput images span.
[in]detectionsinput detections from the previous frames. It is a two dimentional Span. There is one Span of the Detections for each image.
[out]errorsoutput span of errors for each image. It is a two dimentional Span. There is one Span of the errors for each image.
Returns
Error code;
See Also
FSDKError for details.
Note
all spans should be based on user owned continuous collections.
virtual Result<FSDKError> fsdk::IDetector::validate ( Span< const Image images,
Span< const Rect rects,
uint32_t  detectionPerImageNum,
Span< Result< FSDKError >>  outErrors 
) const
pure virtualnoexcept

Validate input of multiple frames in a single function call.

Parameters
[in]imagesspan of input images.
[in]rectsspan of rect coords of corresponding source images.
detectionPerImageNummax number of detections per input image.
[out]errorsoutput span of errors for each image.
Returns
Error code;
See Also
FSDKError for details.
Note
all spans should be based on user owned continuous collections.
virtual Result<FSDKError> fsdk::IDetector::validate ( Span< const Image images,
Ref< IFaceDetectionBatch detectionBatch,
Span< Result< FSDKError >>  outErrors 
) const
pure virtualnoexcept

Validate input of multiple frames in a single function call.

Parameters
[in]imagesinput images span.
[in]detectionBatchresult of detection on the previous frames - Ref with an IFaceDetectionBatch object.
See Also
IFaceDetectionBatch for details.
Parameters
[out]errorsoutput span of errors for each image.
Returns
Error code;
See Also
FSDKError for details.
Note
all spans should be based on user owned continuous collections.

The documentation for this struct was generated from the following file: