A Python toolkit for video pose estimation with pluggable exercise analyzers. Uses MediaPipe for skeleton tracking.
- Pose estimation overlay on videos (skeleton, hip/shoulder markers, velocity arrows)
- Modular analyzer system for exercise-specific analysis
- Currently includes: Deadlift hip-shoot detection
python -m venv venv
source venv/bin/activate
pip install opencv-python mediapipe numpysource venv/bin/activate
# Pose overlay only
python -m pose_analyzer video.mp4
# With deadlift analysis
python -m pose_analyzer --analyzer deadlift video.mp4
# Custom output path
python -m pose_analyzer -a deadlift video.mp4 -o output.mp4The tool produces:
- Analyzed video with pose overlays
- Console report of detected events (when using an analyzer)
| Element | Color | Meaning |
|---|---|---|
| Hip marker | Cyan | Hip center position |
| Shoulder marker | Magenta | Shoulder center position |
| Torso line | White | Hip to shoulder connection |
| Velocity arrows | Cyan/Magenta | Movement direction and speed |
Detects "hip shooting" - when hips rise faster than shoulders during a deadlift pull. This indicates the lifter's back angle is becoming more horizontal, a common form breakdown.
- Camera angle: Side view works best
- Lighting: Good, consistent lighting improves detection
- Clothing: Fitted clothing helps landmark detection
- Full body visible: Keep hips and shoulders in frame
- Works best with side-view videos
- Single person detection only
- CPU-based (MediaPipe doesn't use GPU on desktop)
- Hip shoot detection is experimental and not accurate - the deadlift analyzer is a work in progress and should not be relied upon for form feedback. Currently, this tool is most useful for overlaying a stick figure skeleton on videos.