The web application analyses video streams, video files, photos, and detects face found on the media. The app matches detect faces against those stored in the database in real-time. It allows Administrators to assign faces detected on media to existing persons on file or register them as a new individual. The system has ability to create multiple organizations with users granted different levels of access.
The client had its own bespoke facial recognition solution. Our goal was to integrate this solution (written on C++) with our platform which was created from scratch. Real-time video streams facial recognition is a very resource consuming process that requires custom AWS setup and special approaches in backend development.
Support for different video stream sources.
Ability for Administrators to create Persons and assign matched faces to them.
Ability for Users to see the faces that were recognized and matched real-time in video and video streams.
Ability to detect faces stored as persons in database.
For developing the platform, we used Python for Backend, and Angular for Frontend. For the database we used PostgreSQL. In order to optimize performance, we created a custom AWS setup that included load balancing, NFS Directory, and AWS ElastiCache.