Technical Articles and Newsletters

Visualisierung, Klassifikation und Fusion von Sensordaten für automatisiertes Fahren

Von Avinash Nehemiah and Mark Corless, MathWorks

Ingenieuren, die Wahrnehmungsalgorithmen für ADAS oder voll automatisiertes Fahren entwickeln, steht in der Regel eine Fülle von Eingabedaten zur Verfügung. Diese Daten stammen aus vielen verschiedenen Arten von Sensoren, wie z.B. RADAR, LiDAR, Kameras und Fahrspurdetektoren, und werfen anfangs mehr Fragen auf als sie beantworten. Wie können diese Daten in der Praxis sinnvoll genutzt werden? Wie können in Konflikt stehende Eingabewerte verschiedener Sensoren miteinander in Einklang gebracht werden? Sobald dann ein Algorithmus entwickelt wurde, stellt sich die Frage, wie die von ihm erzeugten Ergebnisse bewertet werden sollten.

Dieser Artikel soll ein Leitfaden zu den Funktionen und Fähigkeiten von MATLAB® und der Automated Driving Toolbox™ sein sowie dabei helfen, die genannten Fragen zu beantworten. Wir konzentrieren uns auf vier Kernaufgaben: Visualisierung von Fahrzeugsensordaten, Ground Truth-Klassifikation, Fusion von Daten aus verschiedenen Sensoren und Synthese von Sensordaten, um Tracking- und Fusionsalgorithmen zu testen.

Visualisierung von Fahrzeugsensordaten

Die größte Herausforderung während der ersten Entwicklungsphasen von Wahrnehmungssystemen ist es, die Daten zu verstehen. Sensoren liefern ihre Ausgabewerte in ganz unterschiedlichen Formaten und mit unterschiedlichen Abtastraten. Kameras stellen z.B. Bilder in Form von 3D-Matrizen für die drei Farbkanäle bereit, LiDAR bietet eine Liste von Punkten im 3D Raum und eingebettete oder intelligente Kamerasysteme liefern Objektlisten mit Details zu Fahrzeugen, Fahrspuren und anderen Objekten. Aufgrund der völlig verschiedenen Art dieser Ausgabewerte ist es schwierig, das Gesamtbild zu erkennen (Abbildung 1).

Abbildung 1: Beispiele für Fahrzeugsensordaten.

In dieser frühen Phase ist es wichtig zu wissen, wie die Sensoren die Umgebung um das Fahrzeug herum darstellen. Die beste Visualisierungsart dafür ist eine Darstellung aus der Vogelperspektive, weil dadurch alle Daten der verschiedenen Sensoren zusammen visualisiert werden können.

Um eine Darstellung aus der Vogelperspektive zu erstellen, nutzen wir die Visualisierungswerkzeuge in MATLAB und der Automated Driving Toolbox. Mittels der folgenden Objekte können der Ansicht weitere Details hinzugefügt werden:

  • coverageAreaPlotter zur Anzeige des Sensorabdeckungsbereichs
  • detectionPlotter zur Anzeige von Listen von Objekten, die von den Kamerasystemen sowie den RADAR- und LiDAR-Sensoren erfasst wurden
  • laneBoundaryPlotter zur Überlagerung von Fahrspurerkennungen auf Bilder

Dadurch erhält man genaue Visualisierungen der Sensorabdeckung, Detektionen und Fahrspurgrenzen (Abbildung 2).

Abbildung 2: (Im Uhrzeigersinn von oben links) Darstellung des Sensorabdeckungsbereichs, Umwandlung von Fahrzeug- in Bildkoordinaten, Darstellung von Fahrspuren und RADAR-Detektionen sowie der LiDAR-Punktwolke.

Automatisierung der Ground-Truth-Klassifikation

Ground Truth-Informationen, d.h. Referenzinformationen sind erforderlich, um Objektdetektoren mithilfe von Machine Learning- oder Deep Learning-Verfahren zu trainieren. Außerdem ist dies für die Bewertung der Qualität bestehender Detektionsalgorithmen unabdingbar. Das Hinzufügen der Referenzinformation ist oft ein arbeitsintensiver Prozess, bei dem manuell Beschriftungen in jedes Einzelbild eines Videos eingefügt werden. Die Ground Truth Labeler-App in der Automated Driving Toolbox umfasst Computervision-Algorithmen zur Beschleunigung der Ground Truth-Klassifikation. Die App hat drei Hauptmerkmale (Abbildung 3):

  • Der Fahrzeugdetektor automatisiert die Detektion und Klassifikation von Fahrzeugen in Schlüsselbildern unter Verwendung eines Aggregate Channel Feature (ACF)-Algorithmus.
  • Der temporale Interpolator kennzeichnet diejenigen Objekte, welche in allen Einzelbildern zwischen ausgewählten Schlüsselbildern entdeckt werden.
  • Der Punkt-Tracker nutzt eine Version des Kanade-Lucas-Tomasi (KLT)-Algorithmus zur Verfolgung der zu untersuchenden Bereiche über die verschiedenen Einzelbilder hinweg.
  • Die Option Algorithmus hinzufügen ermöglicht das Hinzufügen benutzerdefinierter Algorithmen und erleichtert die iterative Entwicklung von Objektdetektoren.

Abbildung 3: Ground Truth Labeler-App.

Fusion von Daten aus mehreren Sensoren

Nahezu jedes Wahrnehmungssystem nutzt Eingabedaten von mehreren komplementären Sensoren. Der Abgleich der Daten dieser Sensoren kann schwierig sein, weil jeder wahrscheinlich ein leicht unterschiedliches Ergebnis liefert. Der Vision-Detektor z.B. könnte melden, dass ein Fahrzeug sich an einem bestimmten Ort befindet, während der RADAR-Detektor das gleiche Fahrzeug an einem nahe gelegenen, aber deutlich anderen Ort anzeigt.

Der multiObjectTracker in der Automated Driving Toolbox verfolgt Detektionen und führt sie zusammen. Eine gebräuchliche Anwendung besteht darin, RADAR- und Sichtdetektionen zu fusionieren und die geschätzte Position von Fahrzeugen in der Umgebung zu verbessern (Abbildung 4).

Abbildung 4: Der Multi-Objekt-Tracker wird hier dazu genutzt, RADAR-Daten (roter Punkt) und Sichtdetektionsdaten (blaues Dreieck) zusammenzuführen, um eine präzisere Schätzung der Position des Fahrzeugs (schwarzes Oval) zu erhalten.

Synthese von Sensordaten für die Erstellung von Testszenarien

Manche Testszenarien, wie z.B. unmittelbar bevorstehende Kollisionen, sind zu gefährlich, um sie in einem realen Fahrzeug auszuführen. Diese Herausforderungen können durch die Synthese von Sensordaten auf Objektebene angegangen werden, um Szenarien zu generieren, welche Straßen, Fahrzeuge und Fußgänger als virtuelle Objekte enthalten. Wir können diese synthetischen Daten nutzen, um unseren Tracking- und Sensorfusions-Algorithmus zu testen. (Abbildung 5).

Abbildung 5: Draufsicht, Verfolgerkamera-Ansicht und Darstellung aus der Vogelperspektive eines synthetisierten Testszenarios.

Verwenden von Fahrzeugdaten in Wahrnehmungssystemen

Die Visualisierung, Fusion und Synthese von Fahrzeugdaten bilden die Grundlage für die Entwicklung von Objekterkennungsalgorithmen. Nach erfolgreicher Entwicklung und Test der Algorithmen in MATLAB können wir mit MATLAB Coder™ portablen, ANSI/ISO-konformen C/C++-Code für die Integration in der eingebetteten Anwendung generieren.

Veröffentlicht 2017 - 93165v00


Artikel für ähnliche Einsatzgebiete anzeigen

Artikel für verwandte Branchen anzeigen