MovementModeler · Education
Turn everyday video into stick figures and motion data
A small, practical iOS app for getting motion data out of real-world video. Any short clip, staged or in the wild, becomes a stick-figure visualization and BODY-25 pose data with embedded metadata, straight from an iPhone.
View on the App Store · Python tools repository
What it does
It is a way to collect and inspect motion data without setting up a lab or wrestling with a full pipeline first: phone, video, data.
Motion data, anywhere
Students record or import video on the phone they already carry. The app works indoors and outdoors, including in bright sunlight. As with any vision system, stable framing and reasonable video quality help the tracking.
Stick-figure visualizations
Stick-figure, capsule, or sprite renders make movement easier to see and discuss. Students can scrub and replay clips for quick visual checks before doing any analysis, and export MP4s for demos and reports.
Pose data for analysis
BODY-25 pose data per frame and per person. From there it is your world: Python, MATLAB, R, or whatever tools you prefer for features, metrics, and models.
Tag data before export
Clips can be labeled with activity, camera angle, and target subject in the app. The JSON arrives with structured metadata, so there is no separate labeling step and no spreadsheet of filenames. Students spend their time on analysis, not bookkeeping.
- Activity. A built-in vocabulary (gait, sit to stand, balance, dance, upper limb, stairs, and more) or a custom label for your domain.
- Camera angle. Frontal, sagittal, or other, so downstream scripts can handle perspective-specific analysis.
- Subject. In multi-person scenes, which tracked person is the primary subject.
{
"fps": 15.0,
"lmm": {
"activity": "sit_to_stand",
"subject_index": 0,
"camera_angle": "sagittal"
},
"frames": [ ... ]
}
The lmm block sits alongside the pose data, so every export is self-describing.
Where it might fit
Computer vision and machine learning
- Intro labs on keypoints, occlusion, and tracking.
- Small projects on action recognition or gesture classification.
- Capstones that start from students’ own recordings instead of static datasets.
- Batch processing of student-collected data, organized by its labels.
Biomechanics, physical and occupational therapy
- Comparing joint trajectories between conditions or techniques.
- Teaching kinematics with stick figures and time series.
- Linking qualitative observation to basic quantitative measures.
Sports science and performance
- Form in jumps, cuts, pivots, and landings.
- Left–right differences and stability over time.
- Letting students try simple performance metrics of their own.
The workflow
The goal is to get out of the way so students can focus on the ideas you are teaching.
- Capture or import. Film on an iPhone or use an existing clip.
- Check the visualization. Sticks, capsules, or sprites; adjust confidence and smoothing for obvious spikes or noise.
- Tag metadata. Activity, camera angle, and target subject.
- Export. JSON for notebooks, MP4 for reports and presentations.
For best results: stable framing, higher resolution, and less motion blur. Outdoor clips in bright sunlight work well.
Python tools (optional)
For classes that already use OpenPose-style tooling, two small scripts bridge MovementModeler exports into common workflows.
# 1) MovementModeler clip export -> per-frame OpenPose-style JSON python scripts/mm_to_openpose.py movementmodeler_clip.json frames_json/ # 2) Per-frame JSON -> stick-figure MP4 python scripts/mm_json_dir_to_stickmp4.py frames_json/
Repository: movementmodeler-tools
Instructor questions
Where can students use it?
Anywhere they can film. It works indoors and outdoors, including in direct sunlight. Steady framing and clear subjects help.
Do students need special hardware?
A reasonably recent iPhone. Analysis happens in whatever environment you already use.
What does the export look like?
Stick-figure MP4s, and BODY-25 pose data with coordinates and confidence per joint, per frame, per person. The JSON also carries an lmm block with the activity label, camera angle, and subject index set before export.
What is the metadata for?
It makes the data self-describing. Every export carries its own activity, camera angle, and subject, which matters most when students collect many clips across conditions or sessions.
Can we build our own tools on top?
Yes. The exported data is meant to be raw material. The optional tools repository exists to make it easier to slot into existing workflows.
Questions: contact@lmmtech.ai