With the environmental issues that our world is currently facing, sustainability is a pressing issue. Although recycling is an option, it is often under-utilized due to the extra effort required to deposit waste into the correct bin. We decided that we could help solve this issue through technology.

What it does

We have developed a waste disposal unit that intelligently sorts waste and incentivizes user to recycle or compost. All waste is disposed of in the same receptacle. When waste is inserted to the device, machine learning is used to classify the object into trash, compost, and recycling, and then it is sorted into the appropriate bin. Then, a QR code is displayed, and the user can choose to scan it with our companion app. When they do this, they are able to track their waste habits and be offered rewards for recycling. Additionally, data on how much the trashcan is used is uploaded to the cloud, which could potentially be harnessed to get insights on when to empty trash cans. (This is done without the trashcan being online, as this data is transmitted to the user through the QR code and then to the database.)

What we learned

In completing the project, we learned a lot about developing machine learning solutions to unique problems, and how to design the architecture of projects that are complex and have many parts that are separate and implemented with different technologies, but have to work together seamlessly.


The classification algorithm requires a more robust dataset, particularly one with images taken with the camera and lighting conditions that would be used by the device. We initially developed a full classifier in TensorFlow, then again in, with the latter reaching up to 96% accuracy on the test set. It did not generalize well, however, so for the sake of demonstration we switched to the IBM Watson classifier service and created a custom classifier for the waste class that we accessed through API calls to the Watson service. We were also limited by our lack of available hardware, which is why, for example, we created a second iOS app to collect the images for classification to send to the Pi instead of using a webcam.

Technologies used

  • Swift / iOS
  • IBM Watson
  • NodeJS
  • Raspberry Pi

Table Number: 9

Share this project: