Inspiration

Our own back pain. After hours of sitting like boiled shrimp while studying, we realized we needed something to keep us in check or at least call us out for our crimes against spinal alignment.

What it does

Shrimp Posture uses your laptop’s front camera to detect your posture in real time whether you’re studying, working, or just being a disappointment. When it catches you slouching, leaning, or folding like origami, it roasts you with sarcastic popup messages to shame you back into shape.

How we built it

We integrated MediaPipe into a web page to track body landmarks through the webcam and classify posture based on key points like eyes, nose and shoulders. Since there wasn’t a good dataset for our needs, we recorded ourselves for both "GOOD" and "BAD" postures, labeled the data, and trained a lightweight model using scikit-learn.

The app runs through a Flask backend, piping webcam frames into our model in real time.

Challenges we ran into

  • Data collection: No public dataset fit our needs, so we had to make our own, which took time and coordination.
  • Model training: Getting the model to generalize across different people and lighting conditions was tricky with limited data.
  • Live performance: Integrating the model into a real-time video feed while keeping things smooth was harder than expected.

Accomplishments that we're proud of

  • Built a working real-time posture detection tool from scratch
  • Created our own labeled dataset for training
  • Made something that’s both technically cool and actually funny
  • Successfully roasted ourselves into sitting better

What we learned

  • How to work with MediaPipe and webcam-based pose tracking
  • Basics of collecting and labeling a usable dataset
  • Training and integrating a simple machine learning model into a Flask pipeline
  • That shame-based ergonomics is surprisingly effective

What's next for Shrimp Posture

A larger and diverse dataset (instead of only 5 people)

Share this project:

Updates