The Doodle classifier is based on a Convolutional Neural Network which classifies the doodle input given by the user in 20 different classes.
Abstract:
Computers are advancing at great speed in this age. If they have the ability to understand our doodles or quick line drawings, it will allow for much more advanced and simplified forms of communication. Drawing and understanding images is a way of communication when words fall short or language is inadequate due to different cultural and literacy levels . The techniques and algorithms used in training a machine to do specific tasks are grouped under a subject called Machine Learning and Neural Networks.
Approach:
The preliminary stage involved studying and learning the basics of Machine Learning and Deep Learning algorithms.
For the better understanding of the topic, we first developed a Digit Classifier from scratch using the MNIST dataset using Numpy library.
All the functions were build from scratch for the Forward as well as Backward propagation.
The CNN model is build with the help of PyTorch library for the convolution of image with filters along with maxpooling.
After multiple convolutional layers, the input representation is flattened into a feature vector and passed through a dense neural network for the output. A Drawing Pad is created using OpenCv for getting input from the user.