-
Beschreibung
-
Die Erfindung betrifft ein Verfahren zur Erzeugung mindestens einer Ground Truth aus der Vogelperspektive, insbesondere basierend auf mindestens einer digitalen Bilddarstellung, die von mindestens einer Kamera erfasst wird, und auf Sensordaten (Lidar), die von mindestens einem aktiven Umgebungssensor eines Systems, vorteilhafterweise eines Fahrzeugs, erfasst werden.
-
Stand der Technik
-
In fortschrittlichen Fahrerassistenzsystemen oder autonomen Fahrsystemen wird in der Regel ein Wahrnehmungssystem verwendet, das vorteilhafterweise eine Darstellung der 3D-Umgebung liefert, und diese Darstellung kann als Eingabe für das Planungssystem der Bewegung dienen, das entscheidet, wie das Ego-Fahrzeug zu manövrieren ist. Eine Schlüsseltechnologie des Wahrnehmungssystems besteht darin, zu erkennen, wohin das Fahrzeug fahren kann und/oder wie die Umgebung um das Fahrzeug herum aussieht. Die herkömmliche Methode, bei der klassische Computer-Vision-Techniken zum Einsatz kommen, ist komplex, da viele Erkennungsalgorithmen entwickelt werden und ein Fusionsschritt durchgeführt wird, um einen Überblick über die 3D-Umgebung zu erhalten; dieser komplizierte Prozess kann auch rechenintensiv sein.
-
Im Gegensatz dazu können modernste End-to-End-Methoden verwendet werden, die semantische Karten direkt aus Multiview-Kamerabildern vorhersagen und dabei Deep Learning nutzen. Diese Methoden können den Prozess stark vereinfachen und gleichzeitig Berechnungen im gesamten System einsparen. Für diese Methoden sind dichte semantische BEV-Labels von Vorteil.
-
Deep Learning und generierte BEV-Labels können verwendet werden, um die semantische Segmentierung der BEV direkt zu lernen. Die verwendeten Datensätze verfügen jedoch entweder über schwache Ground-Truth-Labels (generiert aus semantisch gelabelten Stereobildpaaren), die manuell verfeinert werden müssen oder nur mit großem Aufwand zu beschaffen sind (z. B. HD-Karten), oder sie stammen vollständig aus einer Simulationsumgebung. Diese Ansätze sind in der Regel nicht geeignet, um ein qualitativ hochwertiges Wahrnehmungssystem für einen mobilen Roboter zu liefern, der in einer realen Umgebung arbeitet, da eine Diskrepanz zwischen den Trainings- und den realen Daten besteht.
-
Offenbarung der Erfindung
-
Hier vorgeschlagen wird gemäß Anspruch 1 ein Verfahren zur Generierung mindestens einer (Ground-Truth-)Darstellung aus der Vogelperspektive, insbesondere basierend auf mindestens einer digitalen Bilddarstellung, die von mindestens einer Kamera erhalten wurde und basierend auf Sensordaten, die von mindestens einem aktiven Umgebungssensor eines Systems, vorteilhafterweise eines Fahrzeugs, erhalten wurden, wobei das Verfahren mindestens die folgenden Schritte umfasst:
- a) Durchführen einer Sensordaten-Punktwolkenverdichtung,
- b) Durchführen einer Punktwolkenfilterung in einer Kameraperspektive,
- c) Durchführen einer Objektvervollständigung,
- d) Durchführen einer Vogelperspektiven-Segmentierung und Generierung einer Höhenkarte.
-
Die Schritte a), b), c) und d) können zur Durchführung des Verfahrens beispielsweise zumindest einmal und/oder wiederholt in der angegebenen Reihenfolge durchgeführt werden. Weiterhin können die Schritte a), b), c) und d) zumindest teilweise parallel oder gleichzeitig durchgeführt werden. Bei dem System kann es sich beispielsweise um ein Fahrzeug, wie etwa ein Kraftfahrzeug handeln. Bei dem Fahrzeug kann es sich beispielsweise um ein Automobil handeln. Das Fahrzeug bzw. System kann für einen zumindest teilweise automatisierten oder autonomen (Fahr-)Betrieb eingerichtet sein.
-
Die Generierung kann beispielsweise ein maschinelles und/oder automatisiertes Generieren umfassen. Die Darstellung kann eine Darstellung der Umgebung (im System) aus der Vogelperspektive (engl. Birds-Eye-View; hier auch kurz: BEV) betreffen. Bei der Darstellung handelt es sich vorzugsweise um eine Ground-Truth-Darstellung. Alternativ oder kumulativ kann die Darstellung eine digitale (Umgebungs-)Karte, wie etwa eine hochgenaue Umgebungskarte bzw. HD-Karte (High-Definition map) oder eine Darstellung zur Überwachung der Straßen- und/oder Verkehrsinfrastruktur betreffen.
-
Die „Ground-Truth“ kann insbesondere eine Vielzahl von Datensätzen umfassen, welche ein Grundwissen für ein Training eines maschinell lernfähigen Algorithmus und/oder eines maschinell lernfähigen Systems, wie etwa eines künstlichen neuronalen Netzes beschreiben. Das Grundwissen kann insbesondere eine ausreichende Anzahl von Datensätzen betreffen, um einen entsprechenden Algorithmus bzw. ein entsprechendes System für eine Bildauswertung trainieren zu können.
-
Der Begriff Ground-Truth kann hier alternativ oder zusätzlich beispielsweise eine Bodenwirklichkeit, Grundwahrheit und/oder einen Feldvergleich betreffen. Die Ground-Truth-Generierung ermöglicht in vorteilhafter Weise, dass bei der Analyse von Informationen aus der Darstellung Ground-Truth-Daten, insbesondere Boden-Daten bzw. Daten zur Beschreibung des Bodens (Position und/oder Verlauf) in der Darstellung (der Umgebung) berücksichtigt werden können. Die Ground-Truth-Daten können insbesondere Zusatzinformationen und/oder Referenzinformation bereitstellen über Gegebenheiten und/oder Dimensionen und/oder Verhältnisse in der Darstellung. Die Ground-Truth-Daten können insbesondere dazu beitragen, zu beschreiben, an welcher Stelle ein (potenzielles) Objekt auf dem Boden aufsteht bzw. in Kontakt mit dem in der Darstellung erkennbaren Boden kommt. Die Ground-Truth-Daten können beispielsweise dazu beitragen, ein (Referenz-)Objekt in der Darstellung konkreter erfassen oder beschreiben zu können. Insbesondere können die Ground-Truth-Daten dazu beitragen, dass Informationen aus der Darstellung präziser klassifiziert und/oder das Ergebnis der Klassifizierung auf Korrektheit geprüft werden kann. Somit können die Ground-Truth-Daten besonders vorteilhaft zu einem Training eines maschinell lernfähigen Algorithmus und/oder eines maschinell lernfähigen Systems, insbesondere eines künstlichen neuronalen Netzes beitragen.
-
In Schritt a) erfolgt ein Durchführen einer Sensordaten-Punktwolkenverdichtung. Schritt a) kann die Aggregation der Punktwolke für ein gegebenes Frame umfassen. Insbesondere kann dies die Aggregation der Punktwolke für ein bestimmtes Keyframe ft aus den Frames ft-n bis ft+n umfassen, wobei n die halbe Fenstergröße für die Akkumulation der Frames aus der Vergangenheit und der Zukunft bezeichnet.
-
Darüber hinaus kann Schritt a) die Filterung dynamischer Objekte für durch Punktwolken repräsentierte Nicht-Keyframes umfassen. Dynamische Objekte können Artefakte in den Punktwolken erzeugen, während sie auf das Keyframe ft reprojiziert werden, daher können alle Punkte, die den dynamischen Objekten entsprechen, durch Verwendung semantischer Labels der Punktwolke gefiltert werden.
-
Darüber hinaus kann Schritt a) die Reprojektion der Punktwolke auf das Keyframe der Pose des Ego-Fahrzeugs umfassen. Angesichts der Odometrieinformationen des Ego-Fahrzeugs world_T_ego
t ∈ R
4×4für den Keyframe mit dem Zeitstempel t und der Odometrieinformationen für andere Frames world_T_ego
t+x ∈ R
4×4, wobei k ∈ R, und die entsprechende Pose des Lidar-Sensors in Bezug auf das Ego-Fahrzeug ego
t+k_T_lidar ∈ R
4×4 können durch eine relative Transformation zwischen dem Lidar-Koordinatensystem zum Zeitpunkt t + k und dem Ego-Fahrzeug-Koordinatensystem zum Zeitpunkt t berechnet werden:
-
Hierbei ist ego
t_T_lidar
t+x ∈ R
4×4die Transformation von der Lidar-Pose zum Zeitstempel t + k zur Ego-Fahrzeug-Pose zum Zeitstempel t. inv() bezeichnet die inverse Matrix-Operation, ∗ bezeichnet das Punktprodukt. Dann kann jede Punktwolke reprojiziert werden, die für die Frames t + k, k ∈ R:
-
Hierbei ist point_cloud_ego
t die Punktwolke im Keyframe in Ego-Fahrzeugkoordinaten, point_cloud_ego
t die Punktwolke in homogenen Koordinaten für den Zeitpunkt t + k. Für das Keyframe t kann nur die Transformation vom Lidar-Koordinatensystem zum Ego-Fahrzeug angewendet werden:
-
Ein Beispiel für die Verdichtung von Punktwolken ist in 3 zu sehen.
-
In Schritt b) erfolgt ein Durchführen einer Punktwolkenfilterung in einer Kameraperspektive. Schritt b) kann die Berechnung des Bodenkoordinatensystems für die jeweiligen Kameras umfassen. Angesichts der Transformationen zwischen dem Kamerakoordinatenframe und dem Ego-Fahrzeugkoordinatenframe ego_T_camera ∈ R4×4kann ein Bodenkoordinatenframe berechnet werden, das genau unter der Kamera über dem Boden liegt.
-
Angesichts der z Koordinatenverschiebung der z -Bodenebene unter Berücksichtigung des Ego-Fahrzeug-Koordinatensystems, des pitch -Winkels der pitch -Bodenebene und des roll -Winkels der roll -Bodenebene kann die Transformation der Bodenebene für das Fahrzeug wie folgt erstellt werden:
-
Mit gegebenem ego_T_plane ∈ R
4×4 und ego_T_camera ∈ R
4×4 kann die relative Transformation vom Kamerakoordinatensystem zum Ebenenkoordinatensystem berechnet werden.
-
Und die Matrix für die Transformation von der Ebene zur Kamera kann gefunden werden:
-
Damit für jede gegebene Kamera ein rechtshändiges Ebenenkoordinatensystem verwendet werden kann, kann eine Achsenkorrektur vorgenommen werden:
-
Dabei ist rh_plane_T_plane ∈ R
4×4 Transformationsmatrix für die gegebene Kameraposition zum rechtshändigen Ebenenkoordinatensystem. Zum Beispiel für die Frontkamera ist die Identitätsmatrix rh_plane T_plane front_camera = I
4, für die Rückkamera:
-
Für jede Kamera kann diese Korrekturmatrix unabhängig von der Extrinsiken der Kamera berechnet werden.
-
Darüber hinaus kann in Schritt b) eine Projektion semantisch segmentierter Lidar-Punkte auf das Kameraframe und Herausfilterung aller Punkte, die nicht in das Kamerafrustum fallen, erfolgen. Dies kann die Projektion von Lidar auf das Kameraframe umfassen:
-
Als nächstes kann dies die Projektion der Punktwolke auf das Kamerabild umfassen.
-
Hier ist intrinsic_matrix ∈ R
3×3 die Matrix mit intrinsischen Parametern, camera_projection_model das Projektionsmodell der gegebenen Kamera (z.B. äquidistante Projektion für Fisheye-Kamera), für Pinhole macht diese Funktion Identitätsmapping der Punktwolke, point_cloud_pixels
t die entsprechenden Pixelkoordinaten für die Punktwolke im Bild. Dann kann die Maskierung angewendet werden:
-
Hier ist point_cloud_camera_z die Z-Koordinate für jeden 3D-Punkt im Kamerakoordinatensystem.
-
Die maskierte Punktwolke kann auf das Bodenkoordinatensystem projiziert werden:
-
In Schritt c) erfolgt ein Durchführen einer Objektvervollständigung. Von der Punktwolkenprojektion zum BEV kann die Form der Objekte im aktuellen Frame unvollständig sein, da der Laserstrahl manchmal nur einen Teil des Objekts erreichen kann. Die Vervollständigung des Objekts in der Ground Truth kann mittels eines neuronalen Netzes vorteilhaft durchgeführt werden, in dem das neuronale Netz durch Deep Learning so trainiert wird, die Form des Objektes nur anhand eines Teils des Objektes zu vervollständigen. Dazu können die vorhandenen Cuboid Labels verwendet werden, welche 3D-Bounding-Box-Labels umfassend verschiedene Objekte sein können.
-
Wenn keine Cuboid Labels vorhanden sind, können vorteilhafterweise morphologische Operationen (z. B. Dilatation) insbesondere separat auf jeden Objekt-Punkt-Cluster angewendet werden, um mehr Forminformationen zu interpolieren. Vorteilhafterweise können für verschiedene Arten von Objekten (z. B. Masten, Autos) unterschiedliche Filterkernel (z. B. 10x1 vertikale Kernel für Masten, 3x3 quadratische Kernel für Autos) angewendet werden, um die Form des Objekts so weit wie möglich wiederherzustellen.
-
Ein Beispiel für die Vervollständigung von Objekten unter Verwendung von Cuboid Labels ist in 3 zu sehen.
-
In Schritt d) erfolgt ein Durchführen einer Vogelperspektiven-Segmentierung und Generierung einer Höhenkarte. Mit den gefilterten Punkten in der spezifischen Kameraansicht und dem vervollständigten Objekt in dieser Ansicht kann die Segmentierung und die Höhenkarte vorteilhaft erzeugt werden.
-
Bei einem vorgegebenen Bereich entlang der x- (Breite) und z- (Reichweite) Achse (BEV), z. B. 40 Meter × 60 Meter und einer Pixelrasterauflösung von z. B. 0,1 Meter/Pixel, kann eine Pixelkarte von z.B. 400 × 600 erzeugt werden. Für die Erzeugung der Segmentierungskarte kann die entsprechende semantische Klasse der Punkte verwendet werden, um die Pixelkarte zu füllen, für die Erzeugung der Höhenkarte kann der reale Höhenwert dieses Punktes genommen werden, um die Höhenkarte zu füllen.
-
Ein Beispiel für das generierte Label für die Frontkamera ist in 4 dargestellt.
-
Nach einer vorteilhaften Ausgestaltung wird vorgeschlagen, dass die (Ground-Truth-)
-
Darstellung zumindest auch auf Sensordaten basiert, die von mindestens einem aktiven Umgebungssensor erhalten wurden. Vorzugsweise umfasst der mindestens eine aktive Umgebungssensor einen Lidar-Sensor und/oder einen Radar-Sensor. Besonders bevorzugt ist der aktive Umgebungssensor ein Lidar-Sensor.
-
Nach einer weiteren vorteilhaften Ausgestaltung wird vorgeschlagen, dass in Schritt a) eine Sensordatenpunktwolke in statische und dynamische Objektpunkte auf Basis semantischer Informationen aufgespalten wird. Beispielsweise kann eine semantisch gelabelte Sensordatenpunktwolke in statische und dynamische Objektpunkte auf Basis semantischer Informationen aufgespalten werden Weiterhin kann eine Aggregation mehrerer Sensordatenpunktwolken innerhalb eines Zeitintervalls nur für die statischen Objekte durchgeführt werden.
-
Nach einer weiteren vorteilhaften Ausgestaltung wird vorgeschlagen, dass in Schritt b) mindestens ein Kameraparameter zur Rückprojektion von Sensordatenpunkten auf dem aktuellen Bildbereich verwendet wird. In diesem Zusammenhang können vorteilhafterweise Sensordatenpunkte, die außerhalb der Kamerasicht liegen, verworfen werden.
-
Nach einer weiteren vorteilhaften Ausgestaltung wird vorgeschlagen, dass in Schritt c) mindestens eine quaderförmige Box auf einen aktuellen Vogelperspektivenbereich projiziert wird.
-
Nach einer weiteren vorteilhaften Ausgestaltung wird vorgeschlagen, dass in Schritt c) mindestens eine morphologische Operation auf mindestens ein Objekt eines aktuellen Vogelperspektivenbereich angewendet wird.
-
Nach einer weiteren vorteilhaften Ausgestaltung wird vorgeschlagen, dass in Schritt d) alle 3D-Punkte für die gültige Vogelperspektivenregion gesammelt werden. In diesem Zusammenhang können vorteilhafterweise von jedem 3D-Punkt die semantische Klasse und die Punkthöhe entnommen werden. Weiterhin kann vorteilhafterweise ein Vogelperspektivengitter mit vorgegebener Gitterauflösung für Segmentierung und Höhe erzeugt werden.
-
Nach einem weiteren Aspekt wird ein Computerprogramm zur Durchführung eines hier vorgestellten Verfahrens vorgeschlagen. Dies betrifft mit anderen Worten insbesondere ein Computerprogramm(-produkt), umfassend Befehle, die bei der Ausführung des Programms durch einen Computer diesen veranlassen, ein hier beschriebenes Verfahren auszuführen.
-
Nach einem weiteren Aspekt wird ein maschinenlesbares Speichermedium vorgeschlagen, auf dem das hier vorgeschlagene Computerprogramm hinterlegt bzw. gespeichert ist. Regelmäßig handelt es sich bei dem maschinenlesbaren Speichermedium um einen computerlesbaren Datenträger.
-
Nach einem weiteren Aspekt wird ein Objekterkennungssystem für ein Fahrzeug vorgeschlagen, wobei das System zur Durchführung eines hier beschriebenen Verfahrens konfiguriert ist. Das System kann beispielsweise einen Rechner und/oder ein Steuergerät (Controller) umfassen, der Befehle ausführen kann, um das Verfahren auszuführen. Hierzu kann der Rechner bzw. das Steuergerät beispielsweise das angegebene Computerprogramm ausführen. Beispielsweise kann der Rechner bzw. das Steuergerät auf das angegebene Speichermedium zugreifen, um das Computerprogramm ausführen zu können.
-
Die im Zusammenhang mit dem Verfahren erörterten Details, Merkmale und vorteilhaften Ausgestaltungen können entsprechend auch bei dem hier vorgestellten Computerprogram und/oder dem Speichermedium und/oder dem System auftreten und umgekehrt. Insoweit wird auf die dortigen Ausführungen zur näheren Charakterisierung der Merkmale vollumfänglich Bezug genommen.
-
Die hier vorgestellte Lösung sowie deren technisches Umfeld werden nachfolgend anhand der Figuren näher erläutert. Es ist darauf hinzuweisen, dass die Erfindung durch die gezeigten Ausführungsbeispiele nicht beschränkt werden soll. Insbesondere ist es, soweit nicht explizit anders dargestellt, auch möglich, Teilaspekte der in den Figuren erläuterten Sachverhalte zu extrahieren und mit anderen Bestandteilen und/oder Erkenntnissen aus anderen Figuren und/oder der vorliegenden Beschreibung zu kombinieren. Es zeigen schematisch:
- 1: einen beispielhaften Ablauf eines hier vorgeschlagenen Verfahrens.
- 2: einen beispielhaften Ablauf einer Ausführungsvariante des hier vorgeschlagenen Verfahrens.
- 3: eine Veranschaulichung eines beispielhaften Aspekts des Verfahrens.
- 4: eine Veranschaulichung einer beispielhaften Anwendung des Verfahrens.
-
1 zeigt schematisch einen beispielhaften Ablauf eines hier vorgeschlagenen Verfahrens. Das Verfahren dient zur Generierung mindestens einer Darstellung 1 aus der Vogelperspektive. Die mit den Blöcken 110, 120, 130 und 140 dargestellte Reihenfolge der Schritte a), b), c) und d) ist beispielhaft und kann zur Durchführung des Verfahrens beispielsweise zumindest einmal in der dargestellten Reihenfolge durchlaufen werden.
-
In Block 110 erfolgt gemäß Schritt a) ein Durchführen einer Sensordaten-Punktwolkenverdichtung 2. In Block 120 erfolgt gemäß Schritt b) das Durchführen einer Punktwolkenfilterung in einer Kameraperspektive. In Block 130 erfolgt gemäß Schritt c) das Durchführen einer Objektvervollständigung. In Block 140 erfolgt gemäß Schritt d) ein Durchführen einer Vogelperspektiven-Segmentierung 3 und Generierung einer Höhenkarte 4 (vgl. 3, 4).
-
2 zeigt schematisch einen beispielhaften Ablauf einer Ausführungsvariante des hier vorgeschlagenen Verfahrens. In diesem Zusammenhang zeigt 2 schematisch ein Beispiel für einen Überblick über eine Pipeline zur Erzeugung einer BEV-Ground Truth.
-
In Block 210 erfolgt gemäß Schritt a) ein Durchführen einer Sensordaten-Punktwolkenverdichtung 2. In diesem Zusammenhang kann in Block 211 ein Erhalten einer Lidar-Punktwolke erfolgen, die vorzugsweise semantisch gelabelt ist. Dies stellt ein Beispiel dafür dar, dass und ggf. wie die Darstellung 1 (neben Bilddaten) zumindest auch auf Sensordaten basieren kann, die von mindestens einem aktiven Umgebungssensor erhalten wurden. Bei dem mindestens einen aktiven Umgebungssensor kann es sich zum Beispiel um einen Lidar-Sensor oder einen RADAR-Sensor handeln, hier vorzugsweise um einen Lidar-Sensor handeln.
-
In Block 212 kann eine Aufteilung statischer und dynamischer Objektpunkte auf der Grundlage semantischer Informationen erfolgen. Dies stellt ein Beispiel dafür dar, dass und ggf. wie in Schritt a) eine Sensordatenpunktwolke in statische und dynamische Objektpunkte auf Basis semantischer Informationen aufgespalten werden kann. In Block 213 kann ein Aggregieren mehrerer Lidar-Punktwolken in einem Zeitintervall nur für die statischen Objekte erfolgen.
-
In Block 220 erfolgt gemäß Schritt b) ein Durchführen einer Punktwolkenfilterung in einer Kameraperspektive. In diesem Zusammenhang kann in Block 221 eine Verwendung von Kameraparametern zur Rückprojektion von Lidar-Punkten auf den aktuellen Bildausschnitt (image frame) erfolgen. Dies stellt ein Beispiel dafür dar, dass und ggf. wie in Schritt b) mindestens ein Kameraparameter zur Rückprojektion von Sensordatenpunkten auf dem aktuellen Bildbereich verwendet werden kann.
-
In Block 222 kann ein Verwerfen von Lidar-Punkten erfolgen, die außerhalb des Kamerasichtfelds liegen.
-
In Block 230 erfolgt gemäß Schritt c) ein Durchführen einer Objektvervollständigung. In diesem Zusammenhang kann in Block 231 eine verdichtete Lidar-Punktwolke erhalten werden. In Block 232 kann geprüft werden, ob quaderförmige Labels für Objekte vorliegen bzw. vorhanden sind. In Block 233 kann, für den Fall, dass die Prüfung positiv ist, eine quaderförmige Box in den aktuellen BEV-Rahmen (frame) projiziert werden. Dies stellt ein Beispiel dafür dar, dass und ggf. wie in Schritt c) mindestens eine quaderförmige Box auf einen aktuellen Vogelperspektivenbereich projiziert werden kann.
-
In Block 234 können, für den Fall, dass die Prüfung negativ ist, morphologische Operationen auf Objekte des aktuellen BEV-Rahmens angewendet werden. Dies stellt ein Beispiel dafür dar, dass und ggf. wie in Schritt c) mindestens eine morphologische Operation auf mindestens ein Objekt eines aktuellen Vogelperspektivenbereich angewendet wird.
-
In Block 240 erfolgt gemäß Schritt d) ein Durchführen einer Vogelperspektiven-Segmentierung 3 und Generierung einer Höhenkarte 4 (vgl. 3, 4). In diesem Zusammenhang erfolgt dann in Block 241 ein Sammeln aller 3D-Punkte für die gültige BEV-Region. Dies stellt ein Beispiel dafür dar, dass und ggf. wie in Schritt d) alle 3D-Punkte für die gültige Vogelperspektivenregion gesammelt werden können. In Block 242 kann die semantische Klasse und Punkthöhe von jedem 3D-Punkt erhalten bzw. übernommen werden. In Block 243 kann eine BEV-Gittererstellung mit vorgegebener Gitterauflösung (Pixel/Meter) für Segmentierung und Höhe erfolgen.
-
In einer Ausführungsform der Erfindung wird ein Ansatz vorgestellt, der es ermöglicht, automatisch eine qualitativ hochwertige Darstellung der Ground-Truth aus der Vogelperspektive zu generieren, wenn Lidar- und Kamerasensoren vorhanden sind, mit denen die meisten der derzeitigen autonomen Systeme ausgestattet sind.
-
Ein Ziel der Wahrnehmung eines autonomen mobilen Roboters oder eines fortschrittlichen Fahrerassistenzsystems kann es sein, die semantischen und 3D-Informationen von verschiedenen Sensoren zu einer so genannten Bird's Eye View (BEV)-Darstellung für die weitere Verhaltens- und/oder Bewegungsplanung zu verschmelzen. Die End-to-End-Vorhersage der semantischen BEV-Karte mit Hilfe von Faltungsneuronalen Netzen kann eine vorteilhafte Lösung sein.
-
Insbesondere kann das hier vorgeschlagene Verfahren dazu beitragen, Trainingsdaten für ein neuronales Netzwerk, insbesondere für ein faltendes neuronales Netzwerk (engl. Convolutional Neural Network; kurz: CNN) zu generieren. Gemäß einer bevorzugten Ausführungsform wird eine automatische Generierung von Grundwahrheiten bzw. Ground-Truth-Daten für semantische Karten aus der Vogelperspektive vorgeschlagen, insbesondere für das Training von tiefen neuronalen Netzen.
-
Die Erfindung kann in mindestens einem der folgenden Aspekte vorteilhaft sein:
- • Eine Ground-Truth-Generierungspipeline zur Generierung von semantischen Segmentierungskarten und/oder (Objekt+Oberflächen)-Höhenkarten in BEV kann insbesondere unter Verwendung von semantisch beschrifteten Punktwolken, entsprechenden Kamerabildern, Objektquaderbeschriftungen (falls verfügbar), kamerainternen Parametern und/oder Sensorposeninformationen als Input bereitgestellt werden.
- • Es kann eine einheitliche semantische 3D-Karte für mehrere Kameraansichten erzeugt werden.
-
Die Erfindung kann dazu beitragen, mindestens einen oder mehrere der folgenden Vorteile zu bieten:
- • Insbesondere im Gegensatz zu bekannten Methoden, die semantisch beschriftete Stereobilder verwenden, um eine schwache/spärliche Bodenwahrheit zu erzeugen und dann die schwachen Beschriftungen manuell zu verfeinern oder HD-Kartenbeschriftungen zu verwenden, die in der Regel schwer zu erhalten sind, kann die Erfindung vorteilhaft einen automatisierten Weg bieten, um eine dichte (qualitativ hochwertige) BEV-Bodenwahrheit zu erhalten, insbesondere aus semantisch segmentierten Lidar- und synchronisierten Kameras.
- • Die Erfindung kann vorteilhaft dazu beitragen, die gleichen autonomen Fähigkeiten für reine Kamerasysteme zu ermöglichen wie für Systeme, die (teure) aktive Sensoren (z.B. Lidar, Radar etc.) enthalten.
-
Die Erfindung kann es vorteilhaft ermöglichen, eine (qualitativ hochwertige) Darstellung der 3D-Umgebung (um das System, z. B. ein Fahrzeug) aus der Vogelperspektive zu erzeugen und/oder sie kann als (Teil eines) Wahrnehmungssystem verwendet werden oder Eingangsdaten für ein Wahrnehmungssystem für mobile Roboter und/oder (zumindest teilweise assistierte oder selbstfahrende) Autos liefern. Ein weiteres vorteilhaftes Anwendungsgebiet kann die automatische Erstellung von High-Definition (HD)-Karten und/oder die Überwachung von Straßen und Verkehrsinfrastrukturen usw. sein.
-
Mindestens eine oder mehrere der folgenden Eingänge können als Eingang für das beschriebene Verfahren und insbesondere als Eingang für einen Ground-Truth-Algorithmus aus der Vogelperspektive verwendet werden, um zumindest einen Teil des beschriebenen Verfahrens durchzuführen:
- • Semantisch gelabelte Sensordaten / Lidar-Punktwolke
- • Sensordaten / Lidar-Posen
- • Bilder von Kamera(s), die mit den Sensordaten / Lidar-Frames synchronisiert sind
- • Korrespondierende Kamerapositionen
- • Entsprechende intrinsische Kameraparameter
- • Quader / 3D Bounding Box Beschriftungen für Objekte (Optional)
-
Mindestens einer oder mehrere der folgenden Ausgänge können als Ausgang des beschriebenen Verfahrens und insbesondere als Output eines Ground-Truth-Algorithmus (Deep Learning) aus der Vogelperspektive verwendet werden, um zumindest einen Teil des beschriebenen Verfahrens auszuführen:
- • Semantische Segementierungskarte in BEV
- • Höhenkarte in BEV
-
Ein Beispiel für einen Algorithmus zur Durchführung einer vorteilhaften Ausführungsform des beschriebenen Verfahrens wird oben unter Bezugnahme auf die 1 und 2 erläutert.
-
3 zeigt ein Beispiel für die Verdichtung der BEV-Ground-Truth. Links 3a: spärliches Lidar- oder aktuelles Bild; Mitte 3b: Anwendung des Quaders oben; Rechts 3c: Aggregation über die Zeit (t=40) für statische Oberflächen/Objekte.
-
4 zeigt ein Beispiel für das Ergebnis der BEV-Ground-Truth. Links 4a: Original-RGB; Mitte 4b: semantische Segmentierungs-BEV-Karte; Rechts 4c: Höhenkarte. Alles in der Frontkamera-Ansicht.