Face Engine SDK 5.25.0
A face detection, recognition and tracking engine.
Loading...
Searching...
No Matches
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...
 

Macros

#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 ISettingsProviderfsdk::IFaceEngineMobile::getSettingsProvider () const noexcept=0
 Gets settings provider.
 
virtual ISettingsProviderfsdk::IFaceEngineMobile::getRuntimeSettingsProvider () const noexcept=0
 Gets runtime settings provider.
 
virtual ILicensefsdk::IFaceEngineMobile::getLicense () const noexcept=0
 Get current License object, which was set for FaceEngine object.
 
FSDK_API Result< FSDKErrorfsdk::activateLicense (ILicense *license, const char *configPath) noexcept
 Makes License activation with some platform specific manner. Network connection is required.
 
FSDK_API Result< FSDKErrorfsdk::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.

Macro Definition Documentation

◆ DECLARE_SMARTPTR

#define DECLARE_SMARTPTR ( X)
Value:
struct X; \
using X##Ptr = fsdk::Ref<X>
Smart pointer for reference counted objects.
Definition Ref.h:26

Smart ptr declaration helper macro.

Function Documentation

◆ activateLicense() [1/2]

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

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.

◆ activateLicense() [2/2]

FSDK_API Result< FSDKError > fsdk::activateLicense ( ILicense * license,
ISettingsProvider * settings )
noexcept

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.

◆ createAGSEstimator()

virtual ResultValue< FSDKError, IAGSEstimatorPtr > fsdk::IFaceEngineMobile::createAGSEstimator ( )
pure virtualnoexcept

Creates AGS estimator.

Returns
Error code;
See also
FSDKError and AGS estimator if succeeded, null if failed.

◆ createBestShotQualityEstimator()

virtual ResultValue< FSDKError, IBestShotQualityEstimatorPtr > fsdk::IFaceEngineMobile::createBestShotQualityEstimator ( )
pure virtualnoexcept

Creates BestShotQuality estimator.

Returns
Error code;
See also
FSDKError and BestShotQuality estimator if succeed, null if failed.

◆ createDepthLivenessEstimator()

virtual ResultValue< FSDKError, IDepthLivenessEstimatorPtr > fsdk::IFaceEngineMobile::createDepthLivenessEstimator ( )
pure virtualnoexcept

Creates universal DepthLiveness estimator.

Returns
ResultValue with error code and IDepthLivenessEstimatorPtr instance.
See also
ResultValue, FSDKError, IDepthLivenessEstimatorPtr, LaunchOptions

◆ createDescriptor() [1/2]

virtual ResultValue< FSDKError, IDescriptorPtr > fsdk::IFaceEngineMobile::createDescriptor ( IArchive * archive,
uint32_t flags = 0 )
pure virtualnoexcept

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.

◆ createDescriptor() [2/2]

virtual ResultValue< FSDKError, IDescriptorPtr > fsdk::IFaceEngineMobile::createDescriptor ( uint32_t version = 0)
pure virtualnoexcept

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.

◆ createDescriptorBatch()

virtual ResultValue< FSDKError, IDescriptorBatchPtr > fsdk::IFaceEngineMobile::createDescriptorBatch ( int32_t size,
uint32_t version = 0 )
pure virtualnoexcept

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.

◆ createDetector()

virtual ResultValue< FSDKError, IDetectorPtr > fsdk::IFaceEngineMobile::createDetector ( )
pure virtualnoexcept

Creates a detector of given type.

Returns
Error code;
See also
FSDKError and detector object if succeeded, null if failed.

◆ createExtractor()

virtual ResultValue< FSDKError, IDescriptorExtractorPtr > fsdk::IFaceEngineMobile::createExtractor ( uint32_t version = 0)
pure virtualnoexcept

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.

◆ createEyeEstimator()

virtual ResultValue< FSDKError, IEyeEstimatorPtr > fsdk::IFaceEngineMobile::createEyeEstimator ( )
pure virtualnoexcept

Creates Eye estimator.

Returns
Error code;
See also
FSDKError and Eye estimator if succeed, null if failed.

◆ createFaceEngineMobile()

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.

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.

◆ createFaceOcclusionEstimator()

virtual ResultValue< FSDKError, IFaceOcclusionEstimatorPtr > fsdk::IFaceEngineMobile::createFaceOcclusionEstimator ( )
pure virtualnoexcept

Creates FaceOcclusion estimator.

Returns
ResultValue with error code and IFaceOcclusionEstimatorPtr instance.
See also
ResultValue, FSDKError, IFaceOcclusionEstimatorPtr

◆ createGlassesEstimator()

virtual ResultValue< FSDKError, IGlassesEstimatorPtr > fsdk::IFaceEngineMobile::createGlassesEstimator ( )
pure virtualnoexcept

Creates Glasses estimator.

Returns
ResultValue with error code and IGlassesEstimatorPtr instance.
See also
ResultValue, FSDKError, IGlassesEstimatorPtr

◆ createHeadPoseEstimator()

virtual ResultValue< FSDKError, IHeadPoseEstimatorPtr > fsdk::IFaceEngineMobile::createHeadPoseEstimator ( )
pure virtualnoexcept

Creates Head pose estimator.

Returns
Error code;
See also
FSDKError and Head pose estimator if succeeded, null if failed.

◆ createLivenessDepthRGBEstimator()

virtual ResultValue< FSDKError, ILivenessDepthRGBEstimatorPtr > fsdk::IFaceEngineMobile::createLivenessDepthRGBEstimator ( )
pure virtualnoexcept

Creates Liveness Depth+RGB estimator.

Returns
ResultValue with error code and ILivenessDepthRGBEstimatorPtr instance.
See also
ResultValue, FSDKError, ILivenessDepthRGBEstimatorPtr

◆ createLivenessOneShotRGBEstimator()

virtual ResultValue< FSDKError, ILivenessOneShotRGBEstimatorPtr > fsdk::IFaceEngineMobile::createLivenessOneShotRGBEstimator ( )
pure virtualnoexcept

Creates Liveness OneShot estimator.

Returns
Error code;
See also
FSDKError and OneShot liveness estimator if succeed, null if failed.

◆ createMatcher()

virtual ResultValue< FSDKError, IDescriptorMatcherPtr > fsdk::IFaceEngineMobile::createMatcher ( uint32_t version = 0)
pure virtualnoexcept

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.

◆ createMedicalMaskEstimator()

virtual ResultValue< FSDKError, IMedicalMaskEstimatorPtr > fsdk::IFaceEngineMobile::createMedicalMaskEstimator ( )
pure virtualnoexcept

Creates MedicalMask estimator.

Returns
ResultValue with error code and IMedicalMaskEstimatorPtr instance.
See also
ResultValue, FSDKError, IMedicalMaskEstimatorPtr

◆ createMouthEstimator()

virtual ResultValue< FSDKError, IMouthEstimatorPtr > fsdk::IFaceEngineMobile::createMouthEstimator ( )
pure virtualnoexcept

Creates Mouth estimator.

Returns
ResultValue with error code and IMouthEstimatorPtr instance.
See also
ResultValue, FSDKError, IMouthEstimatorPtr

◆ createNIRLivenessEstimator()

virtual ResultValue< FSDKError, INIRLivenessEstimatorPtr > fsdk::IFaceEngineMobile::createNIRLivenessEstimator ( const NIRLivenessMode mode = NIRLivenessMode::Default)
pure virtualnoexcept

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

◆ createQualityEstimator()

virtual ResultValue< FSDKError, IQualityEstimatorPtr > fsdk::IFaceEngineMobile::createQualityEstimator ( )
pure virtualnoexcept

Creates Quality estimator.

Returns
ResultValue with error code and IQualityEstimatorPtr instance.
See also
ResultValue, FSDKError, IQualityEstimatorPtr

◆ createSettingsProvider()

FSDK_API fsdk::ResultValue< fsdk::FSDKError, fsdk::ISettingsProviderPtr > fsdk::createSettingsProvider ( const char * path)
noexcept

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.

◆ createSettingsProviderFromString()

FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > fsdk::createSettingsProviderFromString ( const char * content)
noexcept

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

◆ createWarper()

virtual ResultValue< FSDKError, IWarperPtr > fsdk::IFaceEngineMobile::createWarper ( )
pure virtualnoexcept

Creates warper.

Returns
Warper if succeed, null if failed.

◆ getDataDirectory()

virtual const char * fsdk::IFaceEngineMobile::getDataDirectory ( ) const
pure virtualnoexcept

Gets data directory.

By default is set to "./data".

Returns
path to data directory.

◆ getFaceEngineEdition()

virtual FaceEngineEdition fsdk::IFaceEngineMobile::getFaceEngineEdition ( ) const
pure virtualnoexcept

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.

◆ getLicense()

virtual ILicense * fsdk::IFaceEngineMobile::getLicense ( ) const
pure virtualnoexcept

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

Returns
pointer to current license object, nullptr if no any license was set to.

◆ getRuntimeSettingsProvider()

virtual ISettingsProvider * fsdk::IFaceEngineMobile::getRuntimeSettingsProvider ( ) const
pure virtualnoexcept

Gets runtime settings provider.

Returns
runtime settings provider.

◆ getSettingsProvider()

virtual ISettingsProvider * fsdk::IFaceEngineMobile::getSettingsProvider ( ) const
pure virtualnoexcept

Gets settings provider.

Returns
settings provider.

◆ setDataDirectory()

virtual void fsdk::IFaceEngineMobile::setDataDirectory ( const char * path)
pure virtualnoexcept

Sets data directory.

Parameters
[in]pathpath to data directory.

◆ setRuntimeSettingsProvider()

virtual void fsdk::IFaceEngineMobile::setRuntimeSettingsProvider ( ISettingsProvider * provider)
pure virtualnoexcept

Sets runtime settings provider.

Parameters
[in]providerruntime settings provider.

◆ setSettingsProvider()

virtual void fsdk::IFaceEngineMobile::setSettingsProvider ( ISettingsProvider * provider)
pure virtualnoexcept

Sets settings provider.

Parameters
[in]providersettings provider.