yield_maneuver_check — DRIVE decide op

• Data kinds: table → table

• Call: import fullseye as fs; fs.ledger.yield_maneuver_check(trajectory, *, t_approach: 'float', t_passed: 'float', intersections=(), near_margin: 'float' = 30.0, left_tol: 'float' = 1.0, stop_speed: 'float' = 0.1, car_length: 'float' = 4.5) -> 'Dict[str, object]' (implementation को सीधे call करना हो तो import drivedecide; drivedecide.yield_maneuver_check(trajectory, *, t_approach: 'float', t_passed: 'float', intersections=(), near_margin: 'float' = 30.0, left_tol: 'float' = 1.0, stop_speed: 'float' = 0.1, car_length: 'float' = 4.5) -> 'Dict[str, object]', registry से लेना हो तो opsdrive.get("yield_maneuver_check"))

उपयोग

आपातकालीन वाहन के पास आने पर अपने वाहन के व्यवहार की Road Traffic Act धारा 40 के अनुसार scoring करता है।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

40 条 1 項: 交差点又はその附近 → 交差点を避け、道路の左側に寄って 一時停止。40 条 2 項: それ以外 → 道路の左側に寄って進路を譲る(停止までは求めない)。(一方通行で左に寄ると妨げる場合の右寄せは扱わない。)

trajectory: {"t", "x", "y", "v"}。x = 道に沿った前端の位置、y = 車の左側面と道路の左端の距離(≥ 0)、v = 速さ。intersections = [(x_in, x_out), ...] (交差点の範囲)。車は [x − car_length, x] を占める。t_approach = 近づきに気づくべき時刻、t_passed = 緊急自動車が通り過ぎた時刻。

判定(閾値はすべて 仮定、法は数値を定めていない):

• 「附近」= t_approach の自車の前端が [x_in − near_margin, x_out + near_margin] に入る交差点がある。

• 「左に寄る」= 期間中に y ≤ left_tol。「一時停止」= 期間中に v ≤ stop_speed の刻みがある。

• 「交差点を避け」= 期間中に止まっている刻み(v ≤ stop_speed)で車体が交差点の範囲に重ならない。

返り値: case("40-1" / "40-2")、violations(各 {"rule", "detail", "article"})、ok、min_y、stopped、stopped_in_intersection。

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_driving_decisions — py -3.11 examples/poc_driving_decisions.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

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

इसी category के (decide)

mirror_reflection_matrix · mirror_virtual_camera · mirror_aim_normal · convex_mirror_fov · mirror_blind_zone · check_sequence_score · signal_phase_plan · signal_state


*Provenance: drivedecide.py — DRIVE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.