// mp-police
Face Recognition System — MP Police
Production-ready prototype validated by MP Police stakeholders
Demos
Demo 1
Demo 2
The Problem
Manual criminal identity verification is slow, inconsistent, and dependent on individual officer memory. MP Police needed an automated face recognition system that could run on affordable deployable hardware — not cloud GPUs — and slot into workflows already in use without requiring infrastructure overhaul.
What I Built
A Raspberry Pi-based face recognition pipeline using OpenCV and dlib — enrollment, live detection, confidence-scored matching against a stored database, and a verification interface designed around how the department actually works. Built to run entirely on-device with no internet dependency, so it could operate in environments where cloud connectivity isn't guaranteed. Presented and validated in a live demonstration to MP Police officials.
What I Learned / What Broke
Lab accuracy is a lie. In a clean room with good lighting my matching was near-perfect. In real corridor conditions — bad angles, people walking past, inconsistent lighting — false negatives spiked immediately. I had to add face-alignment preprocessing and retune the confidence threshold against real footage, not test images. That gap between lab performance and field performance was the most important thing I learned.
The second lesson was specific to government stakeholders — the demo matters as much as the model. Showing a clear honest accuracy number under bad conditions earned more trust than a polished number that fell apart on camera. I stopped optimising for best-case accuracy and started optimising for consistent explainable performance. That shift changed how I think about building for real deployment versus building for a demo.
Status
Production-ready Prototype
Timeline
2024 - 2025
My Role
Hardware design, Prototyping and Deployment
Stack
- →Raspberry Pi
- →Python
- →OpenCV
- →dlib
- →face-recognition
- →NumPy