-
STAND DER TECHNIK
-
Das Gebiet der Technik bezieht sich allgemein auf Systeme und Verfahren zum Schätzen von Bildtiefen und bezieht sich genauer auf Systeme und Verfahren zur Erzeugung hochauflösender Tiefenbilder auf der Basis von Daten aus monokularen Kameras für Anwendungen zur Vermeidung stationärer und sich bewegender Hindernisse durch Trainieren eines überwachten Modells basierend auf fusionierten Daten aus heterogenen Quellen, ohne eine manuelle Datenmarkierung zu erfordern.
-
Die Raumtiefen- bzw. Tiefenschätzung ist eine integrale Aufgabe von Anwendungen heutiger Fahrzeugsysteme, wie etwa Kollisionsvermeidungssysteme. Ferner benötigen autonome und teilautonome Fahrzeuge für Sicherheit und Funktionstüchtigkeit sehr genaue Schätzungen der Raumtiefe. Tiefenschätzungen unter Verwendung einer monokularen Kamera sind schwierig, da bei einem bildgebenden Verfahren die Entfernungsinformationen im 3D-Kontext verworfen werden, wenn das 2D-Bild erzeugt wird. Um die fehlenden Entfernungsinformationen anhand des 2D-Bildes schätzen zu können, müssen daher bestimmte Annahmen gemacht werden. In der Realität kann es jedoch sein, dass solche Annahmen nicht ausreichend korrekt sind, was zur Folge hat, dass die Tiefen-/Entfernungsschätzung, die nur aus einem 2D-Bild realisiert wird, nicht genau und zuverlässig ist.
-
Darüber hinaus werden andere wünschenswerte Merkmale und Eigenschaften der vorliegenden Erfindung aus der nachfolgenden detaillierten Beschreibung und den beigefügten Ansprüchen in Verbindung mit den begleitenden Zeichnungen und dem vorstehenden technischen Gebiet und Hintergrund offenbar werden.
-
KURZDARSTELLUNG
-
Es werden ein System und ein Verfahren zum Verbessern einer Tiefenschätzung eines Bildes aus einer Monokamera unter Verwendung von Radardaten aus einem überwachten Training eines Tiefenschätzmodells in einem Fahrzeug offenbart.
-
In einer Ausführungsform wird ein Verfahren zur verbesserten Tiefenschätzung von Bildern aus einer Monokamera unter Verwendung von Radardaten offenbart. Das Verfahren schließt Folgendes ein: Empfangen einer Vielzahl von Eingabebildern aus der mit einem Fahrzeug gekoppelten Monokamera an einer in einem Fahrzeug angeordneten Vcrarbcitungscinhcit, wobei jedes Eingabebild ein zweidimensionales (2D) Bild einer Szene in der Umgebung des Fahrzeugs ist; Erzeugen eines geschätzten Tiefenbildes durch die Verarbeitungseinheit durch überwachtes Training eines Bildschätzmodells; Erzeugen eines synthetischen Bildes aus einem ersten Eingabebild und einem zweiten Eingabebild aus der Monokamera durch die Verarbeitungseinheit durch Anwenden einer geschätzten Transformationspose; Vergleichen einer geschätzten dreidimensionalen (3D) Punktwolke mit Radardaten durch die Verarbeitungseinheit durch Anwenden einer anderen geschätzten Transformationspose auf eine 3D-Punktwolke, wobei die 3D-Punktwolke anhand eines Tiefenbildes durch überwachtes Training des Bildschätzmodells an einem Radarabstand und einer Radar-Dopplermessung geschätzt wird; Korrigieren einer Tiefenschätzung des geschätzten Tiefenbildes durch Verluste, die aus Differenzen des synthetischen Bildes und originaler Bilder abgeleitet werden; Korrigieren der Tiefenschätzung des geschätzten Tiefenbildes durch Verluste, die aus Differenzen eines geschätzten Tiefenbildes und einer gemessenen Radarentfernung abgleitet werden; und Korrigieren der Tiefenschätzung des geschätzten Tiefenbildes aus Verlusten, die aus Differenzen von geschätzten Dopplerinformationen und gemessenen Radar-Dopplerinformationen abgeleitet werden.
-
In verschiedenen Ausführungsformen ist das erste Eingabebild eine Quellansicht
Is zwischen < I
1, ... I
n >, und das zweite Eingabebild ist eine Zielansicht von I
t(1 ≤ t ≤ N, s ≠ t). Das Verfahren schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes aus einem Tiefenfehler des Eingabebildes, abgeleitet durch die folgende Funktion:
wobei
die Quellansicht
Is ist, gewarpt auf die Zielansicht auf Basis eines geschätzten Tiefenbildes einer geschätzten Tiefe
und einer geschätzten Transformationspose
R,
T des Quellansichtsbildes und der Zielansichtsbilder. Das Verfahren schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes aus einem Radartiefenfehler, der abgeleitet wird durch die folgende Funktion:
wobei n eine Gesamtzahl von Radarpunkten ist, die mit jedem Punkt der 3D-Punktwolke verglichen werden, wobei ℕ eine Nachbarschaft von (x, y) ist und
r eine Abstandsmessung von einem Radarsensor ist und r̂ eine geschätzte Bildtiefe ist, wobei w ein entsprechendes Gewicht ist. Das Verfahren schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes aus einem Dopplerradartiefenfehler. Das Verfahren schließt ferner Folgendes ein: Berechnen des Verlustes des Dopplerradartiefenfehlers, abgeleitet durch folgende Funktion:
wobei n eine Gesamtzahl von Radarpunkten ist, die mit der 3D-Punktwolke verglichen werden, wobei ℕ die Nachbarschaft von (x,y) ist, rr eine Radar-Dopplermessungen ist und
eine geschätzte Dopplerinformation ist, wobei w das entsprechende Gewicht ist. Das Verfahren schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes, der abgeleitet wird durch die folgende Funktion: ℓ
final = α
1ℓ
vs + α
2ℓ
depth + α
3ℓ
doppler + α
4ℓ
smooth/reg, wobei ℓ
smooth/reg ein Glättungsregulierungsterm ist und α
i ein Gewichtungsparameter ist. ℓ
smooth/reg ist ein optionaler Term.
-
In einer anderen Ausgestaltung wird ein System angegeben, das Folgendes einschließt: eine Tiefenschätzungsverarbeitungseinheit, die in einem Fahrzeug angeordnet ist, das einen oder mehrere Prozessoren einschließt, die durch Programmierbefehle konfiguriert werden, die auf einem nichttransitorischen computerlesbaren Medium kodiert sind. Das System schließt Folgendes ein: die Tiefenschätzungsverarbeitungseinheit, die für Folgendes konfiguriert ist: Empfangen einer Vielzahl von Eingabebildern aus einer mit dem Fahrzeug gekoppelten Monokamera, wobei jedes Eingabebild ein zweidimensionales (2D) Bild einer Szene in der Umgebung des Fahrzeugs ist; Erzeugen eines geschätzten Tiefenbildes durch Vergleiche zwischen den einzelnen Eingabebildern eines Satzes von der Vielzahl von Eingabebildern; Erzeugen eines synthetischen Bildes aus einem ersten Eingabebild und einem zweiten Eingabebild aus der Monokamera durch Anwenden einer geschätzten Transformationspose, wobei das synthetische Bild durch überwachtes Training eines Bildeschätzmodells erzeugt wird; Vergleichen einer geschätzten dreidimensionalen (3D) Punktwolke mit Radardaten aus einem Radar des Fahrzeugs durch Anwenden einer anderen geschätzten Transformationspose auf eine 3D-Punktwolke, wobei die 3D-Punktwolke durch überwachtes Training des Bildschätzmodells an einer Radarentfernung und an einer Radar-Dopplermessung verglichen wird; und Korrigieren einer Tiefenschätzung des geschätzten Tiefenbildes durch Verluste, die aus Differenzen der Folgenden abgeleitet werden: des synthetischen Bildes und originaler Bilder, eines geschätzten Tiefenbildes und einer gemessenen Radarentfernung und geschätzter Dopplerinformationen und gemessener Radar-Dopplerinformationen.
-
In verschiedenen Ausführungsformen ist das erste Eingabebild eine Quellansicht
Is zwischen < I
1,... I
n > und ist das zweite Eingabebild eine Zielansicht von I
t(1 ≤ t ≤ N, s ≠ t). Das System schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes aus einem Tiefenfehler des Eingabebildes, der durch die folgende Funktion abgeleitet wird:
wobei
die Quellansicht
Is ist, die auf die Zielansicht gewarpt ist, basierend auf einem geschätzten Tiefenbild einer geschätzten Tiefe
und einer geschätzten Transformationsposc
R,
T des ersten Eingabebilds und der Zielansichtsbilder. Das System schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes aus einem Radartiefenfehler, der abgeleitet wird durch die folgende Funktion:
wobei n eine Gesamtzahl von Radarpunkten ist, die mit jedem Punkt der 3D-Punktwolke verglichen werden, wobei ℕ eine Nachbarschaft von (x, y) ist und
r eine Abstandsmessung von einem Radarsensor ist und r̂ die geschätzte Bildtiefe ist, wobei w ein entsprechendes Gewicht ist. Das System schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes aus einem Dopplerradartiefenfehler. Das System schließt ferner Folgendes ein: Berechnen des Verlustes des Dopplerradartiefenfehlers, abgeleitet durch folgende Funktion:
wobei n eine Gesamtzahl von Radarpunkten ist, die mit der 3D-Punktwolke verglichen werden, wobei ℕ die Nachbarschaft von (x, y) ist, rr eine Dopplermessung aus einem Radarsensor ist und
eine geschätzte Dopplerinformation ist, wobei w das entsprechende Gewicht ist. Das System schließt ferner Folgendes ein: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes, der abgeleitet wird durch die folgende Funktion: ℓ
final = α
1 ℓ
vs + α
2ℓ
depth + α
3ℓ
doppler + α
4ℓ
smooth/reg, wobei ℓ
smooth/reg ein Glättungsregulierungsterm ist und α
i ein Gewichtungsparameter ist. ℓ
smooth/reg ist ein optionaler Term.
-
In noch einer anderen Ausführungsform wird ein Fahrzeug bereitgestellt, das eine Monokamera, ein Radar und eine Tiefenschätzeinheit einschließt, die einen oder mehrere Prozessoren und nichttransitorische computerlesbare Medien einschließt, die mit Programmieranweisungen codiert sind. Das Fahrzeug schließt Folgendes ein: die Tiefenschätzeinheit, die für Folgendes konfiguriert ist: Empfangen einer Vielzahl von Eingabebildern aus einer mit dem Fahrzeug gekoppelten Monokamera, wobei jedes Eingabebild ein zweidimensionales (2D) Bild einer Szene in der Umgebung des Fahrzeugs ist; Erzeugen eines geschätzten Tiefenbildes durch Vergleiche zwischen den einzelnen Eingabebildern eines Satzes von der Vielzahl von Eingabebildern; Erzeugen eines synthetischen Bildes aus einem ersten Eingabebild und einem zweiten Eingabebild aus der Monokamera durch Anwenden einer geschätzten Transformationspose, wobei das synthetische Bild durch überwachtes Training eines Bildschätzmodells erzeugt wird; Vergleichen einer geschätzten dreidimensionalen (3D) Punktwolke mit Radardaten aus dem Radar durch Anwenden einer anderen geschätzten Transformationspose auf eine 3D-Punktwolke, wobei die 3D-Punktwolke durch überwachtes Training des Bildschätzmodells an einer Radarentfernung und an Radar-Dopplermessungen verglichen wird; Korrigieren einer Tiefenschätzung des geschätzten Tiefenbildes durch Verluste, die aus Differenzen des synthetischen Bildes und originaler Bilder abgeleitet werden; Korrigieren der Tiefenschätzung eines geschätzten Tiefenbildes, die aus Differenzen eines geschätzten Tiefenbildes und einer gemessenen Radarentfernung abgeleitet werden; und Korrigieren der Tiefenschätzung des geschätzten Ticfcnbildcs durch Verluste, die aus Differenzen geschätzter Dopplerinformationen und gemessener Radar-Dopplerinformationen abgeleitet werden.
-
Das Fahrzeug schließt ferner Folgendes ein: die Tiefenschätzungsverarbeitungseinheit, die für Folgendes konfiguriert ist: Korrigieren der Tiefenschätzung durch Berechnen des Verlustes aus einem Tiefenfehler des Eingabebildes, der durch die folgende Funktion abgeleitet wird:
wobei
eine Quellansicht
Is ist, die auf eine Zielansicht gewarpt ist, die auf einem geschätzten Tiefenbild einer geschätzten Tiefe
und einer geschätzten Transformationspose
R,
T des ersten Eingabebildes und eines Zielbildes basiert, wobei das erste Eingabebild eine Quellansicht I
szwischen < I
1... I
n > ist und das zweite Eingabebild eine Quellansicht I
t(1 ≤ t ≤ N, s ≠ t) ist. Das Fahrzeug schließt ferner Folgendes ein: die Tiefenschätzungsverarbeitungseinheit, die für Folgendes konfiguriert ist: Korrigieren der Tiefenschätzung durch: Berechnen des Verlustes aus einem Tiefenfehler des Eingabebildes, der durch die folgende Funktion abgeleitet wird:
wobei
die Quellansicht
Is ist, gewarpt auf die Zielansicht auf Basis eines geschätzten Tiefenbildes einer geschätzten Tiefe
und einer geschätzten Transformationspose
R,
T eines Quellansichtsbildes und der Zielansichtsbilder; Berechnen des Verlustes aus einem Radartiefenfehler, der durch die folgende Funktion abgeleitet wird:
wobei n eine Gesamtzahl von Radarpunkten ist, die mit den einzelnen Punkten der 3D-Punktwolke verglichen werden, wobei ℕ eine Nachbarschaft von (x, y) ist,
r eine Abstandsmessung von einem Radarsensor ist und
r die geschätzte Bildtiefe ist, wobei w ein entsprechendes Gewicht ist; und Berechnen des Verlustes des Doppler-Radartiefenfehlers, der durch die folgende Funktion abgeleitet wird:
wobei ℕ die Nachbarschaft von (x,y) ist, rr eine Dopplermessung vom Radarsensor ist und
eine geschätzte Dopplcrinformation ist, wobei w das entsprechende Gewicht ist. Das Fahrzeug schließt ferner Folgendes ein: die Tiefenschätzeinheit, die für Folgendes konfiguriert ist: Korrigieren der Tiefenschätzung durch: Berechnen eines Gesamtverlustes durch die Funktion ℓ
final = α
1ℓ
vs + α
2ℓ
depth + α
3ℓ
doppler + α
4ℓ
smooth/reg, wobei ℓ
smooth/reg ein Glätteregulierungsterm ist und α
i Gewichtungsparameter sind, wobei ℓ
smooth/reg ein optionaler Term ist.
-
Figurenliste
-
Die Ausführungsbeispiele werden im Folgenden in Verbindung mit den folgenden Zeichnungsfiguren beschrieben, wobei gleiche Bezugszeichen gleiche Elemente bezeichnen, und wobei:
- 1 ein Blockdiagramm veranschaulicht, das ein beispielhaftes Fahrzeug abbildet, das einen Prozessor zum Schätzen von Tiefen von Hindernissen in Kamerabildern unter Verwendung eines Monokamera-Tiefenschätzmodells gemäß einer Ausführungsform einschließen kann;
- 2 ein Diagramm einer an einem Fahrzeug montierten Kamera und der Verarbeitung der Monokameradaten und der Radardaten, um ein Modell zur Tiefenschätzung an Bildern des Monokamera-Tiefenschätzsystems durch selbstüberwachtes oder überwachtes Lernens zu trainieren, gemäß einer Ausführungsform veranschaulicht;
- 3 ein Diagramm der Systemarchitektur unter Verwendung des trainierten Modells für die Monokameramodellierung durch überwachtes Lernen, um eine Tiefe in Bildern des Monokamera-Tiefenschätzsystems zu bestimmen, gemäß einer Ausführungsform veranschaulicht;
- 4 ein Diagramm einer synthetisierten Ansicht unter Überwachung, für die keine Markierung und keine Zuordnung erforderlich sind, des Monokamera-Tiefenschätzsystems gemäß einer Ausführungsform veranschaulicht;
- 5 ein Diagramm einer synthetisierten Ansicht mit Überwachung aus Radarabstandsmessungen und aus Radar-Dopplermessungen des Monokamera-Tiefenschätzsystems gemäß einer Ausführungsform veranschaulicht;
- 6 ein Diagramm der endgültigen Verlustberechnungen für das selbstüberwachte Trainingsmodell unter Verwendung von Fehlerschätzungen von Radarabstandsmessungen und Radar-Dopplermessungen und kamerabasierten Fehlertiefenberechnungen für verbesserte Entfernungsschätzungen des Monokamera-Tiefenschätzsystems gemäß einer Ausführungsform veranschaulicht; und
- 7 ein Flussdiagramm der Korrektur der Tiefenschätzung des geschätzten Ticfcnbildcs durch Verluste des Monokamera-Tiefenschätzsystems gemäß einer Ausführungsform veranschaulicht.
-
DETAILLIERTE BESCHREIBUNG
-
Die folgende detaillierte Beschreibung ist lediglich beispielhafter Natur und soll die Anwendung und deren Verwendungen nicht einschränken. Darüber hinaus besteht keine Absicht, an eine ausdrückliche oder implizite Theorie gebunden zu sein, die im vorstehenden technischen Gebiet, Hintergrund, in der Zusammenfassung oder in der folgenden detaillierten Beschreibung dargestellt wird.
-
Wie hierin verwendet, bezieht sich der Begriff „Modul“ auf jede Hardware, Software, Firmware, elektronische Steuerkomponente, Verarbeitungslogik und/oder Prozessorvorrichtung, einzeln oder in beliebiger Kombination, einschließlich, aber nicht beschränkt auf: anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), eine elektronische Schaltung, einen Prozessor (gemeinsam, dediziert oder Gruppe) und Speicher, der/die eine oder mehrere Software- oder Firmwareprogramme, eine kombinatorische Logikschaltung und/oder andere geeignete Komponenten ausführt, die die beschriebene Funktionalität bereitstellen.
-
Ausführungsformen der vorliegenden Offenbarung können hierin in Form von funktionalen und/oder logischen Blockkomponenten und verschiedenen Verarbeitungsschritten beschrieben werden. Es sollte klar sein, dass solche Blockkomponenten durch eine beliebige Anzahl von Hardware-, Software- und/oder Firmwarekomponenten realisiert werden können, die zur Ausführung der spezifizierten Funktionen konfiguriert sind. Beispielsweise kann eine Ausführungsform der vorliegenden Offenbarung verschiedene Komponenten einer integrierten Schaltung verwenden, z. B. Speieherelemente, Digitalsignalverarbeitungselemente, Logikelemente, Zuordnungstabellen oder dergleichen, die eine Reihe verschiedener Funktionen unter der Steuerung eines oder mehrerer Mikroprozessoren oder anderer Steuervorrichtungen ausführen können. Darüber hinaus wird der Fachmann verstehen, dass Ausführungsformen der vorliegenden Offenbarung in Verbindung mit einer beliebigen Anzahl von Systemen praktiziert werden können und dass die hierin beschriebenen Systeme lediglich Ausführungsbeispiele der vorliegenden Offenbarung sind.
-
Für die Zwecke dieser Offenbarung werden alle Bezugnahmen auf die Selbstüberwachung als automatisierter Prozess des überwachten Lernens mit Rückkopplung basierend auf vorhergesagten Ergebnissen betrachtet. Das heißt als automatisierte Aufgabe des Lernens von Tiefenschätzungen durch Abbilden von Eingaben von Trainingsdaten zur Entwicklung eines Monokamera-Maschinenlern(ML)-Modells basierend auf Radar- und Bilddaten eines Fahrzeugs. Das Trainingsmodell beruht auf einer kontinuierlichen Ausgabe von Fehlerschätzungen für die Abbildung von Gittern und basiert auf fusionierten heterogenen Daten, die aus Bild- und Radarvorrichtungen empfangen werden.
-
Autonome und teilautonome Fahrzeuge sind in der Lage, ihre Umgebung zu erfassen und basierend auf der erfassten Umgebung zu navigieren. Solche Fahrzeuge erfassen ihre Umgebung unter Verwendung mehrerer Arten von Sensorvorrichtungen, wie etwa Radar, Lidar, Bildsensoren und dergleichen. Bei derartigen Fahrzeugen ist die Verwendung nur einer einzelnen Monokamera, um die Umgebung wahrzunehmen und zu analysieren, aufgrund der Tiefengenauigkeit und Robustheit begrenzt. Außerdem ist die Verwendung von Monokameras begrenzt, da Monokameras nicht in der Lage sind, genaue Abstands- und Geschwindigkeitsinformationen über die Objekte in der Szene bereitzustellen.
-
Das Fehlen von Entfernungsinformationen ist eine Schwierigkeit, die bewältigt werden muss, wenn ein Monokamerasystem zur Verwendung durch autonome oder teilautonome Fahrzeuge entwickelt wird. Der Grund dafür ist, dass es nicht immer möglich ist, aus einem zweidimensionalen Bild ausreichende Tiefeninformationen zu erhalten. Die Verwendung von Maschinenlernalgorithmen ist eine umsetzbare Lösung, um die Tiefeninformation durch Fusionieren der Informationen aus einem Monokamerasystem mit Daten von z. B. einem Radarsystem zu schätzen. Dies nutzt die Fähigkeit der Monokamera, Objekte in einem breiten Sichtfeld zu erfassen, zusammen mit den Entfernungsinformationen vom Radar.
-
In verschiedenen Ausführungsformen beschreibt die vorliegende Offenbarung Systeme und Verfahren zur Tiefenschätzung eines zweidimensionalen (2D) Bildes durch Schätzen der Tiefe einer Szene in einem Bild und durch überwachtes Testen durch Analysieren perspektivischer Transformationen über einem bezeichneten Zeitraum.
-
In verschiedenen Ausführungsbeispielen beschreibt die vorliegende Offenbarung Systeme und Verfahren zum Trainieren eines Modells zur Erzeugung hochaufgelöster Tiefenbilder zur Erzielung verbesserter Abstands- und Geschwindigkeitsinformationen über Objekte in einem Bild lediglich auf der Basis von Monokameradaten für stationäre und sich bewegende Objekte unter Verwendung von globalen Verlustfehlerberechnungen für Tiefenschätzungen, die aus mehreren heterogenen Scnsordatcnqucllcn abgeleitet werden, um in einem Fahrzeug aktive Sicherheit und Fähigkeiten für ein autonomes Fahren zu ermöglichen.
-
In verschiedenen Ausführungsbeispielen beschreibt die vorliegende Offenbarung Systeme und Verfahren zum Trainieren eines Modells zur Erzeugung hochaufgelöster Tiefenbilder, das nicht auf Structure-from-Motion(SfM)-Techniken beruht, die ineffizient sind, da SfM-Tcchnikcn bedeutende Verarbeitungsschritte einer großen (x- oder y-) Rotation, ein großes Sichtfeld und Tiefenvariationen und kontinuierliche Kamerakalibrierungen erfordern.
-
In verschiedenen Ausführungsbeispielen beschreibt die vorliegende Offenbarung Systeme und Verfahren zum Trainieren eines Modells zur Erzeugung hochaufgelöster Tiefenbilder, das mehrere Quellen (d. h. Radars, Doppler-Radar, Kameravorrichtungen usw.) für überwachte Informationen von heterogenen und homogenen Bilddaten, akustischen und optischen Daten nutzt, die zusammen oder separat verwendet werden, um die zusätzlichen Verarbeitungsschritte der manuellen Markierung von Eingabebilderm zu vermeiden.
-
In verschiedenen Ausführungsbeispielen beschreibt die vorliegende Offenbarung Systeme und Verfahren zum Trainieren eines Modells zur Erzeugung hochaufgelöster Tiefenbilder durch Fusionieren von Daten mehrerer Ansichten, um Datenfehler zu reduzieren und die räumliche Abdeckung und Zuverlässigkeit der Fahrzeugtiefenschätzung der Umgebung zu erhöhen.
-
In verschiedenen Ausführungsbeispielen beschreibt die vorliegende Offenbarung Systeme und Verfahren zum Trainieren eines Modells zur Erzeugung hochaufgelöster Tiefenbilder durch Überwachung, ohne dass künstliche Landmarkenmarker, vorgefertigte Karten oder bekannte Vorlagen und Ziele erforderlich sind, um die Objekte in einem Bild von Interesse einzuschätzen.
-
In verschiedenen Ausführungsbeispielen beschreibt die vorliegende Offenbarung Systeme und Verfahren zum Trainieren eines Modells zur Erzeugung hochaufgelöster Tiefenbilder, das flexibel ist für eine Übertragung auf unterschiedliche Kameraeinstellungen unter Berücksichtigung sowohl einer intrinsischen als auch einer extrinsischen Kalibrierung der jeweils verwendeten Kameras.
-
1 stellt ein Blockdiagramm dar, das ein beispielhaftes Fahrzeug abbildet, das einen Prozessor zum Schätzen von Tiefen von Hindernissen in Kamerabildern unter Verwendung eines Monokamera-Tiefenschätzmodells 100 einschließen kann. Im Allgemeinen sind die Verlustfehlerberechnungen in einem Monokamera-Tiefenschätzmodell (oder einfach „System“) 100 eingeschlossen, das unter Verwendung des Monokamera-Tiefenschätzmodells und des Trainings des Schätzmodells zur Berechnung exakter Tiefen die geschätzten Tiefen in Szenen zur Steuerung eines autonomen Fahrzeugs bestimmt.
-
Wie abgebildet in 1 schließt das Fahrzeug 10 im Allgemeinen ein Fahrgestell 12, eine Karosserie 14, Vorderräder 16 und Hinterräder 18 ein. Die Karosserie 14 ist auf dem Fahrgestell 12 angeordnet und umschließt im Wesentlichen Komponenten des Fahrzeugs 10. Die Karosserie 14 und das Fahrgestell 12 können gemeinsam einen Rahmen bilden. Die Fahrzeugräder 16-18 sind jeweils in der Nähe einer entsprechenden Ecke der Karosserie 14 drehbar mit dem Fahrgestell 12 gekoppelt. Das Fahrzeug 10 ist in der dargestellten Ausführungsform als Personenkraftwagen abgebildet, aber man beachte, dass auch jedes andere Fahrzeug, einschließlich Motorräder, Lastkraftwagen, Geländewagen (SUVs), Freizeitfahrzeuge (RVs), Seeschiffe, Flugzeuge usw., verwendet werden kann.
-
Wie gezeigt, schließt das Fahrzeug 100 im Allgemeinen ein Antriebssystem 20, ein Kraftübertragungssystem 22, ein Lenksystem 24, ein Bremssystem 26, ein Sensorsystem 28, ein Stellantriebsystem 30, mindestens eine Datenspeichervorrichtung 32, mindestens eine Steuereinheit 34 und ein Kommunikationssystem 36 ein. Das Antriebssystem 20 kann in diesem Beispiel eine elektrische Maschine, wie etwa einen Permanentmagnet (PM)-Motor, einschließen. Das Kraftübertragungssystem 22 ist dafür konfiguriert, Kraft vom Antriebssystem 20 gemäß auswählbaren Übersetzungen auf die Fahrzeugräder 16 und 18 zu übertragen.
-
Das Bremssystem 26 ist dazu konfiguriert, ein Bremsmoment für die Fahrzeugräder 16 und 18 bereitzustellen. Das Bremssystem 26 kann in verschiedenen Ausführungsformen Reibungsbremsen, Brake-by-Wire, ein regeneratives Bremssystem, wie etwa eine elektrische Maschine, und/oder andere geeignete Bremssysteme einschließen.
-
Das Lenksystem 24 beeinflusst eine Position der Fahrzeugräder 16 und/oder 18. Obwohl das Lenksystem in der Darstellung zu veranschaulichenden Zwecken mit einem Lenkrad abgebildet ist, schließt das Lenksystem 24 in einigen Ausführungsformen, die innerhalb des Schutzumfangs der vorliegenden Offenbarung in Erwägung gezogen werden, möglicherweise kein Lenkrad ein.
-
Das Sensorsystem 28 schließt eine oder mehrere Abtastvorrichtungen 40a-40n ein, die beobachtbare Zustände der Außenumgebung und/oder der Innenumgebung des Fahrzeugs 10 erfassen und Sensordaten in Bezug darauf erzeugen.
-
Das Stellantriebsystem 30 schließt eine oder mehrere Stellantriebvorrichtungen 42a-42n ein, die ein oder mehrere Fahrzeugmerkmale steuern, wie etwa, ohne darauf beschränkt zu sein, das Antriebssystem 20, das Kraftübertragungssystem 22, das Lenksystem 24 und das Bremssystem 26. In verschiedenen Ausführungsformen kann das Fahrzeug 10 auch innere und/oder äußere Fahrzeugmerkmale einschließen, die nicht dargestellt sind in 1, wie etwa verschiedene Türen, einen Kofferraum, sowie Insassenraummerkmale, wie etwa Lüftungs-, Musik-, Beleuchtungs-, Touchscreen-Anzeigekomponenten und dergleichen.
-
Die Datenspeichervorrichtung 32 speichert Daten zur Verwendung beim Steuern des Fahrzeugs 10. Die Datenspeichervorrichtung 32 kann Teil der Steuereinheit 34, getrennt von der Steuereinheit 34, oder Teil der Steuereinheit 34 und Teil eines separaten Systems sein.
-
Die Steuereinheit 34 schließt mindestens einen Prozessor 44 (integriert mit dem System 100 oder verbunden mit dem System 100) und eine computerlesbare Speichervorrichtung oder ein computerlesbares Speichermedium 46 ein. Der Prozessor 44 kann ein beliebiger individuell gefertigter oder handelsüblicher Prozessor, eine Zentralverarbeitungseinheit (CPU), eine grafische Verarbeitungseinheit (GPU), eine anwendungsspezifische integrierte Schaltung (ASIC) (z. B. eine individuell gefertigte ASIC zur Implementierung eines Lern- oder Vorhersagemodells auf einem AI-Chip), ein im Feld programmierbares Gate-Array (FPGA), ein Hilfsprozessor unter mehreren Prozessoren, die der Steuereinheit 34 zugeordnet sind, ein halbleiterbasierter Mikroprozessor (in Form eines Mikrochips oder Chipsatzes) oder eine beliebige Kombination davon oder allgemein eine beliebige Vorrichtung zum Ausführen von Anweisungen sein. Die computerlesbare Speichervorrichtung oder das Medium 46 kann einen flüchtigen und einen nichtflüchtigen Speicher einschließen, beispielsweise als Nur-Lese-Speicher (ROM), Direktzugriffsspeicher (RAM) und Keep-Alive-Speicher (KAM). KAM ist ein persistenter oder nichtflüchtiger Speicher, der verwendet werden kann, um verschiedene Betriebsvariablen zu speichern, während der Prozessor 44 heruntergefahren wird. Die computerlesbare Speichervorrichtung oder das computerlesbare Speichermedium 46 kann unter Verwendung einer beliebigen Anzahl bekannter Speichervorrichtungen implementiert werden, wie etwa PROMs (programmierbarer Nur-Lese-Speicher), EPROMs (elektrischer PROM), EEPROMs (elektrisch löschbarer PROM), Flash-Speicher oder jeder anderen elektrischen, magnetischen, optischen oder kombinierten Speichervorrichtung, die Daten speichern kann, von denen einige ausführbare Anweisungen darstellen, die von der Steuereinheit 34 zur Steuerung des Fahrzeugs 10 verwendet werden.
-
Die Anweisungen können ein oder mehrere separate Programme einschließen, von denen jedes eine geordnete Auflistung ausführbarer Anweisungen zum Implementieren logischer Funktionen einschließt. Die Anweisungen, wenn sie vom Prozessor 44 ausgeführt werden, empfangen und verarbeiten Signale (z. B. Sensordaten) vom Sensorsystem 28, führen Logik, Berechnungen, Verfahren und/oder Algorithmen zum automatischen Steuern der Komponenten des Fahrzeugs 10 durch und erzeugen Steuersignale, die an das Stellantriebsystem 30 übertragen werden, um die Komponenten des Fahrzeugs 10 basierend auf der Logik, den Berechnungen, Verfahren und/oder Algorithmen automatisch zu steuern. Obwohl nur eine Steuereinheit 34 gezeigt ist in 1, können Ausführungsformen des Fahrzeugs 10 eine beliebige Anzahl von Steuereinheiten 34 einschließen, die über ein geeignetes Kommunikationsmedium oder eine Kombination von Kommunikationsmedien kommunizieren und zusammenarbeiten, um die Sensorsignale zu verarbeiten, Logik, Berechnungen, Verfahren und/oder Algorithmen durchzuführen und Steuersignale zur automatischen Steuerung von Merkmalen des Fahrzeugs 10 zu erzeugen.
-
Zum Beispiel kann das System 100 eine beliebige Anzahl zusätzlicher Untermodule einschließen, die in die Steuereinheit 34 eingebettet sind und die kombiniert werden und/oder weiter unterteilt werden können, um auf ähnliche Weise hierin beschriebene Systeme und Verfahren zu implementieren. Außerdem können Eingaben in das System 100 vom Sensorsystem 28 empfangen werden, von anderen dem Fahrzeug 10 zugeordneten Steuermodulen (nicht gezeigt) empfangen werden und/oder durch andere Untermodule (nicht gezeigt) bestimmt/modelliert werden, die enthalten sind in der Steuereinheit 34 von 1. Ferner könnten die Eingaben auch einer Vorverarbeitung unterzogen werden, wie etwa einer Unterabtastung, einer Rauschreduktion, einer Normalisierung, einer Merkmalsextraktion, einer Verringerung fehlender Daten und dergleichen.
-
2 veranschaulicht ein Diagramm 200 einer an einem Fahrzeug montierten Kamera und die Verarbeitung der Monokameradaten und der Radardaten, um ein Modell zur Tiefenschätzung in Bildern des Monokamera-Tiefenschätzsystems durch selbstüberwachtes oder überwachtes Lernen gemäß einer Ausführungsform zu trainieren. In 2 weist ein Fahrzeug 205 eine am Fahrzeug 205 montierte Kamera 210 mit einem Sichtfeld 216 vor dem Fahrzeug 205 auf. Es gibt eine zweite Kamera 211, die an der Motorhaube angebracht ist oder an der Front (d. h. am Grill, am vorderen Stoßfänger usw.) des Fahrzeugs 205 angeordnet ist. Da sich die Kamera 210 an einer höher liegenden Stelle befindet als die zweite Kamera 211, weist sie ein anderes Sichtfeld 216 auf als die zweite Kamera 211. Um das Fahrzeug 205 herum ist ein Satz von Nahbereichsradaren 203 angeordnet, die in den vorderen zwei Ecken des Fahrzeugs 205 und an den hinteren Ecken angeordnet sind, sowie ein zusätzliches Nahbereichsradar 203, das in der hinteren Mitte des Kofferraums oder Heekstoßfängers des Fahrzeugs 205 angeordnet ist. Ebenso gibt es ein Fernbereichsradar 219, das neben der zweiten Kamera 211 positioniert ist, mit einer Radarrcichwcitc 218, die eine größere Entfernung abdeckt als das längere Sichtfeld 216 der Kamera 210 sowie das kürzere Sichtfeld 212 der daneben positionierten Kamera 211. Zwei Nahbereichsradars 203 sind an der Vorderseite des Fahrzeugs 205 positioniert und weisen eine Reichweite 214 auf, die dargestellt ist in 2.
-
Wie abgebildet in 2 empfängt das Monokamera-Tiefenschätzsystem 200 Weitbereichsdaten und Geschwindigkeitsdaten von mindestens einem der Nahbereichsradare 203, die an der Vorderseite des Fahrzeugs 205 positioniert sind, mit einer nach vorne gerichteten Erfassung in der Vorausrichtung der Bewegung des Fahrzeugs 205. Das Monokamera-Tiefenschätzsystem 200 empfängt auch Videodaten von Bildern aus der Kamera 210 und/oder der zweiten Kamera 211. In verschiedenen Ausführungsbeispielen wird in Betracht gezogen, dass die Videodaten von einer einzelnen Monokamera erzeugt werden können. Die Radardaten können entweder die Nahbcrcichsradardatcn oder Fernbereichsradardaten sein. Außerdem können die Nahbereichs- und/oder Fernbereichs-Radarvorrichtungen als eine Reihe verschiedener Radartypen konfiguriert sein, unter anderem als Radare für bewegliche Ziele, als Puls-Doppler-Radare usw. In verschiedenen alternativen Ausführungsbeispielen können LIDAR-Vorrichtungen oder Abtast-Laservorrichtungen verwendet werden, um die Radardaten zu erzeugen. Ferner können die Videodaten in einer Radarvcrarbcitungscinhcit 215 verwendet werden, und die Monokameradaten werden von einer Monokamera-Verarbeitungseinheit 220 empfangen.
-
In alternativen Ausführungsformen können die Radardaten auch Doppler-Radardaten für eine Verlustschätzung bei der Fehlerschätzung einschließen und können mit einer Verlustschätzung der Kameradaten kombiniert werden. Die Radardaten stellen Grundinformationen für Abstand und zeitabhängige Abstandsänderung bereit. Die Kameradaten und Radardaten werden miteinander zu kombinierten Daten fusioniert und in einem Datenkombinations-Repository 225 gespeichert, um sie zur weiteren Datenverarbeitung durch eine Datenverarbeitungseinheit 230 zu senden, die näher beschrieben ist in 3-7. Die Datenverarbeitungseinheit 230 führt ein Monokamera-Trainings(d. h. Deep-Learning-Entwicklungsphasen)-Modell 235 aus durch Senden der Daten an eine Vorverarbeitungseinrichtung 240 zum Vorverarbeiten der Daten durch Filtern der Daten zur Verwendung beim Training und beim Testen. Die Trainings- und Testeinheit teilt den vorverarbeiteten Datensatz in Trainings-, Validierungs- und Test-Datensätze auf, die verwendet werden, um ein Maschinenlernmodell 255 unter Verwendung verschiedener ML-Algorithmen 250 zu entwickeln. Ein trainiertes Modell (d. h. ein Modellkandidat) 260 wird unter Verwendung des ML-Algorithmus erzeugt, der die besten Ergebnisse liefert. Das trainierte Modell 260 wird in einem rekursiven oder Rückkopplungsprozess 265 für eine Hyperparameteroptimierung weiter abgestimmt, um die angestrebte Leistung zu erzielen. Das optimierte Modell 270 wird zur Verwendung bei der Testung 275 des Monokameramodells erzeugt. Durch das Testen 275 des Monokameramodells werden genaue Abstands- und Geschwindigkeitsinformationen über Objekte in der Szene gewährleistet, und zwar mit einer zusätzlichen Verarbeitung durch die Monokameramodelltestung 275, die durch intrinsische und extrinsische Kalibrierung 285 der Monokameraverarbeitungseinheit 220 (d. h. des jeweiligen Typs, Kameramodells) für bestimmte Arten von Bildeingaben (d. h. eine Videosequenz aus mehreren Einzelbildern) 280 konfiguriert ist.
-
3 stellt ein Blockdiagramm der Systemarchitektur 300 unter Verwendung des trainierten Modells für die Monokameramodellierung durch überwachtes Lernen für die Schätzungen der Tiefe in den Bildern des Monokameratiefenschätzsystems gemäß einer Ausführungsform dar.
-
3 stellt einen Pfad (1) zum Lernen des Schätzens und Vorhcrsagcns eines Tiefenbildes (315) aus einer Sequenz von Bildern und einen Pfad (2) zum Lernen des Schätzens und Vorhersagens eines Tiefenbildes aus einem Radar (350) dar. Die Monokameradaten eines 2D-Bildes in einem Eingabebild Is 305 werden empfangen, um ein entsprechendes Tiefenbild zu schätzen. Das Bild Is kann direkt aus der unverarbeiteten Kameraausgabe kommen oder vorverarbeitet, wie etwa größenangepasst, verbessert, usw. sein. Das Eingabebild Is 305 wird in ein Vorhersagemodell 310 zum Schätzen eines Tiefenbildes 315 eingespeist. Jedes Pixel D (n) in 315 ist die geschätzte Tiefe des entsprechenden Pixels p im Eingabebild 305. Um das Vorhersagemodell 310 robuster gegenüber verschiedenen Kameras zu machen, werden außerdem die Kamerakalibrierungsparameter als Eingabe genommen, die versucht, die Wirkung der Kameraparameter während der Trainingsphase des Modells zu erlernen. Das Tiefenbild 315 für das gesamte Bild wird mit einer Matrix von Pixeln aus Tiefenpunkten D (p) erzeugt.
-
Auf dem zweiten Pfad werden das Bild
Is ein Bild
It in ein anderes Vorhersagemodell
340 eingespeist, um die Rotations- und Translationsparameter
345 zwischen den zwei Bildern zu schätzen. Diese Rotations- und Translationsparameter werden dann auf dem Pfad
343 mit dem geschätzten Tiefenbild
315 kombiniert, um ein gewarptes Bild
zu erzeugen. Die Differenz zwischen dem erzeugten Warp-Bild
und dem Bild
It 335 wird dann als die Überwachungsinformation verwendet, um das Vorhersagemodell
310 und
340 zu trainieren. Ähnlich dem Vorhersagemodell
310 nimmt das Vorhersagemodell
340 auch die Kamerakalibrierungsinformation als eine der Eingaben, um robustere Modelle zu lernen, die gegenüber verschiedenen Kameras unempfindlich sind.
-
Der dritte Pfad zeigt, wie die Radarinformationen zu verwenden sind, um die Schätzung der Tiefe zu unterstützen. Das Tiefenbild 315 wird zuerst mit den geschätzten Rotations- und Translationsparametern 345 von der Quellansicht auf die Zielansicht in eine Darstellung einer 3D-Punktwolke 325 umgewandelt, dann wird die 3D-Punktwolke 325 in der Quellansicht in eine 3D-Punktwolke 365 in der Zielansicht umgewandelt. Die 3D-Punktwolke 365 in der Zielansicht wird dann unter Verwendung der Rotations- und Translationsparameter 360 zwischen Kamerasensor und Radarsensor weiter in eine Entfernungsmessung in der Radaransicht r̂ transformiert. Die transformierte Entfernungsmessung r̂ wird dann mit den Radarsensordaten 340 kombiniert, die aus einem Radar 350 empfangen werden, um die überwachten Informationen zu erzeugen, die auch verwendet werden können, um das Vorhersagemodell 310 zu erlernen. Neben der direkten Verwendung der Radarentfernungsmessung zur Überwachung des Lernablaufs kann ebenso auch die Radar-Dopplermessung zur Überwachung des Lernens verwendet werden. Man beachte außerdem, dass die Kamera-Radar-Rotations- und Translationsparameter 360 nicht gelernt werden, sondern im Voraus aus dem Kalibrierungsablauf erhalten werden.
-
4 veranschaulicht ein Diagramm einer synthetisierten Ansicht unter Überwachung, wofür keine Markierung und keine Zuordnung für das Monokamera-Tiefenschätzsystem erforderlich sind, gemäß einer Ausführungsform. In 4 veranschaulicht das Diagramm 400 eine Quellenansicht 405 und ein Synthese-Zielansichtsbild 435 aus einer anderen Kamerapose zur Erzeugung eines Modells für eine Vorhersage einer Bildtiefe ohne eine entsprechende Grundtiefensicherheit, auf die eine vorhergesagte Bildtiefe gegründet werden könnte. Um aus der geschätzten Bildtiefe ein synthetisches Bild zu erzeugen, ist es daher notwendig, eine Differenz zwischen einem synthetischen Bild und einem echten Bild (d. h. einem aufgenommenen oder eingegebenen Bild) aus der Kamera so stark wie möglich zu reduzieren, um eine ausreichende Bildschätzung der Bildtiefe (d. h. der tatsächlichen Bildtiefe ohne Fehler) zu ermöglichen.
-
Auf einem Pfad (
1) für das Training des Modells für die Schätzung der Bildtiefe in
4 wird von der Quellansicht
405 eines Eingabebildes durch ein Vorhersagemodell
410 geschickt, um die Tiefe jedes Pixels für das Tiefenbild
415 zu schätzen. Dann werden auf einem zweiten Pfad (
2) in
4 das Quellansichtsbild
430, das 405 gleich ist, und ein Zielansichtsbild
435, das zu einer anderen Zeit aufgenommen wurde als das Quellansichtsbild
430, an ein Vorhersagemodell geschickt, um die Rotations- und Translationsparameter des Bildes aus der Quellansicht
Is auf die Zielansicht
It vorherzusagen. Nachdem sowohl das vorhergesagte Tiefenbild
415 als auch die Rotations- und Translationsparameter
445 T
s→t bestimmt worden sind, kann bei
420 ein synthetisches Bild
in der Ziclansicht erzeugt werden. Wenn sowohl die vorhergesagte Tiefe als auch die Rotations- und Translationsparameter des Modells ausreichend sind, ähnelt das bei
420 erzeugte synthetische Bild
dem Zielansichtsbild
435. Die Differenz zwischen dem synthetischen Bild bei
420 und dem Zielansichtsbild bei
435 kann zum Trainieren des Überwachungsmodells verwendet werden. Um zu ermöglichen, dass das Überwachungsmodell für unterschiedliche Kameras robuster und leichter anwendbar ist, können die Kalibrierungsparameter der Kamera während des Trainings eingegeben werden (zum Beispiel beim Trainieren eines neuronalen Netzes für das trainierte Modell
235 von
2).
-
Die Bildfolge wird mit < I
1 to I
N > bezeichnet, wobei eines der Bilder eine Quellansicht
Is ist und der Rest Zielansichten
It (1 ≤ t ≤ N, s ≠ t) sind, der Verlust wird dann konfiguriert als:
-
Der Parameter
ist die Quellansicht
Is , gewarpt auf die Zielansicht auf Basis des vorhergesagten Tiefenbildes
und der vorhergesagten Kameratransformation
R,
T von der Quellansicht zur Zielansicht.
-
5 stellt ein Diagramm einer synthetisierten Ansicht mit Überwachung aus Radarabstandsmessungen und aus Radar-Dopplermessungen des Monokamera-Tiefenschätzsystems gemäß einer Ausführungsform dar. In 5 stellt das Diagramm 500 die Verwendung von Radarmessungen, um das Lernen des geschätzten (d. h. vorhergesagten) Tiefenbildes 500 eines Quellansichts-Eingabebildes 505 zu erleichtern, dar. In 5 ist das Radar 550 in der Lage, die Entfernung (d. h. die Tiefe) und die zeitabhängige Abstandsänderung (d. h. den Dopplereffekt) für Objekte zu messen, die in das überwachte Training der Schätzung (d. h. Vorhersage) für das Ticfcnbildmodcll einbezogen werden. In 5, ähnlich 4, ist der Pfad (1) das Schätzmodell eines Tiefenbildes 515 über das Vorhersagemodell 510, um durch Training die Tiefe des Quellansichtsbildes 505 festzustellen und um die Rotations- und Translationsparameter der Transformationspose 545 der Quellansichtsbilder des Bildes 530 (desselben Bildes wie das Quellansichts-Eingabebild 505) und des Zielansichtsbildes 535, das zu einem anderen Zeitpunkt erfasst wurde als das Quellansichtsbild, zu bestimmen.
-
Mit den vorhergesagten Tiefenbildern kann die 3D-Punktwolke 525 für das Quellansichts-Eingabebild 505 abgeleitet werden. Die 3D-Punktwolke 525 wird dann mit den vorhergesagten Rotations- und Translationsparametern R und T 545 kombiniert, um eine transformierte 3D-Punktwolke 565 für das Ziel zu erzeugen.
-
Die 3D-Punktwolke
565 für die Zielansicht ist die Kameraansicht als Ergebnis davon, dass der Radarsensor und der Kamerasensor nicht am exakt gleichen Punkt am Fahrzeug befestigt sind. Diese Differenz in den Ansichten erfordert eine weitere Rotation und Translation einer Transformationspose
560, die im Voraus unter Verwendung von Standard-Sensorkalibricrungsverfahren geschätzt werden kann. Die 3D-Punktwolke
565 wird daher von der Kamera-Zielansicht in die Zielansicht des Radars
550 transformiert. Außerdem kann die 3D-Punktwolke
525 der Kameraansicht in der Quellansicht auch in die Ansicht des Radars
550 transformiert werden. Daher können zwei 3D-Punktwolken erzeugt werden und die Informationen über die zeitabhängige Abstandsänderung (d. h. über den Dopplereffekt)
können anhand der 3D-Punktwolken geschätzt werden.
-
Die 3D-Punktwolke in der Ziclansicht kann mit den Messungen r von Radarsensordaten 540 des Radars 550 mit Dopplereffekt 555 rr verglichen werden, die in einer Ansicht von oben nach unten auf ein Belegungsgitter mit der transformierten 3D-Punktwolke 565, die durch die Transformationspose 560 transformiert wurde, gezeigt wurden. In verschiedenen alternativen Ausführungsformen können Radare befähigt werden, 3D-Punktwolkenmessungen bereitzustellen, ohne dass ein Belegungsgitter erforderlich ist.
-
Die Entfernungsmessungen jedes entsprechenden Punktes zwischen der erzeugten 3D-Punktwolke und Radarmessungen sind ähnlich, und die Differenz wird in die Trainingsdaten für das überwachte Training auf dem Pfad (1) aufgenommen. Als Nächstes werden die geschätzten (d. h. vorhergesagten) zwei 3D-Punktwolken 525 und 565 verwendet, um die Informationen über die zeitabhängige Abstandsänderung für die Punkte abzuleiten, die nahe an den entsprechenden Radardopplermessungen liegen. Die Differenz kann auch als Überwachungsinformation während des Trainings der Tiefenschätzmodells für das Tiefenbild 515 verwendet werden.
-
Die Verlustfunktion für die Überwachung des Trainings von Tiefenschätzungen anhand der Radarabstandsmcssung ist wie folgt:
-
Wobei n die Gesamtheit der Radarpunkte ist, jeder Punkt in dem Radarbelegungsgitter die Abstandsmessung
r ist.
N ist die Nachbarschaft des Punktes (x, y),
ist der entsprechende geschätzte Abstand aus dem Bild und w sind die entsprechenden Gewichte.
-
Der Verlust für das Training der Tiefenschätzung aus der Radarmessung der zeitabhängige Abstandsänderung ist wie folgt:
-
Wobei n die Gesamtheit der Radarpunkte ist, jeder Punkt im Radarbelegungsgitter die zeitabhängige Abstandsänderung rr ist, ℕ die Nachbarschaft eines Punktes (x, y) ist.
die entsprechende geschätzte zeitabhängige Abstandsänderung ist und w
j die entsprechenden Gewichte sind.
-
Der endgültige Verlust wird für die Radardaten auf der Basis von auf Radar basierenden Tiefenfehlerberechnungen und/oder auf Radar-Doppler basierenden Fehlerberechnungen für die überwachten auf 3D
3D basierenden und kamerabasierten Tiefenfehlerberechnungen wie folgt berechnet:
-
Ein Gewichtungsschema und eine Glättungsregelung werden auf die globale Verlustberechnung angewendet. Das heißt, in einem Ausführungsbeispiel ist ℓsmooth/reg der optionale Glättungsregulierungsterm, z. B. die ɩ1-Norm der Gradienten zweiter Ordnung des vorhergesagten Tiefenbildes, und αi sind die Gewichtungsparameter für jede Komponente. 6 stellt ein Diagramm der endgültigen Verlustberechnungen für das selbstüberwachte Trainingsmodell unter Verwendung von Fehlerschätzungen aus Radarabstandsmessungen und Radar-Dopplermessungen und kamerabasierten Tiefenberechnungen für verbesserte Entfernungsschätzungen des Monokamera-Tiefenschätzsystems gemäß einer Ausführungsform dar. Für die endgültige Verlustmodellierung des Diagramms 600 empfängt das Monokamera-Tiefenschätzsystem Monokameradaten 605, die als Eingabe einer Ansicht einer Szene (d. h. eines 2D-Einzelbildes) in die Bilderzeugungseinheit 615 gesendet werden, mit Eingaben der 3D-Punktwolke der Zielansicht, die durch eine photometrische Fehlerminimierungseinheit 635 verarbeitet werden, um einen photometrischen Fehler zu minimieren, und auf die Monokamera-Kalibrierungsparameter 620 konfiguriert werden. Die Tiefenbilddaten, die eine Abfolge sequentiell geordneter 2D-Einzelbilder bei unterschiedlichen Posen sind, werden als eine Eingabe in die Bildrekonstruktionseinheit 625 empfangen. Die Bildrekonstruktionseinheit 625 empfängt auch Kamerakalibrierungsparameter von der Kamerakalibrierungsparametereinheit 620 und eine Eingabe von Daten der synthetisierten Ansicht, um sie an die End-to-End-Posenschätzeinheit 630 zu senden. Daten von der End-to-End-Posenschätzeinheit 630 und von der End-to-End-Abstandsschätzeinheit 610 werden an die kamerabasierte Tiefenfehlerberechnungseinheit 640 gesendet, um einen Tiefenfehler ɩvs zu berechnen.
-
Als Nächstes sendet die Radardateneinheit 645 Radar-Dopplerdaten an ein Belegungsgitter mit der Doppler-Einheit 660. Das Belegungsgitter mit der Dopplereinheit 660 sendet Daten an die Doppler-basierte Abstandsschätzeinheit 665 der Abstandsschätzung. Die Einzelbilddaten werden an die Belegungsgittererzeugungseinheit 650 gesendet. Die radarbasierte Abstandsschätzeinheit 655 empfängt Gitterdaten aus der Belegungsgittererzeugungseinheit 650 und gibt Schätzungen von Entfernungsdaten an die radarbasierte Tiefenfehlerberechnungseinheit 670 aus. Die radarbasierte Tiefenfehlerberechnungseinheit 670 empfängt zusätzlich Radardaten 645 und berechnet einen radarbasierten Tiefenverlust ℓdepth, um ihn an die globale Verlustberechnungseinheit 680 zu senden. Die Dopplerdaten werden vom Belegungsgitter mit der Dopplereinheit 660 empfangen, und Gitterdaten werden an die Doppler-basierte Schätzeinheit 665 gesendet. Die Doppler-basierte Entfernungsschätzeinheit 665 erzeugt geschätzte Abstandsdaten für den Empfang durch die Doppler-basierte Tiefenfehlerberechnungseinheit 675. Die Doppler-Basisabstandsberechnungseinheit empfängt zusätzlich Radardaten 645 und berechnet den Dopplerverlust ℓdoppler, um ihn an die globale Verlustberechnungseinheit 680 zu senden.
-
Die globale Verlustberechnungseinheit
680 empfängt sowohl den Betrag des berechneten Radarverlusttiefenfehlers als auch den Betrag des berechneten Doppler-basierten Tiefenfehlers und den Betrag des berechneten kamerabasierten Tiefenfehlers und summiert alle berechneten Verluste mit einem Gewichtungsschema
685 und einer Glättungs-/Regulierungsfunktion
690 wie folgt:
-
Das Modell wird dann neu trainiert 695, um die endgültigen Verlustdaten ℓfinal an die End-to-End-Abstandsschätzeinheit 610 zu senden. Die End-to-End-Abstandsschätzeinheit 610 berücksichtigt den endgültigen Verlust und erzeugt verbesserte Entfernungsschätzungen. 7 veranschaulicht ein Flussdiagramm der Korrektur der Tiefenschätzung des geschätzten Tiefenbildes durch Verluste des Monokamera-Tiefenschätzsystems gemäß einer Ausführungsform. Das Flussdiagramm 700 schließt Folgendes ein: bei 710 das Empfangen einer Vielzahl von Eingabebildern aus der Monokamera, die mit einem Fahrzeug gekoppelt ist, durch eine Verarbeitungseinheit, die in einem Fahrzeug angeordnet ist, wobei jedes Eingabebild ein 2D-Bild einer das Fahrzeug umgebenden Szene ist. Bei 720 das Erzeugen eines geschätzten Tiefenbildes durch die Verarbeitungseinheit durch Vergleiche zwischen den einzelnen Eingabebildern eines Satzes aus der Vielzahl der Eingabebilder. Bei 730 das Erzeugen eines synthetischen Bildes aus einem ersten Eingabebild und einem zweiten Eingabebild aus der Monokamera durch die Verarbeitungseinheit durch Anwenden einer geschätzten Transformationspose. Bei 740 das Vergleichen einer geschätzten 3D-Punktwolke mit Radardaten durch Anwenden einer weiteren geschätzten Transformationspose auf die 3D-Punktwolke durch die Verarbeitungseinheit, wobei die 3D-Punktwolke durch überwachtes Training des Bildschätzmodells an Radarentfernungs- und Radardopplermessungen geschätzt wird. Bei 750 das Korrigieren einer Tiefenschätzung des geschätzten Tiefenbildes durch Verluste, die aus Differenzen des synthetischen Bildes und von Originalbildern abgeleitet werden. Bei 760 das Korrigieren der Tiefenschätzung des geschätzten Tiefenbildes durch Verluste, die aus Differenzen des synthetischen Tiefenbilds und einer gemessenen Radarentfernung abgeleitet werden. Bei 770 das Korrigieren der Tiefenschätzung des geschätzten Tiefenbildes durch Verluste, die aus Differenzen geschätzter Dopplerinformationen und gemessener Radar-Dopplerinformationen abgeleitet werden.
-
Die obige detaillierte Beschreibung dient lediglich der Veranschaulichung und soll weder die Ausführungsformen des Gegenstands noch die Anwendung und Verwendung solcher Ausführungsformen einschränken. Der hier verwendete Begriff „exemplarisch“ ist als „Beispiel, Instanz oder Illustration“ zu verstehen. Jede hierin als exemplarisch beschriebene Implementierung ist nicht unbedingt als bevorzugt oder vorteilhaft gegenüber anderen Implementierungen zu interpretieren. Darüber hinaus besteht keine Absicht, sich an eine ausdrücklich formulierte oder implizite Theorie zu binden, die im vorstehenden technischen Gebiet, im Hintergrund, in der Kurzfassung oder in der detaillierten Beschreibung dargestellt wird.
-
Obwohl zumindest ein Ausführungsbeispiel in der vorstehenden ausführlichen Beschreibung vorgestellt wurde, sollte es sich verstehen, dass eine große Anzahl von Variationen existiert.
-
Es sollte sich außerdem verstehen, dass das Ausführungsbeispiel oder die Ausführungsbeispiele lediglich Beispiele und den Schutzumfang, die Anwendbarkeit oder Konfiguration der Offenbarung in keiner Weise einzuschränken sollen. Vielmehr stellt die vorstehende ausführliche Beschreibung Fachleuten eine brauchbare Anleitung zur Realisierung des Ausführungsbeispiels oder der Ausführungsbeispielen bereit.
-
Es versteht sich, dass verschiedene Änderungen an der Funktion und Anordnung von Elementen vorgenommen werden können, ohne vom Schutzumfang der Offenbarung abzuweichen, wie in den beigefügten Ansprüchen und deren gesetzlichen Äquivalenten dargelegt.