Face-Matching Web Application Backed by Deep Neural Network
This face and image matching service provides a convenient solution for those seeking quick access to their photos taken at mass events. The solution allows users to effortlessly locate all of their photos by matching them to a face or specific images. With this tool, users will never have to sift through countless photos to find theirs.
Industry:
Leisure & Entertainment
Services:
AI & ML, Back End Development, Front End Development
Location:
Oregon, US
Challenge
Storage and filtering: The size of the database required for such a service had to be massive, which posed a challenge in terms of processing power and data storage. We had to come up with an efficient and scalable data management system that could store thousands of photos and make them easily accessible to photographers and participants.
Highly accurate facial recognition system: Our team had to develop and implement a highly accurate and advanced facial recognition system that could recognize participants from various angles and lighting conditions. This required extensive training and testing to ensure the system could reliably match faces with their respective photos.
Image matching engine: We had to develop a robust image-matching algorithm capable of handling the massive volume of photos generated during a mass event. This required significant optimization to ensure the system could quickly and accurately match images based on various criteria, including time, location, and image content.
Solution
The first and most important task was to identify the feasibility of the face matching feature. Our partners tried to build such an algorithm before and failed to deliver results. We researched similar products on the web and found that there are no solutions to match faces, not only recognize them in photos. After around three months of work, our team presented a working prototype that was able to recognize a face on a photo and then find the same face on different pictures, for example, where the person wears a hat or a mustache.
We used AI and deep neural networks to detect and match faces in different locations, with different shooting quality, lighting methods, face angle, and position. First, we detect faces and create templates for each of them. Then we use it for further matching to find similar faces.
As soon as the main concept proved itself, we built a website for image storing, detection, and matching. The result was a website that enabled athletes to view thousands of photos and find theirs by uploading a selfie, by bib number, or by time using a dynamic timeline scroll.
Along with the photographers who take photos on behalf of the event organizers, private ones want to sell their photos and earn from it. To fulfill their needs, we integrated a payment service provider (PSP) to make photo purchases possible and added watermarks to free or paid photo items.
Since the system became more complex and attracted more users, the need to reduce server costs arose. After initial analysis, our team found that the excess server expenses were due to the monolithic architecture on which the platform was based. Server resizing and auto-scaling could not solve the issue well enough, so we refactored some parts of the application using serverless technology. This approach helped to cut server costs in half and completely maintain application functionality.
For each stakeholder group, we provided value
Organizers don’t need to store and provide access to photos themselves.
Participants now can quickly find pictures of themselves.
Photographers get access to their target audience and can sell photos to them.
Technologies Used
The development team behind our innovative face and image matching service utilized the latest and most advanced technology stack to create a sophisticated solution that provides quick access to photos taken at mass events. Our cutting-edge technology stack includes AI and deep neural networks, which are the backbone of our face recognition and matching algorithm.
The workflow
Proof-of-Concept
We built a proof-of-concept to verify whether matching faces in selfies was feasible. The algorithm we built used AI and deep neural networks.
MVP
We developed a web application allowing users to search photos by face, store, get access to photos and sell them.
PSP integration
We added watermarks and payment integration to enable photo purchasing.
Going serverless
When the platform scaled and attracted more users, server costs increased. We reduced them by implementing serverless architecture.
Maintenance
We continue to improve and maintain the product and work closely with our partners on the product roadmap.
About the team
Proof-of-concept (POC) & MVP stage team structure:
Software Developers
2
Project Manager
1
QA Engineers
2
Maintenance & improvement stage team structure:
Tech Lead
1
Project Manager
1
Software Developers
2
Impact
The platform has the highest user loyalty rate, since no client has ever stopped using it.
The platform has attracted thousands of event organizers and stores millions of photos. During the biggest event in its history, users downloaded more than 100,000 photos, and overall storage contained more than 1.5 million photos.
For each stakeholder group, we provided value:
Organizers don’t need to store and provide access to photos themselves.
Participants can now quickly find pictures of themselves.
Photographers get access to their target audience and can sell photos to them.