Inspiration

At least for us, our camera rolls look less like personal memorabilia, and more like a black hole of lecture slides and shoddy textbook photos. We wanted to do something about it.

What it does

Classi is a mobile app which either automatically or manually sorts images on your phone. All academic images (screenshots, lecture slides, textbook pictures, etc...) will get filtered into a unique folder as not clutter up your phone, or for easy deletion.

How we built it

The ML aspect is a ground-up Convolutional Neural Network built in TensorFlow (python). The resulting model is converted to .TFLite and run locally on the mobile app as to be fully offline. The mobile app was built with Kotlin, being the interface for configuring the model and how it handles file movement.

Challenges we ran into

  • While the final model worked well, previous iterations were iffy at best. Before switching to a CNN, we tried using Google's EfficientNetB0 coupled with transfer learning. We ended up pivoting away from this idea, however, as EfficientNet is substantially larger than most CNNs

Accomplishments that we're proud of

  • The CNN achieved high testing accuracy (97.22%) despite both our limited dataset (~400 images), the complexity of this problem (high variance amongst samples), and our choice to make the model quite small for computational efficiency on mobile

What we learned

Working as a team, it's hard to delegate roles that don't overlap at times and roles that require the completion of another part to move forward. We also learned the importance of having a well versed knowledge of a specific development environment such as android studio or xcode well before hand, to foresee possible errors that may occur when coding.

What's next for Classi

We'd like to implement OCR or LLM. We would like to further develop our UI to accompany a more modern and user friendly design. This expansion could include more buttons and toggles, along with photo sorting options for any type of photo, not just school work.

Built With

Share this project:

Updates