Face Filter using CNN
- Deep Learning
- Computer Vision
Have you ever used a Instagram or Snapchat filters? Those face-filters are really cool right? We have build similar type of app using Convolutional Neural Network (CNN).
A Convolutional Neural Network (ConvNet/CNN) is a Deep Learning algorithm which can take in an input image, assign importance (learnable weights and biases) to various aspects/objects in the image and be able to differentiate one from the other.
Let’s not go in-depth working mechanism of CNN (leave this headache to our experts). I will try to make it as simple as possible how we did it.
As you know Data is very very important to do any ML or Data Science project. Being leading Data Science Company in Nepal, we know how to get it whether via Scraping third party data or apis or first party or open source data.
Thanks to Kaggle for data: https://www.kaggle.com/c/facial-keypoints-detection/data
This dataset contains the image of 10,000 people with facial keypoints ( where actually the eye-points, lip-points are included.
We fed this data to our CNN model. What CNN model did was it took image as input and facial keypoint as output and made a near-accurate model that can predict where eye can be given any image.
After that, we used Django to capture real-time face of user – send image to model – model returned the eye-point and we added the sunglass over it.
- Tensorflow – Keras