Face Engine SDK  5.17.0
A face detection, recognition and tracking engine.
include/fsdk/Estimators/IGlassesEstimator.h
00001 #pragma once
00002 
00003 #include <fsdk/IObject.h>
00004 #include <fsdk/FSDKError.h>
00005 #include <fsdk/Optional.h>
00006 #include <fsdk/Types.h>
00007 
00008 namespace fsdk {
00009 
00010 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00011     DECLARE_SMARTPTR(IGlassesEstimator);
00012 #endif
00013 
00027     enum class GlassesEstimation: uint8_t{
00028         NoGlasses,
00029         EyeGlasses,
00030         SunGlasses,
00031         EstimationError
00032     };
00033 
00038     struct IGlassesEstimator : IRefCounted {
00046         virtual ResultValue<FSDKError, GlassesEstimation>
00047         estimate(const Image& warp) const noexcept  = 0;
00048 
00059         virtual Result<FSDKError>
00060         estimate(
00061             Span<const Image> warps,
00062             Span<GlassesEstimation> glassesEstimations) const noexcept = 0;
00063 
00074         virtual Result<FSDKError>
00075         validate(
00076             Span<const Image> warps,
00077             Span<Result<FSDKError>> errors) const noexcept = 0;
00078     };
00080 } // namespace fsdk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines