-
Die vorliegende Erfindung betrifft ein computerimplementiertes Verfahren zur Verfolgung eines Objekts, wobei Bilddaten mittels eines künstlichen neuronalen Netzwerks analysiert werden, um Objektkoordinaten des zu verfolgenden Objekts zu erzeugen. Die Erfindung betrifft ferner ein computerimplementiertes Trainingsverfahren zum Trainieren eines Objektverfolgungssystems, ein Objektverfolgungssystem, ein Computerprogramm und auf ein computerlesbares Speichermedium.
-
Objektverfolgung ist als Anwendung für Computervision bekannt. Objektverfolgung kann beispielsweise zum teil- oder vollautonomen Fahren verwendet werden, beispielsweise um eine Absicht, beispielsweise eines Fußgängers oder eines Fahrzeugs, einzuschätzen, um automatisierte Fahrfunktionen zu ermöglichen.
-
Bei bekannten Ansätzen zur Objektverfolgung wird eine dedizierte Merkmalsdetektionsstufe, die auch als Merkmalsextraktionsstufe oder Merkmalsextraktor bezeichnet werden kann, verwendet, um auffällige und eindeutige Merkmale von einem Objekt in einer überwachten Szene zu erhalten, um das Objekt zu verfolgen. Die Merkmalsdetektionsstufe basiert beispielsweise auf einem Histogram-of-Gradients (auch Histogram-of-Oriented-Gradients), HOG, Algorithmus. Der Merkmalsdetektionsstufe folgt eine Klassifikationsstufe, die beispielsweise auf einer Support-Vektor-Maschine, SVM, basiert.
-
Im Dokument
US 9,760,806 B1 ist ein Verfahren für eine Straßensituationsanalyse auf der Basis von Deep Learning beschrieben, das von einem faltenden neuronalen Netzwerk Gebrauch macht.
-
Für viele Anwendungen, insbesondere sicherheitsrelevante Anwendungen, wie beispielsweise Anwendungen beim teil- oder vollautonomen Fahren, sind eine besonders hohe Genauigkeit, Zuverlässigkeit und Robustheit der Objektverfolgung erforderlich.
-
Daher ist es eine Aufgabe der vorliegenden Erfindung, ein verbessertes Konzept zur Objektverfolgung bereitzustellen, das zu einer höheren Verfolgungsgenauigkeit führt.
-
Gemäß der vorliegenden Erfindung wird diese Aufgabe durch ein computerimplementiertes Verfahren zur Verfolgung eines Objekts, ein computerimplementiertes Trainingsverfahren zum Trainieren eines Objektverfolgungssystem, ein Objektverfolgungssystem, ein Computerprogramm und ein computerlesbares Speichermedium gemäß den unabhängigen Ansprüchen erreicht. Weitere Implementierungen und Ausführungsformen sind Gegenstand der abhängigen Ansprüche.
-
Das verbesserte Konzept basiert auf der Idee, die Bilddaten mittels eines künstlichen neuronalen Netzwerks zu analysieren, wobei ein durch eine Zwischenschicht des neuronalen Netzwerks erzeugter Merkmalsvektor zum Vorhersagen von Koordinaten eines zu verfolgenden Objekts berücksichtigt wird.
-
Gemäß einem ersten unabhängigen Aspekt des verbesserten Konzepts wird ein computerimplementiertes Verfahren zur Verfolgung eines Objekts bereitgestellt. Dabei werden Bilddaten mittels eines künstlichen neuronalen Netzwerks, insbesondere eines Moduls eines künstlichen neuronalen Netzwerks mit dem künstlichen neuronalen Netzwerk, analysiert, um Objektkoordinaten, insbesondere basierend auf der Analyse, des zu verfolgenden Objekts zu erzeugen. Ein Merkmalsvektor wird mittels einer Zwischenschicht des neuronalen Netzwerks, insbesondere während der oder durch die Analyse, erzeugt. Vorhergesagte Koordinaten zur Verfolgung des zu verfolgenden Objekts werden mittels eines Vorhersagemoduls in Abhängigkeit von den Objektkoordinaten und in Abhängigkeit von dem Merkmalsvektor bestimmt.
-
Hier und im Folgenden kann das Verfolgen eines Objekts beispielsweise als kontinuierliches oder wiederholtes Bestimmen der vorhergesagten Koordinaten für das Objekt, insbesondere innerhalb eines Bildes, das durch die Bilddaten dargestellt wird, verstanden werden.
-
Das Modul des künstlichen neuronalen Netzwerks und das Vorhersagemodul sind insbesondere Softwaremodule, die von einer Recheneinheit enthalten oder auf dieser gespeichert sind.
-
Das neuronale Netzwerk ist insbesondere ein trainiertes neuronales Netzwerk.
-
Das neuronale Netzwerk weist beispielsweise Eingangsknoten, die auch als Eingangsschicht bezeichnet werden, eine Ausgangsschicht, die auch als Endschicht bezeichnet wird, und die Zwischenschicht, die zwischen den Eingangsknoten und der Ausgangsschicht angeordnet ist, auf. Optional kann das neuronale Netzwerk eine oder mehrere weitere Zwischenschichten aufweisen, die zwischen den Eingangsknoten und der Ausgangsschicht angeordnet sind.
-
Die mittels des neuronalen Netzwerks erzeugten Objektkoordinaten entsprechen insbesondere einer Ausgabe der Ausgangsschicht.
-
Der Merkmalsvektor entspricht insbesondere einer Ausgabe, insbesondere einer direkten Ausgabe, der Zwischenschicht. Insbesondere ist der Merkmalsvektor keine Ausgabe der Ausgangsschicht.
-
Hier und im Folgenden kann ein Merkmal als Zahlenwert einer individuellen messbaren Eigenschaft oder Charakteristik der Bilddaten verstanden werden. Ein Merkmalsvektor kann als Vektor von Merkmalen verstanden werden.
-
Die Ausgangsschicht kann beispielsweise als Softmax-Schicht des neuronalen Netzwerks implementiert sein.
-
Die vorhergesagten Koordinaten werden insbesondere durch Einspeisen der Objektkoordinaten in ein Filtermodul des Vorhersagemoduls und Verwenden einer Ausgabe des Filtermoduls als vorhergesagte Koordinaten bestimmt.
-
Das verbesserte Konzept nutzt die Tatsache, dass individuelle Schichten, insbesondere Zwischenschichten, eines neuronalen Netzwerks als Merkmalsextraktoren betrachtet werden können. Dabei stellen verschiedene Schichten des neuronalen Netzwerks Merkmale mit unterschiedlicher Komplexität bereit. Ein neuronales Netzwerk mit mehreren Schichten kann daher als mehrstufiger Merkmalsextraktor betrachtet werden.
-
Durch die direkte Verwendung der durch die Zwischenschicht erzeugten Merkmale, anstatt sich nur auf die Ausgabe der Ausgangsschicht, nämlich die Objektkoordinaten, zu verlassen, können das Vorhersagemodul und der Verfolgungsalgorithmus von den durch die Zwischenschicht extrahierten Merkmalen Gebrauch machen, um die vorhergesagten Koordinaten zu bestimmen. Die Zwischenschicht wird daher nicht nur implizit zum Erzeugen der Objektkoordinaten, sondern auch als direkte Merkmalsquelle, die ihre Ergebnisse an das Vorhersagemodul ausgibt, verwendet. Gemäß dem verbesserten Konzept besteht daher insbesondere kein Bedarf an einer separaten oder dedizierten Merkmalsextraktionsstufe.
-
Folglich zeigt die Objektverfolgung mittels des verbesserten Konzepts eine verbesserte Genauigkeit, Zuverlässigkeit und Robustheit. Ferner kann auch die Verfolgung von verdeckten oder teilweise verdeckten Objekten möglich sein.
-
Gemäß mehreren Implementierungen des Verfahrens zur Verfolgung eines Objekts ist das künstliche neuronale Netzwerk als faltendes neuronales Netzwerk, CNN, ausgelegt.
-
Gemäß mehreren Implementierungen des Verfahrens ist das Objekt ein Objekt in einer Umgebung eines Kraftfahrzeugs. Das neuronale Netzwerk oder das Modul des neuronalen Netzwerks und das Vorhersagemodul können von einer Recheneinheit des Kraftfahrzeugs enthalten sein.
-
Gemäß mehreren Implementierungen wird das neuronale Netzwerk mit einer weiteren Zwischenschicht bereitgestellt. Mit anderen Worten, das neuronale Netzwerk weist die weitere Zwischenschicht auf. Ein weiterer Merkmalsvektor wird mittels der weiteren Zwischenschicht erzeugt, insbesondere während der oder durch die Analyse der Bilddaten mittels des neuronalen Netzwerks. Die vorhergesagten Koordinaten werden mittels des Vorhersagemoduls in Abhängigkeit von dem weiteren Merkmalsvektor, dem Merkmalsvektor und den Objektkoordinaten bestimmt.
-
Durch Berücksichtigen von verschiedenen Typen von Merkmalen von verschiedenen Zwischenschichten des neuronalen Netzwerks, die verschiedenen Merkmalskomplexitäten entsprechen, können die Genauigkeit und Robustheit der Objektverfolgung weiter verbessert werden.
-
Das verbesserte Konzept ist nicht auf neuronale Netzwerke mit einer oder zwei Zwischenschichten eingeschränkt, sondern das neuronale Netzwerk kann mehrere zusätzliche Zwischenschichten aufweisen und die jeweiligen Merkmalsvektoren von einer oder mehreren oder allen dieser zusätzlichen Zwischenschichten können durch das Vorhersagemodul verwendet werden, um die vorhergesagten Koordinaten zu bestimmen, um die Genauigkeit und Robustheit weiter zu verbessern.
-
Gemäß mehreren Implementierungen werden der Merkmalsvektor und der weitere Merkmalsvektor jeweils gewichtet. Die vorhergesagten Koordinaten werden mittels des Vorhersagemoduls in Abhängigkeit von dem gewichteten Merkmalsvektor und dem gewichteten weiteren Merkmalsvektor bestimmt.
-
Die Gewichtung wird insbesondere durch Multiplizieren des Merkmalsvektors beziehungsweise des weiteren Merkmalsvektors mit entsprechenden Gewichtungsfaktoren durchgeführt. Die Gewichtungsfaktoren können beispielsweise während des Trainings des neuronalen Netzwerks bestimmt werden oder ihnen können feste Werte gegeben werden, die beispielsweise empirisch bestimmt werden können.
-
Die Gewichtung des Merkmalsvektors und des weiteren Merkmalsvektors wird insbesondere mittels des neuronalen Netzwerks, des Vorhersagemoduls, eines Verkettungsmoduls oder eines dedizierten Gewichtungsmoduls durchgeführt.
-
Abhängig von einer speziellen Anwendung oder Aufgabe der Objektverfolgung können verschiedene Typen von Merkmalen oder verschiedene Komplexitäten von Merkmalen für die Objektverfolgung von unterschiedlicher Bedeutung sein. Für die Verfolgung von Fahrzeugen im Vergleich zu der Verfolgung von Fußgängern können beispielsweise unterschiedliche Merkmale am relevantesten sein. Durch dementsprechendes Gewichten der Merkmalsvektoren können sie daher in einer optimalen Weise berücksichtigt werden, was zu einer weiter verbesserten Genauigkeit und Robustheit der Objektverfolgung führt.
-
Gemäß mehreren Implementierungen werden der gewichtete Merkmalsvektor und der gewichtete weitere Merkmalsvektor mittels eines Verkettungsmoduls, insbesondere der Recheneinheit, verkettet, um einen verketteten Merkmalsvektor zu erzeugen. Die vorhergesagten Koordinaten werden mittels des Vorhersagemoduls in Abhängigkeit von dem verketteten Merkmalsvektor bestimmt.
-
Gemäß mehreren Implementierungen weist das Vorhersagemodul ein Kalman-Filter, ein Partikelfilter oder ein weiteres künstliches neuronalen Netzwerk, beispielsweise ein rekurrentes neuronales Netzwerk, insbesondere ein long-short-term-memory, LSTM, zum Bestimmen der vorhergesagten Koordinaten in Abhängigkeit von den Objektkoordinaten und dem Merkmalsvektor und gegebenenfalls dem weiteren Merkmalsvektor auf oder ist damit bereitgestellt.
-
Das Kalman-Filter, das Partikelfilter, das weitere künstliche neuronale Netzwerk sind durch jeweilige Softwaremodule gegeben. Kalman-Filter, Partikelfilter, die auch als sequentielle Monte-Carlo-Algorithmen bekannt sind, und rekurrente neuronale Netzwerke stellen eine zuverlässige und robuste Mittel für die Verfolgung des Objekts durch Vorhersagen der Koordinaten des Objekts bereit.
-
Gemäß mehreren Implementierungen werden die Bilddaten mittels eines Sensorsystems, insbesondere des Kraftfahrzeugs, durch Abbilden einer Umgebung des Kraftfahrzeugs erzeugt, wobei sich das Objekt innerhalb der Umgebung befindet.
-
In solchen Implementierungen kann das Verfahren für Fahrerassistenzsysteme, ADAS, wie beispielsweise Notbremssysteme oder Abstandsregeltempomaten oder andere ADAS oder für voll- oder teilautonome Fahrfunktionen verwendet werden.
-
Gemäß mehreren Implementierungen beinhaltet die Erzeugung der Bilddaten das Bestimmen einer Region von Interesse, ROI, innerhalb des Bildes der Umgebung. Die Bilddaten können beispielsweise der ROI entsprechen.
-
Das Sensorsystem weist insbesondere ein Kamerasystem, ein aktives optisches Sensorsystem, beispielsweise ein Lidarsystem, oder ein Radarsystem auf.
-
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein computerimplementiertes Trainingsverfahren zum Trainieren eines Objektverfolgungssystems bereitgestellt. Dabei werden Trainingsbilddaten mittels eines künstlichen neuronalen Netzwerks analysiert, um Trainingsobjektkoordinaten auf der Basis der Analyse zu erzeugen. Ein Trainingsmerkmalsvektor wird mittels einer Zwischenschicht des neuronalen Netzwerks während der oder durch die Analyse erzeugt. Vorhergesagte Trainingskoordinaten werden mittels eines Vorhersagemoduls in Abhängigkeit von den Trainingsobjektkoordinaten und dem Trainingsmerkmalsvektor bestimmt. Mindestens ein Verlustwert wird mittels eines Trainingsmoduls in Abhängigkeit von den vorhergesagten Trainingskoordinaten und einer vordefinierten Verlustfunktion bestimmt. Einer oder mehrere Parameter, beispielsweise Gewichte, des neuronalen Netzwerks und/oder einer oder mehrere Parameter des Vorhersagemoduls, insbesondere zum Erzeugen der vorhergesagten Koordinaten, werden in Abhängigkeit von dem mindestens einen Verlustwert mittels des Trainingsmoduls angepasst.
-
Das neuronale Netzwerk mit den angepassten Parametern kann für ein Objektverfolgungssystem, insbesondere gemäß dem verbesserten Konzept, und/oder ein Verfahren zur Verfolgung eines Objekts, insbesondere gemäß dem verbesserten Konzept, verwendet werden.
-
Das Trainingsmodul kann insbesondere den mindestens einen Verlustwert durch Empfangen der vorhergesagten Trainingskoordinaten sowie von Referenzobjektkoordinaten oder gemessenen Objektkoordinaten als Eingaben in die vordefinierte Verlustfunktion bestimmen. In Abhängigkeit von einer Beziehung oder Abweichung zwischen den vorhergesagten Trainingskoordinaten und den gemessenen Objektkoordinaten, wobei die Beziehung oder Abweichung durch die Verlustfunktion definiert ist, wird der mindestens eine Verlustwert berechnet und kann einen Fehler des Objekttrainings darstellen.
-
Durch Anpassen der Parameter des neuronalen Netzwerks oder des Vorhersagemoduls in Abhängigkeit von dem mindestens einen Verlustwert wird ein Ende-zu-Ende Training des neuronalen Netzwerks zusammen mit dem Vorhersagemodul erreicht. Mittels des Ende-zu-Ende Trainings können eine höhere Trainingsgenauigkeit und eine höhere Objektverfolgungsgenauigkeit erreicht werden.
-
Weitere Implementierungen des computerimplementierten Trainingsverfahrens für das Trainieren eines Objektverfolgungssystem folgen direkt aus den verschiedenen Implementierungen des computerimplementierten Verfahrens zur Verfolgung eines Objekts gemäß dem verbesserten Konzept und umgekehrt.
-
Gemäß mehreren Implementierungen eines Verfahrens zur Verfolgung eines Objekts gemäß dem verbesserten Konzept wurde das künstliche neuronale Netzwerk gemäß einem Trainingsverfahren zum Trainieren eines Objektverfolgungssystems gemäß dem verbesserten Konzept trainiert.
-
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein Objektverfolgungssystem, insbesondere ein Objektverfolgungssystem für ein Kraftfahrzeug, bereitgestellt. Das Objektverfolgungssystem weist eine Recheneinheit und eine Datenschnittstelle zur Verbindung der Recheneinheit mit einem Sensorsystem auf. Die Recheneinheit weist ein künstliches neuronales Netzwerk oder ein Modul eines künstlichen neuronalen Netzwerks auf, das dazu ausgelegt ist, Bilddaten zu analysieren, die über die Datenschnittstelle empfangen werden, und Objektkoordinaten des zu verfolgenden Objekts basierend auf der Analyse zu erzeugen. Das künstliche neuronale Netzwerk weist eine Zwischenschicht auf, die dazu ausgelegt ist, einen Merkmalsvektor während der oder durch die Analyse zu erzeugen. Die Recheneinheit weist ein Vorhersagemodul auf, das dazu ausgelegt ist, vorhergesagte Koordinaten zur Verfolgung des Objekts in Abhängigkeit von den Objektkoordinaten und dem Merkmalsvektor zu bestimmen.
-
Das Sensorsystem ist nicht notwendigerweise ein Teil des Objektverfolgungssystems. Insbesondere kann das Sensorsystem durch das Kraftfahrzeug beinhaltet sein. In einigen Implementierungen des Objektverfolgungssystems beinhaltet jedoch das Objektverfolgungssystem das Sensorsystem.
-
Dass das neuronale Netzwerk, die Zwischenschicht und das Vorhersagemodul dazu ausgelegt sind, die beschriebenen Aufgaben durchzuführen, kann derart verstanden werden, dass das neuronale Netzwerk, die Zwischenschicht beziehungsweise das Vorhersagemodul dazu programmiert sind, die jeweiligen Aufgaben durchzuführen.
-
Die Datenschnittstelle kann beispielsweise eine Hardwareschnittstellenkomponente und/oder eine oder mehrere Softwareschnittstellenkomponenten aufweisen.
-
Gemäß mehreren Implementierungen des Objektverfolgungssystems weist das Objektverfolgungssystem das Sensorsystem auf.
-
Gemäß mehreren Implementierungen weist das Sensorsystem ein Kamerasystem, ein aktives optisches Sensorsystem, beispielsweise ein Lidarsystem, oder ein Radarsystem auf.
-
Gemäß mehreren Implementierungen weist das neuronale Netzwerk eine weitere Zwischenschicht auf, die dazu ausgelegt ist, einen weiteren Merkmalsvektor zu erzeugen, und das Vorhersagemodul ist dazu ausgelegt, die vorhergesagten Koordinaten in Abhängigkeit von dem weiteren Merkmalsvektor zu bestimmen.
-
Gemäß mehreren Implementierungen ist die Recheneinheit dazu ausgelegt, den Merkmalsvektor und den weiteren Merkmalsvektor jeweils zu gewichten, und das Vorhersagemodul ist dazu ausgelegt, die vorhergesagten Koordinaten in Abhängigkeit von dem gewichteten Merkmalsvektor und dem gewichteten weiteren Merkmalsvektor zu bestimmen.
-
Gemäß mehreren Implementierungen weist die Recheneinheit ein Verkettungsmodul auf, das dazu ausgelegt ist, den gewichteten Merkmalsvektor und den gewichteten weiteren Merkmalvektor zu verketten, um einen verketteten Merkmalsvektor zu erzeugen. Das Vorhersagemodul ist dazu ausgelegt, die vorhergesagten Koordinaten in Abhängigkeit von dem verketteten Merkmalsvektor zu bestimmen.
-
Gemäß mehreren Implementierungen ist das Verkettungsmodul dazu ausgelegt, den Merkmalsvektor und den weiteren Merkmalsvektor zu verketten, um einen weiteren verketteten Merkmalsvektor zu erzeugen. Das Vorhersagemodul ist dazu ausgelegt, die vorhergesagten Koordinaten in Abhängigkeit von dem weiteren verketteten Merkmalsvektor zu bestimmen.
-
Gemäß mehreren Implementierungen weist das Vorhersagemodul ein Kalman-Filter oder ein Partikelfilter oder ein weiteres künstliches neuronales Netzwerk zum Bestimmen der vorhergesagten Koordinaten in Abhängigkeit von den Objektkoordinaten und dem Merkmalsvektor und gegebenenfalls dem weiteren Merkmalsvektor auf.
-
Gemäß mehreren Implementierungen wird oder wurde das neuronale Netzwerk mittels eines Trainingsverfahrens gemäß dem verbesserten Konzept trainiert.
-
Weitere Implementierungen des Objektverfolgungssystems folgen direkt aus den verschiedenen Implementierungen und Ausführungsformen des computerimplementierten Verfahrens zur Verfolgung eines Objekts oder eines Trainingsverfahrens gemäß dem verbesserten Konzept bzw. umgekehrt. Insbesondere ist ein Objektverfolgungssystem gemäß dem verbesserten Konzept, beispielsweise die Recheneinheit des Objektverfolgungssystems, dazu eingerichtet, ausgelegt oder programmiert, ein Verfahren zur Verfolgung eines Objekts und/oder ein Trainingsverfahren zum Trainieren eines Objektverfolgungssystems gemäß dem verbesserten Konzept durchzuführen. In einigen Implementierungen führt das Objektverfolgungssystem ein Verfahren oder ein Trainingsverfahren gemäß dem verbesserten Konzept durch.
-
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein Kraftfahrzeug mit einem Objektverfolgungssystem gemäß dem verbesserten Konzept bereitgestellt.
-
Gemäß mehreren Implementierungen des Kraftfahrzeugs wird das Kraftfahrzeug als Fahrzeug für das teilautonome Fahren in Übereinstimmung mit Stufe 1 bis Stufe 4 gemäß der Klassifikation SAE J3016 oder als Fahrzeug für das vollautonome Fahren in Übereinstimmung mit Stufe 5 der Klassifikation SAE J3016 implementiert. Hier und um Folgenden bezieht sich SAE J3016 auf die entsprechende Norm in der Version vom Juni 2018.
-
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein Computerprogramm bereitgestellt. Das Computerprogramm weist Befehle auf, die, wenn das Computerprogramm durch einen Computer ausgeführt wird, das Computersystem dazu veranlassen, ein Verfahren zur Verfolgung eines Objekts oder ein Trainingsverfahren gemäß dem verbesserten Konzept durchzuführen.
-
Gemäß einem weiteren unabhängigen Aspekt des verbesserten Konzepts wird ein computerlesbares Speichermedium bereitgestellt, wobei das computerlesbare Speichermedium ein Computerprogramm gemäß dem verbesserten Konzept speichert.
-
Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die vorstehend in der Beschreibung genannten Merkmale und Merkmalskombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren alleine gezeigten Merkmale und Merkmalskombinationen sind nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen verwendbar, ohne den Rahmen der Erfindung zu verlassen. Es sind somit auch Ausführungen von der Erfindung als erfasst und offenbart anzusehen, die in den Figuren nicht explizit gezeigt und erläutert sind, jedoch durch separierte Merkmalskombinationen aus den erläuterten Ausführungen hervorgehen und erzeugbar sind. Es sind auch Ausführungen und Merkmalskombinationen als offenbart anzusehen, die somit nicht alle Merkmale eines ursprünglich formulierten unabhängigen Anspruchs aufweisen. Es sind darüber hinaus Ausführungen und Merkmalskombinationen, insbesondere durch die oben dargelegten Ausführungen, als offenbart anzusehen, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von denen abweichen.
-
Die Erfindung wird im Folgenden in Bezug auf beispielhafte Implementierungen und jeweilige schematische Zeichnungen näher beschrieben. In den Zeichnungen können gleiche oder funktionsgleiche Elemente mit gleichen Bezugszeichen bezeichnet sein. Die Beschreibung gleicher oder funktionsgleicher Elemente wird nicht notwendigerweise in verschiedenen Figuren wiederholt.
-
In den Figuren zeigen
- 1 ein Kraftfahrzeug mit einer beispielhaften Implementierung eines Objektverfolgungssystems gemäß dem verbesserten Konzept;
- 2 ein schematisches Ablaufdiagramm einer beispielhaften Implementierung eines Verfahrens zur Verfolgung eines Objekts gemäß dem verbesserten Konzept;
- 3 ein schematisches Ablaufdiagramm einer weiteren beispielhaften Implementierung eines Verfahrens zur Verfolgung eines Objekts gemäß dem verbesserten Konzept; und
- 4 ein schematisches Ablaufdiagramm einer beispielhaften Implementierung eines Trainingsverfahrens gemäß dem verbesserten Konzept.
-
1 zeigt ein Fahrzeug 6 mit einem Objektverfolgungssystem 16 gemäß dem verbesserten Konzept.
-
Das Objektverfolgungssystem 16 weist eine Recheneinheit 7 auf, die mit einer Datenschnittstelle 8 des Objektverfolgungssystems 16 gekoppelt ist. Das Fahrzeug 6 oder das Objektverfolgungssystem 16 weist ein Kamerasystem 9 oder ein alternatives Sensorsystem zum Abbilden einer Umgebung des Fahrzeugs 6 auf. Das Kamerasystem 9 ist mit der Datenschnittstelle 8 verbunden, um Kamerasignale oder Bilddaten, die durch das Kamerasystem 9 erzeugt werden, zu der Recheneinheit 7 zu liefern. Die Recheneinheit 7 weist ein Modul 10 eines künstlichen neuronalen Netzwerks und ein Vorhersagemodul 11 auf.
-
Das Kamerasystem 9 ist dazu eingerichtet, einen Teil einer Umgebung des Fahrzeugs 6, der einem Blickfeld, FOV, 14 des Kamerasystems 9 entspricht, abzubilden. Insbesondere kann das Kamerasystem 9 Bilddaten in Abhängigkeit von der Abbildung erzeugen. Ein Objekt 13 kann beispielsweise innerhalb des FOV 14 angeordnet sein.
-
Wahlweise kann die Recheneinheit 7, das Objektverfolgungssystem 16 oder das Fahrzeug 6 ein computerlesbares Speichermedium 15 aufweisen, das durch die Recheneinheit 7 gelesen werden kann. Die Recheneinheit 7 kann ein auf dem Speichermedium 15 gespeichertes Computerprogramm ausführen, um ein Verfahren zur Verfolgung eines Objekts gemäß dem verbesserten Konzept auszuführen.
-
Die Funktionalität des Objektverfolgungssystems 16 wird mit Bezug auf beispielhafte Implementierungen von Verfahren zur Verfolgung eines Objekts gemäß dem verbesserten Konzept im Einzelnen beschrieben, wie in 2 und 3 gezeigt.
-
Mit Bezug auf 2 bildet in Schritt 1 des Verfahrens das Kamerasystem 9 das FOV 14 mit dem Objekt 13 ab, erzeugt Bilddaten auf der Basis davon und liefert die Bilddaten über die Schnittstelle 8 zu dem Modul 10 des neuronalen Netzwerks. In Schritt 2 des Verfahrens analysiert das Modul 10 des neuronalen Netzwerks die Bilddaten und erzeugt, insbesondere in einem Schritt 3 des Verfahrens, Objektkoordinaten des Objekts 13 auf der Basis der Analyse.
-
Das Modul 10 des neuronalen Netzwerks weist ein neuronales Netzwerk auf, das insbesondere als faltendes neuronales Netzwerk ausgelegt ist und mit einem Codiererteil und einem Decodiererteil ausgelegt sein kann.
-
Das neuronale Netzwerk weist beispielsweise eine Vielzahl von Schichten auf, einschließlich beispielsweise einer Eingangsschicht 17 und einer Ausgangsschicht 18 sowie einer Zwischenschicht 12. Wahlweise kann das neuronale Netzwerk eine oder mehrere weitere Zwischenschichten, einschließlich einer weiteren Zwischenschicht 12', aufweisen. Jede Zwischenschicht 12, 12' des neuronalen Netzwerks 10 stellt eine Ausgabe, insbesondere einen jeweiligen Merkmalsvektor, der Merkmalen mit einer speziellen Komplexität oder einem speziellen Typ in Abhängigkeit von der Position der jeweiligen Zwischenschicht innerhalb des neuronalen Netzwerks entspricht, bereit. Die Ausgangsschicht 18 kann beispielsweise als Softmax-Schicht ausgelegt sein.
-
Eine Ausgabe der Ausgangsschicht 18 entspricht den Objektkoordinaten des Objekts 13 oder die Objektkoordinaten können direkt aus der Ausgabe der Ausgangsschicht 18 bestimmt werden.
-
In dem Beispiel von 2 werden die zwei Zwischenschichten 12, 12' betrachtet. Jede der Zwischenschichten 12, 12' erzeugt einen jeweiligen Merkmalsvektor als Ausgabe während der Analyse von Schritt 2.
-
In Schritt 4 werden die Objektkoordinaten sowie die Merkmalsvektoren der Zwischenschichten 12, 12' zu dem Vorhersagemodul 11 des Objektverfolgungssystems 16 geliefert. Das Vorhersagemodul 11 kann beispielsweise ein Kalman-Filter oder ein anderes geeignetes Filter, beispielsweise ein Partikelfilter oder ein rekurrentes neuronales Netzwerk, aufweisen, das die Merkmalsvektoren und die Objektkoordinaten als Eingabe verwendet.
-
Das Vorhersagemodul 11, insbesondere das Kalman-Filter, erzeugt vorhergesagte Koordinaten für das Objekt 13 in Abhängigkeit von den Objektkoordinaten und den Merkmalsvektoren als Eingaben. Die vorhergesagten Koordinaten werden in Schritt 5 des Verfahrens bereitgestellt. In Schritt 5 des Verfahrens kann ein Steuergerät des Fahrzeugs 6, das von der Recheneinheit 7 enthalten sein oder diese aufweisen kann, die vorhergesagten Koordinaten für die Objektverfolgung verwenden, beispielsweise für eine ADAS-Funktion oder eine autonome Fahrfunktion.
-
Das Vorhersagemodul 11 kann die Merkmalsvektoren individuell als Eingaben verwenden oder kann beispielsweise die Merkmalsvektoren verketten, um einen verketteten Merkmalsvektor zu erzeugen, der als Eingaben zusammen mit den Objektkoordinaten verwendet wird, um die vorhergesagten Koordinaten vorherzusagen.
-
3 zeigt eine weitere beispielhafte Implementierung eines Verfahrens gemäß dem verbesserten Konzept, um ein Objekt zu verfolgen, das auf dem mit Bezug auf 2 beschriebenen Verfahren basiert. Anstelle der weiteren Zwischenschicht 12' wird eine andere weitere Zwischenschicht 12" in 3 betrachtet.
-
In dem Verfahren gemäß 3 werden in einem Schritt 3' die durch die Zwischenschichten 12, 12" erzeugten Merkmalsvektoren mit jeweiligen Gewichtungsfaktoren gewichtet und zu einem Verkettungsmodul des Objektverfolgungssystems 16, insbesondere der Recheneinheit 7, geliefert. Die Verkettungseinheit erzeugt einen verketteten Merkmalsvektor auf der Basis der gewichteten Merkmalsvektoren der Zwischenschichten 12, 12". Der verkettete Merkmalsvektor wird in Schritt 4 zum Vorhersagemodul 11 geliefert. Abgesehen davon entsprechen die Schritte 1, 2, 3, 4 und 5 des Verfahrens den mit Bezug auf 2 beschriebenen.
-
Die Gewichtungsfaktoren zum Gewichten der jeweiligen Merkmalsvektoren der Zwischenschichten 12 und 12" können beispielsweise während des Trainings des neuronalen Netzwerks bestimmt werden oder können durch empirisch bestimmte Werte gegeben sein.
-
In 4, ist eine beispielhafte Implementierung eines Trainingsverfahrens für das Training des Objektverfolgungssystems 16 gemäß dem verbesserten Konzept gezeigt.
-
Mit Bezug auf die Schritte 1 bis 5 des Verfahrens von 4 wird auf die Erläuterungen hinsichtlich 2 verwiesen. Insbesondere können mit Bezug auf das Trainingsverfahren von 4 die Bilddaten durch Trainingsbilddaten, die Objektkoordinaten durch Trainingsobjektkoordinaten, die vorhergesagten Koordinaten durch vorhergesagte Trainingskoordinaten und die Merkmalsvektoren durch Trainingsmerkmalsvektoren ersetzt werden. Abgesehen von diesen Definitionen sind die durchgeführten Schritte dieselben wie bei 2 beschrieben.
-
In Schritt 5' des Verfahrens bestimmt ein Trainingsmodul, beispielsweise der Recheneinheit 7 oder des Vorhersagemoduls 11 oder des künstlichen neuronalen Netzwerks 10, mindestens einen Verlustwert auf der Basis einer vordefinierten Verlustfunktion. Dazu verwendet das Trainingsmodul die vorhergesagten Trainingsobjektkoordinaten sowie entsprechende gemessene Koordinaten des Objekts 13 als Eingaben in die Verlustfunktion. Der Verlustwert wird dann beispielsweise in Abhängigkeit von einer Abweichung der vorhergesagten Trainingskoordinaten von den gemessenen Trainingskoordinaten bestimmt.
-
Der mindestens eine Verlustwert kann dann beispielsweise zu dem Modul 10 des neuronalen Netzwerks und/oder zu dem Vorhersagemodul 11 geliefert werden. In Abhängigkeit von dem mindestens einen Verlustwert können ein oder mehrere Parameter, beispielsweise Gewichte, des neuronalen Netzwerks oder Parameter des Vorhersagemoduls 11, beispielhaft des Kalman-Filters, angepasst werden.
-
Da die Verlustfunktion die vorhergesagten Trainingskoordinaten anstelle beispielsweise der Trainingsobjektkoordinaten berücksichtigt, wird ein Ende-zu-Ende Training des neuronalen Netzwerks und des Vorhersagemoduls 11 ermöglicht.
-
Das Trainingsverfahren gemäß 4 kann beispielsweise vor einer produktiven Verwendung des Objektverfolgungssystems durchgeführt werden. Alternativ oder zusätzlich kann das Trainingsverfahren auch parallel zu oder während einer normalen Verwendung des Objektverfolgungssystems durchgeführt werden, mit anderen Worten, das Training kann online durchgeführt werden.
-
Mittels des verbesserten Konzepts werden Zwischenschichten eines neuronalen Netzwerks als effektive Merkmalsextraktoren für die Objektverfolgung verwendet. Dies ermöglicht eine besonders genaue oder robuste Objektverfolgung.
-
Unter Verwendung der Ausgabe und des Merkmalsvektors des neuronalen Netzwerks für die Verfolgung können ferner teilweise verdeckte oder verdeckte Objekte mit höherer Genauigkeit verfolgt werden.
-
Das verbesserte Konzept ermöglicht ferner eine unkomplizierte Skalierung des neuronalen Netzwerks für das parallele Verfolgen von mehreren Objekten in der Szene. Daher kann die Komplexität des resultierenden neuronalen Netzwerks verringert werden. Eine Laufzeitleistung der Objektverfolgung kann wiederum verbessert werden.
-
Gemäß dem verbesserten Konzept ist ferner eine separate Merkmalsextraktionsstufe nicht erforderlich, was auch die Laufzeitleistung der Verfolgung verbessert.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-