Face Engine SDK  5.23.1
A face detection, recognition and tracking engine.
include/fsdk/IFaceLandmarksDetector.h
00001 
00008 #pragma once
00009 
00010 #include <fsdk/FSDKError.h>
00011 #include <fsdk/IObject.h>
00012 #include <fsdk/Types.h>
00013 #include <fsdk/IFaceLandmarksBatch.h>
00014 
00015 #include <fsdk/vlc/future.h>
00016 
00017 namespace fsdk {
00018 
00019 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00020     DECLARE_SMARTPTR(IFaceLandmarksDetector);
00021 #endif
00022 
00023     struct IFaceLandmarksDetector : IRefCounted {
00024 
00037         virtual ResultValue<FSDKError, Ref<IFaceLandmarksBatch>>
00038         detectLandmarks5(Span<const Image> images, Span<Span<const Detection>> detections) const noexcept = 0;
00039 
00052         virtual ResultValue<FSDKError, Ref<IFaceLandmarksBatch>>
00053         detectLandmarks68(Span<const Image> images, Span<Span<const Detection>> detections) const noexcept = 0;
00054 
00068         virtual Result<FSDKError> validate(
00069             Span<const Image> images,
00070             Span<Span<const Detection>> detections,
00071             Span<Span<Result<FSDKError>>> errors) const noexcept = 0;
00072 
00085         virtual Result<FSDKError> detectLandmarks5(
00086             const Image& image,
00087             Span<const Detection> detections,
00088             Span<Landmarks5> landmarks) const noexcept = 0;
00089 
00102         virtual Result<FSDKError> detectLandmarks68(
00103             const Image& image,
00104             Span<const Detection> detections,
00105             Span<Landmarks68> landmarks) const noexcept = 0;
00106 
00118         virtual Result<FSDKError> validate(
00119             const Image& images,
00120             Span<const Detection> detections,
00121             Span<Result<FSDKError>> errors) const noexcept = 0;
00122 
00136         virtual Result<FSDKError> validate(
00137             Span<const Image> images,
00138             Span<Span<const Detection>> detections,
00139             DetectionType detectionType,
00140             Span<Span<Result<FSDKError>>> errors) const noexcept = 0;
00141 
00145         using FaceLandmarksBatchFuture = vlc::future<IFaceLandmarksBatchPtr>;
00146 
00161         virtual FaceLandmarksBatchFuture detectLandmarksAsync(
00162             Span<const Image> images,
00163             Span<Span<const Detection>> detections,
00164             DetectionType detectionType) const = 0;
00165     };
00166 
00169 } // namespace fsdk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines