traffic op• Datenarten: keine → table (ein Operator, der allein durch seine Argumente bestimmt ist — er nimmt kein Bild und keine Daten entgegen)
• Aufruf: import fullseye as fs; fs.ledger.passing_gap_required(parked_len: 'float', margin_front: 'float', margin_back: 'float', v_ego: 'float', v_oncoming: 'float', *, lane_change_time: 'float', ego_length: 'float' = 0.0, pet_min: 'float' = 0.0, v_obstacle: 'float' = 0.0) -> 'Dict[str, float]' (die Implementierung direkt: import drivetraffic; drivetraffic.passing_gap_required(parked_len: 'float', margin_front: 'float', margin_back: 'float', v_ego: 'float', v_oncoming: 'float', *, lane_change_time: 'float', ego_length: 'float' = 0.0, pet_min: 'float' = 0.0, v_obstacle: 'float' = 0.0) -> 'Dict[str, float]'; aus dem Register: opsdrive.get("passing_gap_required"))
Zeit, um den Abschnitt zu durchfahren, in dem das Fahrzeug zum Umfahren eines geparkten Fahrzeugs auf die Gegenfahrbahn ausweicht, und der Grenzabstand, bei dem das entgegenkommende Fahrzeug bis dahin nicht eintrifft (geschlossene Form).
Das Ego-Fahrzeug beginnt margin_back vor dem Heck des parkenden Fahrzeugs (x_in) auf die Gegenfahrbahn auszuscheren und kehrt, nachdem es margin_front hinter dessen Front (x_out) passiert hat, innerhalb von lane_change_time vollständig auf den eigenen Fahrstreifen zurück. Ausscherlänge L_occ = margin_back + parked_len + margin_front + ego_length, Ausscherzeit t_occ = L_occ / v_ego + T_lc. Die Grenze des Abstands zum entgegenkommenden Fahrzeug zum Entscheidungszeitpunkt (Ego bei x_in), damit das entgegenkommende Fahrzeug den Rückkehrpunkt P = x_in + L_occ + v_ego T_lc mindestens pet_min nach dem Zeitpunkt der vollständigen Rückkehr erreicht (PET ≥ pet_min):
D* = t_occ (v_ego + v_on) + v_on · pet_min
Fahrendes Hindernis (Fahrrad usw., in gleicher Richtung mit v_obstacle): die Ausscherlänge ist ein Abstand relativ zum Hindernis, also t_occ = L_occ / (v_ego − v_obstacle) + T_lc, Rückkehrpunkt P = x_in + v_ego t_occ. Die Formel für D* hat dieselbe Form. Mit v_obstacle = 0 ergibt sich wieder die Formel für ein stehendes Fahrzeug.
Rückgabe-dict: L_occ, t_occupy, d_required (= D*), clear_point (Abstand von x_in bis P).
Raises ValueError: negative Längen oder Abstände, v_ego ≤ 0, v_oncoming < 0, lane_change_time < 0, v_obstacle < 0 oder v_obstacle ≥ v_ego (kann nicht aufholen).
• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).
• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.
• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.
• poc_driving_traffic — py -3.11 examples/poc_driving_traffic.py
table als Eingabe)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
traffic)idm_accel · idm_equilibrium_gap · idm_platoon_simulate · driver_style · lateral_wobble · ou_estimate · social_force_step · pedestrian_crossing
*Provenance: drivetraffic.py — DRIVE Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.