DeGirum Face Tracking Application Package
Project description
Face Tracking Demo
Demonstrates the following technologies:
- Face Detection in a video stream. Yolo models from DeGirum zoo are used.
- Creating face embeddings by DeepFace
- Saving face metadata, including embeddings, in a vector database (LanceDB)
- Recognition of detected faces, using saved faces metadata.
Used as a mock-up for development of hybrid deployment of a vector db.
1. Installation
Create a new conda environment:
conda env create -f environment.yml
Activate it:
conda activate dg_face_tracking
Create a database folder:
mkdir db
Change the cuurent directory to src:
cd src
Open env.ini file and fill the DEGIRUM_CLOUD_TOKEN field with a valid DeGirum cloud platform API access token.
2. Running
A laptop with an enabled camera must be used.
Start the labelling app:
python DataFaceApp.py
Start the face tracking app:
python DataFace.py face_tracker_camera
Faces will be detected and recognized in camera's stream, then displayed in app window. The identification results will be displayed above each face.
If a new person is detected, his/her face will appear with "unknown" label in the labelling app.
The operator must enter person's name and press OK button.
The system may also ask for operator's confirmation for such faces, that were recognized with a low confidence. In this case, the operator may perform one of the following:
- skip this face image by pressing Skip button;
- confirm recognition results by pressing OK button;
- override recognition results by entering the correct name.
Press OK button to finalize keying.
Ctrl+C stops the app.
3. Creating a dataset.
- Edit the
face_tracker_camera.cfg
config file by adding
[${data_source.id}, ${dataset_writer}]
line in data_connections
section.
- In
dataset
section ofLocalDBWriter.cfg
config file:
- Set the valid paths for catalogue (
catalogue_path
) and the datasets path (datasets_path
); - Set dataset name
dataset_name
- If you want to overwrite the existing dataset, set
write_mode
as "overwrite"
Run the application.
To stop data collection, press Ctrl+C
4. Running on a dataset
python DataFace.py face_tracker_dataset
dataset
section of FaceTrackerDataset.cfg
must contain the valid parameters of the dataset to be used:
- Set the valid paths for catalogue (
catalogue_path
) and the datasets path (datasets_path
); - Set the dataset name (
dataset_name
)
Run the application.
To stop running, press Ctrl+C
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file dg_face_tracking-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: dg_face_tracking-0.0.1-py3-none-any.whl
- Upload date:
- Size: 18.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35335e190b7b050d8e2889ed73bb7af6bd1bd741b3f3c47c16d8e89f1a7afbda |
|
MD5 | 777c57581d1477b4e94ab147f8421721 |
|
BLAKE2b-256 | 8d8995ea646135bc43fc9a3f219cdb29d13c1e3d837f7ac61ef9fd699d73a14b |