| --- |
| license: mit |
| language: |
| - en |
| - id |
| metrics: |
| - recall |
| - precision |
| - f1 |
| base_model: |
| - Ultralytics/YOLOv8 |
| pipeline_tag: object-detection |
| tags: |
| - waste-classification |
| - sustainability |
| - yolov8 |
| --- |
| # ποΈ Real Time Waste Classification β YOLOv8 Large (High Resolution) |
|
|
| A high-resolution real time waste-classification model built using **YOLOv8-Large**, fine-tuned to detect and categorize **12 types of waste** use camera. |
| This model was developed as a Capstone Mini-Project for the **REA AI Engineering Bootcamp**. |
|
|
| --- |
|
|
| ## π Overview |
|
|
| This project provides a custom object-detection model designed to support: |
|
|
| * β»οΈ **Automated waste-sorting systems** |
| * π± **Recycling education applications** |
| * π **Environmental monitoring tools** |
|
|
| The model was trained on 1280Γ1280 high-resolution images to better capture fine-grained details common in trash and recyclables. |
|
|
| --- |
|
|
| ## π§ Model Details |
|
|
| | Property | Value | |
| | --------------------- | ---------------------- | |
| | **Architecture** | YOLOv8-Large (yolov8l) | |
| | **Task** | Object (Real Time) Detection| |
| | **Input Size** | 1280 Γ 1280 | |
| | **Number of Classes** | 12 | |
| | **Base Model** | `ultralytics/yolov8l` | |
| | **License** | MIT | |
|
|
| --- |
|
|
| ## π― Classes |
|
|
| The model detects 12 waste categories, including: |
|
|
| * Clothes |
| * Brown-Glass |
| * Shoes |
| * Plastic |
| * Biological |
| * (and others) |
|
|
| --- |
|
|
| ## π Evaluation Results |
|
|
| The model was evaluated on **1,935 validation images**. |
|
|
| ### **Overall Performance** |
|
|
| | Metric | Score | Description | |
| | ---------- | --------- | ------------------------------------ | |
| | **mAP@50** | **0.783** | Strong overall detection performance | |
|
|
| --- |
|
|
| ### **Performance by Class** |
|
|
| The model performs extremely well on rigid, well-shaped objects but struggles with amorphous organic materials. |
|
|
| | Class | mAP@50 | Status | Insight | |
| | --------------- | ------ | ------------------- | ------------------------------- | |
| | **Clothes** | 0.987 | π Excellent | Consistent shape and texture | |
| | **Brown-Glass** | 0.905 | β
Very Good | Strong geometric patterns | |
| | **Shoes** | 0.847 | β
Good | High recall and precision | |
| | **Plastic** | 0.706 | β οΈ Moderate | Transparency/deformation issues | |
| | **Biological** | 0.580 | β Needs Improvement | Blends into background | |
|
|
| --- |
|
|
| ## π Deep Dive: Key Insights |
|
|
| ### **1. Biological Waste Challenge** |
|
|
| * **Recall:** 0.445 |
| * **Missed detections:** 741 biological items labeled as background |
| * **Cause:** Organic waste lacks distinct shape or edges, making it harder for YOLO to detect. |
|
|
| ### **2. False Positives** |
|
|
| * **540 biological false positives** on plain backgrounds |
| * Possibly caused by: |
|
|
| * Noisy labels |
| * Complex textures that resemble organic material |
|
|
| ### **3. Background Confusion** |
|
|
| * Cardboard items have **159 false positives** due to color similarity with ground surfaces. |
|
|
| --- |
|
|
| ## βοΈ Training Configuration |
|
|
| | Setting | Value | |
| | ----------------- | --------------------------------------------------- | |
| | **Hardware** | NVIDIA A100-SXM4-40GB | |
| | **Training Time** | 6.26 hours | |
| | **Epochs** | 50 | |
| | **Batch Size** | 8 | |
| | **Optimizer** | AdamW (lr = 0.000625) | |
| | **Image Size** | 1280 | |
| | **Augmentations** | Standard YOLOv8 + Mosaic (disabled final 10 epochs) | |
|
|
| --- |
|
|
| ## π» Usage |
|
|
| Install Ultralytics: |
|
|
| ```bash |
| pip install ultralytics |
| ``` |
|
|
| Run inference: |
|
|
| ```python |
| from ultralytics import YOLO |
| |
| # Load model |
| model = YOLO("path/to/best.pt") |
| |
| # Run inference |
| results = model("path/to/image.jpg") |
| |
| # Display results |
| results[0].show() |
| ``` |
|
|
| --- |
|
|
| ## π¨βπ» Author |
|
|
| **Kendrick** |
| Alumni β REA AI Engineering Bootcamp |
|
|
| This README and model card were generated with training logs and evaluation outputs. |