decide op• Data kinds: none → table (an op determined by its arguments alone — it takes no image or data input)
• Call: import fullseye as fs; fs.ledger.mirror_blind_zone(eye_xy, mirror_center_xy, mirror_normal_xy, mirror_width, *, mirror_radius=inf, direct_limit_deg: 'float' = 100.0, roi=(-15.0, -2.0, 0.9, 4.4)) -> 'Dict[str, object]' (to call the implementation directly, import drivedecide; drivedecide.mirror_blind_zone(eye_xy, mirror_center_xy, mirror_normal_xy, mirror_width, *, mirror_radius=inf, direct_limit_deg: 'float' = 100.0, roi=(-15.0, -2.0, 0.9, 4.4)) -> 'Dict[str, object]'; from the registry, opsdrive.get("mirror_blind_zone"))
The region to the left rear of the ego vehicle that is covered neither by the left door mirror nor by direct view (2D, top view).
Coordinates are the car's x = forward, y = left. eye_xy = the driver's eye, mirror_center_xy = centre of the mirror, mirror_normal_xy = the mirror's normal (facing the eye side; can be built with mirror_aim_normal), mirror_width = width of the mirror (chord length seen from above), mirror_radius = radius of curvature of the convex surface (inf = flat mirror). direct_limit_deg = upper bound of the bearing visible directly without turning the head (counter-clockwise from forward; 100° is an assumption). roi = target region (x_min, x_max, y_min, y_max) (the adjacent lane on the left. Place it so that it does not contain the mirror body or the car body = whether the mirror's rays pass through the car body is not checked).
Region visible in the mirror = between the 2 rays reflected at the two ends of the mirror, and on the eye side of the mirror's chord. Directly visible = bearing seen from the eye ≤ the upper bound. The blind zone = roi ∖ (mirror ∪ direct) is returned as a list of mutually disjoint convex polygons (convex ∖ convex = a union obtained by removing one half-plane at a time).
Return value: pieces (list of convex polygons (k, 2)), area, mirror_edges (the two end points (2, 2)), mirror_rays (unit vectors of the reflected rays at both ends (2, 2)), mirror_area / direct_area (visible area within roi).
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• poc_driving_decisions — py -3.11 examples/poc_driving_decisions.py
table as input)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
decide)mirror_reflection_matrix · mirror_virtual_camera · mirror_aim_normal · convex_mirror_fov · check_sequence_score · signal_phase_plan · signal_state · predict_amber_onset
*Provenance: drivedecide.py — DRIVE operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.