crossing op• 데이터 종류: table → table
• 호출: import fullseye as fs; fs.ledger.crossing_stop_check(trajectory, *, stop_line: 'float', crossing_start: 'float', crossing_end: 'float', car_length: 'float', look_events: 'Sequence[Tuple[float, str]]' = (), forbidden_intervals: 'Sequence[Tuple[float, float]]' = (), queue_rear: 'Optional[float]' = None, signal_controlled: 'bool' = False, near: 'float' = 2.0, v_stop: 'float' = 0.05, gap: 'float' = 1.0, beyond: 'float' = 0.5, brake_max: 'Optional[float]' = None) -> 'Dict[str, object]'(구현을 직접 호출하려면 import drivecrossing; drivecrossing.crossing_stop_check(trajectory, *, stop_line: 'float', crossing_start: 'float', crossing_end: 'float', car_length: 'float', look_events: 'Sequence[Tuple[float, str]]' = (), forbidden_intervals: 'Sequence[Tuple[float, float]]' = (), queue_rear: 'Optional[float]' = None, signal_controlled: 'bool' = False, near: 'float' = 2.0, v_stop: 'float' = 0.05, gap: 'float' = 1.0, beyond: 'float' = 0.5, brake_max: 'Optional[float]' = None) -> 'Dict[str, object]', 원장에서 가져오려면 opsdrive.get("crossing_stop_check"))
철도 건널목 통행 방식을 채점(제33조 제1·2항, 제50조 제2항, 교칙 6-1-1(1)(3)(4)(5)).
trajectory = {"t", "x"[, "v"]}(x = 차의 앞끝). 판정(위반의 이름):
• no_stop(33 조 1 항): 앞끝이 건널목에 들어가기 전에, 정지선 직전([stop_line − near, stop_line])에서 멈추지 않았다(signal_controlled 이면 면제).
• no_look(33 조 1 항·교칙 6-1-1(1)(2)): 마지막 정지 동안(멈추고 나서 움직이기 시작할 때까지) 좌우 양쪽을 보지 않았다.
• entered_while_forbidden(33 조 2 항): 앞끝이 건널목 앞쪽 끝을 넘은 시각이 forbidden_intervals 안. brake_max [m/s²] 를 넘기면, 그 구간이 시작되는 시점에 brake_max 의 감속으로는 건널목 앞에 멈출 수 없었던 진입(v² / (2 brake_max) > 건널목까지의 거리)은 위반으로 세지 않고 unavoidable 에 기록한다(황색 신호에서 멈출 수 없는 거리와 같은사고방식. 법에 명문의 예외는 없다 = 해석·가정). None 이면 예외 없음.
• no_exit_room(50 조 2 항): 들어간 시각에 건너편의 여지가 없다(exit_room_check).
• stopped_inside(교칙 6-1-1(5)): 차체가 건널목에 걸려 있는 동안 멈추었다.
건널목에 들어가지 않은 궤적은 entered = False(위반은 정지·확인 이외를 세지 않는다).
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• poc_driving_crossing — py -3.11 examples/poc_driving_crossing.py
• poc_driving_town — py -3.11 examples/poc_driving_town.py
table 를 입력으로 받는 것)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
crossing)crossing_timing_check · crossing_gate_state · crossing_lamp_signal · lamp_pair_phase · crossing_clear_time · exit_room_check · track_sight_distance · sight_triangle_distance
*Provenance: drivecrossing.py — DRIVE 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.