decide optable → tableimport fullseye as fs; fs.ledger.check_sequence_score(events, *, maneuver: 'str' = 'lane_change', lead_time: 'float' = 3.0, lead_tol: 'float' = 0.5, max_lead: 'Optional[float]' = None, signal_distance: 'float' = 30.0, distance_tol: 'float' = 3.0, cancel_tol: 'float' = 2.0) -> 'Dict[str, object]' (実装を直接呼ぶなら import drivedecide; drivedecide.check_sequence_score(events, *, maneuver: 'str' = 'lane_change', lead_time: 'float' = 3.0, lead_tol: 'float' = 0.5, max_lead: 'Optional[float]' = None, signal_distance: 'float' = 30.0, distance_tol: 'float' = 3.0, cancel_tol: 'float' = 2.0) -> 'Dict[str, object]'、台帳から引くなら opsdrive.get("check_sequence_score"))進路変更・右左折の前の「安全確認 → 合図 → (約 3 秒 / 30 m)→ 行為 → 合図をやめる」を採点する。
events: {"t": 時刻, "kind": 種類, "s": 道のりの位置(任意)} の列。種類は
mirror / head_check(安全確認)、signal_on / signal_off(合図)、start(進路を変え始めた /
右左折の地点に達した)、end(行為が終わった)。start は必須(1 回)。
規則(根拠は SOURCES):
signal_missing)。safety_check_missing。教則「あらかじめバックミラーなどで
安全を確かめてから合図」)。signal_timing): 進路変更は start − 合図 ≥ lead_time − lead_tol(教則「約 3 秒前」。許容は仮定)、
max_lead を与えれば早すぎも減点。右左折・転回は start の位置 − 合図の位置 ≥ signal_distance − distance_tol
(教則「30 メートル手前」。s が必要)。end より前に合図をやめていない(signal_not_continued、法 53 条 1 項)。end の後 cancel_tol 秒以内に合図をやめた(signal_not_cancelled、法 53 条 4 項。許容は仮定)。
end が無ければ 4・5 は見ない。返り値: violations(各 {"rule", "detail", "deduction"})、deduction、score = 100 − deduction、
ok、lead(秒、進路変更)/ distance(m、右左折)。
py -3.11 examples/poc_driving_decisions.pytable を入力に取れる)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 · mirror_blind_zone · signal_phase_plan · signal_state · predict_amber_onset
Provenance: drivedecide.py — DRIVE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.