Guys, I’ve been researching free resources to build an AI form coach for calisthenics and combat sports. Here is the ultimate breakdown for the computer vision pipeline:MediaPipe vs. YOLOv8-PoseGoogle MediaPipe (Free, Apache 2.0): Best for Calisthenics (Push-ups, Planches). Excellent on-device mobile speed. Outputs 33 3D body landmarks. Struggles slightly with heavy motion blur.Ultralytics YOLOv8-Pose (Free, AGPL-3.0): Best for Combat Sports (Striking, fast sparring). Needs more compute (better on server/GPU). Highly robust against fast, blurry movements. Outputs 17 2D keypoints.Top Open-Source Repositories to Fork
Instead of starting from scratch, use these as your foundation:yakupzengin/fitness-trainer-pose-estimation (MIT License): One of the best starting points. Uses MediaPipe for 18 exercises with a YAML-based system. You don’t hardcode math—just define ideal joint angles in YAML, and it scores the user 0-100 based on angle and tempo.The FormCoach Pipeline (arXiv:2508.07501): Uses Vision-Language Models (VLMs) to understand form and give contextual feedback (e.g., “Keep your back straight”) instead of just flashing red when an angle is wrong.Movelytics/posetracker-llm-prompts: Perfect for boxing or Muay Thai. Extracts keypoints and compares the user’s camera feed against a reference video of a pro fighter to generate a similarity score.Muqaram0/Excercise_Pose_Correction: A complete pipeline combining YOLOv8 and MediaPipe. Has pre-built logic for analyzing back alignment and posture during push-ups and squats, plus a free Streamlit web UI.imanoop7/AI-Agents-as-Personal-Trainers: A multi-agent AI system (LangChain) that generates tailored routines. Run it locally via Ollama to keep the AI coaching completely free on your own hardware.How to Stack Them for DevelopmentFrontend/UI: Fork Muqaram0 and run the Streamlit app for an instant, free user interface.Vision Backend: Use MediaPipe scripts to track calisthenics angles via webcam. Implement the YAML config system from yakupzengin so you aren’t hardcoding angles.Coaching Backend: When the vision script detects bad form (e.g., “hips dropping”), pass that text flag into the local Ollama LLM setup from the imanoop7 repo to generate human-sounding advice.The Problem:
I’ve stacked all this, but it is still kinda mid and is not working properly! How do I fix it? And everything I try to test it out, it is like a whole workout just debugging it! 😭😭😭😭😭😭
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.