.
βββ config/ <- π Configuration files [.ini, .json, .yaml]
βββ data/ <- π Images, numpy data objects, text files
βββ docs/ <- π Store .md files. Used by Mkdocs for Project Documentation
βββ logs/ <- π Log files generated by the project during execution
βββ models/ <- π Model files [.h5, .pkl, .pt] - pre-trained weight files, snapshots, checkpoints
βββ notebooks/ <- π Jupyter Notebooks
βββ references/ <- π Data dictionaries, manuals, and all other explanatory materials
βββ scripts/ <- π Utility scripts for various project-related tasks
βββ src/ <- π Source code (.py files)
βββ tests/ <- π Unit tests for the project
βββ workspaces/ <- π Multi-user workspace that can be used in the case of a single machine
βββ .env-template <- π§ Template for the .env file
βββ .gitattributes <- π§ Standard .gitattributes file
βββ .gitignore <- π Standard .gitignore file
βββ .pre-commit-config.yaml <- π§ Config file for Git Hooks
βββ LICENSE <- πͺ§ License file [choose your appropriate license from GitHub]
βββ mkdocs.yml <- ποΈ Base config file required for Mkdocs
βββ Pipfile <- ποΈ Most commonly used python packages
βββ README.md <- π Project readme
βββ setup.py <- π¦οΈ For installing & packaging the project
βββ tox.ini <- π§ General-purpose package configuration manager
All the packages to be installed are included in the Pipfile. For installing additional packages
* numpy <- for numerical computing and scientific computing
* scipy <- mathematical algorithms and convenience functions built on the NumPy
* pandas <- for data manipulation and analysis
* matplotlib <- plotting library
* seaborn <- data visualization library for drawing informative statistical graphics.
* scikit-learn <- machine learning library
* jupyter <- web-based interactive computing platform
* jupyter-server <- backend for Jupyter notebooks. Required when running notebooks in VS Code
* ipykernel <- interactive Python shell. Required when running notebooks in VS Code
* ipython <- provides a powerful interactive shell and a kernel for Jupyter
* isort <- sorts imports in a python file
* python-decouple <- Reads configuration/settings from .env, system environment variables
* flake8 <- Code linter (format checker)
* flake8-tabs <- Tab (and Spaces) Style Checker for flake8
* black <- Code formatter
* mypy <- Static type checker
* pre-commit <- A framework for managing and maintaining multi-language pre-commit hooks.
* pdoc3 <- Generate API documentation for Python projects
* mkdocs <- Generate Project documentation for Python projects
Due to the complexity of the problems, the models were trained using Kaggle, as it provides a more robust hardware processing environment. However, the notebooks related to these models can be found in the "notebooks" folder.
-
π Fast-App PCO
-
π€© Streamlit App
-
π Fast-App PCO
-
π€© Streamlit App
Open your terminal and navigate to the project directory.
Setting dolowload models
π¨ To run the application, download the required model files from this Google Drive link and place them in the models/ directory.
.
βββ models/ <- π Model files [.h5, .pkl, .pt] - pre-trained weight files, snapshots, checkpoints
βββ vgg19_001/ <- π Model [.h5]
βββ labels.json <- File [.json]
βββ model.h5 <- File [.h5]
* Docker is required to run the application. Follow these steps:
* Install Docker if it's not already installed on your system.
* Navigate to the /app directory in the terminal.
Option 1 - π³ Docker build local
docker-compose up --build
π¨ If you encounter issues building the image, it likely indicates that you are missing some essential system packages for building.
Option 2 - π³ Pull Image from Docker
docker pull ddiazva312/object_classification
docker-compose up
http://localhost:8080/docs
http://localhost:5000/