Cornerman Vision — Phase 0 Signal Spike

—
Infer FPS
—
Frames / punch
0
Punches
—
Confidence
2D
No block running. Declare what you are about to throw, then Start Block.
Session progress —
1.25
140
0.30
LEAD REACH REAR REACH ELBOW ANGLE THRESHOLD PUNCH
Idle. Tap Start and grant camera access. Prop the phone at ~45° to your stance, full body in frame.

What to look for. Sharp isolated spikes crossing the threshold = detectable. A rounded smear, or guard jitter reaching the same height as a punch, = the signal isn't separable and the product narrows to work rate + guard only. Frames/punch under 4 means classification is dead on arrival.

Work in blocks. Declare the punch type, context and rep count before throwing, then Start Block, throw exactly that many, and End Block. Detected-against-expected is the recall number the model decision turns on, and it cannot be recovered afterwards from an unlabelled trace. Blocks accumulate across model switches; one Export carries the whole session. Reload the page to start a clean session — nothing else clears it. Full procedure: docs/knowledge/processes/capture-protocol.md.

Set stance before the first block. Lead and rear are boxing roles; the pose model reports anatomical left and right. They coincide only for an orthodox operator, so a southpaw left on the default inverts detectedOnDeclaredHand — the number the model decision turns on — and nothing in the trace afterwards reveals it. Session progress tracks the protocol's five stages, not every model × punch × context combination: stage A drops models under 4 frames per punch, and stages B and C only ask for what survives. It resets with the page, like everything else here.