Face Engine SDK  5.25.0
A face detection, recognition and tracking engine.
SDK core interfaces

Common interfaces and macros shared across all SDK objects. More...

Classes

struct  fsdk::IFaceEngineMobile
 Root LUNA SDK object interface. More...
struct  fsdk::IArchive
 Archive interface. More...
struct  fsdk::ISerializableObject
 Serializable object interface. More...
struct  fsdk::ErrorTraits< ISerializableObject::Error >
 Specialized for ISerializableObject::SerializationError. More...
struct  fsdk::IDataStorageObject
 Data storage object interface helper. More...
struct  fsdk::IRefCounted
 Base strong reference counted object interface. More...
struct  fsdk::ISettingsProvider
 SDK settings provider interface. More...
struct  fsdk::ErrorTraits< ISettingsProvider::Error >
 Specialized for ISettingsProvider::ParseError. More...

Defines

#define ALIGN_UP(value, align)   (((value) & (align - 1)) ? (((value) + (align - 1)) & ~(align - 1)) : (value))
#define ALIGNED(x)   __attribute__((aligned(x)))
#define RESTRICT   __restrict__
#define FORCE_INLINE   inline __attribute__((always_inline))
#define DECLARE_SMARTPTR(X)
 Smart ptr declaration helper macro.
#define STRINGIFY2(x)   #x
 Stringification helper macro.
#define STRINGIFY(x)   STRINGIFY2(x)
 Stringifies it's argument.

Functions

virtual ResultValue< FSDKError,
IDetectorPtr > 
fsdk::IFaceEngineMobile::createDetector () noexcept=0
 Creates a detector of given type.
virtual ResultValue< FSDKError,
IHeadPoseEstimatorPtr > 
fsdk::IFaceEngineMobile::createHeadPoseEstimator () noexcept=0
 Creates Head pose estimator.
virtual ResultValue< FSDKError,
IAGSEstimatorPtr > 
fsdk::IFaceEngineMobile::createAGSEstimator () noexcept=0
 Creates AGS estimator.
virtual ResultValue< FSDKError,
IEyeEstimatorPtr > 
fsdk::IFaceEngineMobile::createEyeEstimator () noexcept=0
 Creates Eye estimator.
virtual ResultValue< FSDKError,
IMedicalMaskEstimatorPtr > 
fsdk::IFaceEngineMobile::createMedicalMaskEstimator () noexcept=0
 Creates MedicalMask estimator.
virtual ResultValue< FSDKError,
IGlassesEstimatorPtr > 
fsdk::IFaceEngineMobile::createGlassesEstimator () noexcept=0
 Creates Glasses estimator.
virtual ResultValue< FSDKError,
IQualityEstimatorPtr > 
fsdk::IFaceEngineMobile::createQualityEstimator () noexcept=0
 Creates Quality estimator.
virtual ResultValue< FSDKError,
IBestShotQualityEstimatorPtr > 
fsdk::IFaceEngineMobile::createBestShotQualityEstimator () noexcept=0
 Creates BestShotQuality estimator.
virtual ResultValue< FSDKError,
ILivenessOneShotRGBEstimatorPtr > 
fsdk::IFaceEngineMobile::createLivenessOneShotRGBEstimator () noexcept=0
 Creates Liveness OneShot estimator.
virtual ResultValue< FSDKError,
IDepthLivenessEstimatorPtr > 
fsdk::IFaceEngineMobile::createDepthLivenessEstimator () noexcept=0
 Creates universal DepthLiveness estimator.
virtual ResultValue< FSDKError,
ILivenessDepthRGBEstimatorPtr > 
fsdk::IFaceEngineMobile::createLivenessDepthRGBEstimator () noexcept=0
 Creates Liveness Depth+RGB estimator.
virtual ResultValue< FSDKError,
INIRLivenessEstimatorPtr > 
fsdk::IFaceEngineMobile::createNIRLivenessEstimator (const NIRLivenessMode mode=NIRLivenessMode::Default) noexcept=0
 Creates NIRLiveness estimator.
virtual ResultValue< FSDKError,
IMouthEstimatorPtr > 
fsdk::IFaceEngineMobile::createMouthEstimator () noexcept=0
 Creates Mouth estimator.
virtual ResultValue< FSDKError,
IFaceOcclusionEstimatorPtr > 
fsdk::IFaceEngineMobile::createFaceOcclusionEstimator () noexcept=0
 Creates FaceOcclusion estimator.
virtual ResultValue< FSDKError,
IDescriptorPtr > 
fsdk::IFaceEngineMobile::createDescriptor (uint32_t version=0) noexcept=0
 Creates Descriptor.
virtual ResultValue< FSDKError,
IDescriptorPtr > 
fsdk::IFaceEngineMobile::createDescriptor (IArchive *archive, uint32_t flags=0) noexcept=0
 Creates and loads Descriptor from Archive.
virtual ResultValue< FSDKError,
IDescriptorBatchPtr > 
fsdk::IFaceEngineMobile::createDescriptorBatch (int32_t size, uint32_t version=0) noexcept=0
 Creates Batch of descriptors.
virtual ResultValue< FSDKError,
IDescriptorExtractorPtr > 
fsdk::IFaceEngineMobile::createExtractor (uint32_t version=0) noexcept=0
 Creates descriptor extractor.
virtual ResultValue< FSDKError,
IDescriptorMatcherPtr > 
fsdk::IFaceEngineMobile::createMatcher (uint32_t version=0) noexcept=0
 Creates descriptor matcher.
virtual ResultValue< FSDKError,
IWarperPtr > 
fsdk::IFaceEngineMobile::createWarper () noexcept=0
 Creates warper.
virtual FaceEngineEdition fsdk::IFaceEngineMobile::getFaceEngineEdition () const noexcept=0
 Get LUNA SDK ditribution edition.
virtual void fsdk::IFaceEngineMobile::setDataDirectory (const char *path) noexcept=0
 Sets data directory.
virtual const char * fsdk::IFaceEngineMobile::getDataDirectory () const noexcept=0
 Gets data directory.
virtual void fsdk::IFaceEngineMobile::setSettingsProvider (ISettingsProvider *provider) noexcept=0
 Sets settings provider.
virtual void fsdk::IFaceEngineMobile::setRuntimeSettingsProvider (ISettingsProvider *provider) noexcept=0
 Sets runtime settings provider.
virtual ISettingsProvider * fsdk::IFaceEngineMobile::getSettingsProvider () const noexcept=0
 Gets settings provider.
virtual ISettingsProvider * fsdk::IFaceEngineMobile::getRuntimeSettingsProvider () const noexcept=0
 Gets runtime settings provider.
virtual ILicense * fsdk::IFaceEngineMobile::getLicense () const noexcept=0
 Get current License object, which was set for FaceEngine object.
FSDK_API Result< FSDKError > fsdk::activateLicense (ILicense *license, const char *configPath) noexcept
 Makes License activation with some platform specific manner. Network connection is required.
FSDK_API Result< FSDKError > fsdk::activateLicense (ILicense *license, ISettingsProvider *settings) noexcept
 Makes License activation with some platform specific manner. Network connection is required.
FSDK_API ResultValue
< FSDKError,
IFaceEngineMobilePtr > 
fsdk::createFaceEngineMobile (const char *dataPath=nullptr, const char *configPath=nullptr, const char *runtimePath=nullptr) noexcept
 Create the LUNA SDK root object.
FSDK_API ResultValue
< FSDKError,
ISettingsProviderPtr > 
fsdk::createSettingsProvider (const char *path) noexcept
 Create a settings provider.
FSDK_API ResultValue
< FSDKError,
ISettingsProviderPtr > 
fsdk::createSettingsProviderFromString (const char *content) noexcept
 Creates a settings provider from the xml-formatted string.

Detailed Description

Common interfaces and macros shared across all SDK objects.


Define Documentation

#define DECLARE_SMARTPTR (   X)
Value:
struct X;                                                                                                  \
    using X##Ptr = fsdk::Ref<X>

Smart ptr declaration helper macro.


Function Documentation

FSDK_API Result<FSDKError> fsdk::activateLicense ( ILicense *  license,
const char *  configPath 
)

Makes License activation with some platform specific manner. Network connection is required.

Parameters:
[in]licensepointer to the license object which should be activated
[in]configPathpath to license.conf file with licensing settings.
Returns:
true if license was successfully activated.
FSDK_API Result<FSDKError> fsdk::activateLicense ( ILicense *  license,
ISettingsProvider *  settings 
)

Makes License activation with some platform specific manner. Network connection is required.

Parameters:
[in]licensepointer to the license object which should be activated
[in]providersettings provider.
Returns:
true if license was successfully activated.
virtual ResultValue<FSDKError, IAGSEstimatorPtr> fsdk::IFaceEngineMobile::createAGSEstimator ( ) [pure virtual]

Creates AGS estimator.

Returns:
Error code;
See also:
FSDKError and AGS estimator if succeeded, null if failed.
virtual ResultValue<FSDKError, IBestShotQualityEstimatorPtr> fsdk::IFaceEngineMobile::createBestShotQualityEstimator ( ) [pure virtual]

Creates BestShotQuality estimator.

Returns:
Error code;
See also:
FSDKError and BestShotQuality estimator if succeed, null if failed.
virtual ResultValue<FSDKError, IDepthLivenessEstimatorPtr> fsdk::IFaceEngineMobile::createDepthLivenessEstimator ( ) [pure virtual]

Creates universal DepthLiveness estimator.

Returns:
ResultValue with error code and IDepthLivenessEstimatorPtr instance.
See also:
ResultValue, FSDKError, IDepthLivenessEstimatorPtr, LaunchOptions
virtual ResultValue<FSDKError, IDescriptorPtr> fsdk::IFaceEngineMobile::createDescriptor ( uint32_t  version = 0) [pure virtual]

Creates Descriptor.

Parameters:
[in]versiondescriptor version.

face descriptor will created by default, to create human descriptor pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 102

See also:
DescriptorVersion
Returns:
Error code;
See also:
FSDKError and Descriptor if succeed, null if failed.
virtual ResultValue<FSDKError, IDescriptorPtr> fsdk::IFaceEngineMobile::createDescriptor ( IArchive archive,
uint32_t  flags = 0 
) [pure virtual]

Creates and loads Descriptor from Archive.

Parameters:
[in]archiveArchive with descriptor.
[in]flagsArchive flag.
Returns:
Error code;
See also:
FSDKError and Descriptor if succeed, null if failed.
virtual ResultValue<FSDKError, IDescriptorBatchPtr> fsdk::IFaceEngineMobile::createDescriptorBatch ( int32_t  size,
uint32_t  version = 0 
) [pure virtual]

Creates Batch of descriptors.

face descriptor batch will be created by default, to create human descriptor batch you must pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 102

See also:
DescriptorVersion
Parameters:
[in]size- amount of descriptors in batch.
[in]version- descriptor version in batch. If 0 - use dafault version from config.
Returns:
Error code;
See also:
FSDKError and Batch if succeed, null if failed.
virtual ResultValue<FSDKError, IDetectorPtr> fsdk::IFaceEngineMobile::createDetector ( ) [pure virtual]

Creates a detector of given type.

Returns:
Error code;
See also:
FSDKError and detector object if succeeded, null if failed.
virtual ResultValue<FSDKError, IDescriptorExtractorPtr> fsdk::IFaceEngineMobile::createExtractor ( uint32_t  version = 0) [pure virtual]

Creates descriptor extractor.

Parameters:
[in]versiondescriptor version.

face descriptor extractor will created by default, to create human descriptor extractor descriptor you must pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 102

See also:
DescriptorVersion
Returns:
Error code;
See also:
FSDKError and Descriptor extractor if succeed, null if failed.
virtual ResultValue<FSDKError, IEyeEstimatorPtr> fsdk::IFaceEngineMobile::createEyeEstimator ( ) [pure virtual]

Creates Eye estimator.

Returns:
Error code;
See also:
FSDKError and Eye estimator if succeed, null if failed.
FSDK_API ResultValue<FSDKError, IFaceEngineMobilePtr> fsdk::createFaceEngineMobile ( const char *  dataPath = nullptr,
const char *  configPath = nullptr,
const char *  runtimePath = nullptr 
)

Create the LUNA SDK root object.

Parameters:
[in]dataPath[optional] path to folder with FSDK data. Default: ./data (on windows), /opt/visionlabs/data (on linux)
[in]configPath[optional] path to faceengine.conf file. Default: <dataPath>/faceengine.cong
[in]runtimePath[optional] path to runtime.conf file. Default: <dataPath>/runtime.cong
Returns:
Error code;
See also:
FSDKError and face engine object if succeeded, null if failed.
virtual ResultValue<FSDKError, IFaceOcclusionEstimatorPtr> fsdk::IFaceEngineMobile::createFaceOcclusionEstimator ( ) [pure virtual]

Creates FaceOcclusion estimator.

Returns:
ResultValue with error code and IFaceOcclusionEstimatorPtr instance.
See also:
ResultValue, FSDKError, IFaceOcclusionEstimatorPtr
virtual ResultValue<FSDKError, IGlassesEstimatorPtr> fsdk::IFaceEngineMobile::createGlassesEstimator ( ) [pure virtual]

Creates Glasses estimator.

Returns:
ResultValue with error code and IGlassesEstimatorPtr instance.
See also:
ResultValue, FSDKError, IGlassesEstimatorPtr
virtual ResultValue<FSDKError, IHeadPoseEstimatorPtr> fsdk::IFaceEngineMobile::createHeadPoseEstimator ( ) [pure virtual]

Creates Head pose estimator.

Returns:
Error code;
See also:
FSDKError and Head pose estimator if succeeded, null if failed.
virtual ResultValue<FSDKError, ILivenessDepthRGBEstimatorPtr> fsdk::IFaceEngineMobile::createLivenessDepthRGBEstimator ( ) [pure virtual]

Creates Liveness Depth+RGB estimator.

Returns:
ResultValue with error code and ILivenessDepthRGBEstimatorPtr instance.
See also:
ResultValue, FSDKError, ILivenessDepthRGBEstimatorPtr
virtual ResultValue<FSDKError, ILivenessOneShotRGBEstimatorPtr> fsdk::IFaceEngineMobile::createLivenessOneShotRGBEstimator ( ) [pure virtual]

Creates Liveness OneShot estimator.

Returns:
Error code;
See also:
FSDKError and OneShot liveness estimator if succeed, null if failed.
virtual ResultValue<FSDKError, IDescriptorMatcherPtr> fsdk::IFaceEngineMobile::createMatcher ( uint32_t  version = 0) [pure virtual]

Creates descriptor matcher.

Parameters:
[in]versiondescriptor version.

face descriptor matcher will created by default, to create human descriptor matcher you must pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 102

See also:
DescriptorVersion
Returns:
Error code;
See also:
FSDKError and Descriptor matcher if succeed, null if failed.
virtual ResultValue<FSDKError, IMedicalMaskEstimatorPtr> fsdk::IFaceEngineMobile::createMedicalMaskEstimator ( ) [pure virtual]

Creates MedicalMask estimator.

Returns:
ResultValue with error code and IMedicalMaskEstimatorPtr instance.
See also:
ResultValue, FSDKError, IMedicalMaskEstimatorPtr
virtual ResultValue<FSDKError, IMouthEstimatorPtr> fsdk::IFaceEngineMobile::createMouthEstimator ( ) [pure virtual]

Creates Mouth estimator.

Returns:
ResultValue with error code and IMouthEstimatorPtr instance.
See also:
ResultValue, FSDKError, IMouthEstimatorPtr
virtual ResultValue<FSDKError, INIRLivenessEstimatorPtr> fsdk::IFaceEngineMobile::createNIRLivenessEstimator ( const NIRLivenessMode  mode = NIRLivenessMode::Default) [pure virtual]

Creates NIRLiveness estimator.

Parameters:
[in]modeis the option to set estimation scenario.
See also:
NIRLivenessMode.
Parameters:
[in]launchOptionslaunch options for fine grained control over target device resources.
Returns:
ResultValue with error code and INIRLivenessEstimatorPtr instance.
See also:
ResultValue, FSDKError, INIRLivenessEstimatorPtr, LaunchOptions
virtual ResultValue<FSDKError, IQualityEstimatorPtr> fsdk::IFaceEngineMobile::createQualityEstimator ( ) [pure virtual]

Creates Quality estimator.

Returns:
ResultValue with error code and IQualityEstimatorPtr instance.
See also:
ResultValue, FSDKError, IQualityEstimatorPtr
FSDK_API fsdk::ResultValue< fsdk::FSDKError, fsdk::ISettingsProviderPtr > fsdk::createSettingsProvider ( const char *  path)

Create a settings provider.

Creates a settings provider.

Parameters:
[in]pathconfiguration file path.
Returns:
settings provider object if succeeded, null if failed.
Parameters:
[in]pathconfiguration file path
Returns:
Error code;
See also:
FSDKError and settings provider object if succeeded, null if failed.
FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > fsdk::createSettingsProviderFromString ( const char *  content)

Creates a settings provider from the xml-formatted string.

Parameters:
[in]contentcontent string in xml-format, in a case of nullptr empty config will be created
Returns:
Error code and settings provider object if succeeded, null if failed.
See also:
FSDKError, ISettingsProvider::save
virtual ResultValue<FSDKError, IWarperPtr> fsdk::IFaceEngineMobile::createWarper ( ) [pure virtual]

Creates warper.

Returns:
Warper if succeed, null if failed.
virtual const char* fsdk::IFaceEngineMobile::getDataDirectory ( ) const [pure virtual]

Gets data directory.

By default is set to "./data".

Returns:
path to data directory.
virtual FaceEngineEdition fsdk::IFaceEngineMobile::getFaceEngineEdition ( ) const [pure virtual]

Get LUNA SDK ditribution edition.

Returns:
Edition of LUNA SDK instance. Posible values:
  • CompleteEdition - full edition with all function.
  • FrontEndEdition - short edition with excluded descriptor functions. Extractor, matcher, descriptor, batch and index cannot be created.
virtual ILicense* fsdk::IFaceEngineMobile::getLicense ( ) const [pure virtual]

Get current License object, which was set for FaceEngine object.

Returns:
pointer to current license object, nullptr if no any license was set to.
virtual ISettingsProvider* fsdk::IFaceEngineMobile::getRuntimeSettingsProvider ( ) const [pure virtual]

Gets runtime settings provider.

Returns:
runtime settings provider.
virtual ISettingsProvider* fsdk::IFaceEngineMobile::getSettingsProvider ( ) const [pure virtual]

Gets settings provider.

Returns:
settings provider.
virtual void fsdk::IFaceEngineMobile::setDataDirectory ( const char *  path) [pure virtual]

Sets data directory.

Parameters:
[in]pathpath to data directory.
virtual void fsdk::IFaceEngineMobile::setRuntimeSettingsProvider ( ISettingsProvider provider) [pure virtual]

Sets runtime settings provider.

Parameters:
[in]providerruntime settings provider.
virtual void fsdk::IFaceEngineMobile::setSettingsProvider ( ISettingsProvider provider) [pure virtual]

Sets settings provider.

Parameters:
[in]providersettings provider.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines