Inspiration
Our team adores dogs and is fascinated with the concepts of machine learning and AI. What do you get when you combine these topics together? iDogifier! With rapidly advancing technology, facial recognition has come a long way and has proven its usefulness largely in safety and security. By extending machine learning facial recognition to animals, we would be able to open up a whole new array of possible applications in which will prove to be useful in many situations that will improve one's quality of life.
With this being said, our team decided to start with one of the top most beloved animals around the world - the dog. From our own experiences of hearing news and stories about how many dogs are lost/stolen each year, we were inspired to develop a lost dog recognition app that would help increase the chances of reuniting lost dogs with their owners.
What it does
With limited experience in deep machine learning and AI programming, our team has come up with an app that will take in any image of a dog and identify it as either one of the 3 most popular dog breeds stored in our database - the husky, pomeranian, and pug. A percentage of how likely it is to be that dog breed is provided as well.
How we built it
We used TensorFlow and Python to create a machine learning engine. Using a database of hundreds of different dog pictures from link, we created a model that is able to determine the breed of the dog in any picture. We saved the model so that the application does not need to go through retraining for every use.
Challenges we ran into
We realized that training the machine learning model every time the user opened the app would be extremely frustrating, since the training process took about 15 minutes. A challenge we faced was coming up with a solution to save the model in a format that the application is able to pick up on every time it is run, so that users are able to immediately load in a picture and see results. We found out that TensorFlow provides methods to save and load machine learning models.
Accomplishments that we're proud of
We have always heard about Machine Learning, and how powerful it is. It amazes us how the human brain is so skilled at recognizing images, but in order for a computer to do so, we have to train it with hundreds, or even thousands, of different images. We've always thought of Machine Learning as a very advanced programming concept, and creating an application that uses Machine Learning for the first time is definitely a huge step in our tech careers.
What we learned
We learned that Machine Learning needs to break down the pictures into pixels, and undergo huge amounts of pattern recognition to identify objects. Pattern recognition for humans is usually very straightforward and accurate for the most part. On the other hand, computers are sometimes unable to confidently recognize a pattern, and in order to boost that confidence, we need to feed it more and more data.
What's next for iDogifier
The goal is to have an app that will be able to identify a lost dog in camera footage (ex:home security footage) or picture. Currently our program can only identify a dog to be one of the 3 dog breeds (husky, pomeranian, pug) to some degree of accuracy.
The next steps would be to increase the accuracy and effectiveness of identifying a specific dog with deep machine learning, as well as expand the database of identifiable dog breeds. In addition, user experience should be improved.
A person walking on the street may see a lost dog, but may be completely unaware of who the owner of the dog is, and how to contact them. A next step for iDogifier would allow users to upload a picture of the lost dog, and the owner of the lost dog would receive a notification saying that their dog has been found. iDogifer would create a platform for owners to quickly bring their dogs back home.
Built With
- python
- tensorflow
Log in or sign up for Devpost to join the conversation.