lidar_scan — DRIVE lidar op

• Datenarten: mesh × table × matrix → table

• Aufruf: import fullseye as fs; fs.ledger.lidar_scan(V, F, spec, T_sensor, *, labels=None, seed: 'int' = 0) -> 'dict' (die Implementierung direkt: import lidarsim; lidarsim.lidar_scan(V, F, spec, T_sensor, *, labels=None, seed: 'int' = 0) -> 'dict'; aus dem Register: opsdrive.get("lidar_scan"))

Verwendung

Feuert 1 Sweep eines LiDAR mit der Pose T_sensor (world ← sensor) in die Mesh-Welt (V, F).

• V (N,3) float / F (M,3) int: Dreiecksnetz (leer, nicht (N,3), nicht endlich oder Flächenindizes außerhalb des Bereichs lösen ValueError aus).

• spec: das dict von lidar_spec.

• T_sensor: 4×4-homogene Matrix (world ← sensor). Sensorkoordinaten: x=vorn, y=links, z=oben.

• labels: int-Label pro Fläche (M,) oder None (bei None ist das Label getroffener Zellen 0).

• seed: Zufallssaat für das Rauschen (bei noise_std == 0 werden überhaupt keine Zufallszahlen gezogen, bitgenau deterministisch).

Zurückgegebenes dict:

points (K,3) Reflexionspunkte in Weltkoordinaten (zeilenweise: ab Spalte 0 von beam 0) / ranges (n_beams, n_az) [m] (0 = kein Echo) / hit_face (n_beams, n_az) int (−1 = keines) / labels (n_beams, n_az) int (−1 = keines) / beam (K,) int / col (K,) int / n_hits int. Liegt die nächste Fläche unter range_min oder über range_max, gibt es kein Echo (es geht nicht zu einer weiter hinten liegenden Fläche durch). Das Rauschen wird zu ranges und points addiert, nachdem anhand der rauschfreien Distanz entschieden wurde, ob es ein Echo gibt.

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_school — py -3.11 examples/poc_driving_school.py

Typkompatible Folge-Operatoren (nehmen table als Eingabe)

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

Gleiche Kategorie (lidar)

lidar_spec · ray_plane_range · ray_box_ranges


*Provenance: lidarsim.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.