Object Detection
ultralytics
LiteRT
Keras
ONNX
English
yolo
yolo11
yolo11n
yolov11
yolov11n
computer-vision
waste-detection
trash-detection
garbage-detection
recycling
recycling-automation
waste-sorting
edge-ai
Instructions to use Jeremy341/MIRA-AI with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- ultralytics
How to use Jeremy341/MIRA-AI with ultralytics:
from ultralytics import YOLOvv11 model = YOLOvv11.from_pretrained("Jeremy341/MIRA-AI") source = 'http://images.cocodataset.org/val2017/000000039769.jpg' model.predict(source=source, save=True) - Notebooks
- Google Colab
- Kaggle
| license: mit | |
| library_name: ultralytics | |
| pipeline_tag: object-detection | |
| base_model: Ultralytics/YOLO11 | |
| base_model_relation: finetune | |
| language: | |
| - en | |
| tags: | |
| - ultralytics | |
| - yolo | |
| - yolo11 | |
| - yolo11n | |
| - yolov11 | |
| - yolov11n | |
| - object-detection | |
| - computer-vision | |
| - waste-detection | |
| - trash-detection | |
| - garbage-detection | |
| - recycling | |
| - recycling-automation | |
| - waste-sorting | |
| - edge-ai | |
| - onnx | |
| - tflite | |
| datasets: | |
| - dmedhi/garbage-image-classification-detection | |
| - garythung/trashnet | |
| # MIRA - YOLO11n Waste Detection for Recycling and Waste Sorting | |
| MIRA is a custom YOLO11n object-detection project for waste detection, | |
| recycling automation, and automated waste sorting. | |
| The models detect five classes: | |
| - glass | |
| - metal | |
| - paper | |
| - plastic | |
| - trash | |
| This repository contains PyTorch, ONNX, and TFLite exports from the MIRA | |
| experiments. The recommended reference model is `mira_exp019.pt`. | |
| - GitHub: https://github.com/jeremy341/MIRA-AI | |
| - Project website: https://mira-vision.vercel.app/ | |
| - PyPI package: https://pypi.org/project/mira-ai/ | |
| ## EXP-019 performance | |
| | Metric | Result | | |
| |---|---:| | |
| | mAP50 | 90.58% | | |
| | mAP50-95 | 82.15% | | |
| | Precision | 87.2% | | |
| | Recall | 84.6% | | |
| | Training images | 5,108 | | |
| | Validation images | 415 | | |
| | Test images | 1,375 | | |
| | Classes | 5 | | |
| These results come from the documented evaluation split used for EXP-019. | |
| ## Available model files | |
| | File | Format | Description | | |
| |---|---|---| | |
| | `mira_exp019.pt` | PyTorch | Recommended YOLO11n detector | | |
| | `mira_exp019.onnx` | ONNX | ONNX export of EXP-019 | | |
| | `mira_exp019_int8_320.tflite` | TFLite | INT8 export at 320 px | | |
| | `mira_exp019_int8_640.tflite` | TFLite | INT8 export at 640 px | | |
| The repository also contains models from earlier MIRA experiments. | |
| ## Experiment results | |
| | Experiment | Model | Dataset | mAP50 | | |
| |---|---|---|---:| | |
| | EXP-005 | YOLOv8n | Custom + TrashNet | 82.3% | | |
| | EXP-006 | YOLOv8n | Fused Wild + TrashNet | 39.4% | | |
| | EXP-009 | YOLOv8n | TrashNet | 72.8% | | |
| | EXP-011 | YOLOv8n | TACO | 35.0% | | |
| | EXP-013 | YOLO11n | TACO + TrashNet | 55.1% | | |
| | EXP-014 | YOLO11n | Combined dataset | 60.7% | | |
| | EXP-015 | YOLO11n | Combined dataset with WaRP | 56.0% | | |
| | EXP-016 | YOLO11n | WaRP-focused dataset | 58.8% | | |
| | EXP-017 | YOLO11n | Larger combined dataset | 59.3% | | |
| | EXP-018 | YOLO11n | Clean balanced dataset | 90.6% | | |
| | EXP-019 | YOLO11n | Clean balanced repeatability run | 90.58% | | |
| The main lesson was that adding more data did not automatically improve the | |
| model. Removing inconsistent examples and building a cleaner, more balanced | |
| dataset led to the strongest results in EXP-018 and EXP-019. | |
| ## Quick start | |
| Install the required packages: | |
| ```bash | |
| pip install ultralytics huggingface_hub | |
| ``` | |
| Download the recommended model directly from Hugging Face: | |
| ```python | |
| from huggingface_hub import hf_hub_download | |
| from ultralytics import YOLO | |
| model_path = hf_hub_download( | |
| repo_id="Jeremy341/MIRA-AI", | |
| filename="mira_exp019.pt", | |
| ) | |
| model = YOLO(model_path) | |
| results = model.predict( | |
| "image.jpg", | |
| conf=0.25, | |
| save=True, | |
| ) | |
| results[0].show() | |
| ``` | |
| For validation, provide a compatible YOLO dataset configuration: | |
| ```python | |
| results = model.val(data="dataset.yaml") | |
| ``` | |
| ## Intended use | |
| MIRA is intended for research and prototyping in: | |
| - waste detection | |
| - recycling automation | |
| - waste sorting | |
| - computer-vision research | |
| - edge-AI object detection | |
| - robotic sorting experiments | |
| The models are not presented as a finished production recycling system. | |
| ## Datasets | |
| The models were trained using combinations of: | |
| - [dmedhi garbage image classification/detection](https://huggingface.co/datasets/dmedhi/garbage-image-classification-detection) | |
| - [TACO](https://github.com/pedropro/TACO) | |
| - [TrashNet](https://github.com/garythung/trashnet) | |
| - [Roboflow Trash Detection](https://universe.roboflow.com/jerry-jukbu/trash-detection-1fjjc-uqlv1) | |
| The datasets were remapped to the five MIRA classes. Each dataset remains | |
| subject to its original license and usage terms. | |
| ## Limitations | |
| The models can struggle with: | |
| - white crumpled paper | |
| - cans viewed from the opening | |
| - strongly overlapping objects | |
| - unusual lighting | |
| - unusual viewing angles | |
| - waste objects outside the training distribution | |
| The reported results do not guarantee the same performance on completely | |
| independent real-world images. | |
| ## License | |
| The model files are provided under the MIT License where applicable. Dataset | |
| licenses remain subject to their original terms. | |