The last months I have been working on an app that is like Pokemon GO but for real dogs: a person takes a photo of a dog, the app recognizes the breed and adds it to a dog collection, you can get achievements and participate on seasonal challenges, among other fun stuff. The app's name is Todogs and it's available on Android and iOS
This is how the app looks:
A big challenge was to make the app work in real time, with no delays, and without needing internet connection to perform the recognition, so for that I needed to train my own Machine Learning model, for what I used Tensorflow (And TFLite to run it), I trained a model with 117 breeds and worked like a charm!.
Now, in order to train an image model like this you need a big enough dataset for the model accuracy to be good enough for a product, I found some images repositories that I used, needing around 150 images for each one of the 117 breeds. The thing is, even in these repositories there are some mistakes, some breeds with wrong tags, some images are too dark, or multiple dogs show in them, etc.
Also, now that I want the model to include more breeds and improve itself, I have to search on the internet for more dog images (The more data the better).






