Real-time Face Detection on Raspberry Pi

This blog post was originally published at Xailient’s website. It is reprinted here with the permission of Xailient.

A step-by-step guide to implement real-time face detection on a Raspberry Pi running 24 frames per second.

In this post, I will guide you through a step-by-step process of implementing real-time face detection on a Raspberry Pi, running 24 frames per second on a single core.

In this post, I will guide you through a step-by-step process of implementing real-time face detection on a Raspberry Pi, running 24 frames per second on a single core.

For face detection, I will use Xailient FaceSDK.

Step 1: Install Python 3.7.3

Raspbian Buster comes with Python 3.7.3 preinstalled, so there is no need to explicitly install Python 3.7.3. To confirm, use the following command to see what version of Python is installed in your Raspberry Pi.

Step 2: Install tflite for Python 3.7

To install tflite for Python 3.7, enter the following pip3 install command in your terminal.

Step 3: Install OpenCV

Install OpenCV if it is not already installed. You can either use apt install or pip3 install OpenCV on your Raspberry Pi.

or

Step 4: Download Xailient FaceSDK and Unzip

Go to Xailient SDK page and register as a new user and login.

Go to SDK tab, where you will find instructions for downloading and installing Face SDK.

For Raspberry Pi 3B+, download the ARM32 version of the SDK. You can either open the link from your Raspberry Pi’s browser to download it directly to it or you can use the following wget command:

Unzip the downloaded FaceSDK.

Step 5: Add Shared Library to Path

This is required as the library depends on some dynamically loaded shared Libraries.

You can add a library path to bashrc script so that you don’t need to export every time you login.

Step 6: Download config file

From the Xailient SDK page, download the config file by either opening the link from your Raspberry Pi’s browser to or using the following wget command:

Copy the config.json file into the FaceSDK folder.

Step 7: Install Xailient FaceSDK

To install the Xailient FaceSDK, run the Install.sh file that is inside the SDK folder. Go to the FaceSDK folder from your terminal and run the following command:

For more details on the installation process, you can refer to the Readme file that comes along with the FaceSDK.

Step 8: Run sample Face Detection code

The FaceSDK comes with sample code that demonstrates how to use and interact with the Xailient Face Detector Python library.

Go to the samples folder and run the picam_streaming_demo.py script to run real-time face detection.

You now have real-time face detection running on a Raspberry Pi.


Xailient is commercializing breakthrough university research in Artificial Intelligence and Machine Learning. Our technology dramatically reduces the costs of data transmission, storage, and computation associated with extracting useful information from real-time video by processing the way humans think.


Sabina Pokhrel
Customer Success AI Engineer, Xailient

Here you’ll find a wealth of practical technical insights and expert advice to help you bring AI and visual intelligence into your products without flying blind.

Contact

Address

Berkeley Design Technology, Inc.
PO Box #4446
Walnut Creek, CA 94596

Phone
Phone: +1 (925) 954-1411
Scroll to Top