Projek autentikasi menggunakan face recognition dengan fitur anti-spoofing
Tujuan dari projek ini adalah memiliki sistem autentikasi yang robust dan aman
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Gunakan python versi 3.10.13
Buat virtual environment dengan menjalankan
python -m venv .venv
aktifkan venv dengan command\
windows:
./.venv/Scripts/activate
linux:
source .venv/bin/activate
Install dengan menjalankan command berikut
pip install -r requirements.txt -c constraint.txt
Terdapat 2 versi kode yaitu dengan menggunakan vector database dan menggunakan pickle file.
Menjalankan versi pickle file:
uvicorn server:app --reload
Menjalankan versi vector database:
uvicorn server-db:app --reload
Kita dapat menggunakan beberapa model dan detector face sesuai kebutuhan.
Detector:
- MtCNN (untuk kebutuhan deteksi multiple face. Robust tetapi agak lambat)
- FastMtCNN (versi sederhana dari MtCNN, eksekusi jauh lebih cepat tetapi lebih cocok untuk single face)👍
- OpenCV (Versi umum, perlu konfigurasi lebih lanjut)
- RetinaFace (Detector face terbaik tetapi memliki waktu eksekusi yang lambat)\
Model:
- Facenet (500+ MB)
- Facenet512 (90+ MB)👍
- VGG-Face (500+ MB)