Inspiration

The world generates 2.01 billion tons of municipal solid waste annually, with at least 60% percent of that recyclable. But only 35% of the waste is recycled while the rest finds its way to landfills. Worldwide, waste generated per person per day averages 0.74 kilogram but ranges widely, from 0.11 to 4.54 kilograms. When looking forward, global waste is expected to grow to 3.40 billion tons by 2050, more than double population growth over the same period. Improper waste disposal methods like open dumping, causes soil and water contamination. Unmanaged or poorly managed waste contaminates the environment, harms both animals and humans, and can even affect the economic development of a region.

What it does

Trash bank is a decentralized waste recycling platform. A user can buy or sell recyclable waste like paper, plastic, metal and glass through a web application developed by us. When a user uploads an image of waste to be sold, it gets classified into the above four types of wastes. We have trained a neural network to classify the images. After classifying the image, we are using a regression model to predict its weight and price. Thus, a user can upload an image and will automatically get its type, weight and price. Other users can thus search and view the images of the waste they want to buy. Users can buy the waste in a trustless decentralized way using smart contacts which we have deployed using Ethereum. In this way waste can be recycled, and users can also earn money via cryptocurrencies. This will in turn reduce the stress on landfills and help in sustainable development.

How I built it

Our web application which serves as the front end is built using AngularJS, Bootstrap and jQuery. We have used Google Cloud Platform to store the images of the waste items while storing other details like owner, weight, price, path on the blockchain. In addition, we have developed a deep convolution neural network with ResNet 152 for classification and deployed it on Google Cloud Platform using the Deep Learning VM service. We have used Ethereum to deploy smart contract for providing a trustless and decentralized way to buy and sell waste items. Solidity was used to write the smart contract while Flask was used to integrate the front end with the smart contract.

Challenges I ran into

Blockchain was a new technology which we used. Integrating the smart contract with our front end was one of the challenges we faced. We also faced challenges while training the neural network due to large datasets containing irregularities in the input and intensive computation.

Accomplishments that I'm proud of

  1. Learning and successfully using blockchain technology to develop a decentralized waste recycling platform.
  2. Integrating the smart contract written by us with the front end and also using machine learning and google

What I learned

We have developed a blockchain hack and combined it with machine learning to make it more effective. We learnt how to write smart contracts and leverage the properties of a blockchain like Ethereum to provide a trustless and decentralized trading platform. In addition, we also learnt about cutting edge deep learning techniques. Furthermore, we became adept at cross platform integration.

What's next for Trash Bank

We plan on deploying the neural network and regression model on the Ethereum blockchain. In addition, develop an android application to take pictures of waste items and upload them to the blockchain.

Built With

Share this project:

Updates