Before moving on the documentation, check out the app live at Heroku or Streamlit Share(faster)
I have always been an avid Pokemon fan and spent a lot of my time on the FireRed and Emerald games :p
So after learning about Image Classification using CNNs and about Transfer Learning, this idea of making a real-life PokeDex struck my mind.
screencast.mov
The data for training was collected from this Kaggle Dataset and Tensorflow framework was used for Data Augmentation and Model building.
The model achieved an accuracy of approximately 87% on the test dataset.
Here is an overview of the DenseNet201 Model: . You can read more about the architecture on this blog and original paper.
So after building the model, I wanted to make it to some use for everyone (and also for some show-off). I read about the Streamlit framework that allows you to create beautiful apps for your ML/DL projects.
After the images are classified according to the saved model, I have used the PokeAPI to fetch details of the Pokemon that include its Type and Description. The sprites have been downloaded from the PokeAPI GitHub Sprites Repo.
Then the model was deployed on Heroku as it is a popular free choice for us students and is reasonably good for the use-case. I also got the invite for Streamlit Share so I have deployed the app over there as well, since it is faster than the Heroku deploy.
- Add more verbosity to the model.
- Print images of Pokemon in the results.
- Work on the theme of the app.
Feel free to give suggestions or point out flaws in the application. I am only learning and would love to make this better.
Don't forget to star the repo and share with your friends if you found this cool!