Skip to main content

MIRA — Machine Intelligence for Recycling Automation

Jugend forscht 2027

MIRA is my project for recognizing different types of waste with a camera. The long-term idea is to use the detections to sort objects automatically.

Why I chose this problem

I wanted to work on a problem that was more challenging than training a model on a fixed image dataset. Sorting waste combines computer vision, uncertain predictions, real-time camera input, and eventually hardware. I also wanted to build something that I could expand later, for example by connecting the system to a robot or sorting arm.

The robot is not finished yet. My current focus is the part that has to work first: reliably recognizing the objects.

What I tried

I did not begin with YOLO. I started with a custom CNN to understand the basic classification problem. I then tried MobileNetV2, YOLOv8n, and finally YOLO11n for object detection.

I tested several datasets, including dmedhi, TACO, TrashNet, and Roboflow waste-detection data. I initially assumed that adding more data would automatically improve the model, but that was not true. Some larger dataset combinations contained inconsistent image styles, labels, and object arrangements.

The most important result was that a smaller, cleaner, balanced dataset worked better than simply combining everything. The earlier EXP-014 run reached 60.7% mAP50, while the later clean-dataset YOLO11n experiments reached about 90.6% mAP50. EXP-019 repeated the result closely.

The full experiment history and charts are available on the project website.

Current capabilities

  • Detects glass, metal, paper, plastic, and trash
  • Runs live webcam inference
  • Includes a local development dashboard
  • Provides dataset and evaluation tools
  • Exports models to formats such as ONNX and TFLite

The current limitations and detailed documentation are covered on the website.

Install from PyPI

py -3 -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install mira-ai

The PyPI package already includes the EXP-014, EXP-018, and EXP-019 detector weights. No model download, account, or external model-hosting service is needed after installation. EXP-014 is the default live-inference model for the demo. Its selection is based on the current live-demo workflow, not on treating the recorded mAP50 value as a real-time benchmark.

List the bundled models and start live detection:

mira models
mira live --model mira_exp014.pt

To start the local dashboard:

mira dashboard

Development installation

For working on the source code instead of using the PyPI release:

git clone https://github.com/jeremy341/MIRA-AI.git
cd MIRA-AI
py -3 -m venv .venv
.venv\Scripts\Activate.ps1
pip install -e .

Data and limitations

The training datasets are not stored in Git. Their sources and license information are listed in docs/DATASET_ORIGINS.md.

The models can struggle with crumpled paper, cans viewed from the opening, overlapping objects, and unusual image conditions. The reported metrics come from the project’s recorded evaluation setup and are not a guarantee of real-world sorting performance.

Transparency

I used AI tools for parts of coding and debugging. The problem choice, dataset experiments, model comparisons, and decisions about what worked and failed are part of my own project work.

License

This project is licensed under the MIT License. See LICENSE.

Metadata

Release files for mira-ai 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mira-ai 1.0.2
File Size Uploaded
mira_ai-1.0.2.tar.gz 14.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mira-ai 1.0.2
File Interpreter ABI Platform
mira_ai-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 29.7 MB

Release files / mira_ai-1.0.2.tar.gz

Download URL mira_ai-1.0.2.tar.gz
Size 14.9 MB
Tags Source
SHA-256 checksum
How to use checksums
e07e4a1c7514713aab9c71593a9accc7925453eaac1efd6ab9d24bf76f80f4b9
BLAKE2b-256 checksum
How to use checksums
d38689695763452d4dc5d0a9ae7cece8400f5597f92c13c428b2f6e9849a80e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / mira_ai-1.0.2-py3-none-any.whl

Download URL mira_ai-1.0.2-py3-none-any.whl
Size 14.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
7a183c855d92bea8f033ae9df5849f09063780ddbccef19569fdca7c937419ac
BLAKE2b-256 checksum
How to use checksums
4fc1ac98cfceccb7abcca76f8b549725f7c9fb14f602f67d60fc9ab3cddad1d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page