Skip to content

Dog breed classifier computer vision project using CNN transfer learning for Udacity Deep Learning Nanodegree

Notifications You must be signed in to change notification settings

technoempathy/dog-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 

Repository files navigation

Dog App

Pick the best dog to go with your outfit

Dog breed classifier computer vision project using CNN transfer learning for Udacity Deep Learning Nanodegree

Disclaimer: Here’s a picture of my dog, Oscar. Obviously, like any dog, he is a canine person and not an accessory.

My dog, Oscar is a Pug/Boston terrier

Getting Started

Step 1: Review my code and results in dog_app.ipynb.

Step 2: Do this project yourself

To make your own Dog App review the project requirements, go here and follow the instructions in the README.

Prerequisites

  1. Jupyter Notebooks
  2. GPU
  3. The dog dataset. (“Unzip the folder and place it in the repo, at location path/to/dog-project/dogImages. The dogImages/ folder should contain 133 folders, each corresponding to a different dog breed.” – @udacity)
  4. The human dataset. (“Unzip the folder and place it in the repo, at location path/to/dog-project/lfw.” -@udacity)
  5. PyTorch and Torchvision. For installation instructions see Udacity's README in the Deep Learning repository.
  6. Your own images. I recommend at least 2 test images in each of the following categories: dogs, humans, cats, other. Each image should be center-cropped and no image should contain both a dog and a human.

Known Issues

  • The human-detector (code provided by Udacity) is not very accurate and therefore interferes with the accuracy of the app as it was intended. Thus, once the rest of the cells have been run, I find it better to just run the following code, using the image of a human. The algorithm will then return the breed that best matches the human’s outfit. 😄
def human_app(img_path):
    print("Hello, human!")
    image = imread(img_path)
    plt.imshow(image)
    breed = predict_breed_transfer(img_path)
    print("You resemble a " + breed + "!")
 
 human_app("imagepath")

Authors

  • @technoempathy – Layla Messner

Acknowledgments

  • @udacity for the project, starting code, and instructions for downloading the datasets
  • @facebook for the scholarship to the Udacity Deep Learning Nanodegree

About

Dog breed classifier computer vision project using CNN transfer learning for Udacity Deep Learning Nanodegree

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published