Inspiration

People tend to focus on the macro solution when it comes to dealing with climate change; however, we all underestimate the core issue being every person matters when it comes to the climate crisis. So to address the core issue, we set out to educate and encourage users to raise awareness and build better waste practices.

What it does

ReVision is a mobile application that allows users to take images of various wastes and determine whether they are recyclable or trash by communicating with our machine learning model. In this manner, it educates them as to different objects' correct disposal. Furthermore, the user is rewarded points for correctly answering which type an item falls under before being given the answer. Also, daily notifications on topical environmental facts are sent to the user, providing extra tidbits of information. Thus users can learn and form good habits at a digestible rate.

How we built it

We built the user interface and mobile application in React Native. The frontend is connected to the backend through a server API programmed in python. The backend consists of a single model file that takes care of image processing, and follows a CNN deep learning model for image classification. The model is saved after it goes through the training and validation process, which can then be used for individual cases requested by the server by calling the saved model. Using the React Native framework, we build the front end with the AppStack.js as the foundation and from there, we build 3 main screens as the following: Store screens, Camera screens, and Profile screens. With the power of Firebase, we implemented fast and secure user authentication and a rapid response database.

Challenges we ran into

One of our biggest challenges is diversifying the category of trash, such that it can detect more differences and different types of wastes not limited to only two categories, such as compost or specialty waste like large batteries. Our other larger challenge is users abusing the system, since there is a reward this can encourage cheating behavior, so this should be addressed in some manner. Most difficult of them all, integrating the ML model and the mobile application gave us the hardest time. We explored and tried out various deployment services to get our model up and running; however, the connection between the server and the application always witness some kind of disturbance. Eventually, we discovered and implemented a third-party package called Ngrok which hosted the domain on our local machine, enabling a fast and convenient connection from any other devices.

Accomplishments that we're proud of

For all of our members, this was the first hackathon, so we are excited to have made it through the entire process and have a product to show and talk about. We worked together as a team, ensuring constant communication and collaboration, which played a significant role in driving our team to success. Each of us was responsible for learning new technologies and putting what we had known into the product. This provided an extraordinary opportunity to expand our technical sphere and become more confident in ourselves.

What we learned

Our group learned a lot in our various roles, such as different models for image classification on the backend, solutions to UI/UX problems in the frontend, and creating a method for communication between the backend and frontend. Apart from all the technologies, soft skills such as communication skills, networking skills, and teamwork skills have been polished to the next level.

What's next for ReVision

The future of ReVision follows the path of our challenges, further, the development would allow us to properly answer these challenges. Right now, we may just be some ambitious CS students trying to create our first impact in life; however, in the future, our vision together with ReVision will most definitely be heading to something more significant: changing the world one picture at a time!

Built With

Share this project:

Updates