DE102021129832A1 - Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus - Google Patents

Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus Download PDF

Info

Publication number
DE102021129832A1
DE102021129832A1 DE102021129832.6A DE102021129832A DE102021129832A1 DE 102021129832 A1 DE102021129832 A1 DE 102021129832A1 DE 102021129832 A DE102021129832 A DE 102021129832A DE 102021129832 A1 DE102021129832 A1 DE 102021129832A1
Authority
DE
Germany
Prior art keywords
module
feature map
vehicle
light
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021129832.6A
Other languages
English (en)
Inventor
Saquib Mansoor Alam
Akhilesh Kumar Malviya
Arindam Das
Senthil Kumar Yogamani
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Connaught Electronics Ltd
Original Assignee
Connaught Electronics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Connaught Electronics Ltd filed Critical Connaught Electronics Ltd
Priority to DE102021129832.6A priority Critical patent/DE102021129832A1/de
Publication of DE102021129832A1 publication Critical patent/DE102021129832A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Abstract

Gemäß einem computerimplementierten Verfahren zur Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus (6) wird ein Lichterkennungsmodul (7) auf ein Eingangsbild (5), welches eine Umgebung eines Ego-Fahrzeugs (1) darstellt, angewandt, um eine Lichtmerkmalskarte zu erzeugen, wobei die Lichtmerkmalskarte jeweilige Positionen einer Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten (23, 24) wenigstens eines Fahrzeugs (22) definiert. Für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten wird eine betreffende Begrenzungsbox (25, 26, 27) für das wenigstens eine Fahrzeug (22) durch ein Ausdehnungsschätzmodul (8) bestimmt und wenigstens eine der Begrenzungsboxen (25, 26, 27) wird durch ein Nicht-Maximum-Unterdrückung-Modul (9) ausgewählt.

Description

  • Die vorliegende Erfindung ist auf ein computerimplementiertes Verfahren zur Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus, auf ein computerimplementiertes Trainingsverfahren zum Trainieren eines Computer-Vision Algorithmus zur Fahrzeugerkennung, auf ein Verfahren zum wenigstens teilweise automatischen Führen eines Ego-Fahrzeugs und auf ein elektronisches Fahrzeugführungssystem gerichtet.
  • Für teilweise automatische oder vollständig automatische Fahrfunktionen ist die zuverlässige automatische Erkennung von Fahrzeugen in der Umgebung eines Ego-Fahrzeugs sehr wichtig. Es ist bekannt, Computer-Vision Algorithmen, insbesondere Objekterkennungsalgorithmen, die beispielsweise eine Objektklasse und eine Begrenzungsbox für die jeweiligen Objekte in der Umgebung des Ego-Fahrzeugs auf der Basis von Kamerabildern identifizieren, zu verwenden. In lichtarmen Szenarios ist jedoch eine zuverlässige Objekterkennung, insbesondere das zuverlässige Schätzen der tatsächlichen Ausdehnung von Fahrzeugen mittels Begrenzungsboxen, die das Fahrzeug in den Kamerabildern umschließen, eine anspruchsvolle Aufgabe, die gewöhnlich nicht in einer zufriedenstellenden Weise erreicht wird. Ein Problem, das in diesem Zusammenhang entsteht, besteht darin, dass das Training von Computer-Vision Algorithmen auf der Basis von überwachtem Maschinenlernen große Mengen von annotierten Trainingsbildern erfordert. Selbst für menschliche Annotatoren kann jedoch die zuverlässige Schätzung der Größe von Fahrzeugen in dunklen oder lichtarmen Szenarios sehr schwierig sein.
  • Es ist ein Ziel der vorliegenden Erfindung, die Zuverlässigkeit für die automatische Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus, insbesondere für lichtarme Umgebungsbedingungen, zu verbessern.
  • Dieses Ziel wird durch den jeweiligen Gegenstand der unabhängigen Ansprüche erreicht. Weitere Implementierungen und bevorzugte Ausführungsformen sind Gegenstand der abhängigen Ansprüche.
  • Die Erfindung basiert auf der Idee, eine Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten von Fahrzeugen in der Umgebung des Ego-Fahrzeugs zu identifizieren, betreffende Begrenzungsboxen zu schätzen und einen Nicht-Maximum-Unterdrückung-Schritt durchzuführen, um eine oder mehrere der Begrenzungsboxen auszuwählen.
  • Gemäß einem Aspekt der Erfindung wird ein computerimplementiertes Verfahren zur Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus bereitgestellt. Dabei wird ein Lichterkennungsmodul des Computer-Vision Algorithmus auf ein Eingangsbild, welches eine Umgebung eines Ego-Fahrzeugs darstellt, angewandt, um eine Lichtmerkmalskarte zu erzeugen. Die Lichtmerkmalskarte definiert jeweilige Positionen einer Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten wenigstens eines Fahrzeugs in der Umgebung des Ego-Fahrzeugs. Für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten wird eine betreffende Begrenzungsbox für das wenigstens eine Fahrzeug durch ein Ausdehnungsschätzmodul des Computer-Vision Algorithmus bestimmt. Wenigstens eine der Begrenzungsboxen wird durch ein Nicht-Maximum-Unterdrückung-Modul des Computer-Vision Algorithmus ausgewählt.
  • Hier und nachstehend können alle Schritte eines computerimplementierten Verfahrens zur Fahrzeugerkennung gemäß der Erfindung durch wenigstens eine Recheneinheit, insbesondere wenigstens eine Recheneinheit des Ego-Fahrzeugs, ausgeführt werden, sofern nicht anders angegeben.
  • Der Computer-Vision Algorithmus ist insbesondere ein Algorithmus mit einer Architektur, die auf der Basis von Maschinenlernen trainiert wurde oder, mit anderen Worten, maschinentrainiert wurde. Das computerimplementierte Verfahren zur Fahrzeugerkennung entspricht einer Einsatzphase des Computer-Vision Algorithmus. Mit anderen Worten, der Computer-Vision Algorithmus wurde trainiert, bevor das computerimplementierte Verfahren für eine Fahrzeugerkennung ausgeführt wird.
  • Der Computer-Vision Algorithmus beinhaltet beispielsweise ein oder mehrere künstliche neuronale Netzwerke, insbesondere faltende neuronale Netzwerke, CNN. Ein CNN kann als neuronales Netzwerk mit einer oder mehreren Faltungs- und/oder Entfaltungsschichten verstanden werden.
  • Wenn nicht anders angegeben, weist insbesondere jedes Modul des Computer-Vision Algorithmus und gegebenenfalls jedes Untermodul eines Moduls des Computer-Vision Algorithmus ein künstliches neuronales Netzwerk, beispielsweise ein CNN, oder einen Teil eines neuronalen Netzwerks oder eine andere maschinentrainierbare Architektur oder einen anderen maschinentrainierbaren Algorithmus auf.
  • In einigen Ausführungsformen beinhalten das Lichterkennungsmodul, das Ausdehnungsschätzmodul und das Nicht-Maximum-Unterdrückung-Modul jeweils entsprechende neuronale Netzwerke. Insbesondere beinhaltet das Lichterkennungsmodul eines oder mehrere CNNs.
  • Die Fahrzeugerkennung kann als Objekterkennung für eine spezielle Objektklasse, nämlich Fahrzeuge, betrachtet werden. Ein Ergebnis des Verfahrens zur Fahrzeugerkennung wird daher durch die ausgewählte wenigstens eine der Begrenzungsboxen gegeben, die die jeweilige Ausdehnung von einem oder mehreren Fahrzeugen in der Umgebung des Ego-Fahrzeugs schätzen und beispielsweise auch als Bereiche von Interesse, ROI, für die jeweiligen Fahrzeuge bezeichnet werden können.
  • Jeder Kandidat der Vielzahl von Kandidaten entspricht einer möglichen Beleuchtungseinheit eines Fahrzeugs in der Umgebung des Ego-Fahrzeugs. Folglich ist mehr als einer der Vielzahl von Kandidaten pro potentieller Beleuchtungseinheit möglich. Eine Beleuchtungseinheit kann als einzelne Außenbeleuchtungseinheit eines Fahrzeugs, insbesondere als einzelner Scheinwerfer oder einzelne Heckleuchte, aufgefasst werden. Insbesondere ist die Beleuchtungseinheit im Eingangsbild aktiv oder, mit anderen Worten, die Beleuchtungseinheit hat Licht emittiert, als das Eingangsbild erfasst wurde.
  • Das Lichterkennungsmodul identifiziert die jeweiligen Beleuchtungseinheiten in der Umgebung der Ego-Fahrzeuge auf der Basis des Eingangsbildes. Dazu kann das Lichterkennungsmodul eine oder mehrere Klassifizierungsaufgaben und/oder eine oder mehrere Regressionsaufgaben ausführen, um die Lichtmerkmalskarte zu erzeugen. Das Lichterkennungsmodul selbst bestimmt jedoch nicht die Begrenzungsboxen für die Kandidaten. Vielmehr kann die Lichtmerkmalskarte als mehrkanalige Merkmalskarte aufgefasst werden, die beispielsweise jeweilige Kanäle, die die Position eines potentiellen Kandidaten definieren, und einen Kanal, der die entsprechende Wahrscheinlichkeit definiert, dass eine Beleuchtungseinheit an der Position vorhanden ist, beinhaltet. Insbesondere kann die Lichtmerkmalskarte eine räumliche Ausdehnung gleich der räumlichen Ausdehnung des Eingangsbildes aufweisen.
  • Das Ausdehnungsschätzmodul kann dann eine betreffende Begrenzungsbox für jeden der Vielzahl von Kandidaten oder für die Untermenge schätzen. Ein optionaler Validierungsschritt kann beispielsweise einen oder mehrere Kandidaten aus der Vielzahl von Kandidaten ausschließen, um die Untermenge der Vielzahl von Kandidaten zu erzeugen. Dazu können weitere Maschinenlernalgorithmen oder heuristische oder regelbasierte Methoden verwendet werden. Das Ausdehnungsschätzmodul kann in einigen Fällen auch mehr als eine Begrenzungsbox für einen gegebenen Kandidaten bestimmen.
  • Als Ergebnis des Ausdehnungsschätzmoduls werden folglich eine oder mehrere entsprechende Begrenzungsboxen für jeden Kandidaten von wenigstens der Untermenge der Vielzahl von Kandidaten erhalten. Das Nicht-Maximum-Unterdrückung-Modul wählt dann eine der Begrenzungsboxen für jedes Fahrzeug in der Umgebung des Ego-Fahrzeugs, beispielsweise genau eine Begrenzungsbox, aus. Insbesondere führt das Nicht-Maximum-Unterdrückung-Modul einen Nicht-Maximum-Unterdrückung-Schritt oder ein Nicht-Maximum-Unterdrückung-Verfahren aus, um die wenigstens eine der Begrenzungsboxen auszuwählen. Als Ergebnis des Verfahrens zur Fahrzeugerkennung kann eine ausgewählte Begrenzungsbox für jedes Fahrzeug in der Umgebung des Ego-Fahrzeugs erhalten werden. Die ausgewählten Begrenzungsboxen können dann beispielsweise durch ein fortschrittliches Fahrerassistenzsystem, ADAS, oder durch ein anderes elektronisches Fahrzeugführungssystem verwendet werden, um automatische oder teilweise automatische Fahr- oder Führungsfunktionen für das Ego-Fahrzeug auszuführen.
  • Durch Bestimmen einer Begrenzungsbox für jeden Kandidaten der Untermenge der Vielzahl von Kandidaten wird mehr als nur eine potentielle Begrenzungsbox für jedes Fahrzeug bestimmt. Die Auswahl wird dann in einem zweiten Schritt durch Nicht-Maximum-Unterdrückung bewerkstelligt. In dieser Weise wird die Wahrscheinlichkeit, dass letztendlich die optimale Begrenzungsbox für ein Fahrzeug erhalten wird, im Vergleich zu einer Methode erhöht, die eine entsprechende Begrenzungsbox für das Fahrzeug oder für ein Paar von Scheinwerfern oder Heckleuchten direkt bestimmt. Daher werden die Genauigkeit und Zuverlässigkeit der ausgewählten Begrenzungsboxen und des Verfahrens zur Fahrzeugerkennung erhöht. Folglich werden auch die Zuverlässigkeit und Sicherheit von anschließenden Funktionen unter Verwendung der ausgewählten Begrenzungsboxen für die automatische oder teilweise automatische Führung des Ego-Fahrzeugs erhöht.
  • Durch Bestimmen der Begrenzungsboxen für die Fahrzeuge über die Erkennung der Kandidaten für die Beleuchtungseinheiten wird ferner die Fahrzeugerkennung im Fall von lichtarmen Szenarios besonders leistungsstark. Da die Lichtmerkmalskarten vielmehr die Kandidaten für die Beleuchtungseinheiten darstellen, als Beschreibungen für das ganze Fahrzeug bereitzustellen, ist auch die Annotation von jeweiligen Trainingsdaten oder Trainingsbildern signifikant vereinfacht, da aktive Beleuchtungseinheiten auch in lichtarmen Szenarios gut erkennbar sind.
  • Gemäß mehreren Implementierungen des computerimplementierten Verfahrens zur Fahrzeugerkennung gemäß der Erfindung wird eine betreffende erste Begrenzungsbox für ein erstes Fahrzeug des wenigstens einen Fahrzeugs für eine erste Untermenge der Vielzahl von Kandidaten durch das Ausdehnungsschätzmodul bestimmt und eine, insbesondere genau eine, der ersten Begrenzungsboxen wird durch das Nicht-Maximum-Unterdrückung-Modul ausgewählt.
  • Alternativ oder zusätzlich wird für eine zweite Untermenge der Vielzahl von Kandidaten eine betreffende zweite Begrenzungsbox für ein zweites Fahrzeug des wenigstens einen Fahrzeugs durch das Ausdehnungsschätzmodul bestimmt und eine, insbesondere genau eine, der zweiten Begrenzungsboxen wird durch das Nicht-Maximum-Unterdrückung-Modul ausgewählt.
  • Während das erste Fahrzeug von dem zweiten Fahrzeug verschieden ist, können die erste Untermenge der Vielzahl von Kandidaten und die zweite Untermenge der Vielzahl von Kandidaten im Prinzip überlappen.
  • Gemäß mehreren Implementierungen wird ein Fluchtpunkt des Eingangsbildes durch ein Fluchtpunktschätzmodul des Computer-Vision Algorithmus geschätzt. Eine validierte Menge von Kandidaten wird durch ein Validierungsmodul des Computer-Vision Algorithmus abhängig von der Lichtmerkmalskarte und einem Ergebnis der Schätzung des Fluchtpunkts bestimmt. Die betreffende Begrenzungsbox für das wenigstens eine Fahrzeug wird durch das Ausdehnungsschätzmodul für jeden von wenigstens der Untermenge der validierten Menge von Kandidaten bestimmt.
  • Mit anderen Worten, alle Kandidaten der Vielzahl von Kandidaten, die nicht in der validierten Menge von Kandidaten enthalten sind, werden nicht verwendet, um eine entsprechende Begrenzungsbox zu schätzen.
  • Der Fluchtpunkt des Eingangsbildes kann als Punkt im Eingangsbild betrachtet werden, an dem sich mehrere konvergierende Linien im Bild treffen. Die konvergierenden Linien können beispielsweise durch Strukturen von Straßen, Gebäuden, Fahrbahnmarkierungen und so weiter in der Umgebung des Ego-Fahrzeugs definiert sein. Mit anderen Worten, ein Fluchtpunkt kann als Punkt in der Bildebene in einer perspektivischen Interpretation betrachtet werden, an dem die zweidimensionalen perspektivischen Projektionen von zueinander parallelen Linien im dreidimensionalen Raum zu konvergieren scheinen.
  • Um den Fluchtpunkt zu schätzen, kann das Fluchtpunktschätzmodul beispielsweise eine Fluchtpunkt-Regressionsoperation abhängig von dem Eingangsbild ausführen. Dazu kann das Fluchtpunktschätzmodul direkt auf das Eingangsbild angewandt werden oder kann auf eine Bildmerkmalskarte angewandt werden, die durch den Computer-Vision Algorithmus auf der Basis des Eingangsbildes erzeugt wird. Das Validierungsmodul wird trainiert, um die Kandidaten für die Beleuchtungseinheiten auf der Basis des Ergebnisses der Fluchtpunktschätzung oder -regression, insbesondere auf der Basis der jeweiligen Fluchtpunktmerkmalskarte, zu validieren. Dabei kann das Validierungsmodul insbesondere andere Lichtquellen, beispielsweise Straßenlaternen, die nicht Beleuchtungseinheiten eines Fahrzeugs entsprechen, herausfiltern. Dazu werden der Fluchtpunkt oder die Fluchtpunkte des Bildes berücksichtigt.
  • In typischen Straßenumgebungen unterscheidet sich die räumliche Verteilung von tatsächlichen Fahrzeugbeleuchtungseinheiten von der räumlichen Verteilung von anderen Lichtquellen, wie zum Beispiel Straßenlaternen. Insbesondere ist in Anbetracht einer horizontalen Achse der Bildebene, die das Eingangsbild in zwei gleiche Hälften unterteilt, der Abstand eines Fluchtpunkts von der horizontalen Achse in den meisten Szenarios kleiner als der Abstand einer Fahrzeugbeleuchtungseinheit von der horizontalen Achse. Ferner ist der Abstand des Fluchtpunkts von der horizontalen Achse in fast allen Szenarios größer als der Abstand einer Straßenlaterne von der horizontalen Achse der Bildebene.
  • Diese Beziehungen sind nicht für jedes einzelne Szenario erfüllt, aber, wie erwähnt, wurde festgestellt, dass sie in fast allen realistischen Straßenszenarios tatsächlich erfüllt sind. Die entsprechenden Informationen, die im Fluchtpunkt des Eingangsbildes kodiert sind, werden mittels des Validierungsmoduls ausgenutzt, das eine oder mehrere Faltungs- und/oder Entfaltungsschichten beinhaltet, um zwischen tatsächlichen Beleuchtungseinheiten von Fahrzeugen und Straßenlaternen oder anderen Lichtquellen in dem Szenario zu unterscheiden. Mit anderen Worten, das Validierungsmodul kann trainiert werden, um die Beziehungen von Abständen und optional anderen Merkmalen, die Fahrzeugbeleuchtungseinheiten von anderen Lichtquellen unterscheiden, zu lernen.
  • Gemäß mehreren Implementierungen wird die Fluchtpunktmerkmalskarte durch das Fluchtpunktschätzmodul durch Ausführen der Fluchtpunkt-Regressionsoperation erzeugt und die validierte Menge von Kandidaten wird durch das Validierungsmodul abhängig von der Lichtmerkmalskarte und der Fluchtpunktmerkmalskarte bestimmt.
  • Insbesondere kann die Fluchtpunktmerkmalskarte eine räumliche Ausdehnung gleich der räumlichen Ausdehnung des Eingangsbildes aufweisen.
  • Gemäß mehreren Implementierungen wird ein Kantenerkennungsuntermodul des Lichterkennungsmoduls auf das Eingangsbild angewandt, um eine Kantenmerkmalskate zu erzeugen. Eine erste encodierte Merkmalskarte wird durch Anwenden eines ersten Encoderuntermoduls des Lichterkennungsmoduls auf die Kantenmerkmalskarte erzeugt und die Lichtmerkmalskarte wird durch ein Lichterkennungs-Decoderuntermodul des Lichterkennungsmoduls abhängig von der ersten encodierten Merkmalskarte erzeugt. Die Kantenmerkmalskarte kann insbesondere dieselben räumlichen Ausdehnungen wie das Eingangsbild aufweisen.
  • Die Kantenmerkmalskarte stellt die Kanteninformationen dar, die im Eingangsbild enthalten sind. In lichtarmen Situationen sind Bildinformationen wie zum Beispiel Farben und die Textur von Objekten in der Umgebung des Ego-Fahrzeugs sehr schwierig zu extrahieren. Folglich sind die Kanteninformationen des Bildes zum Erkennen von Objekten, insbesondere Fahrzeugen, in lichtarmen Szenarios von besonderer Bedeutung.
  • Das Kantenerkennungsuntermodul kann ein Kantenerkennungs-Encoderuntermodul aufweisen, das auf das Eingangsbild angewandt wird und eine Bildmerkmalskarte auf der Basis des Eingangsbildes erzeugen kann. Das Kantenerkennungsuntermodul kann ferner ein Kantenerkennungs-Decoderuntermodul aufweisen, das auf die Bildmerkmalskarte angewandt wird, um die Kantenmerkmalskarte zu erzeugen, die auch als Bild mit erkannten Kanten betrachtet werden kann. Zum Trainieren des Kantenerkennungsuntermoduls kann beispielsweise ein Canny-Kantenerkennungsalgorithmus verwendet werden, um eine entsprechende Ground Truth zu erzeugen.
  • Da die Kantenmerkmale des Eingangsbildes einen der wichtigsten Inhalte für die Fahrzeugerkennung bei wenig Licht darstellen, führt die Verwendung der Kantenmerkmalskarte zum Erzeugen der Lichtmerkmalskarte zu einer besonders zuverlässigen Erkennung der Kandidaten für die Vielzahl von Beleuchtungseinheiten.
  • Gemäß mehreren Implementierungen wird eine zweite encodierte Merkmalskarte durch Anwenden eines zweiten Encoderuntermoduls des Lichterkennungsmoduls auf das Eingangsbild erzeugt. Die Lichtmerkmalskarte wird durch das Lichterkennungs-Decoderuntermodul abhängig von der zweiten encodierten Merkmalskarte, insbesondere abhängig von der ersten encodierten Merkmalskarte und der zweiten encodierten Merkmalskarte, erzeugt.
  • In entsprechenden Ausführungsformen werden die erste und die zweite encodierte Merkmalskarte oder, mit anderen Worten, die allgemeinen Merkmale des Eingangsbildes und die Kantenmerkmale des Eingangsbildes beide verwendet, um die Lichtmerkmalskarte zu erzeugen. Insbesondere werden das Eingangsbild und die Kantenmerkmalskarte mittels des ersten und des zweiten Encoderuntermoduls des Lichterkennungsmoduls parallel ausgewertet. Daher kann die Zuverlässigkeit der Lichtmerkmalskarte weiter erhöht werden.
  • Beispielsweise wird eine zusammengeführte encodierte Merkmalskarte durch ein Zusammenführungsuntermodul des Lichterkennungsmoduls durch Zusammenführen der ersten encodierten Merkmalskarte und der zweiten encodierten Merkmalskarte erzeugt. Die Lichtmerkmalskarte wird durch Anwenden des Lichterkennungs-Decoderuntermoduls auf die zusammengeführte encodierte Merkmalskarte erzeugt.
  • Die Zusammenführung kann beispielsweise eine Verkettung, eine Summierung oder eine Mittelwertbildung der ersten und der zweiten encodierten Merkmalskarte beinhalten.
  • In entsprechenden Implementierungen wird die Fluchtpunktmerkmalskarte auch basierend auf der zusammengeführten encodierten Merkmalskarte erzeugt. Insbesondere kann das Fluchtpunktschätzmodul als Fluchtpunkt-Decodermodul ausgestaltet sein und kann auf die zusammengeführte encodierte Merkmalskarte angewandt werden, um die Fluchtpunkt-Regressionsoperation auf der Basis der zusammengeführten encodierten Merkmalskarte auszuführen.
  • Auf diese Weise werden sowohl die besonders relevanten Kanteninformationen als auch die verfügbaren allgemeinen Informationen verwendet, um den Fluchtpunkt sowie die Vielzahl von Kandidaten für die Beleuchtungseinheiten der Fahrzeuge parallel zu schätzen. Die Lichtmerkmalskarte und die Fluchtpunktmerkmalskarte werden dann beide dem Validierungsmodul zugeführt, um die validierte Menge von Kandidaten zu erzeugen.
  • Gemäß mehreren Implementierungen wird die betreffende Begrenzungsbox für jeden von zumindest der Untermenge der Vielzahl von Kandidaten durch das Ausdehnungsschätzmodul abhängig von wenigstens einer vorherigen Begrenzungsbox für wenigstens ein Fahrzeug bestimmt.
  • Insbesondere kann die wenigstens eine vorherige Begrenzungsbox für das wenigstens eine Fahrzeug dem Ausdehnungsschätzmodul durch ein rekurrentes neuronales Netzwerk-Modul, insbesondere ein langes Kurzzeitgedächtnis, LSTM, des Computer-Vision Algorithmus, bereitgestellt werden. Das rekurrente neuronale Netzwerk-Modul kann zwischen einem Ausgang des Nicht-Maximum-Unterdrückung-Moduls und einem Eingang des Ausdehnungsschätzmoduls gekoppelt sein.
  • In dieser Weise wirkt das rekurrente neuronale Netzwerk-Modul als Speicherzelle zum Speichern von historischen Informationen, um das Ergebnis in der nächsten Sequenz vorherzusagen. Folglich können die ausgewählten Begrenzungsboxen effektiv verfolgt werden und die vorherigen verfolgten Begrenzungsboxen zusammen mit dem aktuellen Einzelbild und den Informationen, wie beschrieben, können verwendet werden, um die korrekten Begrenzungsboxen im aktuellen Einzelbild vorherzusagen. Folglich wird die Zuverlässigkeit der Fahrzeugerkennung weiter erhöht.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein computerimplementiertes Trainingsverfahren zum Trainieren eines Computer-Vision Algorithmus zur Fahrzeugerkennung bereitgestellt. Ein Lichterkennungsmodul des Computer-Vision Algorithmus wird auf ein Trainingseingangsbild, welches eine Umgebung eines Ego-Fahrzeugs darstellt, angewandt, um eine Lichtmerkmalskarte zu erzeugen, wobei die Lichtmerkmalskarte jeweilige Positionen einer Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten wenigstens eines Fahrzeugs in der Umgebung des Ego-Fahrzeugs definiert. Für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten wird eine betreffende Begrenzungsbox für das wenigstens eine Fahrzeug durch ein Ausdehnungsschätzmodul des Computer-Vision Algorithmus bestimmt. Wenigstens eine der Begrenzungsboxen wird durch ein Nicht-Maximum-Unterdrückung-Modul des Computer-Vision Algorithmus ausgewählt. Eine Verlustfunktion wird abhängig von der ausgewählten wenigstens einen der Begrenzungsboxen berechnet. Das Nicht-Maximum-Unterdrückung-Modul, das Ausdehnungsschätzmodul und wenigstens ein Teil des Lichterkennungsmoduls werden abhängig von der Verlustfunktion trainiert, werden beispielsweise abhängig von der Verlustfunktion trainiert, insbesondere gemeinsam.
  • Wenn nicht anders angegeben, können alle Schritte eines computerimplementierten Trainingsverfahrens gemäß der Erfindung durch wenigstens eine Trainingsrecheneinheit ausgeführt werden, die sich insbesondere außerhalb des Ego-Fahrzeugs befinden kann. Wenn ein computerimplementiertes Verfahren zur Fahrzeugerkennung gemäß der Erfindung ausgeführt wird, kann der Computer-Vision Algorithmus insbesondere vorher gemäß einem computerimplementierten Trainingsverfahren gemäß der Erfindung trainiert worden sein. In solchen Implementierungen kann das computerimplementierte Trainingsverfahren auch als Teil des computerimplementierten Verfahrens betrachtet werden, das jedoch durch die wenigstens eine Trainingsrecheneinheit anstelle der wenigstens einen Recheneinheit, insbesondere des Ego-Fahrzeugs, ausgeführt wird.
  • Das Training des Nicht-Maximum-Unterdrückung-Moduls, des Ausdehnungsschätzmoduls und wenigstens des Teils des Lichterkennungsmoduls kann im Allgemeinen gemäß einem bekannten Trainingsverfahren, insbesondere einem bekannten überwachten Trainingsverfahren, ausgeführt werden.
  • Abhängig von der tatsächlichen Implementierung des Computer-Vision Algorithmus können auch das Fluchtpunktschätzmodul und/oder das Validierungsmodul und/oder das rekurrente neuronale Netzwerk-Modul zusammen mit dem Nicht-Maximum-Unterdrückung-Modul, dem Ausdehnungsschätzmodul und wenigstens dem Teil des Lichterkennungsmoduls abhängig von der Verlustfunktion gemeinsam trainiert werden.
  • Abhängig von der tatsächlichen Implementierung des Computer-Vision Algorithmus beinhaltet der Teil des Lichterkennungsmoduls, der zusammen mit den anderen Modulen abhängig von der Verlustfunktion trainiert wird, das erste Encoderuntermodul und/oder das zweite Encoderuntermodul und/oder das Zusammenführungsuntermodul und/oder das Lichterkennungs-Decoderuntermodul.
  • Es wird angemerkt, dass die vorstehend für das computerimplementierte Trainingsverfahren beschriebenen Schritte nur eine einzelne Trainingsepoche des Trainingsverfahrens darstellen. Offensichtlich können mehrere Trainingsepochen in einer analogen Weise ausgeführt werden, um das Ergebnis des Trainings zu verbessern.
  • Gemäß mehreren Implementierungen des computerimplementierten Trainingsverfahrens wird ein Curriculum-Lernverfahren angewandt, um das Nicht-Maximum-Unterdrückung-Modul, das Ausdehnungsschätzmodul und wenigstens den Teil des Lichterkennungsmoduls abhängig von der Verlustfunktion zu trainieren.
  • Gemäß mehreren Implementierungen beinhaltet das Curriculum-Lernverfahren eine Maskierungs-und-Vorhersage-Strategie. Dabei werden während aufeinander folgender Trainingsepochen Objekte in den Trainingsbildern, insbesondere Fahrzeuge, fortschreitend maskiert, so dass das Netzwerk lernt, verschiedene Stufen der Verdeckung mit zunehmender Schwierigkeit zu handhaben.
  • In dieser Weise können auch teilweise verdeckte Kandidaten für Fahrzeugbeleuchtungseinheiten in einer zuverlässigen Weise bestimmt werden, wenn das Training vollendet ist.
  • Gemäß mehreren Implementierungen wird das Kantenerkennungsuntermodul des Lichterkennungsmoduls auf das Trainingseingangsbild angewandt, um eine Kantenmerkmalskarte zu erzeugen. Eine erste encodierte Merkmalskarte wird durch Anwenden des ersten Encoderuntermoduls des Lichterkennungsmoduls auf die Kantenmerkmalskarte erzeugt. Die Lichtmerkmalskarte wird durch das Lichterkennungs-Decoderuntermodul des Lichterkennungsmoduls abhängig von der ersten encodierten Merkmalskarte erzeugt. Das Nicht-Maximum-Unterdrückung-Modul, die Ausdehnungsschätzeinrichtung, das erste Encoderuntermodul und das Lichterkennungs-Decoderuntermodul werden abhängig von der Verlustfunktion trainiert, insbesondere gemeinsam trainiert.
  • Gemäß mehreren Implementierungen wird die zweite encodierte Merkmalskarte durch Anwenden des zweiten Encoderuntermoduls des Lichterkennungsmoduls auf das Trainingsbild erzeugt und die Lichtmerkmalskarte wird durch das Lichterkennungs-Decoderuntermodul abhängig von der zweiten encodierten Merkmalskarte erzeugt. Das Nicht-Maximum-Unterdrückung-Modul, das Ausdehnungsschätzmodul, das erste Encoderuntermodul, das zweite Encoderuntermodul und das Lichterkennungs-Decoderuntermodul werden abhängig von der Verlustfunktion trainiert, insbesondere gemeinsam trainiert.
  • Gemäß mehreren Implementierungen wird das Kantenerkennungsuntermodul während einer ersten Trainingsphase des computerimplementierten Trainingsverfahrens abhängig von einer weiteren Verlustfunktion trainiert. Das Nicht-Maximum-Unterdrückung-Modul, das Ausdehnungsschätzmodul, das erste Encoderuntermodul und das Lichterkennungs-Decoderuntermodul und gegebenenfalls das zweite Encoderuntermodul und/oder das Zusammenführungsuntermodul werden abhängig von der Verlustfunktion während einer zweiten Trainingsphase nach der ersten Trainingsphase trainiert. Insbesondere wird die erste Trainingsphase vollendet, bevor die zweite Trainingsphase beginnt.
  • Gemäß mehreren Implementierungen wird das Kantenerkennungs-Encoderuntermodul des Kantenerkennungsuntermoduls während der ersten Trainingsphase auf ein weiteres Trainingseingangsbild angewandt, um eine Bildmerkmalskarte zu erzeugen. Das Kantenerkennungs-Decoderuntermodul des Kantenerkennungsuntermoduls wird auf die Bildmerkmalskarte angewandt, um ein Bild mit erkannten Kanten zu erzeugen, das auch als Kantenmerkmalskarte bezeichnet werden kann. Ein Decodermodul zur semantischen Segmentierung wird auf die Bildmerkmalskarte angewandt, um ein segmentiertes Bild zu erzeugen. Die weitere Verlustfunktion wird abhängig von dem Bild mit erkannten Kanten und abhängig von dem segmentierten Bild berechnet. Das Kantenerkennungs-Encoderuntermodul und das Kantenerkennungs-Decoderuntermodul werden abhängig von der weiteren Verlustfunktion trainiert, insbesondere gemeinsam trainiert.
  • In solchen Implementierungen wird das Decodermodul zur semantischen Segmentierung, das gemäß einer bekannten Architektur für die semantische Segmentierung entworfen sein kann, als Hilfswerkzeug zum Trainieren der Kantenerkennungs-Encoder- und -Decoderuntermodule verwendet. Insbesondere ist das Decodermodul zur semantischen Segmentierung nach der ersten Trainingsphase für die zweite Trainingsphase oder für das computerimplementierte Verfahren zur Fahrzeugerkennung nicht mehr erforderlich. Durch Trainieren des Kantenerkennungs-Decoderuntermoduls mit dem Decodermodul zur semantischen Segmentierung kann jedoch die Leistung der Kantenerkennung verbessert werden, da eine größere Vielfalt von semantischen Bildpunktebeneninformationen für das Training berücksichtigt wird.
  • Weitere Implementierungen des computerimplementierten Trainingsverfahrens gemäß der Erfindung folgen direkt aus den verschiedenen Implementierungen des computerimplementierten Verfahrens zur Fahrzeugerkennung gemäß der Erfindung und umgekehrt.
  • Gemäß einem weiteren Aspekt der Erfindung wird auch ein Verfahren zum wenigstens teilweise automatischen Führen eines Ego-Fahrzeugs bereitgestellt. Dabei wird ein Eingangsbild, welches eine Umgebung des Ego-Fahrzeugs darstellt, mittels einer Kamera des Fahrzeugs erzeugt. Wenigstens ein Fahrzeug in der Umgebung des Ego-Fahrzeugs wird durch Ausführen eines computerimplementierten Verfahrens zur Fahrzeugerkennung gemäß der Erfindung, insbesondere durch wenigstens eine Recheneinheit des Ego-Fahrzeugs, erkannt. Wenigstens ein Steuersignal zum wenigstens teilweise automatischen Führen des Ego-Fahrzeugs wird, insbesondere durch die wenigstens eine Recheneinheit, abhängig von der ausgewählten wenigstens einen der Begrenzungsboxen für das wenigstens eine erkannte Fahrzeug in der Umgebung erzeugt.
  • Das wenigstens eine Steuersignal kann einem oder mehreren Aktuatoren des Ego-Fahrzeugs bereitgestellt werden, um die wenigstens teilweise automatische Führung des Ego-Fahrzeugs zu implementieren, beispielsweise durch Steuern oder Beeinflussen einer Quersteuerung und/oder einer Längssteuerung des Ego-Fahrzeugs.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein elektronisches Fahrzeugführungssystem für ein Ego-Fahrzeug bereitgestellt. Das elektronische Fahrzeugführungssystem beinhaltet eine Kamera, die dazu eingerichtet ist, ein Eingangsbild, welches eine Umgebung der Kamera, insbesondere des Ego-Fahrzeugs, falls die Kamera am Ego-Fahrzeug montiert ist, darstellt, zu erzeugen, und wenigstens eine Recheneinheit für das Ego-Fahrzeug. Die wenigstens eine Recheneinheit beinhaltet eine Speichereinheit, die einen Computer-Vision Algorithmus, insbesondere einen Computer-Vision Algorithmus, der gemäß einem computerimplementierten Trainingsverfahren gemäß der Erfindung trainiert ist oder trainiert wurde, speichert. Die wenigstens eine Recheneinheit ist dazu eingerichtet, den Computer-Vision Algorithmus auszuführen, und ist insbesondere dazu eingerichtet, ein computerimplementiertes Verfahren zur Fahrzeugerkennung gemäß der Erfindung unter Verwendung des Computer-Vision Algorithmus auszuführen.
  • Insbesondere ist die wenigstens eine Recheneinheit dazu eingerichtet, das Lichterkennungsmodul des Computer-Vision Algorithmus auf das Eingangsbild anzuwenden, um eine Lichtmerkmalskarte zu erzeugen, wobei die Lichtmerkmalskarte die jeweilige Position einer Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten wenigstens eines Fahrzeugs definiert, für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten eine betreffende Begrenzungsbox für das wenigstens eine Fahrzeug unter Verwendung des Ausdehnungsschätzmoduls des Computer-Vision Algorithmus zu bestimmen und wenigstens eine der Begrenzungsboxen unter Verwendung des Nicht-Maximum-Unterdrückung-Moduls des Computer-Vision Algorithmus auszuwählen. Die wenigstens eine Recheneinheit ist auch dazu eingerichtet, wenigstens ein Steuersignal zum wenigstens teilweise automatischen Führen des Fahrzeugs abhängig von der ausgewählten wenigstens einen der Begrenzungsboxen zu erzeugen.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein erstes Computerprogramm mit ersten Befehlen bereitgestellt. Wenn die ersten Befehle durch ein Computersystem, beispielsweise durch ein Universalcomputersystem oder durch wenigstens eine Recheneinheit des elektronischen Fahrzeugführungssystems gemäß der Erfindung, ausgeführt werden, bewirken die ersten Befehle, dass das Computersystem ein computerimplementiertes Verfahren zur Fahrzeugerkennung gemäß der Erfindung ausführt.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein zweites Computerprogramm mit zweiten Befehlen bereitgestellt. Wenn die zweiten Befehle durch ein weiteres Computersystem, beispielsweise durch ein weiteres Universalcomputersystem, ausgeführt werden, bewirken die zweiten Befehle, dass das weitere Computersystem ein computerimplementiertes Trainingsverfahren gemäß der Erfindung ausführt.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein drittes Computerprogramm mit dritten Befehlen bereitgestellt. Wenn die dritten Befehle durch ein elektronisches Fahrzeugführungssystem gemäß der Erfindung, insbesondere durch die wenigstens eine Recheneinheit des elektronischen Fahrzeugführungssystems, ausgeführt werden, bewirken die dritten Befehle, dass das elektronische Fahrzeugführungssystem ein Verfahren zum wenigstens teilweise automatischen Führen eines Ego-Fahrzeugs gemäß der Erfindung ausführt.
  • Gemäß einem weiteren Aspekt der Erfindung wird ein computerlesbares Speichermedium, das ein erstes Computerprogramm und/oder ein zweites Computerprogramm und/oder ein drittes Computerprogramm gemäß der Erfindung speichert, bereitgestellt.
  • Computer-Vision Algorithmen, die auch als Maschinen-Vision Algorithmen oder Algorithmen für die automatische visuelle Wahrnehmung bezeichnet werden können, können als computerimplementierte Algorithmen zum automatischen Durchführen einer visuellen Wahrnehmungsaufgabe betrachtet werden. Eine visuelle Wahrnehmungsaufgabe, die auch als Computer-Vision Aufgabe bezeichnet wird, kann beispielsweise als Aufgabe zum Extrahieren von visuellen Informationen aus Bilddaten verstanden werden. Insbesondere kann die visuelle Wahrnehmungsaufgabe im Prinzip durch einen Menschen ausgeführt werden, der ein Bild, das den Bilddaten entspricht, visuell wahrnehmen kann. Im vorliegenden Zusammenhang werden jedoch visuelle Wahrnehmungsaufgaben automatisch durchgeführt, ohne die Unterstützung eines Menschen zu erfordern.
  • Ein Computer-Vision Algorithmus kann beispielsweise als Bildverarbeitungsalgorithmus oder Algorithmus für die Bildanalyse verstanden werden, der unter Verwendung von Maschinenlernen trainiert ist und beispielsweise auf einem künstlichen neuronalen Netzwerk, insbesondere einem faltenden neuronalen Netzwerk, basieren kann.
  • Der Computer-Vision Algorithmus kann beispielsweise einen Objekterkennungsalgorithmus, einen Hinderniserkennungsalgorithmus, einen Objektverfolgungsalgorithmus, einen Klassifizierungsalgorithmus und/oder einen Segmentierungsalgorithmus beinhalten.
  • Ein Objekterkennungsalgorithmus kann als Computer-Vision Algorithmus verstanden werden, der ein oder mehrere Objekte innerhalb eines bereitgestellten Eingangsbildes durch Festlegen von betreffenden Begrenzungsboxen und/oder Zuweisen einer jeweiligen Objektklasse zu jeder der Begrenzungsboxen identifizieren kann, wobei die Objektklassen aus einer vordefinierten Menge von Objektklassen ausgewählt sein können. Das Zuweisen einer Objektklasse zu einer Begrenzungsbox kann dabei derart verstanden werden, dass ein entsprechender Konfidenzwert oder eine entsprechende Wahrscheinlichkeit für das innerhalb der Begrenzungsbox identifizierte Objekt, das von der entsprechenden Objektklasse ist, bereitgestellt wird. Der Algorithmus kann beispielsweise einen solchen Konfidenzwert oder eine solche Wahrscheinlichkeit für jede der Objektklassen für eine gegebene Begrenzungsbox bereitstellen. Das Zuweisen der Objektklasse kann beispielsweise das Auswählen oder Bereitstellen der Objektklasse mit dem größten Konfidenzwert oder der größten Wahrscheinlichkeit beinhalten. Alternativ kann der Algorithmus nur die Begrenzungsboxen angeben, ohne eine entsprechende Objektklasse zuzuweisen.
  • Der Computer-Vision Algorithmus kann als Software mit den vorstehend beschriebenen verschiedenen Modulen und Untermodulen verstanden werden, soweit in den jeweiligen Ausführungsformen anwendbar. Ein Modul des Computer-Vision Algorithmus kann als Softwaremodul verstanden werden. Insbesondere kann das Softwaremodul auf Hardware, insbesondere der wenigstens einen Recheneinheit, implementiert oder gespeichert sein.
  • Ein Softwaremodul kann als Teil eines Softwarecodes verstanden werden, der funktional verbunden und zu einer Einheit kombiniert ist. Ein Softwaremodul kann mehrere Verarbeitungsschritte und/oder Datenstrukturen beinhalten oder implementieren. Ein Verfahrensschritt zum Bereitstellen eines Softwaremoduls kann so verstanden werden, dass er die Bereitstellung eines jeweiligen Softwarecodes in einer computerlesbaren Weise auf einem computerlesbaren Speichermedium beinhaltet.
  • Eine Recheneinheit kann insbesondere als Datenverarbeitungsvorrichtung verstanden werden. Die Recheneinheit kann daher insbesondere Daten verarbeiten, um Rechenoperationen durchzuführen. Dies kann auch Operationen beinhalten, um indizierte Zugriffe auf eine Datenstruktur, beispielsweise eine Nachschlagetabelle, LUT, durchzuführen.
  • Insbesondere kann die Recheneinheit einen oder mehrere Computer, einen oder mehrere Mikrocontroller und/oder einen oder mehrere integrierte Schaltkreise, beispielsweise einen oder mehrere anwendungsspezifische integrierte Schaltkreise, ASIC, ein oder mehrere anwenderprogrammierbare Verknüpfungsfelder, FPGA, und/oder ein oder mehrere Systeme auf einem Chip, SoC, beinhalten. Die Recheneinheit kann auch einen oder mehrere Prozessoren, beispielsweise einen oder mehrere Mikroprozessoren, eine oder mehrere Zentraleinheiten, CPU, eine oder mehrere Graphikverarbeitungseinheiten, GPU, und/oder einen oder mehrere Signalprozessoren, insbesondere einen oder mehrere Digitalsignalprozessoren, DSP, beinhalten. Die Recheneinheit kann auch einen physikalischen oder virtuellen Cluster von Computern oder anderen der Einheiten beinhalten.
  • In verschiedenen Ausführungsformen beinhaltet die Recheneinheit eine oder mehrere Hardware- und/oder Softwareschnittstellen und/oder eine oder mehrere Speichereinheiten.
  • Eine Speichereinheit kann als flüchtiger Datenspeicher, beispielsweise dynamischer Direktzugriffsspeicher, DRAM, oder statischer Direktzugriffsspeicher, SRAM, oder als nichtflüchtiger Datenspeicher, beispielsweise Festwertspeicher, ROM, programmierbarer Festwertspeicher, PROM, löschbarer Festwertspeicher, EPROM, elektrisch löschbarer Festwertspeicher, EEPROM, Flash-Speicher oder Flash-EEPROM, ferroelektrischer Direktzugriffsspeicher, FRAM, magnetoresistiver Direktzugriffsspeicher, MRAM, oder Phasenänderungsdirektzugriffsspeicher, PCRAM, implementiert werden.
  • Ein elektronisches Fahrzeugführungssystem kann als elektronisches System verstanden werden, das dazu eingerichtet ist, ein Fahrzeug in einer vollständig automatisierten oder einer vollständig autonomen Weise und insbesondere, ohne dass ein manueller Eingriff oder eine Steuerung durch einen Fahrer oder Benutzer des Fahrzeugs erforderlich ist, zu führen. Das Fahrzeug führt alle erforderlichen Funktionen wie zum Beispiel Lenkmanöver, Verlangsamungsmanöver und/oder Beschleunigungsmanöver sowie die Überwachung und Aufzeichnung des Straßenverkehrs und entsprechende Reaktionen automatisch aus. Insbesondere kann das elektronische Fahrzeugführungssystem einen vollständig automatischen oder vollständig autonomen Fahrmodus gemäß der Ebene 5 der Klassifikation SAE J3016 implementieren. Ein elektronisches Fahrzeugführungssystem kann auch als fortschrittliches Fahrerassistenzsystem, ADAS, das einen Fahrer zum teilweise automatischen oder teilweise autonomen Fahren unterstützt, implementiert sein. Insbesondere kann das elektronische Fahrzeugführungssystem einen teilweise automatischen oder teilweise autonomen Fahrmodus gemäß den Ebenen 1 bis 4 der Klassifikation SAE J3016 implementieren. Hier und im Folgenden bezieht sich SAE J3016 auf den jeweiligen Standard mit Datum vom Juni 2018.
  • Das wenigstens teilweise automatische Führen des Fahrzeugs kann daher das Führen des Fahrzeugs gemäß einem vollständig automatischen oder vollständig autonomen Fahrmodus gemäß der Ebene 5 der Klassifikation SAE J3016 beinhalten. Das wenigstens teilweise automatische Führen des Fahrzeugs kann auch das Führen des Fahrzeugs gemäß einem teilweise automatischen oder teilweise autonomen Fahrmodus gemäß den Ebenen 1 bis 4 der Klassifikation SAE J3016 beinhalten.
  • Weitere Merkmale der Erfindung sind aus den Ansprüchen, den Figuren und der Figurenbeschreibung ersichtlich. Die vorstehend in der Beschreibung erwähnten Merkmale und Merkmalskombinationen sowie die nachstehend in der Figurenbeschreibung erwähnten und/oder in den Figuren gezeigten Merkmale und Merkmalskombinationen können von der Erfindung nicht nur in der jeweiligen angegebenen Kombination, sondern auch in anderen Kombinationen enthalten sein. Insbesondere sind Ausführungsformen und Merkmalskombinationen, die nicht alle Merkmale eines ursprünglich formulierten Anspruchs aufweisen, auch von der Erfindung enthalten. Überdies sind Ausführungsformen und Merkmalskombinationen, die über die in den Rezitationen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von diesen abweichen, von der Erfindung enthalten.
  • Im Folgenden wird die Erfindung mit Bezug auf spezielle beispielhafte Implementierungen und jeweilige schematische Zeichnungen im Einzelnen erläutert. In den Zeichnungen können identische oder funktional identische Elemente mit denselben Bezugszeichen bezeichnet sein. Die Beschreibung von identischen oder funktional identischen Elementen wird mit Bezug auf verschiedene Figuren nicht notwendigerweise wiederholt.
  • In den Figuren gilt:
    • 1 zeigt schematisch ein Kraftfahrzeug mit einer beispielhaften Implementierung eines elektronischen Fahrzeugführungssystems gemäß der Erfindung;
    • 2 zeigt ein schematisches Blockdiagramm eines Computer-Vision Algorithmus zur Verwendung in einer beispielhaften Implementierung eines computerimplementierten Verfahrens zur Fahrzeugerkennung gemäß der Erfindung;
    • 3 zeigt schematisch ein Bild mit einem Fluchtpunkt;
    • 4 zeigt schematisch eine Auswahl einer Begrenzungsbox aus einer Vielzahl von Begrenzungsboxen;
    • 5 zeigt ein Blockdiagramm eines in einer zweiten Trainingsphase einer beispielhaften Implementierung eines computerimplementierten Trainingsverfahrens gemäß der Erfindung zu trainierenden Computer-Vision Algorithmus; und
    • 6 zeigt einen Teil des in einer ersten Trainingsphase gemäß einer weiteren beispielhaften Implementierung eines computerimplementierten Trainingsverfahrens gemäß der Erfindung zu trainierenden Computer-Vision Algorithmus.
  • 1 zeigt schematisch ein Kraftfahrzeug, das im Folgenden auch als Ego-Fahrzeug 1 bezeichnet wird, das eine beispielhafte Implementierung eines elektronischen Fahrzeugführungssystems 2 gemäß der Erfindung aufweist.
  • Das Fahrzeugführungssystem 2 beinhaltet eine Kamera 3, beispielsweise eine Frontkamera, die an dem Ego-Fahrzeug 1 montiert ist, und eine Recheneinheit 4, die beispielsweise als elektronisches Steuergerät, ECU, oder als Teil eines ECU des Ego-Fahrzeugs 1, implementiert sein kann. Die Recheneinheit 4 beinhaltet eine Speichereinheit (nicht gezeigt), die einen Computer-Vision Algorithmus 6 speichert, wie im Blockdiagramm von 2 dargestellt.
  • Der Computer-Vision Algorithmus 6 wurde insbesondere gemäß einem computerimplementierten Trainingsverfahren gemäß der Erfindung trainiert. Folglich kann das elektronische Fahrzeugführungssystem 2 ein Verfahren zum wenigstens teilweise automatischen Führen des Ego-Fahrzeugs 1 ausführen. Dazu erzeugt die Kamera 3 ein Eingangsbild 5, welches eine Umgebung des Ego-Fahrzeugs darstellt, und die Recheneinheit 4 empfängt das Eingangsbild 5 von der Kamera 3 und führt ein computerimplementiertes Verfahren zur Fahrzeugerkennung gemäß der Erfindung durch Anwenden des trainierten Computer-Vision Algorithmus 6 aus. Ferner erzeugt die Recheneinheit 4 eines oder mehrere Steuersignale zum automatischen oder teilweise automatischen Führen des Ego-Fahrzeugs 1. Dazu kann die Recheneinheit 4 die Steuersignale einem oder mehreren Aktuatoren (nicht gezeigt) des Ego-Fahrzeugs 1 bereitstellen, um eine Quer- und/oder Längssteuerung des Ego-Fahrzeugs automatisch oder teilweise automatisch zu implementieren.
  • Es wird angemerkt, dass die Funktionalität der Recheneinheit 4 in einigen Implementierungen auch auf zwei oder mehr Recheneinheiten oder ECUs des Ego-Fahrzeugs 1 beziehungsweise des elektronischen Fahrzeugführungssystems 2 verteilt sein kann.
  • Das computerimplementierte Verfahren zur Fahrzeugerkennung wird mit Bezug auf 2 genauer beschrieben, die ein Blockdiagramm einer beispielhaften Implementierung eines Computer-Vision Algorithmus 6 zeigt, nachdem er trainiert wurde.
  • Der Computer-Vision Algorithmus 6 beinhaltet ein Lichterkennungsmodul 7, ein Ausdehnungsschätzmodul 8 und ein Nicht-Maximum-Unterdrückung-Modul 9. Die Recheneinheit 4 wendet das Lichterkennungsmodul 7 auf das Eingangsbild 5 an, das durch die Kamera 3 erzeugt wird, und erzeugt eine Lichtmerkmalskarte, die jeweilige Positionen einer Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten 23, 24 wenigstens eines Fahrzeugs 22 in der Umgebung des Ego-Fahrzeugs 1 definiert, wie in 4 angegeben.
  • Das Ausdehnungsschätzmodul 8 erzeugt eine betreffende Begrenzungsbox 25, 26, 27 für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten und stellt die Begrenzungsboxen 25, 26, 27 dem Nicht-Maximum-Unterdrückung-Modul 9 bereit. Das Nicht-Maximum-Unterdrückung-Modul 9 führt einen Nicht-Maximum-Unterdrückung-Algorithmus aus, um wenigstens eine der Begrenzungsboxen 25, 26, 27 auszuwählen, die durch das Ausdehnungsschätzmodul bereitgestellt werden. In dem Beispiel von 4 wird die Begrenzungsbox 25 aus den Begrenzungsboxen 25, 26, 27 durch das Nicht-Maximum-Unterdrückung-Modul 9 ausgewählt.
  • Um die Lichtmerkmalskarte zu erzeugen, kann das Lichterkennungsmodul 7 beispielsweise wenigstens ein Encoderuntermodul 11, 12 beinhalten, das auf das Eingangsbild 5 oder auf eine vorverarbeitete Version des Eingangsbildes 5 angewandt wird. Das Lichterkennungsmodul 7 kann auch ein Lichterkennungs-Decoderuntermodul 14 beinhalten, das die Lichtmerkmalskarte abhängig von der Ausgabe des wenigstens einen Encoderuntermoduls 11, 12 erzeugt.
  • In dem Beispiel von 2 beinhaltet das Lichterkennungsmodul 7 ein erstes Encoderuntermodul 11 und ein zweites Encoderuntermodul 12. Ferner beinhaltet das Lichterkennungsmodul 7 ein Kantenerkennungsuntermodul 10 und ein Zusammenführungsuntermodul 13.
  • Im Allgemeinen können das erste und das zweite Encoderuntermodul 11, 12 eine Reihe von Faltungsschichten zur tiefen Merkmalsextraktion beinhalten. Je tiefer die Struktur des jeweiligen Encoderuntermoduls 11, 12 ist, desto besser sind die erhaltenen Merkmale. Der Typ der Encoderuntermodule 11, 12 kann gegebenenfalls auf der Basis der Einschränkungen der eingebetteten Plattform ausgewählt werden.
  • Standardencoderfamilien wie zum Beispiel RESNET, VGG, Inception, und so weiter können verwendet werden.
  • Das Eingangsbild 5 wird dem Kantenerkennungsuntermodul 10 bereitgestellt, das einen Kantenerkennungsalgorithmus ausführt, um eine Kantenmerkmalskarte auf der Basis des Eingangsbildes 5 zu erzeugen, und die Kantenmerkmalskarte dem ersten Encoderuntermodul 11 bereitstellt, das die Kantenmerkmalskarte unter Verwendung von einer oder mehreren Faltungsschichten encodiert, um eine erste encodierte Merkmalskarte zu erzeugen. Parallel wird das Eingangsbild 5 auch dem zweiten Encoderuntermodul 12 bereitgestellt, das das Eingangsbild 5 direkt encodiert und eine zweite encodierte Merkmalskarte erzeugt. Das Zusammenführungsuntermodul 13 empfängt die erste und die zweite encodierte Merkmalskarte und führt sie zusammen, beispielsweise mittels Mittelwertbildung, Summierung oder Verkettung, um eine zusammengeführte encodierte Merkmalskarte zu erzeugen. Das Lichterkennungs-Decoderuntermodul 14 wird auf die zusammengeführte encodierte Merkmalskarte angewandt, um die Lichtmerkmalskarte zu erzeugen.
  • In einigen Implementierungen beinhaltet der Computer-Vision Algorithmus 6 auch ein Fluchtpunktschätzmodul 15, das die zusammengeführte encodierte Merkmalskarte parallel zum Lichterkennungs-Decoderuntermodul 14 empfängt und eine Fluchtpunkt-Regressionsoperation abhängig von der zusammengeführten encodierten Merkmalskarte ausführt. Folglich wird eine Fluchtpunktmerkmalskarte durch das Fluchtpunktschätzmodul 15 erzeugt und zusammen mit der Lichtmerkmalskarte vom Lichterkennungs-Decoderuntermodul 14 dem Validierungsmodul 16 bereitgestellt. Das Validierungsmodul 16 validiert dann die Vielzahl von Kandidaten für die Beleuchtungseinheiten 23, 24 und stellt folglich dem Ausdehnungsschätzmodul eine validierte Menge von Kandidaten bereit.
  • Wenn die Kandidaten für die Beleuchtungseinheiten 23, 24 mittels des Lichterkennungs-Decoderuntermoduls 14 erkannt wurden, werden die aktuellen Kandidaten für Fahrzeugbeleuchtungseinheiten 23, 24 daher von anderen Lichtquellen, beispielsweise Straßenlaternen, mittels der durch das Fluchtpunktschätzmodul 15 ausgeführten Fluchtpunktregression und der anschließenden Validierung durch das Validierungsmodul 16 gefiltert oder unterschieden.
  • Wie in 3 angegeben, kann ein Fluchtpunkt 19 eines Bildes 18 als Punkt in der Bildebene betrachtet werden, an dem zweidimensionale perspektivische Projektionen von tatsächlich zueinander parallelen konvergierenden Linien 20 im Bild 18 zu konvergieren scheinen. Der Fluchtpunkt 19 liegt typischerweise nahe einem Horizont 21 im Bild 18.
  • Wenn der Abstand eines Punkts P von der horizontalen Achse 21 mit D(P) bezeichnet wird, haben die Erfinder beobachtet, dass in fast allen realistischen Straßenszenarios die folgenden Beziehungen gelten: D ( P V ) < D ( P L ) und D ( P V ) > D ( P SL ) ,
    Figure DE102021129832A1_0001
    wobei Pv den Fluchtpunkt 19 bezeichnet, PL die Position einer Beleuchtungseinheit 23, 24 eines Fahrzeugs 22 bezeichnet und PSL die Position einer Straßenlaterne bezeichnet. Mit Hilfe dieser Beziehungen können die Fahrzeugbeleuchtungseinheiten 23, 24 von Straßenlaternen oder anderen Lichtquellen unterschieden werden. Die Beziehungen erläutern das Konzept dessen, wie das Validierungsmodul 16 die anderen Lichtquellen aus den potentiellen Kandidaten für Beleuchtungseinheiten des Fahrzeugs 22 herausfiltern kann. Diese Beziehungen gelten jedoch nicht in allen Fällen. Daher verwendet das Validierungsmodul 16 eine oder mehrere Faltungs- und/oder Entfaltungsschichten, um die Beziehungen und optional anderer Merkmale, die helfen, zwischen Beleuchtungseinheiten von Fahrzeugen 22 und anderen Lichtquellen zu unterscheiden, effektiv zu lernen.
  • Dann kann das Ausdehnungsschätzmodul 8 die Ausdehnung des Fahrzeugs 22 durch Schätzen eines Bereichs von Interesse oder einer Begrenzungsbox 25, 26, 27 für das Fahrzeug 22 für jeden validierten Kandidaten schätzen. Das Nicht-Maximum-Unterdrückung-Modul 9 kann dann die schlechteren Vorschläge der Begrenzungsboxen herausfiltern, um eine Begrenzungsbox 25 als Ergebnis des Computer-Vision Algorithmus 6 auszuwählen.
  • In einigen Implementierungen beinhaltet der Computer-Vision Algorithmus 6 ein Modul 17 mit langem Kurzzeitgedächtnis, LSTM, das an einem Eingang mit einem Ausgang des Nicht-Maximum-Unterdrückung-Moduls 9 und an einem Ausgang mit einem Eingang des Ausdehnungsschätzmoduls 8 gekoppelt ist. Um den Bereich von Interesse im aktuellen Einzelbild zu schätzen, wird daher der Bereich von Interesse des vorherigen Einzelbildes durch das Ausdehnungsschätzmodul berücksichtigt. Der Bereich von Interesse des vorherigen Einzelbildes wird mit Hilfe des LSTM-Moduls 17 verfolgt.
  • Die Recheneinheit 4 kann das eine oder die mehreren Steuersignale für die Aktuatoren abhängig von der ausgewählten Begrenzungsbox 25 erzeugen, die vom Computer-Vision Algorithmus 6 erhalten wird.
  • In 5 und 6 sind zwei Stufen zum Trainieren des Computer-Vision Algorithmus 6 gemäß einer beispielhaften Implementierung eines computerimplementierten Trainingsverfahrens gemäß der Erfindung gezeigt.
  • Die Struktur des Computer-Vision Algorithmus 6, die in 5 gezeigt ist, entspricht der Struktur des trainierten Computer-Vision Algorithmus 6, die in 2 gezeigt ist. Optional kann ein Maskierungs-und-Vorhersage-Modul 28 vorgesehen sein.
  • Das Training des Computer-Vision Algorithmus 6 kann in zwei Stufen ausgeführt werden. Während einer ersten Stufe kann das Kantenerkennungsuntermodul 10 trainiert werden. Nachdem das Training des Kantenerkennungsuntermoduls 10 beendet ist, können die restlichen Untermodule des Lichterkennungsmoduls 7 sowie die anderen Module des Computer-Vision Algorithmus 6 in einer zweiten Stufe trainiert werden.
  • In der ersten Stufe kann das Kantenerkennungsuntermodul 10 mittels Multitask-Lernen trainiert werden. Anstatt nur die Kantenerkennung zu lernen, kann somit die Kantenerkennung zusammen mit der semantischen Segmentierung gelernt werden, um die Leistung der Kantenerkennung zu verbessern.
  • Die Fahrzeugerkennung in lichtarmen Szenarios ist anspruchsvoller als wenn ausreichend Licht verfügbar ist, da viele Merkmale wie Farbe oder Textur schwierig zu extrahieren sind. Daher sind die Kanteninformationen des Bildes eines der wichtigsten Merkmale zum Erkennen von Fahrzeugen in lichtarmen Szenarios. In 6 wird ein Kantenerkennungs-Encoderuntermodul 29 auf ein Trainingseingangsbild 5" angewandt, um Merkmale zu extrahieren. Ein Kantenerkennungs-Decoderuntermodul 30 wird auf die extrahierten Merkmale angewandt, um eine Kantenerkennungsmaske oder Kantenmerkmalskarte zu erzeugen. Ein Decodermodul 31 zur semantischen Segmentierung wird auf die extrahierten Merkmale parallel angewandt, um eine Segmentierungsmaske oder Segmentierungsmerkmalskarte zu erzeugen. Die Ground Truth für die Kantenerkennung wird beispielsweise mit einem Canny-Kantenerkennungsalgorithmus erzeugt.
  • Zum Berechnen eines Verlusts L = Ls + Le kann eine bildpunktweise Kreuzentropie für jede Aufgabe berechnet werden L s = y s t log ( y s p ) N
    Figure DE102021129832A1_0002
    L e = y e t log ( y e p ) N ,
    Figure DE102021129832A1_0003
    wobei die Doppelsummen über die Bildpunkte des Trainingseingangsbildes 5" und die jeweiligen Klassen laufen. N bezeichnet die Anzahl von Bildpunkten des Trainingseingangsbildes 5", yst und yet bezeichnen die jeweiligen Ground-Truth-Werte, ysp und yep bezeichnen die jeweiligen vorhergesagten Werte. Für die semantische Segmentierung kann eine Vielzahl von Klassen betrachtet werden, während für die Kantenerkennung nur zwei Klassen vorhanden sind, eine Klasse für Kantenbildpunkte und eine Klasse für Nicht-Kanten-Bildpunkte. Das Modell wird durch Optimieren des Gesamtverlusts L optimiert. Durch Optimieren für beide Aufgaben wird das resultierende Kantenerkennungsmodell robuster gemacht. Nach der ersten Trainingsstufe kann das Segmentierungs-Decodermodul 31 verworfen werden und das Kantenerkennungs-Decoderuntermodul 30 dient zusammen mit dem Kantenerkennungs-Encoder als Kantenerkennungsuntermodul 10.
  • Die zweite Stufe ist durch 5 dargestellt. In dieser Stufe kann Curriculum-Lernen verwendet werden. Curriculum-Lernen ist ein Trainingsverfahren, das darauf abzielt, die Komplexität der Daten, die dem neuronalen Netzwerk zugeführt werden, allmählich zu erhöhen. Die Hauptidee besteht darin, zuerst unter Verwendung von einfacheren Objekten zu trainieren und allmählich das Schwierigkeitsniveau des Objekts zu erhöhen. In vielen realistischen Szenarios kann das Fahrzeug 22 durch andere Objekte verdeckt sein. Um dies anzugehen, kann das Maskierungs-und-Vorhersage-Modul 28 verwendet werden. Maskierung-und-Vorhersage ist eine spezielle Strategie beim Curriculum-Lernen, bei der der Fahrzeugbereich fortschreitend maskiert wird und erwartet wird, dass das Netzwerk Boxen mit den sichtbaren und maskierten Bereichen vorhersagt. Es kann verwendet werden, um teilweise sichtbare und teilweise verdeckte Fahrzeuge zu handhaben. Anstatt das Trainingseingangsbild 5' direkt dem Lichterkennungsmodul 7 zuzuführen, wird somit ein vorverarbeitetes Bild, das durch das Maskierungs-und-Vorhersage-Modul 28 auf der Basis des Trainingseingangsbildes 5' erzeugt wird, bereitgestellt. Der Grad der Verdeckung wird allmählich erhöht, beispielsweise können die Fahrzeuge mit einer zunehmenden Wahrscheinlichkeit maskiert werden. Während das Training fortschreitet, nimmt somit die Wahrscheinlichkeit der Maskierung zu, was zu schwierigeren Trainingsmustern führt, und das Netzwerk lernt die Begrenzungsboxen auch für verdeckte Fahrzeuge. Um das Modell robuster zu machen, kann man auch den Grad der Zufälligkeit durch Wählen von verschiedenen Formen einer zufälligen Maskierung erhöhen.
  • Das maskierte Bild wird parallel dem ersten und dem zweiten Encoderuntermodul 11, 12 zugeführt. Die durch diese extrahierten Merkmale werden an eine Zusammenführungsschicht des Zusammenführungsuntermoduls 13 übergeben. In der Zusammenführungsschicht werden die aus dem maskierten Bild und dem maskierten Bild mit extrahierten Kanten extrahierten Informationen zusammengeführt. Zusammenführungsblöcke können sich die durch verschiedene Faltungsschichten erhaltenen Merkmale teilen, um wertvolle Informationen vollständig auszunutzen. Die Merkmale werden dann an das Lichterkennungs-Decoderuntermodul 14 und das Fluchtpunktschätzmodul 15 übergeben.
  • Die Fluchtpunktinformationen sind in lichtarmen Szenarios zum Unterscheiden zwischen Straßenlaternen und Fahrzeugbeleuchtungseinheiten besonders nützlich. In den meisten Szenarios wird beobachtet, dass die Straßenlaternen in der Bildebene über dem Fluchtpunkt liegen. Folglich kann das Validierungsmodul 16 Fahrzeuglichter extrahieren und verwirft Straßenlaternen. Die erhaltenen validierten Kandidaten für die Beleuchtungseinheiten werden dann an das Ausdehnungsschätzmodul 8 zum Vorhersagen der Begrenzungsboxen 25, 26, 27 für das Fahrzeug 22 übergeben, die jeweils einem erkannten Scheinwerfer oder einer erkannten Heckleuchte entsprechen. Danach kann man eine dichte Menge von vorhergesagten Begrenzungsboxen erhalten, so dass das Nicht-Maximum-Unterdrückung-Modul 9 angewandt wird, um eine spezielle Begrenzungsbox auszuwählen. Da es in lichtarmen Szenarios schwierig ist, die Ausdehnung eines Fahrzeugs vorherzusagen, wird eine Schleife vorgeschlagen, wobei die Fahrzeugausdehnung iterativ durch das Ausdehnungsschätzmodul 8 geschätzt wird.
  • In der zweiten Trainingsphase kann überwachtes Trainieren verwendet werden. Die Ground-Truth-Annotation kann beispielsweise auf der Basis von Lidar- und/oder Radardaten erhalten werden.
  • Wie beschrieben, insbesondere mit Bezug auf die Figuren, stellt die Erfindung eine besonders robuste und zuverlässige Methode zur Fahrzeugerkennung in lichtarmen Szenarios bereit. In lichtarmen Szenarios sind die auffälligsten sichtbaren Merkmale eines Fahrzeugs seine Scheinwerfer und/oder Heckleuchten. Die Erfindung verwendet diese Informationen zur Fahrzeugerkennung.
  • Nach dem Erkennen der Fahrzeugbeleuchtungseinheiten können beispielsweise die Merkmale um die erkannten Beleuchtungseinheiten gelernt werden, um die Fahrzeugausdehnungen zu schätzen. Nach der Zusammenführung der Merkmale können sie an das Lichterkennungsmodul übergeben werden. Das Lichterkennungsmodul kann eine Reihe von CNN-Schichten beinhalten, die die Position von Licht im Bild bestimmen.
  • Während Standarderkennungseinrichtungen in lichtarmen Situationen versagen können, stellt die Erfindung eine verbesserte Weise bereit, um solche Situationen zu handhaben. Einige Implementierungen machen von Kantenhinweisen und Beleuchtungseinheitserkennung Gebrauch, um die lichtarme Erkennungsleistung zu verbessern. Einige Implementierungen machen von der LSTM-Verfolgung innerhalb des Modells Gebrauch, um die Konfidenz von Erkennungen zu verbessern. Einige Implementierungen machen von globalem Kontext unter Verwendung von Einschränkungen hinsichtlich Fluchtpunkten und/oder der Horizontlinie Gebrauch, um falsch Positive von Straßenlaternen zu verringern.

Claims (15)

  1. Computer-implementiertes Verfahren zur Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus (6), dadurch gekennzeichnet, dass - ein Lichterkennungsmodul (7) des Computer-Vision Algorithmus (6) auf ein Eingangsbild (5), welches eine Umgebung eines Ego-Fahrzeugs (1) darstellt, angewandt wird, um eine Lichtmerkmalskarte zu erzeugen, wobei die Lichtmerkmalskarte jeweilige Positionen einer Vielzahl von Kandidaten für Beleuchtungseinheiten (23, 24) wenigstens eines Fahrzeugs (22) definiert; - für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten mittels eines Ausdehnungsschätzmoduls (8) des Computer-Vision Algorithmus (6) eine betreffende Begrenzungsbox (25, 26, 27) für das wenigstens eine Fahrzeug (22) bestimmt wird; und - wenigstens eine der Begrenzungsboxen (25, 26, 27) mittels eines Nicht-Maximum-Unterdrückung-Moduls (9) des Computer-Vision Algorithmus (6) ausgewählt wird.
  2. Computerimplementiertes Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass - für eine erste Untermenge der Vielzahl von Kandidaten eine jeweilige erste Begrenzungsbox (25, 26, 27) für ein erstes Fahrzeug des wenigstens einen Fahrzeugs (22) durch das Ausdehnungsschätzmodul (8) bestimmt wird und eine der ersten Begrenzungsboxen (25, 26, 27) durch das Nicht-Maximum-Unterdrückung-Modul (9) ausgewählt wird; und/oder - für eine zweite Untermenge der Vielzahl von Kandidaten eine jeweilige zweite Begrenzungsbox für ein zweites Fahrzeug des wenigstens einen Fahrzeugs (22) durch das Ausdehnungsschätzmodul (8) bestimmt wird und eine der zweiten Begrenzungsboxen durch das Nicht-Maximum-Unterdrückung-Modul (9) ausgewählt wird.
  3. Computerimplementiertes Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass - ein Fluchtpunkt (19) des Eingangsbildes (5) durch ein Fluchtpunktschätzmodul (15) des Computer-Vision Algorithmus (6) geschätzt wird; - eine validierte Menge von Kandidaten durch ein Validierungsmodul (16) des Computer-Vision Algorithmus (6) abhängig von der Lichtmerkmalskarte und eines Ergebnisses der Schätzung des Fluchtpunkts (19) bestimmt wird; und - die betreffende Begrenzungsbox für das wenigstens eine Fahrzeug (22) durch das Ausdehnungsschätzmodul (8) für jeden von wenigstens einer Untermenge der validierten Menge von Kandidaten bestimmt wird.
  4. Computerimplementiertes Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass - eine Fluchtpunktmerkmalskarte mittels des Fluchtpunktschätzmoduls (15) durch Ausführen einer Fluchtpunkt-Regressionsoperation erzeugt wird; und - die validierte Menge von Kandidaten durch das Validierungsmodul (16) abhängig von der Lichtmerkmalskarte und der Fluchtpunktmerkmalskarte bestimmt wird.
  5. Computerimplementiertes Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass - ein Kantenerkennungsuntermodul (10) des Lichterkennungsmoduls (7) auf das Eingangsbild (5) angewandt wird, um eine Kantenmerkmalskarte zu erzeugen; - eine erste encodierte Merkmalskarte durch Anwenden eines ersten Encoderuntermoduls (11) des Lichterkennungsmoduls (7) auf die Kantenmerkmalskarte erzeugt wird; und - die Lichtmerkmalskarte durch ein Lichterkennungs-Decoderuntermodul (14) des Lichterkennungsmoduls (7) abhängig von der ersten encodierten Merkmalskarte erzeugt wird.
  6. Computerimplementiertes Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass - eine zweite encodierte Merkmalskarte durch Anwenden eines zweiten Encoderuntermoduls (12) des Lichterkennungsmoduls (7) auf das Eingangsbild (5) erzeugt wird; und - die Lichtmerkmalskarte durch das Lichterkennungs-Decoderuntermodul (14) abhängig von der zweiten encodierten Merkmalskarte erzeugt wird.
  7. Computerimplementiertes Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass - eine zusammengeführte encodierte Merkmalskarte durch ein Zusammenführungsuntermodul (13) des Lichterkennungsmoduls (7) durch Zusammenführen der ersten encodierten Merkmalskarte und der zweiten encodierten Merkmalskarte erzeugt wird; und - die Lichtmerkmalskarte durch Anwenden des Lichterkennungs-Decoderuntermoduls (14) auf die zusammengeführte encodierte Merkmalskarte erzeugt wird.
  8. Computerimplementiertes Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die betreffende Begrenzungsbox für jeden von wenigstens der Untermenge der Vielzahl von Kandidaten durch das Ausdehnungsschätzmodul (8) abhängig von wenigstens einer vorherigen Begrenzungsbox für das wenigstens eine Fahrzeug (22) bestimmt wird.
  9. Computerimplementiertes Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die wenigstens eine vorherige Begrenzungsbox für das wenigstens eine Fahrzeug (22) dem Ausdehnungsschätzmodul (8) durch ein rekurrentes neuronales Netzwerk-Modul (17) des Computer-Vision Algorithmus (6) bereitgestellt wird.
  10. Computerimplementiertes Trainingsverfahren zum Trainieren eines Computer-Vision Algorithmus (6) zur Fahrzeugerkennung, dadurch gekennzeichnet, dass - ein Lichterkennungsmodul (7) des Computer-Vision Algorithmus (6) auf ein Trainingseingangsbild (5'), welches eine Umgebung eines Ego-Fahrzeugs (1) darstellt, angewandt wird, um eine Lichtmerkmalskarte zu erzeugen, wobei die Lichtmerkmalskarte jeweilige Positionen einer Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten (23, 24) wenigstens eines Fahrzeugs (22) definiert; - für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten eine betreffende Begrenzungsbox für das wenigstens eine Fahrzeug (22) durch ein Ausdehnungsschätzmodul (8) des Computer-Vision Algorithmus (6) bestimmt wird; - wenigstens eine der Begrenzungsboxen (25, 26, 27) durch ein Nicht-Maximum-Unterdrückung-Modul (9) des Computer-Vision Algorithmus (6) ausgewählt wird; - eine Verlustfunktion abhängig von der ausgewählten wenigstens einen der Begrenzungsboxen (25, 26, 27) berechnet wird; und - das Nicht-Maximum-Unterdrückung-Modul (9), das Ausdehnungsschätzmodul (8) und wenigstens ein Teil des Lichterkennungsmoduls (7) abhängig von der Verlustfunktion trainiert werden.
  11. Computerimplementiertes Trainingsverfahren nach Anspruch 10, dadurch gekennzeichnet, dass - ein Kantenerkennungsuntermodul (10) des Lichterkennungsmoduls (7) auf das Trainingseingangsbild (5') angewandt wird, um eine Kantenmerkmalskarte zu erzeugen; - eine erste encodierte Merkmalskarte durch Anwenden eines ersten Encoderuntermoduls (11) des Lichterkennungsmoduls (7) auf die Kantenmerkmalskarte erzeugt wird; - die Lichtmerkmalskarte durch ein Lichterkennungs-Decoderuntermodul (14) des Lichterkennungsmoduls (7) abhängig von der ersten encodierten Merkmalskarte erzeugt wird; und - das Nicht-Maximum-Unterdrückung-Modul, das Ausdehnungsschätzmodul (8), das erste Encoderuntermodul (11) und das Lichterkennungs-Decoderuntermodul (14) abhängig von der Verlustfunktion trainiert werden.
  12. Computerimplementiertes Trainingsverfahren nach Anspruch 11, dadurch gekennzeichnet, dass - das Kantenerkennungsuntermodul (10) während einer ersten Trainingsphase abhängig von einer weiteren Verlustfunktion trainiert wird; und - das Nicht-Maximum-Unterdrückung-Modul, das Ausdehnungsschätzmodul (8), das erste Encoderuntermodul (11) und das Lichterkennungs-Decoderuntermodul (14) abhängig von der Verlustfunktion während einer zweiten Trainingsphase nach der ersten Trainingsphase trainiert werden.
  13. Computerimplementiertes Trainingsverfahren nach Anspruch 12, dadurch gekennzeichnet, dass - ein Kantenerkennungs-Encoderuntermodul (29) des Kantenerkennungsuntermoduls (10) auf ein weiteres Trainingseingangsbild (5") während der ersten Trainingsphase angewandt wird, um eine Bildmerkmalskarte zu erzeugen; - ein Kantenerkennungs-Decoderuntermodul (30) des Kantenerkennungsuntermoduls (10) auf die Bildmerkmalskarte angewandt wird, um ein Bild mit erkannten Kanten zu erzeugen; - ein Decodermodul (31) zur semantischen Segmentierung auf die Bildmerkmalskarte angewandt wird, um ein segmentiertes Bild zu erzeugen; - die weitere Verlustfunktion abhängig von dem Bild mit erkannten Kanten und abhängig von dem segmentierten Bild berechnet wird; und - das Kantenerkennungs-Encoderuntermodul und das Kantenerkennungs-Decoderuntermodul abhängig von der weiteren Verlustfunktion trainiert werden.
  14. Verfahren zum wenigstens teilweise automatischen Führen eines Ego-Fahrzeugs (1), wobei - ein Eingangsbild (5), welches eine Umgebung eines Ego-Fahrzeugs (1) darstellt, mittels einer Kamera (3) des Ego-Fahrzeugs (1) erzeugt wird; - wenigstens ein Fahrzeug (22) in der Umgebung des Ego-Fahrzeugs (1) durch Ausführen eines computerimplementierten Verfahrens zur Fahrzeugerkennung nach einem der Ansprüche 1 bis 9 erkannt wird; und - wenigstens ein Steuersignal zum wenigstens teilweise automatischen Führen des Ego-Fahrzeugs (1) abhängig von der ausgewählten wenigstens einen der Begrenzungsboxen (25, 26, 27) erzeugt wird.
  15. Elektronisches Fahrzeugführungssystem (2) für ein Ego-Fahrzeug (1), welches eine Kamera (3) aufweist, die dazu eingerichtet ist, ein Eingangsbild (5), welches eine Umgebung der Kamera (3) darstellt, zu erzeugen, sowie wenigstens eine Recheneinheit (4), welche eine Speichereinheit, die einen Computer-Vision Algorithmus (6) speichert, beinhaltet, dadurch gekennzeichnet, dass die wenigstens eine Recheneinheit (4) dazu eingerichtet ist, - ein Lichterkennungsmodul (7) des Computer-Vision Algorithmus (6) auf das Eingangsbild (5) anzuwenden, um eine Lichtmerkmalskarte zu erzeugen, wobei die Lichtmerkmalskarte jeweilige Positionen einer Vielzahl von Kandidaten für jeweilige Beleuchtungseinheiten (23, 24) wenigstens eines Fahrzeugs (22) definiert; - für jeden von wenigstens einer Untermenge der Vielzahl von Kandidaten eine betreffende Begrenzungsbox für das wenigstens eine Fahrzeug (22) unter Verwendung eines Ausdehnungsschätzmoduls (8) des Computer-Vision Algorithmus (6) zu bestimmen; - wenigstens eine der Begrenzungsboxen (25, 26, 27) unter Verwendung eines Nicht-Maximum-Unterdrückung-Moduls (9) des Computer-Vision Algorithmus (6) auszuwählen; und - wenigstens ein Steuersignal zum wenigstens teilweise automatischen Führen des Fahrzeugs abhängig von der ausgewählten wenigstens einen der Begrenzungsboxen (25, 26, 27) zu erzeugen.
DE102021129832.6A 2021-11-16 2021-11-16 Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus Pending DE102021129832A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102021129832.6A DE102021129832A1 (de) 2021-11-16 2021-11-16 Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102021129832.6A DE102021129832A1 (de) 2021-11-16 2021-11-16 Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus

Publications (1)

Publication Number Publication Date
DE102021129832A1 true DE102021129832A1 (de) 2023-05-17

Family

ID=86144494

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021129832.6A Pending DE102021129832A1 (de) 2021-11-16 2021-11-16 Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus

Country Status (1)

Country Link
DE (1) DE102021129832A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109800693A (zh) 2019-01-08 2019-05-24 西安交通大学 一种基于颜色通道混合特征的夜间车辆检测方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109800693A (zh) 2019-01-08 2019-05-24 西安交通大学 一种基于颜色通道混合特征的夜间车辆检测方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHEN, Yen-Lin. Nighttime vehicle light detection on a moving vehicle using image segmentation and analysis techniques. WSEAS Trans. Comput, 2009, 8. Jg., Nr. 3, S. 506-515.
DUBEY, J.; MURTHY, OV R.: Object Proposal Generator for Vehicle Detection in Nighttime. In: 2017 IEEE International Conference on Computational Intelligence and Computing Research (ICCIC). IEEE, 2017. S. 1-6.
WANG, J.; SUN, X.; GUO, J.: A region tracking-based vehicle detection algorithm in nighttime traffic scenes. Sensors, 2013, 13. Jg., Nr. 12, S. 16474-16493.

Similar Documents

Publication Publication Date Title
EP2368216B1 (de) Verfahren und einrichtung zur analyse von umgebungsobjekten und/oder umgebungsszenen, wie zur objekt- und szenenklassensegmentierung
DE102015121339B4 (de) Systeme und verfahren zum ermitteln eines zustands einer fahrbahn
DE102017127346A1 (de) Bremslichterkennung
DE102017129075A1 (de) Parkplatznavigationssystem und -verfahren
WO2020109016A1 (de) Verfahren zum gemeinsamen detektieren, verfolgen und klassifizieren von objekten
DE102019209560A1 (de) Vorrichtung und Verfahren zum Trainieren eines neuronalen Netzwerks
WO2020048669A1 (de) Verfahren zum bestimmen einer spurwechselangabe eines fahrzeugs, ein computerlesbares speichermedium und ein fahrzeug
DE112015000763T5 (de) Fahrzeugumgebungsbildanzeigevorrichtung undFahrzeugumgebungsbildanzeigeverfahren
DE102019214558A1 (de) Projektionsinformations-erkennungsvorrichtung auf basis eines künstlichen neuronalen netzwerks und verfahren derselben
DE102013210771A1 (de) Detektion eines komplexen objekts unter verwendung einer kaskade von klassifizierungseinrichtungen
DE102018220274A1 (de) Verfahren zum gemeinsamen Detektieren, Verfolgen und Klassifizieren von Objekten
DE102020105070A1 (de) Verfahren zum Erkennen eines befahrbaren Bereichs in einer Umgebung eines Fahrzeugs mithilfe eines binären künstlichen neuronalen Netzes, Recheneinrichtung sowie Fahrerassistenzsystem
DE102021129832A1 (de) Fahrzeugerkennung unter Verwendung eines Computer-Vision Algorithmus
WO2022053505A1 (de) Computerimplementiertes verfahren zur umfelderkennung für ein automatisiertes fahrsystem, maschinenlernverfahren, steuergerät für ein automatisiertes fahrsystem und computerprogramm für ein derartiges steuergerät
DE102021117227A1 (de) Analysieren eines Kreisverkehrs
DE102022121839A1 (de) Texterkennung basierend auf einem verzeichneten Kamerabild
WO2022263488A1 (de) Verfahren zur erkennung von objekten gesuchter typen in kamerabildern
DE102021124310A1 (de) Vorverarbeitung eines Eingangsbilds für einen Klassifizierungsalgorithmus
DE102022115189A1 (de) Verfahren, Prozessorschaltung und computerlesbares Speichermedium zum Betreiben einer Passantendetektion mittels einer Prozessorschaltung eines Kraftfahrzeugs
DE102021118694A1 (de) Verfolgen eines Einsatzfahrzeugs
DE102017217156B4 (de) Verfahren und Vorrichtung zur Ansteuerung eines Fahrerassistenzsystems unter Verwendung eines Stereokamerasystems mit einer ersten und einer zweiten Kamera
DE102021131930A1 (de) Gestenerkennung im Straßenverkehr
WO2023222343A1 (de) Verfahren zum steuern einer robotervorrichtung
DE102022125766A1 (de) Berechnung von Höheninformationen eines Bordsteins in einer Umgebung einesFahrzeugs
DE102021110056A1 (de) Automatische visuelle Wahrnehmung mit globaler Aufmerksamkeit

Legal Events

Date Code Title Description
R163 Identified publications notified