Face Engine SDK  5.21.0
A face detection, recognition and tracking engine.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
IFaceLandmarksDetector.h
1 
8 #pragma once
9 
10 #include <fsdk/FSDKError.h>
11 #include <fsdk/IObject.h>
12 #include <fsdk/Types.h>
13 #include <fsdk/IFaceLandmarksBatch.h>
14 
15 #include <fsdk/vlc/future.h>
16 
17 namespace fsdk {
18 
19 #ifndef DOXYGEN_SHOULD_SKIP_THIS
20  DECLARE_SMARTPTR(IFaceLandmarksDetector);
21 #endif
22 
24 
38  detectLandmarks5(Span<const Image> images, Span<Span<const Detection>> detections) const noexcept = 0;
39 
53  detectLandmarks68(Span<const Image> images, Span<Span<const Detection>> detections) const noexcept = 0;
54 
69  Span<const Image> images,
70  Span<Span<const Detection>> detections,
71  Span<Span<Result<FSDKError>>> errors) const noexcept = 0;
72 
86  const Image& image,
87  Span<const Detection> detections,
88  Span<Landmarks5> landmarks) const noexcept = 0;
89 
103  const Image& image,
104  Span<const Detection> detections,
105  Span<Landmarks68> landmarks) const noexcept = 0;
106 
118  virtual Result<FSDKError> validate(
119  const Image& images,
120  Span<const Detection> detections,
121  Span<Result<FSDKError>> errors) const noexcept = 0;
122 
136  virtual Result<FSDKError> validate(
137  Span<const Image> images,
138  Span<Span<const Detection>> detections,
139  DetectionType detectionType,
140  Span<Span<Result<FSDKError>>> errors) const noexcept = 0;
141 
145  using FaceLandmarksBatchFuture = vlc::future<IFaceLandmarksBatchPtr>;
146 
162  Span<const Image> images,
163  Span<Span<const Detection>> detections,
164  DetectionType detectionType) const = 0;
165  };
166 
169 } // namespace fsdk
virtual Result< FSDKError > validate(Span< const Image > images, Span< Span< const Detection >> detections, Span< Span< Result< FSDKError >>> errors) const noexcept=0
Validates input of multiple frames in a single function call.
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:56
A structure that encapsulates an action result enumeration.
Definition: Result.h:27
Common data types and structures.
vlc::future< IFaceLandmarksBatchPtr > FaceLandmarksBatchFuture
Common alias for IFaceLandmarksDetector asynchronous interface.
Definition: IFaceLandmarksDetector.h:145
virtual FaceLandmarksBatchFuture detectLandmarksAsync(Span< const Image > images, Span< Span< const Detection >> detections, DetectionType detectionType) const =0
Asynchronously detects landmarks5 and/or landmarks68 on multiple images.
Object system types and interfaces.
Common SDK error codes.
Base strong reference counted object interface.
Definition: IRefCounted.h:37
virtual ResultValue< FSDKError, Ref< IFaceLandmarksBatch > > detectLandmarks5(Span< const Image > images, Span< Span< const Detection >> detections) const noexcept=0
Detects landmarks5 on multiple images.
Definition: IFaceLandmarksDetector.h:23
Addon for Result to output some value aside the result. Specialization for copiable types...
Definition: ResultValue.h:21
Image.
Definition: Image.h:38
virtual ResultValue< FSDKError, Ref< IFaceLandmarksBatch > > detectLandmarks68(Span< const Image > images, Span< Span< const Detection >> detections) const noexcept=0
Detects landmarks68 on multiple images.
DetectionType
Detection type enumeration.
Definition: IDetector.h:59
Span. Not owning data view. It incapsulated pointer to the continuous array with one or more T objec...
Definition: Span.h:14