Inspiration
Our group was inspired to contribute towards sustainability and brainstormed various sustainability issues. We decided to focus on waste, which is one of the biggest issues on our planet. Since we share a common interest in machine learning and AI, we decided to create a solution that combines waste and machine learning.
What it does
We developed a program that can classify an image of waste as either recyclable or non-recyclable. First, the program uses our retrained resNet50 model to classify the image as trash, plastic, paper, cardboard, metal, or glass. Then, the program uses an if-else statement to classify the image as recyclable or non-recyclable.
How we built it
We used the resNet50 machine learning model and found a dataset called trashnet, which contains images of waste of six different types. We split the dataset into a training and testing set with six sub-directories, each representing a different class of waste. Using transfer learning, we initially classified images into one of two categories: recycling or non-recycling. Later, we used six categories (trash, plastic, paper, cardboard, metal, and glass), which we found more effective. We used an if-else statement to classify everything except "trash" as recyclable. We fine-tuned different aspects of the code, such as the number of layers, activation functions, epochs, and learning rate. Our final results showed an accuracy of about 0.5.
Challenges we ran into
Throughout the project, we faced challenges such as finding the right machine-learning model and figuring out how to implement it into our code. Additionally, none of us have much experience with machine learning, nor are we computer science majors. Despite this, we learned a lot and felt proud of our contribution towards sustainability.
Accomplishments that we're proud of
Although our accuracy is lower than expected, we were able to successfully train the original model to classify the images into six categories. Developing this program has also been a valuable learning experience in AI and ML.
What we learned
Since none of us had much experience with machine learning, every step of the process of developing this program was new to us. We learned how to implement data augmentation, select an appropriate data size, and clean up data. Additionally, we learned how to adjust hyperparameters such as learning rate, activation functions, and batch size to improve the accuracy of our model.
What's next for Project: Gone to Waste
Firstly, we intend to continue refining our model to enhance its precision and broaden its capabilities to categorize objects into three distinct groups: recyclable, compostable, or destined for the landfill. Moreover, we aim to create a user-friendly interface to increase the accessibility of our program. Ultimately, we aspire to develop an application that employs an improved version of our model with advanced computer vision and object detection technology, allowing users to utilize their mobile devices in real time to determine the appropriate bin for their waste. Additionally, the model will have a feature that can differentiate between multiple items at once.
Log in or sign up for Devpost to join the conversation.