Skip to content

Appendix A. Specifications#

Runtime performance for mobile environment#

Face detection performance depends on input image parameters such as resolution and bit depth as well as the size of the detected face. The iOS platform uses mobilenet by default.

Input data characteristics:

  • Image resolution: 640x480px;
  • Image format: 24 BPP RGB;

IOS#

  Performance measurements are presented for ARM of iPhones X in tables below. Measured values are averages of at least 60 experiments. Mobilenet is used by default. The number of threads auto means that the maximum number of available threads will be taken. For this mode, use the -1 value for the numThreads parameter in runtime.conf. This number of threads equals to the corresponding number of available processor cores. We strongly recommend that you follow this recommendation. Otherwise, performance can be significantly reduced. You can find descriptions of the corresponding settings in "Configuration Guide - Runtime settings".

The tables below show the performance on the iPhone 11 (128 GB).

Matcher performance#

Type CPU threads Batch Size Percentile 95 (matches/sec) RAM Memory (Mb)
59 1 1 6503020 361
60 1 1 6588440 361

Extractor performance#

Type CPU threads Batch Size Percentile 95 (ms) RAM Memory (Mb)
59 1 1 45.66 144
59 auto 1 46.85 156
59 auto 4 48.15 180
59 auto 8 50.33 255
60 1 1 46.12 294
60 auto 1 46.15 317
60 auto 4 45.4 339
60 auto 8 45.54 361

Detector performance#

Type CPU threads Batch Size Percentile 95 (ms) RAM Memory (Mb)
Detector 1 1 22.54 91
Detector auto 1 22.58 96
Detector auto 4 23.27 118
Detector auto 8 23.26 144

Estimations performance with batch interface#

Type CPU threads Batch Size Percentile 95 (ms) RAM Memory (Mb)
AGS 1 1 0.5 39
AGS auto 1 0.49 43
AGS auto 4 0.48 48
AGS auto 8 0.47 55
BestShotQuality 1 1 0.94 55
BestShotQuality auto 1 0.94 60
BestShotQuality auto 4 0.93 68
BestShotQuality auto 8 0.92 76
Eyes 1 1 1.92 144
Eyes auto 1 1.93 144
Eyes auto 4 1.84 144
Eyes auto 8 1.8 144
Glasses 1 1 2.54 361
Glasses auto 1 2.45 361
Glasses auto 4 2.42 361
Glasses auto 8 2.38 361
HeadPose 1 1 0.54 361
HeadPose auto 1 0.54 361
HeadPose auto 4 0.54 361
HeadPose auto 8 0.52 361
MedicalMask 1 1 14.74 361
MedicalMask auto 1 14.73 361
MedicalMask auto 4 14.18 361
MedicalMask auto 8 14.0 361
Quality 1 1 2.8 361
Quality auto 1 3.03 361
Quality auto 4 2.97 361
Quality auto 8 2.9 361
Warper 1 1 1.05 361
Warper auto 1 1.07 361
Warper auto 4 1.02 361
Warper auto 8 1.2 361
LivenessOneShotRGBEstimator 1 1 167.81 361
LivenessOneShotRGBEstimator auto 1 168.15 361
LivenessOneShotRGBEstimator auto 4 169.31 363
LivenessOneShotRGBEstimator auto 8 170.31 559
Mouth 1 1 18.98 575
Mouth auto 1 18.98 575
Mouth auto 4 18.44 575
Mouth auto 8 18.39 580
FaceOcclusion 1 1 16.21 580
FaceOcclusion auto 1 16.29 580
FaceOcclusion auto 4 15.82 580
FaceOcclusion auto 8 15.86 580

Descriptor size#

The table below shows size of serialized descriptors to estimate memory requirements.

"Descriptor size"

Descriptor version Data size (bytes) Metadata size (bytes) Total size
CNN 59 (60) 512 8 520

Metadata includes signature and version information that may be omitted during serialization if the NoSignature flag is specified.

When estimating individual descriptor size in memory or serialization storage requirements with default options, consider using values from the "Total size" column.

When estimating memory requirements for descriptor batches, use values from the "Data size" column instead, since a descriptor batch does not duplicate metadata per descriptor and thus is more memory-efficient.

These numbers are for approximate computation only, since they do not include overhead like memory alignment for accelerated SIMD processing and the like.

Feature matrix#

Mobile versions come in two editions: the frontend edition (or FE for short) and the complete edition.

The table below shows FaceEngine features supported by different editions of mobile platform.

"Feature matrix"

Facility Module Complete Frontend
Core Yes Yes
Face detection & alignment Face detector Yes Yes
Parameter estimation BestShotQuality estimation Yes Yes
Color estimation Yes Yes
Eye estimation Yes Yes
Head pose estimation Yes Yes
AGS estimation Yes Yes
LivenessOneShotRGB estimation Yes Yes
Medical Mask estimation Yes Yes
Quality estimation Yes Yes
Mouth estimation Yes Yes
Glasses estimation Yes Yes
Face descriptors Descriptor extraction Yes No
Descriptor matching Yes No
Descriptor batching Yes No
Descriptor search acceleration Yes No

See file "doc/FeatureMapMobile.htm" for more details.