Newest research with GANs shows that you can not only generate completely new faces, but also vectorize the input space so that features of the face can be influenced. We wanted to use this new technology for something useful. One field where generating faces with very specific features is important is police sketches/ criminal face composition. The current state of the art is far from satisfactory, given that a good sketch can lead to a criminal offender being arrested.
What it does
Our interface first generates a random face. The user can then use a selection of sliders to alter certain features of the face to get closer to the face they have in mind. We built a MVP solution to show that the generation can be done in high resolution and almost real-time.
How we built it
Based on cutting edge research, we utilized transfer learning on cloud based tesla volta 100 to optimize a pretrained GAN network and its hyperparameters for our specific use case. With regards to hosting the model, we decided to use python sanic with redis as session store. The frontend is built in angular.
Challenges we ran into
Finding the sweet spot for our hyperparameters, highly computationally intensive training task with only 36 hours to hack.
Accomplishments that we're proud of
During the limited time we had, we were not only able to build what we had invisioned, but implemented and evaluated different GAN models to find the best one (GLOW by OpenAI, StyleGAN by NVIDIA and other VAI-based models). We are proud to say that we leveraged cutting edge research from papers only published a few months ago and use it for good.
What we learned
Working effectively in a team under pressure and with limited (computational) resources.
What's next for AIDENTIFY
We really had fun with this project and would like to keep working on it. Through this event we formed a great team and we plan on turning AIDENTIFY into an actual application that can make a difference.