Chicken coccidiosis is a common intestinal disease caused by protozoan parasites from the genus Eimeria. Seven species of this genus can affect chickens, each with different pathogenic characteristics and targeting a specific intestinal location. The parasites rapidly multiply, damaging the intestinal lining, preventing chickens from absorbing nutrients from their food. Vaccination, preventative medication, and good flock management practices can help control the disease.
The disease is a major menace to the global poultry industry and hampers chicken's productivity and welfare.
The aim of this machine learning project is to identify the disease of the chicken based on the fecal image of the chicken. The model can determine whether the chicken is infected with Coccidiosis or not, by just analysing the image of the fecal matter of the chicken.
The workflow defines the way the components and pipeline is constructed in the project. The basic workflow followed in this project is as follows:
- Update config.yaml
- Update secrets.yaml [Optional]
- Update params.yaml
- Update the entity
- Update the configuration manager in src config
- Update the components
- Update the pipeline
- Update the main.py
- Update the dvc.yaml
Programming Language: Python
Packages used: Tensorflow, Keras, Flask, Flask-Cors, DVC(Data-Version-Control), Pandas, Numpy, Matplotlib, Seaborn, Streamlit, Scipy
Step 1: Clone this repository
https://github.com/krishanwalia30/Chicken-Disease-Classification-Project
Step 2: Create a conda environment inside the repository
conda create -n cnncls python=3.8 -y
conda activate cnncls
Step 3: Install the requirements
pip install -r requirements.txt
# Finally run the following command
python app.py
Step 4: See the project running
open: https://localhost/8000
- Learned to create an end-to-end machine learning pipeline.
- Created different modules and components for different stages in pipeline development
- Learned about Data Version Control (DVC)
- Integrated DVC with the project to make it more efficient.
- Learned to create a Flask webapp for the model.
- Discovered the functionalities of Streamlit.
- Deployed the webapp successfully on Streamlit.
- Developed Continuous Integration and Development pipeline.
- CNN Classifier with accuracy of 0.7982
- Image upload on the web app interface and decode at the server backend.
- Model can be trained from the webapp interface as well.
- Cross platform
The project is deployed as a webapp using Streamlit.
Link: https://chicken-disease-classification-project.streamlit.app/
Run the following command in the main project command prompt,-
dvc init
dvc repro
Run the following command in the main project command prompt,-
tensorboard --logdir artifacts/prepare_callbacks/tensorboard_log_dir/