Skip to content

1.8.0 — group QoM returns a different number, and the old one was confounded - #364

Merged
alexarje merged 1 commit into
masterfrom
micromotion-1.0-1.8.0
Aug 5, 2026
Merged

1.8.0 — group QoM returns a different number, and the old one was confounded#364
alexarje merged 1 commit into
masterfrom
micromotion-1.0-1.8.0

Conversation

@alexarje

@alexarje alexarje commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

group_qom, pose_qom and normalized_qom are re-exported from micromotion, which released 1.0.0 today. They averaged over every marker at every frame while the underlying band_limited_qom interpolates gaps, so an occluded marker contributed a near-zero speed and still counted in the divisor. The result tracked how much the cameras saw rather than how much the body moved.

Twelve markers with a realistic dropout pattern, a median of eight visible: 78.07 against a true 91.53, with the speed series correlating +0.246 with the per-frame count of visible markers. normalize="visible", the new default, gives 90.85 at −0.001.

normalize="worn" reproduces the old computation. Clean pose data with no dropouts is unaffected; occluded mocap is affected most.

The micromotion floor is >=1.0.0. That is a correctness floor rather than a documentation one: below it the re-exported function returns the confounded number.

All 545 tests pass against micromotion 1.0.0 unchanged — which also means none of them covered the behaviour that changed. The occlusion tests live upstream, in micromotion.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Qx7SWwc4XGYgXNNKrcNAgP

…founded

`group_qom`, `pose_qom` and `normalized_qom` are re-exported from `micromotion`,
which released 1.0.0 today. They averaged over every marker at every frame while
the underlying `band_limited_qom` interpolates gaps, so an occluded marker
contributed a near-zero speed and still counted in the divisor. The result
tracked how much the cameras saw rather than how much the body moved: 16 to 17
per cent low on a realistic dropout pattern, with the speed series correlating
up to +0.70 with the per-frame count of visible markers.

The new default, `normalize="visible"`, excludes each marker at the frames where
that marker was absent. Pass `normalize="worn"` to reproduce a figure published
with an earlier release, and say which you used. Clean pose data with no
dropouts is unaffected; occluded mocap is affected most.

The `micromotion` floor is now `>=1.0.0`. That is a correctness floor rather
than a documentation one: below it the re-exported function returns the
confounded number.

All 545 tests pass against micromotion 1.0.0 unchanged, which also means none of
them covered the behaviour that changed.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Qx7SWwc4XGYgXNNKrcNAgP
@alexarje
alexarje merged commit c03fbab into master Aug 5, 2026
12 checks passed
@alexarje
alexarje deleted the micromotion-1.0-1.8.0 branch August 5, 2026 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant