A grocery shopping list mobile app that utilizes Convolutional Neural Networks for automatic product recognition
- ./cnn-generator | Code related to preprocessing the dataset and training the CNN.
- ./mobile-app | The code of the grocery list mobile app.
- ./server | The API that gets the images from the mobile app, creates a job at REDIS and returns the predictions for the jobs that have finished running.
- ./workers | Worker scripts that read from a REDIS queue, perform the prediction and write the results back to REDIS.
- The dataset can be downloaded from "here".
- A Redis instance running locally
- Python3
- Phonegap installed (both locally and on mobile phone)
- The model.h5 that you can download from "here". This needs to be copied to the ./workers/model-224 folder
Start the server:
$ cd ./server/
$ export FLASK_APP=server.py
$ flask run --host "0.0.0.0"
Start as many workers as you want:
$ cd ./workers/
$ python3 worker.py
Start the phonegap server in order to test the mobile app:
$ cd ./mobile-app/
$ phonegap serve