Face Engine SDK  5.15.0
A face detection, recognition and tracking engine.
IHumanFaceDetector.h
1 #pragma once
2 
3 #include <fsdk/FSDKError.h>
4 #include <fsdk/IHumanFaceBatch.h>
5 
6 #include <fsdk/IRefCounted.h>
7 #include <fsdk/Types/Detection.h>
8 #include <fsdk/Types/Image.h>
9 #include <fsdk/Types/Ref.h>
10 #include <fsdk/Types/ResultValue.h>
11 #include <fsdk/Types/Span.h>
12 
13 namespace fsdk {
14 
15 #ifndef DOXYGEN_SHOULD_SKIP_THIS
16  DECLARE_SMARTPTR(IHumanFaceDetector);
17 #endif
18 
28  HFDT_BBOX = 0,
29  HFDT_ASSOC = 1<<0,
30  HFDT_ALL = 0xffff
31  };
32 
37 
51  Span<const Image> images,
52  Span<const Rect> rects,
54 
66  virtual Result<FSDKError>
68  Span<const Image> images,
69  Span<const Rect> rects,
70  Span<Result<FSDKError>> errors) const noexcept = 0;
71  };
72 
73  /*
74  Implementation details.
75  */
77  return static_cast<HumanFaceDetectionType>(static_cast<int>(a) | static_cast<int>(b));
78  }
79 
80  /*
81  Implementation details.
82  */
83  inline bool operator&(HumanFaceDetectionType lhs, HumanFaceDetectionType rhs) {
84  return static_cast<int>(lhs) & static_cast<int>(rhs);
85  }
86 
89 } // namespace fsdk
fsdk::Span
Span. @detail Not owning data view. It incapsulated pointer to the continuous array with one or more ...
Definition: Span.h:15
fsdk::IHumanFaceDetector::validate
virtual Result< FSDKError > validate(Span< const Image > images, Span< const Rect > rects, Span< Result< FSDKError >> errors) const noexcept=0
Validate input of multiple frames in a single function call.
DECLARE_SMARTPTR
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:59
fsdk
SDK namespace.
Definition: IAGSEstimator.h:8
fsdk::IHumanFaceDetector::detect
virtual ResultValue< FSDKError, Ref< IHumanFaceBatch > > detect(Span< const Image > images, Span< const Rect > rects, HumanFaceDetectionType type=HumanFaceDetectionType::HFDT_ALL) const noexcept=0
Batched detect of faces and human bodies.
fsdk::HumanFaceDetectionType::HFDT_BBOX
@ HFDT_BBOX
Get bounding boxes of faces and humans.
fsdk::HumanFaceDetectionType
HumanFaceDetectionType
Detection type enumeration for IHumanFaceDetector.
Definition: IHumanFaceDetector.h:27
fsdk::Result
A structure that encapsulates an action result enumeration.
Definition: Result.h:30
fsdk::IHumanFaceDetector
Human and face detector interface.
Definition: IHumanFaceDetector.h:36
fsdk::IRefCounted
Base strong reference counted object interface.
Definition: IRefCounted.h:36
fsdk::ResultValue
Addon for Result to output some value aside the result. Specialization for copiable types.
Definition: ResultValue.h:25