Face Engine SDK  5.25.0
A face detection, recognition and tracking engine.
fsdk::IDescriptorExtractor Struct Reference

Descriptor extractor interface. More...

#include <IDescriptor.h>

Inheritance diagram for fsdk::IDescriptorExtractor:
fsdk::IRefCounted

List of all members.

Public Member Functions

virtual ResultValue< FSDKError,
float > 
extractFromWarpedImage (const Image &warp, IDescriptor *descriptor) const noexcept=0
 Extract descriptor from a warped image.
virtual ResultValue< FSDKError,
float > 
extractFromWarpedImageBatch (Span< const Image > warps, IDescriptorBatch *descriptorBatch, IDescriptor *aggregation, Span< float > garbageScoreBatch) const noexcept=0
 Extract batch of descriptors from a batch of images and perform aggregation.
virtual Result< FSDKErrorextractFromWarpedImageBatch (Span< const Image > warps, IDescriptorBatch *descriptorBatch, Span< float > garbageScoreBatch) const noexcept=0
 Extract batch of descriptors from a batch of images.
virtual Result< FSDKErrorvalidate (Span< const Image > warps, Span< Result< FSDKError >> errors) const noexcept=0
 Validate input of multiple frames in a single function call.
virtual uint32_t getModelVersion () const noexcept=0
 Get algorithm model version this extractor works with.
virtual DescriptorType getDescriptorType () const noexcept=0
 Get type of descriptor this extractor works with.
virtual FutureResult extractFromWarpedImageBatchAsync (Span< const Image > warps, IDescriptorBatch *descriptorBatch, IDescriptor *aggregation, Span< float > garbageScoreBatch) const =0
 Asynchronously extract batch of descriptors from a batch of images.

Detailed Description

Descriptor extractor interface.

Extracts face descriptors from images. The descriptors can be later used for face matching.


Member Function Documentation

virtual ResultValue<FSDKError, float> fsdk::IDescriptorExtractor::extractFromWarpedImage ( const Image warp,
IDescriptor descriptor 
) const [pure virtual]

Extract descriptor from a warped image.

Parameters:
[in]warpimage with warped face or human warp.
Note:
Warp should be a valid 250x250 image in R8G8B8 format for DT_FACE descriptor type.
Warp should be a valid 128x256 image in R8G8B8 format for DT_HUMAN descriptor type.
Parameters:
[out]descriptordescriptor to fill with data.
Returns:
ResultValue with error code and score of descriptor normalized in range [0, 1] 1 - face on the input warp; 0 - garbage on the input warp.
Note:
human descriptor does not support garbage score, 1.0 will be returned.
See also:
Image, IDescriptor, ResultValue and FSDKError for details.
Note:
warp format must be R8G8B8,
See also:
Format.
virtual ResultValue<FSDKError, float> fsdk::IDescriptorExtractor::extractFromWarpedImageBatch ( Span< const Image warps,
IDescriptorBatch descriptorBatch,
IDescriptor aggregation,
Span< float >  garbageScoreBatch 
) const [pure virtual]

Extract batch of descriptors from a batch of images and perform aggregation.

Parameters:
[in]warpsspan of images with warped faces or human warps.
Note:
Warps should be in R8G8B8 format, with size 250x250 for DT_FACE descriptor type.
Warps should be in R8G8B8 format, with size 128x256 for DT_HUMAN descriptor type.
Parameters:
[out]descriptorBatchdescriptor batch to fill with data.
Note:
DT_HUMAN descriptor does not support garbage score.
Parameters:
[out]aggregationdescriptor with aggregation based on descriptor batch.
[out]garbageScoreBatchspan of descriptor scores normalized in range [0, 1] 1 - face on the input warp; 0 - garbage on the input warp.
Note:
human descriptor does not support garbage score, 1.0 will be returned.
Returns:
ResultValue with error code and aggregated garbage score.
See also:
Span, Image, IDescriptor, IDescriptorBatch, ResultValue and FSDKError for details.
Note:
warps format must be R8G8B8,
See also:
Format.
Note:
all spans should be based on user owned continuous collections.
all spans should be equal size.
virtual Result<FSDKError> fsdk::IDescriptorExtractor::extractFromWarpedImageBatch ( Span< const Image warps,
IDescriptorBatch descriptorBatch,
Span< float >  garbageScoreBatch 
) const [pure virtual]

Extract batch of descriptors from a batch of images.

Parameters:
[in]warpsspan of images with warped faces or human warps.
Note:
Warps should be in R8G8B8 format, with size 250x250 for DT_FACE descriptor type.
Warps should be in R8G8B8 format, with size 128x256 for DT_HUMAN descriptor type.
Parameters:
[out]descriptorBatchdescriptor batch to fill with data.
[out]garbageScoreBatchspan of descriptor scores normalized in range [0, 1] 1 - face on the input warp; 0 - garbage on the input warp. DT_HUMAN descriptor does not support garbage score. In a case of DT_HUMAN descriptor, you'll get batch filled by 1.0.
Returns:
Result with error code.
See also:
Span, Image, IDescriptorBatch, Result and FSDKError for details.
Note:
warps format must be R8G8B8,
See also:
Format.
Note:
all spans should be based on user owned continuous collections.
all spans should be equal size.
virtual FutureResult fsdk::IDescriptorExtractor::extractFromWarpedImageBatchAsync ( Span< const Image warps,
IDescriptorBatch descriptorBatch,
IDescriptor aggregation,
Span< float >  garbageScoreBatch 
) const [pure virtual]

Asynchronously extract batch of descriptors from a batch of images.

Parameters:
[in]warpsspan of images with warped faces or human warps.
Note:
Warps should be in R8G8B8 format, with size 250x250 for DT_FACE descriptor type.
Warps should be in R8G8B8 format, with size 128x256 for DT_HUMAN descriptor type.
Parameters:
[out]descriptorBatchdescriptor batch to fill with data.
[out]aggregationdescriptor with aggregation based on descriptor batch.
[out]garbageScoreBatchspan of descriptor scores normalized in range [0, 1] 1 - face on the input warp; 0 - garbage on the input warp. DT_HUMAN descriptor does not support garbage score. In a case of DT_HUMAN descriptor, you'll get batch filled by 1.0.
Returns:
Result with error code and aggregated garbage score.
See also:
Span, Image, IDescriptorBatch, Result and FSDKError for details.
Note:
warps format must be R8G8B8,
See also:
Format.
Note:
all spans should be based on user owned continuous collections.
all spans should be equal size.
this method is experimental and interface may be changed in the future.
this method is not marked as noexcept and may throw an exception.

Get type of descriptor this extractor works with.

Returns:
type as enum
See also:
DescriptorType.
virtual uint32_t fsdk::IDescriptorExtractor::getModelVersion ( ) const [pure virtual]

Get algorithm model version this extractor works with.

Returns:
Version as integral number.
virtual Result<FSDKError> fsdk::IDescriptorExtractor::validate ( Span< const Image warps,
Span< Result< FSDKError >>  errors 
) const [pure virtual]

Validate input of multiple frames in a single function call.

Parameters:
[in]warpsspan of images with warped faces or human warps.
[out]errorsoutput span of errors for each image.
Returns:
Result with error code.
See also:
Span, Image, Result and FSDKError for details.
Note:
warps format must be R8G8B8,
See also:
Format.
Note:
all spans should be based on user owned continuous collections.
all spans should be equal size.

The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines