Face Recognition (Complete)🔗

Hardware and software

Warning

The Eocortex Neural Networks package must be installed before it will be possible to use neural networks-based features of the module.

The following equipment is required to use this neural network-based module:

  • A processor that supports AVX instructions;

  • An NVIDIA video card (GPU) with the computation capacity index of at least 6.5 and with at least 4 Gb of memory; the parameters and performance of the video card must be similar or better than those of NVIDIA GTX 1650 Super model;

  • Version of the video card driver at least 460;

  • Swap file at least half of the total RAM size.

If the package will be installed on a virtual machine, it may additionally be required to:

  • Enable support for AVX instructions in the guest machine settings;

  • Use GRID drivers for GPU virtualization.

Warning

Eocortex must use video cards selected for running neural networks in monopoly mode. It is not allowed to use such card for other applications or tasks that consume GPU resources, including for displaying video. Simultaneous use of a video card for several tasks may lead to incorrect system operation: from analytics performance degradation to server instability.

Warning

Simultaneous execution of tasks of video displaying and analysis with the Face Recognition (Complete) or Unique Visitor Counting modules working on the Eocortex Neural Networks Standard package can cause significant lags of face recognition processes when using graphics cards of GTX 10XX and GTX 16XX series with 4 GB of video memory or less. It is recommended to use dedicated graphics cards for these tasks.

Warning

The neural network works with the 64-bit version of Eocortex only.

Warning

When upgrading Eocortex to another version, it is necessary to also upgrade the Eocortex Neural Networks package to the corresponding version.

Faces

The images to be added to the database must conform to the following requirements:

  • Face position: strictly face forward, no turns;

  • Look: directly into the lens;

  • Neutral facial expression;

  • Eyes open and clearly seen;

  • No headgear or sunglasses;

  • Sharp and clear image;

  • No heavy shadows;

  • No scanning artifacts, no retakes from screens;

  • No disfigured proportions;

  • Lateral illumination is not permissible (e.g. sunshine from window);

  • Image formats: jpg, png, bmp.

The module is tolerant to appearance modification:

/analytics/faces-recognition/img/example-change-db.png

/analytics/faces-recognition/img/example-change-ok.png

/analytics/faces-recognition/img/example-change-err-1.png

/analytics/faces-recognition/img/example-change-err-2.png

/analytics/faces-recognition/img/example-change-err-3.png

DB

Video stream

Optimum resolution for the module’s operation: HD or FullHD.

Framerate: 10 fps or more.

No mirrored (horizontally flipped) stream.

Lighting and image quality

Illumination of faces in the frame must be uniform and constant.

If the camera is installed opposite a bright source of light (sun behind the entrance door, etc.), it is required to adjust the exposure or brightness in such a way that the face in the frame is light. The overexposed background is acceptable.

The image quality must be medium or better. Significant compression artefacts are not acceptable.

No blurring of moving people’s faces is allowed.

The image must be in color.

Scene and camera position

The faces must be fully seen in the frame.

There must be no mirror surfaces giving reflections in the frame (glass, mirrors, etc.).

Strong lateral illumination (e.g. sunlight from the window) resulting in the overexposure of one part of the face is not acceptable.

The camera may be placed above the face level, directly facing the people to be recognized. In such a case, the camera elevation angle must not exceed 35°.

The distance between the pupils of a face to be recognized must be at least 30 pixels.

The camera must directly face the people to be recognized. The camera angle between the face direction and the lens axis must not exceed 30°.

Examples of non-compliance

Covering (overlapping):

/analytics/faces-recognition/img/example-overlap-ok.png

/analytics/faces-recognition/img/example-overlap-err.png

x

Face illumination:

/analytics/faces-recognition/img/example-illumination-ok.png

/analytics/faces-recognition/img/example-illumination-err-1.png

/analytics/faces-recognition/img/example-illumination-err-2.png

x

x

Blurring of face in motion:

/analytics/faces-recognition/img/example-blur-ok.gif

/analytics/faces-recognition/img/example-blur-err.gif

x

Unacceptable distance between pupils:

/analytics/faces-recognition/img/example-pupils-ok.png

/analytics/faces-recognition/img/example-pupils-err.png

30 pixels

15 pixels

x

Video stream quality:

/analytics/faces-recognition/img/example-quality-ok.png

/analytics/faces-recognition/img/example-quality-err.png

x

Camera tilt:

/analytics/faces-recognition/img/example-tilt-35.png

/analytics/faces-recognition/img/example-tilt-50.png

/analytics/faces-recognition/img/example-tilt-70.png

35°

50°

70°

!

x

Lateral light source:

/analytics/faces-recognition/img/example-side-ok.png

/analytics/faces-recognition/img/example-side-err.png

x

Reflecting surfaces:

/analytics/faces-recognition/img/example-mirror-ok.png

/analytics/faces-recognition/img/example-mirror-err.png

x

Horizontal turn of camera from face plane:

/analytics/faces-recognition/img/example-pan-0.jpg

/analytics/faces-recognition/img/example-pan-15.jpg

/analytics/faces-recognition/img/example-pan-30.jpg

/analytics/faces-recognition/img/example-pan-45.jpg

/analytics/faces-recognition/img/example-pan-60.jpg

/analytics/faces-recognition/img/example-pan-90.jpg

15°

30°

45°

60°

90°

x

x

Black and white image (night mode):

/analytics/faces-recognition/img/example-color-on.png

/analytics/faces-recognition/img/example-color-off.png

x

Image clarity and sharpness:

/analytics/faces-recognition/img/example-clarity-yes.png

/analytics/faces-recognition/img/example-clarity-yes1.png

/analytics/faces-recognition/img/example-clarity-no.png

X

Recommended camera settings

Quality: highest.

Bitrate: maximum possible.

Profile: maximum possible.

I-frame interval (GOV): 50.

Stream anti-aliasing: off.

Exposure and brightness: ensuring that the face is clearly seen (if the camera faces the light source, the overexposed background is acceptable).

Shutter speed: must not be too low (more than 1/50), because in such a case the blurring of moving objects will occur.

Consumption

The modules use much RAM during launching. Due to that fact, in the course of starting the server with the operating module it is recommended to have a reserve of free RAM in the amount of 3–5 GB. At that, the swap file must be enabled on the server (when setting its size, you may choose Select automatically).