File size: 4,483 Bytes
a5e9dea
6196af0
a5e9dea
 
6196af0
 
 
e6b954a
a5e9dea
e6b954a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
a5e9dea
e6b954a
 
a5e9dea
 
e6b954a
 
 
 
6196af0
e6b954a
6196af0
 
 
 
 
 
 
e6b954a
 
6196af0
d18d05b
 
e6b954a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6196af0
e6b954a
6196af0
d18d05b
 
 
 
 
 
6196af0
e6b954a
 
6196af0
 
d18d05b
6196af0
 
 
 
 
 
 
 
 
 
 
 
a5e9dea
e6b954a
 
 
f6a8e6d
e6b954a
f6a8e6d
e6b954a
6196af0
 
e6b954a
6196af0
 
e6b954a
6196af0
f6a8e6d
e6b954a
f6a8e6d
 
e6b954a
 
 
 
 
 
 
 
 
 
 
 
 
 
f6a8e6d
 
d18d05b
f6a8e6d
6196af0
 
f6a8e6d
 
e6b954a
 
 
 
 
 
 
 
 
 
 
 
 
6196af0
 
d18d05b
6196af0
 
 
 
e6b954a
6196af0
e6b954a
 
6196af0
 
 
e6b954a
 
 
 
 
 
 
 
 
 
 
6196af0
 
a026e8c
d18d05b
e6b954a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
---
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.