InjuryLens

Inspiration

Many athletes and fitness enthusiasts only discover movement problems after they experience pain or injury. Professional biomechanical assessments and sports physiotherapy sessions can be expensive, inaccessible, or unavailable to recreational athletes.

We wanted to explore whether a single smartphone video could provide meaningful insights into movement quality and potential injury-risk patterns. Our goal was to make movement analysis more accessible, helping people train smarter, improve technique, and identify potential issues before they become serious problems.

What It Does

InjuryLens is an AI-powered sports movement analysis platform that evaluates exercise and athletic movements using computer vision and biomechanics.

Users can upload a workout video or record directly through their webcam. The system analyzes body posture and movement patterns frame-by-frame and generates a comprehensive report that includes:

  • Knee valgus assessment
  • Trunk lean analysis
  • Bilateral asymmetry detection
  • Shoulder and hip alignment analysis
  • Automatic repetition counting
  • Fatigue detection
  • Movement quality tracking
  • Personalized coaching recommendations
  • Progress monitoring across multiple sessions

The platform currently supports 12 movement types, including squats, lunges, deadlifts, running, jump landings, push-ups, planks, and overhead presses.

How We Built It

The backend was built using FastAPI and Python.

For human pose estimation, we used MediaPipe Pose to extract 33 body landmarks from every video frame. These landmarks are processed using custom biomechanics algorithms that calculate joint angles, movement asymmetries, and posture-related risk indicators.

The analysis pipeline includes:

  1. Video processing with OpenCV
  2. Pose landmark extraction using MediaPipe
  3. Joint-angle and biomechanics calculations
  4. Risk scoring and fatigue analysis
  5. Rep counting using movement oscillations
  6. Frame annotation and visualization
  7. AI-powered coaching generation using Gemini

The frontend was built using React, Vite, Tailwind CSS, Zustand, Framer Motion, and Recharts to provide an interactive user experience with visual reports, progress tracking, and session comparison tools.

Challenges We Faced

One of the biggest challenges was designing movement-analysis metrics that were both interpretable and computationally efficient.

Different exercises require different biomechanical considerations, so thresholds for knee valgus, trunk lean, and asymmetry had to be adapted based on movement type.

Another challenge was ensuring reliable pose estimation across varying camera angles, lighting conditions, and video quality. We implemented landmark visibility filtering and confidence checks to improve robustness.

Generating coaching recommendations that were personalized rather than generic also required carefully structuring the biomechanical data passed into the AI coaching pipeline.

What We Learned

Through this project, we gained a deeper understanding of computer vision, biomechanics, movement analysis, and human-centered AI design.

We learned how pose-estimation systems can be combined with domain knowledge from sports science to create practical tools that support healthier and safer training.

Most importantly, we learned that accessibility is just as important as accuracy. A solution that works with a smartphone camera has the potential to reach far more people than specialized motion-capture systems.

Future Improvements

Future versions of InjuryLens will focus on:

  • Validation studies with coaches and physiotherapists
  • Real-time movement feedback during exercise
  • Sport-specific injury-risk profiling
  • Personalized rehabilitation tracking
  • Team and coach dashboards
  • Mobile application support

Impact

InjuryLens aims to make movement assessment more accessible by transforming ordinary workout videos into actionable biomechanical insights.

By helping users identify potentially risky movement patterns early, we hope to encourage safer training habits, reduce preventable injuries, and make performance analysis available to anyone with a camera.

Built With

Share this project:

Updates

Submission history