Add person
Import roster (CSV)
Required column:
name · Optional: notes, marker_count
People
Generate unassigned markers
All markers
Filters the canvas, list, and the default formation for new zones.
Camera (for drawing zones)
Zone templates
Drops 5 line / 5 spectrum / 2 two_camps / 4 matrix / 1 circle / 5 privilege_walk zones. Replaces any existing zones tagged with those formations.
Draw & edit zones
Click a zone on the camera to edit it ·
drag a handle to move a vertex ·
click the “+” on an edge to insert a new vertex (and drag to position it) ·
shift-click a handle to delete it ·
Esc deselects · locked zones can't be edited until you unlock them in the list below.
Zones
Add question
Presets
Loads the full opening exercise: 6 question blocks + the 16-statement privilege walk + the four-corners matrix. Replaces existing rows in the same blocks.
Questions
Detail
Camera calibration
Two one-time steps unlock 3D pose: (1) intrinsic — display the ChArUco board on a tablet and wave it in front of the camera from different angles, then (2) extrinsic — tape four marker cards to the floor corners. After both, every detected marker reports world XYZ + yaw/pitch/roll, and /track3d shows the scene in metres.
Multi-camera setups: each physical camera = one row, calibrated separately.
Step 1 — Intrinsic calibration (ChArUco board)
1. Scan the QR on a tablet (or phone in landscape)
2. The board fills the screen — keep it flat and bright
3. Press Start capture below, then slowly tilt/rotate
the tablet so the camera sees ≥ 20 distinct angles
4. Press Compute calibration
2. The board fills the screen — keep it flat and bright
3. Press Start capture below, then slowly tilt/rotate
the tablet so the camera sees ≥ 20 distinct angles
4. Press Compute calibration
idle
No session.
Tip: vary the board's distance and tilt between captures. The session needs ≥ 20 distinct views;
identical or near-identical poses are silently skipped.
Step 2 — Extrinsic from four floor-corner markers
Whichever you choose, place the four markers in a TL/TR/BR/BL rectangle matching the dimensions above.
Then start the live camera below; once all four are visible the system can solve the world frame.
idle