https://github.com/egliette/face_register
A face registration system for capturing user metadata and storing it in the database.
https://github.com/egliette/face_register
computer-vision face-detection face-recognition fastapi onnx triton
Last synced: 5 months ago
JSON representation
A face registration system for capturing user metadata and storing it in the database.
- Host: GitHub
- URL: https://github.com/egliette/face_register
- Owner: egliette
- Created: 2025-08-17T14:22:01.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-09-28T10:21:12.000Z (9 months ago)
- Last Synced: 2025-09-28T12:26:33.707Z (9 months ago)
- Topics: computer-vision, face-detection, face-recognition, fastapi, onnx, triton
- Language: Python
- Homepage:
- Size: 2.45 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Face Register Service
[](https://github.com/egliette/face_register/actions/workflows/ci.yml)
[](https://github.com/egliette/face_register/actions/workflows/publish-release.yml)
A face registration system for capturing user metadata and storing it in the database.

---
## 📖 Project Overview
Face Register is a FastAPI-based application that provides:
* **Face Detection & Recognition** with SCRFD + ArcFace (via ONNX Runtime or Triton Runtime)
* **Face Comparison & Search** - Compare faces against database with similarity scoring
* **User Management** with PostgreSQL + SQLAlchemy ORM
* **Vector Search** using Qdrant
* **Model & Image Storage** in MinIO
* **Database Versioning** with Alembic
* **Testing** with Pytest
* **Structured Logging** with custom logger
* **Service Orchestration** using Docker & Docker Compose
* **API Key Authentication** to secure access to the API
---
## ⚙️ Technology Stack
* **FastAPI** – Web framework for APIs, request handling, and docs
* **ONNX Runtime** and **NVIDIA Triton** – Runtimes for SCRFD (face detection) and ArcFace (embedding) models
* **PostgreSQL** – Stores user profiles and metadata
* **SQLAlchemy** – ORM for database modeling and queries
* **Alembic** – Handles schema migrations and versioning
* **Pytest** – Test suite for validation and reliability
* **MinIO** – Stores face images and model files (S3 compatible)
* **Qdrant** – Vector database for face embedding similarity search
* **Custom Logger** – Structured logs with performance metrics
* **GitHub Actions** – Runs linting, tests, and builds on push/PR; automates tagging, publishing Docker images to GitHub Container Registry (GHCR), generating release notes, and version bumping
* **Docker & Docker Compose** – Containerized setup for dev/test environments
---
## 🚀 Quick Start
1. **Clone and setup**:
```bash
git clone
cd face_register
cp .env.example .env # configure environment variables
```
2. **Start services**:
```bash
./scripts/dev-compose.sh
```
3. **Access the API**:
* Swagger Docs: [http://localhost:8000/docs](http://localhost:8000/docs)
* MinIO Console: [http://localhost:9001](http://localhost:9001)
---