TrashBot


Wikimedia Commons

TrashBot: YOLOv8 for Waste Management

Spatial Data Scientist: Mattie Gisselbeck

Degree Program: Masters of Geographic Information Science

Overview

The problem being addressed is the efficient identification of trash objects within images to support waste management and environmental initiatives. By implementing an object detection model, this solution enables automated recognition of trash items, facilitating the removal and recycling of litter, thus contributing to cleaner and more sustainable communities. The solution to the problem stated above is to deploy and train the YOLOv8 model using comprehensive trash training datasets sourced from Kaggle. The trash or plastic pollution datasets will be downloaded from Kaggle. The end goal of the project will be to create a usable app to run the model for easy implementation and detection. This optimized model aims to surpass the capabilities of TrashAI. Ultimately, the project's objective is to deliver a user-friendly application for seamless implementation and efficient detection. Additionally, in the hardware domain, this model can be seamlessly integrated with a robotic system capable of detecting and recording trash data, as well as physically removing the detected trash, addressing the issue comprehensively. The primary challenges in creating this solution is creating image annotations in bulk and achieving high accuracy trash and plastic pollution detection while maintaining efficient performance.

Using a Physical Drone to Control a Virtual Drone

At its core, TrashBot uses Python 3.8+ for programming language and PyTorch for its machine learning framework. TrashBot utilizes the Ultralytics YOLOv8 architecture, which is implemented in PyTorch and optimized for real-time object detection. Computer Vision Annotation Tool (CVAT) was used to annotate the training datasets sourced from TACO and Open Images Dataset V7 to fine-tuning the model. TrashBot was deployed through the CLI (MacOS) for initial prototyping and deployment. Conda and pip coupled with virtual environments were used to manage dependencies, allowing for reproducible builds across different development and deployment stages.



YOLOv5 vs YOLOv8 compared on Kaggle Trash Dataset


Project Advising

Dr. Eric Shook, Director, GeoCommons

Michelle Andrews, GIS Professional