To broaden its professional horizons and get involved into something new, DataArt decided to dive into computer vision area, and to be more accurate, face recognition techniques. Our computer vision group created face recognition app that has access to DataArt employees’ database and could recognize them.
The application we developed deals mainly with processing of images of a given object and gathering some information related to the object, in the database. E.g. if you make a picture of your colleague, you immediately get some additional public information on what department this employee works for, when he joined the company, his latest activity in the projects and contact details.
The application used OpenCV library which provides rich functionality to process images.
Developing face recognition algorithms includes two steps. The first one is parameterization of a general object, and the second one is classification of the data collected.
There are many third-party libraries available on the market to build parameters and classify data. We used Animetrics recognition engine to quickly build proof-of-concept (PoC) version of iOS application. The prototype allows you to recognize face, and this can be done both by taking a picture either of a real person, or his printed or digital photo.
To improve reliability of the face recognition the application can be “trained” by confirming result of its work. E.g. if for a photo of a particular person the system says “60% sure”, and the user confirms the results is correct this fact means that this photo is meaningful. Also, that represents that the system needs training with this new image added, so that the following guess would give it a higher mark.
At the present moment, DataArt R&D team considers the possibility of replacing the third-party engine with a custom one.