This project is intended to build and deploy a human tracking application onto Qualcomm Robotics development Kit (RB5) that identifies the person by face recognition.
The application consists of 2 parts: A webserver and an MQTT client. Web Server is responsible for storing the faces in RB5. It waits for POST Request from client.
API Info: Request Type: POST Endpoint name: /add_face Image can be included as multipart form data with field name as “image” Eg. (HTML Form)
MQTT Client subscribes to topic “track” and expects the name of the person as payload. You can test it using Mosquitto clients by entering the following command:
mosquitto_pub -m "<name of the person to track>" -t "track"Once a name is published to “track” topic, RB5 will initiate the tracking process for a particular person. Once the person is identified, RB5 will publish the tracked information to the topic “tracked” with payload containing following information: { “name”: , “score” : , “location”: }
-
A Linux workstation with Ubuntu 18.04.
-
Install Android Platform tools (ADB, Fastboot)
-
Download and install the SDK Manager
-
Flash the RB5 firmware image on to the board
-
Setup the Network
-
Setup the Pybind11.
-
Setup opencv for python on RB5
-
Turtlebot burger is assembled, operational and is connected to RB3
To get a local copy up and running follow these steps.
- Clone the project repository from the github to RB5.
git clone 1.Install pybind11
python3.5 -m pip install pybind11- Install opencv for python
python3.5 -m pip install opencv-python- Install Flask
python3.4 -m pip install Flask- Setup mosquitto Broker
sudo apt-get update
sudo apt-get install mosquittoTest the broker by installing mosquitto client
sudo apt-get install mosquitto-clientsNow subscribe to test topic publish to that topic and check whether subscriber got the message
mosquitto_sub -t "test"
mosquitto_pub -m "message from publisher" -t "test"Follow the below steps for initializing the application:
- Start the web server
python3.5 server.py
- Start the MQTT client for tracking:
python3.5 main.py