The current repository contains Davide Pollicino' Honours Project. The project (still under evolution), is the result of three research questions:
- What are possible approaches to feature enginnering for the implementation of a classifier able to distinguish flower variants incredibly similar between them, even at differnt life stages and growth locations;
- Which CNN architecture would offer best performances
- Is is possible to integrate a machine learning model within a django App, without that this model would first be deployed in a cloud service and exploses via endpoint?
The machine learning model, is the the integrated and used in a Django Web APP, where user are able to:
- Classify a flower
- Leave a feedback related to the prediction
- Save a prediction as favourite
- Register, Login, and gets the user's favourite position.
# create virtual environemnt
python3 -m venv venv
# install project requirements
source venv/bin/activate
pip3 install -r requirements.txt
# run migrations
python3 manage.py makemigrations
python3 manage.py migrate
# create superuser
python3 manage.py creatersuper
# run application
python3 manage.py runserver
(Note: manage.py may be located inside the webappClassifier folder :) )
- Coding style: Black
- Python Lint: Flake8, flake8-todos
- mypy (for english type checking)
# format folder
black folder_name
# Remote all white spaces from project files
trim .
# Format file to improve syntax in according to flake8 (yes -> 2 times --aggressive)
autopep8 --in-place --aggressive --aggressive filename.py