amznbin is a deep learning image recognition project using Amazon Bin Image Dataset.
We solve two tasks,
- Count: Predict the number of items in the image
- Classify: Predict what item is contained in the image
To reduce the complexity of the tasks and training time,
- We use images with only one kind of item. - this enables us to solve classify task as a single classification task
- We specify the minimum number of repetition of an item - most items appear only once in all images, when untreated it will make testing and validating unconvincing.
- We manually ruled out a number of invalid images. - check
dataset/invalid_images.jsonto see which images are excluded.
How to Start
- On root directory run
pip install -r requirements.txtto install required libraries
make load_metadataon command line to download the images and metadata (Using tmux would be a good idea)
make load_metadatais finished, run
make prepare_trainand input the number of repetition you want (we recommend 20 or higher) and data augmentation mode.
- When all above is finished you are ready to run our program!
make demoto checkout our training demo - To run the demo of our pretrained model, open
jupyter notebookand run
- our pretrained model was too big to upload on github, you can train the model and use your own trained model to use this file
We accomplished 68.5714% accuracy on count task, and 41.4286% accuracy on classify task