Can a neural network learn to recognize doodling? Quick, Draw
You can install Conda for python which resolves all the dependencies for machine learning.
pip install -r requirements.txt
Quick, Draw! is an online game developed by Google that challenges players to draw a picture of an object or idea and then uses a neural network artificial intelligence to guess what the drawings represent. The AI learns from each drawing, increasing its ability to guess correctly in the future.The game is similar to Pictionary in that the player only has a limited time to draw (20 seconds).The concepts that it guesses can be simple, like 'foot', or more complicated, like 'animal migration'. This game is one of many simple games created by Google that are AI based as part of a project known as 'A.I. Experiments'. Quick, Draw
Follow the documentation here to get the dataset. I got .npy
files from google cloud for 14 drawings.
- Apple π
- Bowtie π
- Candle π―οΈ
- Door πͺ
- Envelope βοΈ
- Fish π
- Guitar πΈ
- Ice Cream π¦
- Lightning β‘
- Moon π
- Mountain π»
- Star β
- Tent βΊ
- Toothbrush π§Ή
- Wristwatch β
- Network Used- Convolutional Neural Network
If you face any problem, kindly raise an issue
- Get the dataset as mentioned above and place the
.npy
files in/data
folder. - First, run
LoadData.py
which will load the data from the/data
folder and store the features and labels in pickel files. - Now you need to have the data, run
QD_trainer.py
which will load data from pickle and augment it. After this, the training process begins. - Now you need to have the data, run
QuickDrawApp.py
which will use use the webcam to get what you have drawn. - For altering the model, check
QD_trainer.py
. - For tensorboard visualization, go to the specific log directory and run this command
tensorboard --logdir=.
You can go tolocalhost:6006
for visualizing your loss function and accuracy.
See the pull request here
python3 QuickDrawApp.py