Inspiration
I noticed that in my school, although there is multi-category trash cans, people are too lazy to think on where to dispose their trash objects. This inspired me to create an AI system being able to automatically sort trash objects, so people would just need to dispose rubbish into a single trash can, built with special robotic mechanism.
What it does
Classifies trash objects not only into organic and inorganic waste, but even sorting inorganic waste further into plastic, paper, glass and metal sub-categories. This project focuses on the software aspect, rather than robotic hardware.
How we built it
The Waste Classifier model is trained using pytorch framework, with the trashnet and kaggle garbage classification dataset (for organic category). The YOLOv8 model comes from ultralytics library, and the website is deployed using Streamlit.
Challenges we ran into
I was initially confused on how to make my inference engine as robust as possible, but finally was able to do so by adding a layer of object detection before the waste classifier. This helped to crop multiple objects out of a single image, and localized these objects out of their background, for more accurate classification.
Accomplishments that we're proud of
I'm proud of being able to reach 90 % testing accuracy for the waste classifier model, and being able to run the model's inference on real-world waste objects, with a few limitations.
What we learned
I have learnt how to create an end-to-end AI product, from data collection, custom-training an image classifier model, to deployment.
What's next for WasteWizard
In the future, object segmentation will be implemented to localize objects even more accurately, for more precise classification. This will be done by fine-tuning Mask-RCNN or U-Net to our dataset. Moreover, this AI system can be installed in a Raspberry Pi, connected with a USB Camera and Servo Motor, extending WasteWizard AI software into robotic hardware.
Log in or sign up for Devpost to join the conversation.