This project aims to create a web application that classifies dogs according to their breed. The user can access the built-in camera or download an image from his computer. The application then returns the first five breeds of dogs that match this search and their probability percentage.
It addressed to city dwellers at city dwellers who are looking for specific breeds compatible with their existing dog or simply out of curiosity. This can be from the professional dog-sitter who wants to ensure that his dogs will get along to the simple owner looking for an ideal companion for a dog walk in the city. This application could also be handy to prospects of dog shelters who want to be informed intelligently before acquiring an abandoned dog of the specific needs of such or such breed (or a mix of races)
This project was created in August 2022 as part of the 'Building Interactive Web Applications for Data Analysis' course given by the Harvard Summer School. Limited in time (this project lasted only six weeks), it could have gone further by adding additional features, such as geolocation and incorporating a virtual social network.
The application was developed in Flask, Jinja, SQLAlchemy, and published on Heroku. The image classification is a CNN model. It feeds on the following dataset: https://www.kaggle.com/datasets/jessicali9530/stanford-dogs-dataset, and uses the PyTorch ML framework library with the ResNet18 image classifier pre-trained on ImageNet images.
Sr. Commercial Engineer at Rockwell Automation
"This project has been a phenominal oppurtuniy to learn more about smart data visualization. While our postgreSQL database is relatively simple, managing our many routes was the key to our backend."
Software developer specializing in machine learning.
"Say something about the project... Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
This application targets city dwellers with pets who are constantly surrounded by other dogs. Our dog classification technology will help dog lovers identify breeds and match with compatible furry friends.
Mr. X is a professional dog-sitter and lives comfortably from his activity. One of his clients, Mrs. Y owns a Chihuahua (70% probability). A new client comes along, but Mr. X is reluctant to sign a new contract. He uses the application to determine the breed of the dog (55% probability of being a Rottweiler, 30% probability of being a Labrador, 15% undefined). Will the genes of the Rottweiler match the loquacious character of the Chihuahua?
Mr. X. is in the market to adopt a dog, but would love to take home one of the many shelter dogs looking for a home. Knowing the personality and tendencies of his new dog is important as he trains his new puppy. This application will be perfect as Mr. X chooses his new furry friend.
Mr. X is a very busy man but loves his dog! Since he is not often around, he wants his dog walks to be qualitative. For this, he uses the application to find the ideal playmate (criteria based on image of each dog breed). Will he be a great athlete like the German Shepherd or more of an affectionate type like the Labrador?