mirror_blind_zone — DRIVE 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"))

Usage

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).

References (sample data, literature)

• 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.

Runnable examples (verified samples that actually call this op)

• poc_driving_decisions — py -3.11 examples/poc_driving_decisions.py

Ops the type connects to (they accept table as input)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

Same category (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.