Footage

What the robot sees

The detector paints its own diagnostic overlay on every frame — box, centre dot, four labels and a translucent status bar. Below, that overlay is rebuilt from the exact cv2 calls in the node, so you can drag the range and watch the moment it declares itself positioned.

01 — Detector overlay

The HUD, reconstructed

Every element here is drawn where the node draws it: the box turns green only when |distance_error| < 0.1, the labels stack upward from y1 − 10 in 20 px steps, and the status line flips only when the range and the horizontal offset are both inside tolerance.

This is a reconstruction, not a camera capture

The background is schematic. The overlay geometry, colours, text format and thresholds are taken from realsense_basket_detector.py:333–431; the scene behind it is drawn to give the overlay something to sit on.

Basketball Detection — 640 × 480

as drawn by the node

Positive means the hoop is to the left — the sign is flipped on :315.

status line
distance_error
value_x
value_y
setpoint3.28 m
Slide the range to 3.28 m — that is where the loop settles, not the 5.726 m named in target_distance. See finding 1.
02 — Match footage

Annotated clips

Each clip carries a timed annotation track: boxes and captions appear over the video as playback reaches them, and the chapter buttons seek straight to a moment.

How to read these

Boxes and captions are keyed to timestamps taken from the footage itself, so they appear as playback reaches them. The chapter buttons under each clip jump straight to a moment. Where a clip carries its own on-screen caption — “SHOOTING FROM 2POINT ZONE” and the like — the annotation ties it back to the constant in the firmware that produces it.

Match play — robots on court

Wide arena shot, 22 s. Bot 1 works the court in front of the crowd and puts up a shot at the far hoop around the 15-second mark.

Shooting from both zones

Practice room, 23 s. The clip labels its own two segments — the 2-point zone up close, then the 3-point zone from across the room. That is the distinction the three PWM presets exist to serve.

Mechanism detail — both robots

31 s, front on. The clearest look at the build: the octagonal chassis deck, the mast, the launcher head, and the second robot that feeds it.

03 — Reference

Annotation track format

Tracks are inline JSON inside each figure. Coordinates are percentages of the video frame, so they survive any resize. Add, edit or retime an annotation by editing this block — no build step.

{
  "annotations": [
    {
      "start": 4,                  // seconds
      "end":   9,
      "label": "Approach",        // chapter button text
      "note":  "Closing on the hoop…",
      "boxes": [
        { "x": 44, "y": 22, "w": 18, "h": 20,
          "label": "hoop", "colour": "cyan" }
      ]
    }
  ]
}

colour accepts cyan, green, violet or is omitted for the default orange. Boxes with no label render without a tag.