tags:
- coffee
- cherry count
- yield estimate
- ultralyticsplus
- yolov8
- ultralytics
- yolo
- vision
- object-detection
- pytorch
library_name: ultralytics
library_version: 8.0.75
inference: false
datasets:
- rgautron/croppie_coffee
model-index:
- name: rgautron/croppie_coffee
results:
- task:
type: object-detection
dataset:
type: rgautron/croppie_coffee
name: croppie_coffee
split: val
metrics:
- type: precision
value: 0.691
name: [email protected](box)
license: gpl-3.0
license_link: https://www.gnu.org/licenses/quick-guide-gplv3.html
base_model: Ultralytics/YOLOv8
Croppie cherry detection model Β© 2024 by Alliance Bioversity & CIAT, Producers Direct and M-Omulimisa is licensed under GNU-GPLv3
Funded by: Deutsche Gesellschaft fΓΌr Internationale Zusammenarbeit (GIZ) Fair Forward Initiative - AI for All
General description
Ultralytics' Yolo V8 medium model fined tuned for coffee cherry detection using the Croppie coffee dataset.
This algorithm provides automated cherry count from RGB pictures. Takes as input a picture and returns the cherry count by class.
The predicted numerical classes correspond to the following cherry types:
{0: "dark_brown_cherry", 1: "green_cherry", 2: "red_cherry", 3: "yellow_cherry"}
Examples of use:
- yield estimates
- ripeness detection
Limitations: This algorithm does not include correction of cherry occlusion.
Note: the low visibility/unsure class was not used for model fine tuning
Repository structure
.
βββ images
β βββ foo.bar # images for the documentation
βββ model_v3_202402021.pt # fine tuning of Yolo v8
βββ README.md
βββ LICENSE.txt # detailed term of the software license
βββ scripts
βββ custom_YOLO.py # script which overwrites the default YOLO class
βββ render_results.py # helper function to annotate predictions
βββ requirements.txt # pip requirements
βββ test_script.py # test script
Demonstration
Assuming you are in the scripts
folder, you can run python3 test_script.py
. This script saves the annotated image in ../images/annotated_1688033955437.jpg
.
Make sure that the Python packages found in requirements.txt
are installed. In case they are not, simply run pip3 install -r requirements.txt
.
A live demonstration is freely accesible here.
Training metrics
The model has been trained using the custom YOLO class found in ./scripts/custom_YOLO.py
. The custom YOLO class can be exactly used as the original YOLO class. The hyperparameters used during the training can be found in ./scripts/args.yaml
.
The training maximize the [email protected], which is the mean Average Precision calculated at a 0.5 Intersection over Union (IoU) threshold, measuring how well the model detects objects with at least 50% overlap between predicted and ground truth bounding boxes.
Test metrics
License
Croppie cherry detection model Β© 2024 by Alliance Bioversity & CIAT, Producers Direct and M-Omulimisa is licensed under GNU-GPLv3
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.
The detailed terms of the license are available in the LICENSE
file in the repository.
Funding
Funded by: Deutsche Gesellschaft fΓΌr Internationale Zusammenarbeit (GIZ) Fair Forward Initiative - AI for All