Inspiration
Our team was alarmed by the amount of trash we saw piling up in our community, and we discovered that only 21% of recycled materials are actually repurposed. Manual waste sorting is time-consuming, inefficient, and error-prone, so we decided to develop a computer vision program that could classify trash and recyclables quickly and accurately.
What it does
We created EcoSort, a computer vision program that can rapidly detect and classify objects as either trash or recyclable. To simulate real-world conditions, we used a treadmill to represent a moving conveyor belt and a webcam to capture images of the objects passing by. Here's a quick demo: https://youtu.be/NSyj2ggO_B4
How we built it
To develop our model, we followed these steps:
Collect and label training data: We gathered approximately 2,200 images of household trash and recyclables and labeled them with Roboflow, dividing up the work among our team. This allowed us to create a diverse dataset of 6,200 images after augmentation.
Train a YOLOv5 model on Google Colab: We used Python and terminal commands to train our model on Colab, a free cloud-based platform for machine learning.
Test the model on static images: Once our model was trained, we tested it on a set of validation images to ensure that it could accurately distinguish between trash and recyclables.
Connect the model to a live webcam: We downloaded the model weights to our local computer and ran it with a webcam connected to simulate real-world conditions.
Challenges we faced
We encountered two major challenges during the project. Firstly, the labeling process was time-consuming and required a significant amount of effort. Secondly, we struggled to incorporate live webcam usage in Google Colab, which led us to pivot to running the model on our local computer instead.
Accomplishments we're proud of
We're proud to have developed a functional computer vision model that accurately detects and classifies trash and recyclables in real time. We're also proud of the progress we've made in addressing a critical environmental issue.
What we learned
Through this project, we gained experience in every step of the computer vision process, from collecting and labeling training data to training to testing the model. We also learned how to effectively reach out to local recycling plants to gauge interest in our technology.
What's next for EcoSort
While we've made significant progress, there's still much more work to be done. One exciting avenue we'd like to explore is using our technology to collect data on the location and density of trash on roads to help optimize garbage collection. Additionally, we plan to create a UI that allows waste management plants to submit images of trash to our database, which will allow us to expand our training dataset and improve the accuracy of our model. We believe that these improvements will allow us to create a more efficient and effective solution to the waste sorting problem.
Built With
- ai
- computervision
- github
- google-collab
- machine-learning
- python
- pytorch
- roboflow
- yolov5
Log in or sign up for Devpost to join the conversation.