Lorenzo Cerato

WorkComputer Vision Prototype

FitnessCoach

ClientPersonal projectYear2026CategoryComputer Vision Prototype

01 — Intro

Areal-timeexercisecoachthatrecogniseswhatyou'redoing,countsyourrepsandflagsitwhenyourformbreaksdown.Runsonawebcamorarecordedvideo,entirelyonyourownmachine.

02 — The challenge

Counting reps is easy to fake and hard to do well. A naive threshold on a single joint angle miscounts every time the camera shifts or the movement pauses. On top of that, the system has to know which exercise it's watching before it can judge it, and switching exercise mid-set shouldn't require pressing anything.

03 — The solution

MediaPipe BlazePose extracts 33 body landmarks per frame; joint angles are computed from the ones that matter for each movement: hip, knee and ankle for squats, shoulder, elbow and wrist for the upper body. A rule-based classifier reads those angles and commits to an exercise only after 30 consecutive consistent predictions, which stops it flickering between labels mid-set. From there, a dedicated module per exercise runs a rep state machine and a set of form checks: back lean and squat depth, body alignment on push-ups, upper-arm swing on curls.

04 — The result

A working prototype that runs live at webcam frame rate on a laptop CPU, with no cloud inference and no training data required to get started. Built in Python with OpenCV and MediaPipe. Not distributed as a product.

Stack

  • Python
  • OpenCV
  • MediaPipe

Let’s work

together

Version

© 2026

Local time

--:-- CET

Legal

Privacy Policy