Skip to content
Dog breed classifier computer vision project using CNN transfer learning for Udacity Deep Learning Nanodegree
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Osc.jpg
README.md
dog_app.ipynb

README.md

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
You can’t perform that action at this time.