crossing_timing_check — DRIVE crossing 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.crossing_timing_check(t_warning, t_closed, t_arrival, *, timing: 'Optional[dict]' = None) -> 'Dict[str, object]' (to call the implementation directly, import drivecrossing; drivecrossing.crossing_timing_check(t_warning, t_closed, t_arrival, *, timing: 'Optional[dict]' = None) -> 'Dict[str, object]'; from the registry, opsdrive.get("crossing_timing_check"))

Usage

Compares the 3 times at a railroad crossing (warning start, end of gate-arm motion, train arrival) against the standard and minimum values of the interpretation standard (arrays = per train).

The 30 / 20 seconds from warning → arrival are the values in interpretation criteria 5(3) for a crossing warning device (without barrier). For crossings with barriers the 2 values of 4(3)(5) (15 + 20 = 35 seconds is standard) apply, and the 30 / 20 second side is automatically satisfied.

Return value: warn_to_closed / closed_to_arrival / warn_to_arrival (each [s]), meets_minimum (all 3 at or above the minimum), deviation (deviation from standard, 3 values), spread (max − min of warning-start → arrival across trains. The quantity of interpretation criteria 5(4) "shall not differ greatly depending on speed etc."). Reversed time order (e.g. barrier closed before warning) raises ValueError.

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_crossing — py -3.11 examples/poc_driving_crossing.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 (crossing)

crossing_gate_state · crossing_lamp_signal · lamp_pair_phase · crossing_clear_time · exit_room_check · crossing_stop_check · track_sight_distance · sight_triangle_distance


*Provenance: drivecrossing.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.