Stanford Dogs Dataset
For this project, I trained an AutoEncoder that is a kind of Convolutional Artificial Neural Network in order to paint grayscale dog images. It used images of 10 diferent dog breeds in grayscale to train a model which allows to retrieve the color version of any dog image that it receives as input. The dog breeds images of the Stanford Dogs Dataset which I used to work and build the training and testing dataset were the following:
- Beagle
- Bernese mountain dog
- Boxer
- Doberman
- German shepherd
- Golden retriever
- Rottweiler
- Saint Bernard
- Shetland sheepdog
- Welsh springer spaniel
The specific details about this project can be summarized in the followings points:
- Data --> Data was taken from the Stanford Dogs Dataset.
- The Neural Network must work with images that have a size of 256x256 pixels.
- Testing the Neural Network using additional photos that were downloaded from internet was a good way to see if the algorithm works properly.
- Even though the network was not designed to work with other kind of pictures, it was interesting to experiment with the performance on the system using photos of a different kind of animal as cats.
- Making a graph or visual representation of the training and testing errors as a function of the number of epochs was an important task to show the performance .
- The Construction of a report that shows a summary of all the layers and architecture of the Neural Network was another important task to visualize size and complexity of the resulting model.
- It was necessary to show a colored version of a Beagle breed dog as an example image vs the result of the model for that particular sample in order to demostrate practical results and accuracy related to the model.
- Convolutional Artificial neural network
- Autoencoders
- Deep learning
- Kind of task: Generative models to paint images
- Learning paradigm: Supervised
- Libraries & important modules used:Numpy, pandas, matplotlib, pytorch