Inspiration

All around us, we see the environment being broken down by littering and trash. We thought of different ways to encourage others to pick up trash. From this, we learned that we could try to make it fun! This will encourage users to pick up trash in a Pokemon Go style application that will reward them points based on the trash they pick up and throw away.

What it does

When you launch the web application, you will be asked to take a picture of the trash you have, submit an image, or have the option to check the trash map around UMass (spots where trash cans are at UMass). When you submit an image, the website will use machine learning to identify what trash you have picked up and show you the resulting information such as name, attributes, and points!

How we built it

We decided to use React as a front-end tool to build the web pages that are going to be displayed. Then we used Express.js and Node.js as server environment and framework to host a server to connect to the APIs we were hoping to use. Then we had separate files with functions to connect to Google Cloud API (for image recognition) and OpenAI API (label classification) asynchronously through the server and return it back to the front end to be displayed.

Challenges we ran into

We ran into many, many challenges throughout the project. The first one came with creating React projects since we were getting many vulnerability errors which ended up breaking our project. We had challenges trying to reach the Google Cloud API. The biggest challenge came when the server was not properly receiving the POST request from the frontend which put us in a spot to branch the project with half the team working on a version with the server and the other half working on a version that uses local storage.

Accomplishments that we're proud of

We are very proud of how the product turned out, specifically the design and functionality of the web application.

What we learned

We definitely learned more about how to use React, work with external APIs, properly send requests to servers, and handle back-end functionality.

What's next for Pic-Up!

We hope to have this become more mobile-friendly.

Share this project:

Updates