SmartFace Embedded Toolkit  4.2.1
Loading...
Searching...
No Matches
sfe_iris.h File Reference

File containing API of sfe_iris library as part of SFE Toolkit. More...

#include "sfe_core.h"

Go to the source code of this file.

Data Structures

struct  SFEIrisTemplate
 Iris template struct. More...
 
struct  SFEIrisTemplateVersion
 Iris template version struct. More...
 

Macros

#define SFE_IRIS_TEMPLATE_SIZE   522
 Iris template size in bytes.
 

Typedefs

typedef struct SFEIrisTemplate SFEIrisTemplate
 Iris template struct.
 
typedef struct SFEIrisTemplateVersion SFEIrisTemplateVersion
 Iris template version struct.
 

Functions

SFEError sfeIrisTemplateExtract (SFESolver solver, SFEImageView image, const SFEDetection *detection, SFEIrisTemplate *out_iris_template)
 Extract template from source image and given iris detection.
 
SFEError sfeIrisTemplateMatch (const SFEIrisTemplate *template1, const SFEIrisTemplate *template2, float *out_matching_score)
 Match two iris templates.
 
SFEError sfeIrisTemplateVersion (const SFEIrisTemplate *iris_template, SFEIrisTemplateVersion *out_iris_template_version)
 Get iris template version.
 
SFEError sfeIrisTemplateQuality (const SFEIrisTemplate *iris_template, float *out_iris_template_quality)
 Get iris template quality.
 
SFEError sfeIrisTemplateIdentify (const SFEIrisTemplate *probe_iris_template, const SFEIrisTemplate *templates_gallery, size_t gallery_size, float matching_score_threshold, SFETemplateIdentificationCandidate *out_candidates, size_t *in_out_candidates_count, size_t thread_count)
 Get an ordered array of SFETemplateIdentificationCandidate from probe's template best matches with templates in the gallery.
 
SFEError sfeIrisEntityIdentify (const SFEIrisTemplate *probe_iris_template, const SFEIrisTemplate *templates_gallery, const SFEEntity *entities_gallery, size_t gallery_size, float matching_score_threshold, SFEEntityIdentificationCandidate *out_candidates, size_t *in_out_candidates_count, size_t thread_count)
 Get an ordered array of SFEEntityIdentificationCandidate from probe's template best matches with templates in the gallery. Entity is then used to group the results by entity using the best score of any template associated with the entity.
 

Detailed Description

File containing API of sfe_iris library as part of SFE Toolkit.

Author
Innovatrics - SmartFace Embedded
Date
2.1.2024

Definition in file sfe_iris.h.

Macro Definition Documentation

◆ SFE_IRIS_TEMPLATE_SIZE

#define SFE_IRIS_TEMPLATE_SIZE   522

Iris template size in bytes.

Definition at line 19 of file sfe_iris.h.

Typedef Documentation

◆ SFEIrisTemplate

Iris template struct.

◆ SFEIrisTemplateVersion

Iris template version struct.

Function Documentation

◆ sfeIrisEntityIdentify()

SFEError sfeIrisEntityIdentify ( const SFEIrisTemplate *  probe_iris_template,
const SFEIrisTemplate *  templates_gallery,
const SFEEntity *  entities_gallery,
size_t  gallery_size,
float  matching_score_threshold,
SFEEntityIdentificationCandidate *  out_candidates,
size_t *  in_out_candidates_count,
size_t  thread_count 
)

Get an ordered array of SFEEntityIdentificationCandidate from probe's template best matches with templates in the gallery. Entity is then used to group the results by entity using the best score of any template associated with the entity.

Parameters
[in]probe_iris_templateprobe template
[in]templates_gallerypointer to an array of SFEIrisTemplate
[in]entities_gallerypointer to an array of SFEEntity that corresponds with templates_gallery
[in]gallery_sizenumber of templates in gallery
[in]matching_score_thresholdthreshold for matching - range <0,1>
[out]out_candidatesPointer to an ordered array of candidates
[in,out]in_out_candidates_countIN: Expected number of candidates OUT: Number of found candidates with matching score above the matching score threshold
[in]thread_countNumber of threads to use in the identification - 0: use all available cores, 1: use single thread, N: use N number of threads
Returns
Error in case of failed identification.

◆ sfeIrisTemplateExtract()

SFEError sfeIrisTemplateExtract ( SFESolver  solver,
SFEImageView  image,
const SFEDetection *  detection,
SFEIrisTemplate *  out_iris_template 
)

Extract template from source image and given iris detection.

Parameters
[in]solveriris template extraction solver
[in]imagesource image
[in]detectioncore detection containing the detected iris
[out]out_iris_templateextracted iris template
Returns
Error in case of failed extraction.
Examples
example_iris_identify.cpp.

◆ sfeIrisTemplateIdentify()

SFEError sfeIrisTemplateIdentify ( const SFEIrisTemplate *  probe_iris_template,
const SFEIrisTemplate *  templates_gallery,
size_t  gallery_size,
float  matching_score_threshold,
SFETemplateIdentificationCandidate *  out_candidates,
size_t *  in_out_candidates_count,
size_t  thread_count 
)

Get an ordered array of SFETemplateIdentificationCandidate from probe's template best matches with templates in the gallery.

Parameters
[in]probe_iris_templateprobe template
[in]templates_gallerypointer to an array of SFIrisTemplate
[in]gallery_sizenumber of templates in the gallery
[in]matching_score_thresholdthreshold for matching - range <0,1>
[out]out_candidatesPointer to an ordered array of candidates
[in,out]in_out_candidates_countIN: Expected number of candidates OUT: Number of found candidates with matching score above the matching score threshold
[in]thread_countNumber of threads to use in the identification - 0: use all available cores, 1: use single thread, N: use N number of threads
Returns
Error in case of failed identification.
Examples
example_iris_identify.cpp.

◆ sfeIrisTemplateMatch()

SFEError sfeIrisTemplateMatch ( const SFEIrisTemplate *  template1,
const SFEIrisTemplate *  template2,
float *  out_matching_score 
)

Match two iris templates.

Parameters
[in]template1first template to match
[in]template2second template to match
[out]out_matching_scorematching score - range <0,1>
Returns
Error in case of failed matching.
Examples
example_iris_identify.cpp.

◆ sfeIrisTemplateQuality()

SFEError sfeIrisTemplateQuality ( const SFEIrisTemplate *  iris_template,
float *  out_iris_template_quality 
)

Get iris template quality.

Parameters
[in]iris_templatesource iris template
[out]out_iris_template_qualitytemplate quality - range <0,1>
Returns
Error in case of template checksum mismatch.
Examples
example_iris_identify.cpp.

◆ sfeIrisTemplateVersion()

SFEError sfeIrisTemplateVersion ( const SFEIrisTemplate *  iris_template,
SFEIrisTemplateVersion *  out_iris_template_version 
)

Get iris template version.

Parameters
[in]iris_templatesource iris template
[out]out_iris_template_versioniris template version struct
Returns
Error in case of template checksum mismatch.
Examples
example_iris_identify.cpp.