Inspiration
While eating a snack one day, I realised that it had been over a month since we purchased it. Naturally, I was worried that I might get sick from eating it, but I had no way of knowing for sure whether I would be punished for continuing to eat it. Introducing FreshCheck!
What it does
FreshCheck is an ML-powered expiration tracker that helps you dine without worrying about consuming spoiled goods. Simply open your webcam and snap a pic with your favourite? banana! From our prediction algorithm, FreshCheck informs users of how long they have to consume their produce before it spoils.
How we built it
We used Python machine learning libraries to train a model on hundreds of images of bananas at different stages of ripeness. The model learned visual patterns associated with fresh, ripe, and spoiled bananas. During training, the model used mini-batch gradient descent to iteratively adjust its parameters and minimize prediction error across the dataset. This allowed the system to analyze new images and estimate the freshness of a banana.
Challenges we ran into
FreshCheck was originally designed to classify the freshness of any food, but in the interest of time, we chose to train our model on bananas, which we had an abundance of data on. Although we wanted to expand the range of our model to other fruits for which we had data, we were unable to train a larger model due to the training taking hours to complete.
Accomplishments that we're proud of
As this was the first hackathon for two of our members, and my second one, we are extremely proud of what we were able to collaborate on in such a short time. Furthermore, with this being one of my first experiences fully training a model outside of academics, we were happily surprised with how well the model operated on new data.
What we learned
We all got more accustomed to full-stack development (and vibe coding, of course), but most notably, the skills we built in machine learning will stay with us a long way.
What's next for FreshCheck
With more time, it is extremely possible to train a model that can classify different fruits and their freshness in a similar way we've done with bananas.
Built With
- express.js
- javascript
- neondb
- node.js
- postgressql
- prisma
- python
- pytorch
- react
Log in or sign up for Devpost to join the conversation.