Xailient’s Face Recognition enables high-speed edge AI processing with low-power consumption using Sony’s IMX500 – a chip so small it can fit on the tip of your finger.
Xailient’s Face Recognition (FR) Edge AI Evaluation Kit (FR-EK) is a complete solution to identify faces using the Xailient FR SDK and IMX500 Intelligent Vision Sensor from SONY.
The FR-EK consists of a Raspberry Pi CPU board, the SONY IMX500 Type 2 camera module, and the Xailient FR SDK. The FR solution is capable of fast, high-accuracy FR in both single-face and multi-face modalities under a broad range of real-world conditions.
The FR-EK is aimed at a range of solutions, including smart home, retail, industrial, and automotive.
With a 12 mega-pixel camera running at approximately 20 fps, it delivers high accuracy and low latency FR results at the IoT edge.
The following table provides an overview of solution performance:
1 benchmarked against Label Faces in the Wild
The IMX500 Start-up Guide describes the hardware set-up process and is supplied by SONY to approved customers/partners. When sourcing your IMX500 hardware from SONY, you should request the Start-up Guide also.
At the Raspberry Pi console, unpack the supplied zip file containing the application:
rm -rf ~/sony-fv-app
unzip -d ~/sony-fv-app
The Xailient SDK can be configured using the json config file (found in the ‘config’ folder). The config file is separated into sections, which are used or not depending if they are present and depending on the modes the app runs.
The app can be called using the argument –xa-app-cfg and the path to the config file.
Xailient recommends that the default configuration is used for the FR-EK. Configuration parameters can be changed but should be done so in consultation with Xailient.
Face recognition applications require users to register images of their faces with the app so that the app can later identify that person.
Edit ./apps/configs/default.json and change the modes.register.emdedding_path to point to a file name after the user is registered. For example, if you want to register Sally, then change it to:
To register a user have the user stand in front of the camera approximately 0.75m away.
Then start the app:
./imx500_start.sh –xa-app-cfg ./app/configs/default.json –xa-mode register
A window will appear.
When you and the user being registered are ready, press the spacebar once. You will then see a prompt on the screen indicating the pose the user should use.
Press the spacebar when the user is looking straight at the camera and is approximately 0.75m away.
The registration process collects a few images of the user. When a sufficient number of images of the user have been collected, the registration app will request the user to change their pose. The number of poses and images per-pose are can be configured on the config file modules.fv.poses_to_register and modules.fv.number_of_embeddings_per_pose.
An example of one of the poses when registering:
When images for all of the required poses have been captured, the registration app will indicate that registration is complete:
To register another user simply edit the filename modes.register.emdedding_path in ./apps/configs/default.json to include the user’s name. Now repeat the steps above to register a User.
The app provides the best accuracy when users register their face using different poses. This helps the app better recognize faces at angles seen in real-world conditions. By default, the following poses are required when registering a user.
`straight_on` – the user should face directly at the camera
`looking_up` – the user should tilt their head up about 30 degrees
`looking_down` – the user should tilt their head down about 30 degrees
`looking_left` – the user should look to their left, turning their head about 45 degrees
`looking_right` – the user should look to their right, turning their head about 45 degrees
These poses are defined in Xailient Config file.
To perform face recognition, the application is started in the ‘verify’ mode:
./imx500_start.sh –xa-app-cfg ./apps/configs/default.json –xa-mode verify
Subjects can then position themselves in front of the camera, with recognition occurring for those subjects registered with the FR-EK.
Using the FR-EK, performance can be assessed by varying the environmental conditions, e.g. lighting levels, and/or test subject appearance, e.g. pose angle, range, accessories (such as hats and glasses).Download PDF
Xailient is a Computer Vision company specializing in putting incredibly accurate AI onto impossibly small Edge devices.
We’ve built the world’s smallest and fastest object detector to fit on extremely tiny devices running on exceptionally low power.
Specializing in TinyML computer vision for Edge devices, Xailient uses its patented technology to radically improve efficiency compared to other available solutions.
The result is accurate, real-time computer vision that’s cost-effective.
440 N Wolfe Rd, Sunnyvale,
8 The Green Suite 6970,
Dover, DE 19901
Level 8, 11 York Street,
Sydney, NSW 2000
December 28, 2022
Introducing Orchestrait: Face recognition at the edge for smart home devices SAN FRANCISCO, December 28, 2022 /PRNewswire/ — Orchestrait is the world’s first privacy-safe face recognition solution that uses state-of-the-art artificial intelligence (AI) at the edge to ensure full compliance with biometric data and privacy laws across the world. By processing data on edge – […]
March 14, 2022
Xailient specializes in extremely efficient low-power computer vision. Intel's OpenVINO specializes in maximizing the performance and speed of computer vision AI workloads. OpenVINO improved Xailient FPS 9.5x on Intel hardware to 448 FPS. Together, Xailient-Intel outperforms the comparable MobileNet_SSD by 80x. Even after Intel worked the OpenVINO magic on MobileNet_SSD, Xailient-OpenVINO is 14x faster.
We see things differently in the dynamic field of computer vision AI
You’ll get insights and resources into: