/dog-breed-classifier

Classifying 133 dog breeds using transfer learning and CNN

Primary LanguagePython

Quick start

  1. Clone the repository and navigate to the downloaded folder.

    	git clone https://github.com/ysharc/dog-breed-classifier.git
    	cd dog-breed-classifier
    
  2. Download the dog dataset. Unzip the folder and place it in the repo, at location path/to/dog-project/dogImages.

  3. Download the human dataset. Unzip the folder and place it in the repo, at location path/to/dog-project/lfw. If you are using a Windows machine, you are encouraged to use 7zip to extract the folder.

  4. Donwload the VGG-16 bottleneck features for the dog dataset. Place it in the repo, at location path/to/dog-project/bottleneck_features.

  5. Obtain the necessary Python packages, and switch Keras backend to Tensorflow.

    For Mac/OSX:

    	conda env create -f requirements/aind-dog-mac.yml
    	source activate aind-dog
    	KERAS_BACKEND=tensorflow python -c "from keras import backend"
    

    For Linux:

    	conda env create -f requirements/aind-dog-linux.yml
    	source activate aind-dog
    	KERAS_BACKEND=tensorflow python -c "from keras import backend"
    

    For Windows:

    	conda env create -f requirements/aind-dog-windows.yml
    	activate aind-dog
    	set KERAS_BACKEND=tensorflow
    	python -c "from keras import backend"
    
  6. Open the notebook and follow the instructions. I recommend running this with GPU support.

    	jupyter notebook dog_app.ipynb