pedestrian_crossing — DRIVE 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.pedestrian_crossing(intent: 'str', *, start_xy=(0.0, -3.0), road_width: 'float' = 7.0, speed: 'float' = 1.2, wait_time: 'float' = 3.0, curb_offset: 'float' = 0.3, along_heading: 'float' = 0.0, dt: 'float' = 0.1, t_end: 'Optional[float]' = None) -> 'Dict[str, object]' (die Implementierung direkt: import drivetraffic; drivetraffic.pedestrian_crossing(intent: 'str', *, start_xy=(0.0, -3.0), road_width: 'float' = 7.0, speed: 'float' = 1.2, wait_time: 'float' = 3.0, curb_offset: 'float' = 0.3, along_heading: 'float' = 0.0, dt: 'float' = 0.1, t_end: 'Optional[float]' = None) -> 'Dict[str, object]'; aus dem Register: opsdrive.get("pedestrian_crossing"))

Verwendung

Trajektorie eines Fußgängers, dessen Querungsabsicht die Ground Truth ist (geschlossene Form je Abschnitt; keine Integration).

Die Straße verläuft in x-Richtung, Fahrbahn 0 ≤ y ≤ road_width, Start auf dem Gehweg y < 0 (y von start_xy < −curb_offset).

• cross: geht von (x0, y0) zum Bordstein (x0, −curb_offset), überquert ohne anzuhalten bis zum gegenüberliegenden Bordstein (x0, road_width + curb_offset) und bleibt stehen. Ausrichtung +π/2 (zur Fahrbahn).

• wait_then_cross: geht zum Bordstein, bleibt am Bordstein zur Fahrbahn gewandt (+π/2) wait_time Sekunden stehen und überquert dann.

• walk_along: geht auf dem Gehweg in Richtung along_heading (0 oder π) bei unverändertem y = y0 (betritt die Fahrbahn nicht).

• stand_no_cross: geht zum Bordstein und bleibt am Bordstein zur Fahrbahn gewandt (+π/2) stehen, ohne zu überqueren (wartet auf einen Bus oder eine Begleitperson). Äußerlich ist es nicht vom Warten bei wait_then_cross zu unterscheiden — eine Ground Truth, die zur Fehldetektion wird, wenn eine Regel „Anhalten“ als Kriterium nimmt. t_cross_start ist None.

Die Geschwindigkeit ist speed (Standard WALK_SPEED = 1,2 m/s, Annahme).

Rückgabe-dict: t (K,), xy (K, 2), heading (K,), phase (K,) als Zeichenketten ("approach" / "wait" / "cross" / "done" / "along"), intent (Ground Truth), t_cross_start und t_cross_end (None bei Absichten ohne Überqueren), speed. Gate: Überquerungsdauer = (road_width + 2·curb_offset)/speed; eine wartende Person hat während des Wartens konstante Position und Ausrichtung +π/2; eine entlanggehende Person hat zu allen Zeiten y < 0; die Ausrichtung stimmt mit der Richtung der Positionsdifferenzen überein.

Raises ValueError: unbekannter intent, speed ≤ 0, start nicht auf dem Gehweg, along_heading nicht 0/π.

Referenzen (Beispieldaten, Literatur)

• 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.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• poc_driving_traffic — py -3.11 examples/poc_driving_traffic.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

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

Gleiche Kategorie (traffic)

idm_accel · idm_equilibrium_gap · idm_platoon_simulate · driver_style · lateral_wobble · ou_estimate · social_force_step · occlusion_reveal_distance


*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.