Skip to main content

Welcome to Trash Classification AI

Build intelligent waste sorting systems with state-of-the-art computer vision and robotics. This system uses YOLOv11 for real-time trash detection and segmentation, classifying waste into cardboard/paper, metal, and plastic categories.

Quick Start

Get up and running with trash classification in minutes

Training Guide

Train custom models on your own waste datasets

API Reference

Explore the complete API documentation

Robotics Integration

Connect with VEX robotic arms for automated sorting

Key Features

Real-time Detection

YOLOv11-powered segmentation for instant trash identification

Three-class Classification

Accurately classify cardboard/paper, metal, and plastic waste

Object Tracking

Track waste items with visual annotations and trajectory paths

Hardware Acceleration

Optimized for CUDA, MPS, and CPU devices

Robotic Integration

Seamless VEX controller integration for physical sorting

Safety Systems

Built-in safety protocols and emergency stop mechanisms

How It Works

The system operates in three main stages:
  1. Detection & Segmentation - YOLOv11 analyzes video frames to identify and segment trash objects
  2. Classification & Tracking - Assigns waste to categories and tracks objects across frames
  3. Robotic Control - Coordinates with VEX arm controller for physical sorting actions

Getting Started

1

Install Dependencies

Install PyTorch, Ultralytics, and required packages
pip install -r requirements.txt
2

Run Classification

Process video streams for real-time trash detection
from trash_classificator.processor import TrashClassificator

classificator = TrashClassificator()
image, status = classificator.frame_processing(frame)
3

Integrate Robotics

Connect VEX controller for automated sorting
from examples.serial_com import CommunicationManager

comm = CommunicationManager()
comm.send_message('scan_service', {})

Next Steps

Installation Guide

Set up your development environment

Core Concepts

Understand the system architecture

Train Models

Create custom classification models

Examples

Explore real-world usage examples

Build docs developers (and LLMs) love