Inspiration
Fact: Everyone loves Pokémon. As kids, we were always looking for new ways to enjoy and learn about Pokémon. One way we can help introduce the next generation of kids to the Pokémon franchise is to provide open access tools for storing and identifying Pokémon. Thus, for this hackathon we wanted to create a foundation for building an open-source Pokédex tool that uses inputted images to identify pictures of Pokémon out in the real world.
What it does
Our code takes in an image of a Pokémon with the background already removed, and uses color segmentation to identify the Pokémon. As of now, only five different Pokémon can be distinguished (Pikachu, Eevee, Bulbasaur, Charmander, and Squirtle). We also created a user-interface to simulate what an app using this tool might look like.
How we built it
We used python as our primary coding language. Within python we utilized OpenCV, GUI libraries, and AWS Amazon Polly. OpenCV was used for the image processing to preform color segmentation and Pokémon identification. The GUI libraries were used to create a user-interface that mimics the old-school Dexter design. Finally, we used AWS Amazon Polly to create audio files from the text-to-speech tool.
Challenges we ran into
One challenge we encountered was understanding the differences between RGB and HSV color spectrums. In our case we found that HSV was much better for color segmentation, but in order to properly utilize the OpenCV functions we had to understand how to convert to and from RGB and HSV. In addition, this project forced us to use functions and libraries we have never used before, which provided continuous challenges throughout the weekend.
Accomplishments that we're proud of
Given the short amount of time that we had to work on this project, we are proud that we were able to get not only a looks-like prototype but also a functioning prototype.
What we learned
Neither of us were particularly fluent in python, so we learned a lot in this language.
What's next for Dexter 2.0
Currently Dexter 2.0 has some limitations. For one, out of the 807 total Pokémon, it is only able to identify 5. In the future we are hoping to expand on this number. If we were to expand the number of identifiable Pokémon we would also like to incorporate machine learning techniques to create a better preforming platform. Finally, the images we used had to be cropped in order to remove the background. In the future we would like to create a function that does this automatically.
Log in or sign up for Devpost to join the conversation.