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 Android platform uses mobilenet by default.
Input data characteristics:
- Image resolution: 640x480px;
- Image format: 24 BPP RGB;
Android#
Performance measurements are presented for ARM of Samsung SM-G930F and Samsung SM-J730FM in tables below. Measured values are averages of at least 100 experiments. Mobilenet is used by default. The number of threads auto
means that will be taken the maximum number of available threads. For this mode use the -1
value for the numThreads
parameter in the runtime.conf
. This number of threads is equal to according number of available processor cores. We strongly recommend you to follow this recommendation; otherwise, performance can be significantly reduced. Description of according settings you can find in "Configuration Guide - Runtime settings".
Samsung SM-G930F. Matcher performance#
The table below shows the performance of Matcher on the Samsung SM-G930.
Measurement | Model | Threads | Average | Units |
---|---|---|---|---|
Matcher | 59 | - | 60 K | matches/sec |
Samsung SM-G930F. Extractor performance#
The table below shows the performance of Extractor on the Samsung SM-G930.
Measurement | Model | Threads | Batch Size | Average (ms) |
---|---|---|---|---|
Extractor | 59 | 1 | 1 | 606.4 |
Extractor | 59 | auto | 1 | 241.2 |
Extractor | 59 | auto | 4 | 248.0 |
Extractor | 59 | auto | 8 | 250.9 |
Samsung SM-G930F. Detector performance#
The table below shows the performance of Detector on the Samsung SM-G930.
Measurement | Threads | Average (ms) |
---|---|---|
Detector (FaceDetV2) | 1 | 78.9 / 70.8 / 286.0 |
(Easy/complex/6 faces) | auto | 80.2 / 70.8 / 149.5 |
Samsung SM-G930F. Estimations performance#
The table below shows the performance of Estimations on the Samsung SM-G930 for estimators that have a batch interface.
Measurement | Threads | BatchSize | Average (ms) |
---|---|---|---|
HeadPose | 1 | 1 | 6.2 |
HeadPose | auto | 1 | 3.8 |
HeadPose | auto | 4 | 3.0 |
HeadPose | auto | 8 | 2.9 |
Eyes (RGB, useStatusPlan=0) | 1 | 1 | 37.8 |
Eyes (RGB, useStatusPlan=0) | auto | 1 | 15.5 |
Eyes (RGB, useStatusPlan=0) | auto | 4 | 12.8 |
Eyes (RGB, useStatusPlan=0) | auto | 8 | 12.5 |
Eyes (RGB, useStatusPlan=1) | 1 | 1 | 37.8 |
Eyes (RGB, useStatusPlan=1) | auto | 1 | 13.1 |
Eyes (RGB, useStatusPlan=1) | auto | 4 | 12.7 |
Eyes (RGB, useStatusPlan=1) | auto | 8 | 14.0 |
AGS | 1 | 1 | 5.6 |
AGS | auto | 1 | 2.3 |
AGS | auto | 4 | 1.5 |
AGS | auto | 8 | 1.4 |
BestShotQuality | 1 | 1 | 5.8 |
BestShotQuality | auto | 1 | 2.3 |
BestShotQuality | auto | 4 | 1.5 |
BestShotQuality | auto | 8 | 1.4 |
MedicalMask | 1 | 1 | 236.4 |
MedicalMask | auto | 1 | 63.4 |
MedicalMask | auto | 4 | 60.1 |
MedicalMask | auto | 8 | 59.1 |
OneShot Liveness | 1 | 1 | 1348.0 |
OneShot Liveness | auto | 1 | 366.0 |
OneShot Liveness | auto | 4 | 391.0 |
OneShot Liveness | auto | 8 | 368.0 |
The table below shows the performance of Estimations on the Samsung SM-G930 for estimators that do not have a batch interface.
Measurement | Threads | Average (ms) |
---|---|---|
Warper | 1 | 23.3 |
Warper | auto | 23.7 |
Quality | 1 | 42.0 |
Quality | auto | 11.0 |
Glasses | 1 | 57.0 |
Glasses | auto | 28.0 |
Samsung SM-J730FM. Matcher performance#
The table below shows the performance of Matcher on the Samsung SM-G930.
Measurement | Model | Threads | Average | Units |
---|---|---|---|---|
Matcher | 59 | - | 60 K | matches/sec |
Samsung SM-J730FM. Extractor performance#
The table below shows the performance of Extractor on the Samsung SM-G930.
Measurement | Model | Threads | Batch Size | Average (ms) |
---|---|---|---|---|
Extractor | 59 | 1 | 1 | 896.9 |
Extractor | 59 | auto | 1 | 460.8 |
Extractor | 59 | auto | 4 | 465.3 |
Extractor | 59 | auto | 8 | 236.7 |
Samsung SM-J730FM. Detector performance#
The table below shows the performance of Detector on the Samsung J730FM.
Measurement | Threads | Average(ms) |
---|---|---|
Detector (FaceDetV2) | 1 | 89.6 / 82.2 / 321.3 |
(Easy/complex/6 faces) | auto | 100.2 / 82.5 / 144.2 |
Samsung SM-J730FM. Estimations performance with batch interface#
The table below shows the performance of Estimations on the Samsung SM-J730FM for estimators that have a batch interface.
Measurement | Threads | BatchSize | Average(ms) |
---|---|---|---|
HeadPose | 1 | 1 | 5.1 |
HeadPose | auto | 1 | 3.5 |
HeadPose | auto | 4 | 2.3 |
HeadPose | auto | 8 | 2.1 |
Eyes (RGB, useStatusPlan=0) | 1 | 1 | 24.8 |
Eyes (RGB, useStatusPlan=0) | auto | 1 | 13.4 |
Eyes (RGB, useStatusPlan=0) | auto | 4 | 11.5 |
Eyes (RGB, useStatusPlan=0) | auto | 8 | 11.4 |
Eyes (RGB, useStatusPlan=1) | 1 | 1 | 24.7 |
Eyes (RGB, useStatusPlan=1) | auto | 1 | 13.8 |
Eyes (RGB, useStatusPlan=1) | auto | 4 | 11.5 |
Eyes (RGB, useStatusPlan=1) | auto | 8 | 11.4 |
AGS | 1 | 1 | 4.8 |
AGS | auto | 1 | 2.9 |
AGS | auto | 4 | 2.1 |
AGS | auto | 8 | 2.0 |
BestShotQuality | 1 | 1 | 5.0 |
BestShotQuality | auto | 1 | 3.2 |
BestShotQuality | auto | 4 | 2.5 |
BestShotQuality | auto | 8 | 2.0 |
MedicalMask | 1 | 1 | 157.0 |
MedicalMask | auto | 1 | 62.0 |
MedicalMask | auto | 4 | 56.0 |
MedicalMask | auto | 8 | 58.1 |
OneShot Liveness | 1 | 1 | 2067.0 |
OneShot Liveness | auto | 1 | 745.0 |
OneShot Liveness | auto | 4 | 818.0 |
OneShot Liveness | auto | 8 | 361.0 |
Samsung SM-J730FM. Estimations performance without batch interface#
The table below shows the performance of Estimations on the Samsung SM-J730FM for estimators that do not have a batch interface.
Measurement | Threads | Average (ms) |
---|---|---|
Warper | 1 | 14.5 |
Warper | auto | 14.5 |
Quality | 1 | 31.0 |
Quality | auto | 13.0 |
Glasses | 1 | 92.0 |
Glasses | auto | 15.0 |
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 54 | 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 | |
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.