-
TECHNISCHES GEBIET
-
Die vorliegende Offenbarung bezieht sich auf ein Verfahren und eine Vorrichtung zur Unterstützung des Fahrens.
-
STAND DER TECHNIK
-
Fahrzeuge können mit Videoaufnahmegeräten wie z. B. Kameras ausgestattet sein, um Fahrszenen aufzeichnen zu können. Da täglich riesige Mengen an Videodaten durch die Fahrzeuge aufgezeichnet werden, besteht ein zunehmender Bedarf, die Videodaten effizient zu analysieren und zu interpretieren, sodass die aufgezeichneten Videodaten beim Unterstützen des Fahrens genutzt werden können.
-
KURZDARSTELLUNG
-
Die Ausführungsformen der vorliegenden Offenbarung bieten ein Verfahren und eine Vorrichtung zur Unterstützung des Fahrens.
-
In einem Aspekt der vorliegenden Offenbarung ist ein Verfahren zur Unterstützung des Fahrens vorgesehen. Das Verfahren kann das Identifizieren eines oder mehrerer Sätze von Videobildern aus aufgenommenem Video bezüglich des Umgebungszustands eines Fahrzeugs, wobei der eine oder die mehreren Sätze von Videobildern ein sich bewegendes Objekt umfassen können; das Extrahieren eines oder mehrerer Merkmale, die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, aus dem einen oder den mehreren Sätzen von Videobildern; und das Vorhersagen der Bewegungsabsicht des sich bewegenden Objekts in dem einen oder den mehreren Sätzen von Videobildern basierend auf dem einen oder den mehreren Merkmalen umfassen.
-
In einem anderen Aspekt der vorliegenden Offenbarung ist eine Vorrichtung zur Unterstützung des Fahrens vorgesehen. Die Vorrichtung kann eine Kamera und einen Prozessor umfassen. Die Kamera kann dazu ausgelegt sein, Videos über den Umgebungszustand eines Fahrzeugs aufzunehmen. Der Prozessor kann dazu ausgelegt sein, einen oder mehrere Sätze von Videobildern aus dem Video zu identifizieren, wobei der eine oder die mehreren Sätze von Videobildern ein sich bewegendes Objekt umfassen können; ein oder mehrere Merkmale, die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, aus dem einen oder den mehreren Sätzen von Videobildern zu extrahieren; und die Bewegungsabsicht des sich bewegenden Objekts in dem einen oder den mehreren Sätzen von Videobildern basierend auf dem einen oder den mehreren Merkmalen vorherzusagen.
-
In einem anderen Aspekt der vorliegenden Offenbarung ist ein Fahrzeug vorgesehen, das die oben genannte Vorrichtung umfasst.
-
In einem anderen Aspekt der vorliegenden Offenbarung ist ein nichtflüchtiges computerlesbares Medium vorgesehen, das darauf gespeicherte Anweisungen zum Durchführen des oben genannten Verfahrens umfasst.
-
Weitere Anwendungsbereiche der vorliegenden Offenbarung werden aus der nachstehenden detaillierten Beschreibung ersichtlich. Es versteht sich jedoch, dass die detaillierte Beschreibung und die spezifischen Beispiele zwar auf bevorzugte Ausführungsformen der Offenbarung hinweisen, jedoch nur zur Veranschaulichung gegeben werden, da dem Fachmann verschiedene Änderungen und Modifikationen innerhalb des Geistes und des Umfangs der Offenbarung aus der folgenden detaillierten Beschreibung offensichtlich werden.
-
Figurenliste
-
Um die technischen Lösungen in den Ausführungsformen der vorliegenden Offenbarung oder des Standes der Technik verständlicher zu beschreiben, werden im Folgenden die bei der Beschreibung der Ausführungsformen oder des Standes der Technik verwendeten begleitenden Zeichnungen kurz vorgestellt. Selbstverständlich stellen die begleitenden Zeichnungen nur einige Ausführungsbeispiele der vorliegenden Offenbarung dar, und der Durchschnittsfachmann kann ohne kreativen Aufwand auch andere Zeichnungen gemäß diesen begleitenden Zeichnungen beschaffen.
- 1 veranschaulicht ein Verfahren zur Unterstützung des Fahrens gemäß einigen Ausführungsformen der vorliegenden Offenbarung.
- 2 veranschaulicht ein Verfahren zum Erhalten eines vortrainierten Vorhersagemodells gemäß einigen Ausführungsformen der vorliegenden Offenbarung.
- 3 veranschaulicht eine Vorrichtung zur Unterstützung des Fahrens gemäß einigen Ausführungsformen der vorliegenden Offenbarung.
- 4 veranschaulicht ein Fahrzeug gemäß einigen Ausführungsformen der vorliegenden Offenbarung.
- 5 veranschaulicht ein Blockdiagramm einer Computervorrichtung, die ein Beispiel für die Hardwarevorrichtung ist, die auf die Aspekte der vorliegenden Offenbarung gemäß einigen Ausführungsformen der vorliegenden Offenbarung angewandt werden kann.
-
DETAILLIERTE BESCHREIBUNG
-
In der folgenden detaillierten Beschreibung werden zahlreiche spezifische Details dargelegt, um ein gründliches Verständnis der beschriebenen beispielhaften Ausführungsformen zu ermöglichen. Es ist jedoch für einen Fachmann ersichtlich, dass die beschriebenen Ausführungsformen auch ohne einige oder alle dieser konkreten Details umgesetzt werden können. In anderen beispielhaften Ausführungsformen sind bekannte Strukturen oder Prozessschritte nicht im Detail beschrieben, um das Konzept der vorliegenden Offenbarung nicht unnötig zu verschleiern.
-
Gegenwärtig können Fahrzeuge im Verkehr sicherheitsrelevante Szenen (z. B. überholende Lastwagen auf der Autobahn, Einscheren durch andere Fahrzeuge) mittels Sensoren erkennen, während sich etwas ereignet. Die Fahrzeuge identifizieren jedoch lediglich das Sicherheitsrisiko, während sich etwas ereignet. Die Absichten der sich bewegenden Objekte (z. B. überholende Lastwagen oder eventuell einscherende Fahrzeuge) werden nicht erkannt.
-
Die Absichtserkennung von sich bewegenden Objekten im Verkehr kann Fahrzeuge unterstützen, bevor sich etwas ereignet. Zum Beispiel, wenn angenommen wird, dass zwei Lastwagen (z. B. ein erster Lastwagen und dahinter ein zweiter Lastwagen) auf einer Autobahn auf einem Fahrstreifen rechts vom durch ein Fahrzeug befahrenen Fahrstreifen fahren. Der zweite Lastwagen fährt 20 km/h schneller als der erste Lastwagen. Der Abstand zwischen den beiden Lastwagen wird kürzer. Damit erhöht sich die Absicht des zweiten Lastwagens, den ersten Lastwagen zu überholen. Die Wahrscheinlichkeit eines Sicherheitsrisikos für den Fahrer des Fahrzeugs steigt ebenfalls, da der zweite Lastwagen den ersten überholen kann, indem er in den Fahrstreifen einfährt, in der das Fahrzeug derzeit fährt.
-
Wenn die Bewegungsabsichten der sich im Verkehr bewegenden Objekte (z. B. des zweiten Lastwagens im obigen Beispiel) vorhergesagt werden können, wird die Fahrsicherheit der Fahrer des Fahrzeugs und der Lastwagen erhöht und die Kundenzufriedenheit entsprechend gesteigert.
-
In Anbetracht dessen werden gemäß einigen Ausführungsformen der vorliegenden Offenbarung ein Verfahren und eine Vorrichtung zur Unterstützung des Fahrens durch Vorhersagen der Bewegungsabsichten beweglicher Objekte im Verkehr bereitgestellt.
-
1 veranschaulicht ein Verfahren 100 zur Unterstützung des Fahrens gemäß einigen Ausführungsformen der vorliegenden Offenbarung.
-
Wie in 1 gezeigt, kann das Verfahren 100 in Schritt S110 das Identifizieren eines oder mehrerer Sätze von Videobildern aus dem aufgenommenen Video bezüglich des Umgebungszustands eines Fahrzeugs umfassen. Der eine oder die mehreren Sätze von Videobildern können ein sich bewegendes Objekt umfassen.
-
Das Video kann durch ein Videoaufnahmegerät des Fahrzeugs, z. B. eine Fahrzeugkamera, aufgenommen werden. Das Video kann den Umgebungszustand des Fahrzeugs anzeigen. Das Video kann eine Reihe von Videobildern umfassen. Es sei darauf hingewiesen, dass einige Videofragmente bei der Aufnahme möglicherweise kein sich bewegendes Objekt umfassen, da um das Fahrzeug herum kein sich bewegendes Objekt vorhanden ist, und dass das Analysieren dieser Videofragmente keine Hilfe zur Unterstützung des Fahrens darstellt. Daher werden in diesem Schritt des Verfahrens 100 ein oder mehrere Sätze von Videobildern, die ein sich bewegendes Objekt umfassen, aus dem aufgenommenen Video identifiziert. Videobilder, die das sich bewegende Objekt umfassen, können mit jedem beliebigen Objekterkennungsverfahren identifiziert werden.
-
In einem Beispiel kann das Objekterkennungsverfahren das Abgleichen des aufgenommenen Videos mit Vorlagen für sich bewegende Objekte umfassen. Die Vorlagen können im Voraus bereitgestellt werden.
-
In einem anderen Beispiel kann das Objekterkennungsverfahren die folgenden Vorgänge umfassen: Erhalten von Trainingsbildern, Trainieren eines Objektidentifikationsmodells und Verwenden des Modells im trainierten Zustand zum Identifizieren von Objekten im aufgenommenen Video. Das Objektidentifikationsmodell kann alle bestehenden oder zukünftig entwickelten maschinellen Lernmodelle umfassen.
-
In einigen Ausführungsformen kann das sich bewegende Objekt eines oder mehrere der folgenden Elemente umfassen: ein Fahrzeug, einen Fußgänger, ein Nicht-Kraftfahrzeug (z. B. ein Fahrrad, ein Dreirad, ein Elektrofahrrad, einen motorisierten Rollstuhl oder ein Tierfahrzeug usw.) und ein Tier (z. B. einen Hund, eine Katze, eine Kuh oder andere am Verkehr beteiligte Tiere).
-
Beim Identifizieren eines oder mehrerer Sätze von Videobildern, die im Schritt S110 ein sich bewegendes Objekt umfassen, kann das Verfahren 100 ferner im Schritt S120 das Extrahieren eines oder mehrerer Merkmale, die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, aus dem einen oder den mehreren identifizierten Sätzen von Videobildern umfassen.
-
In einigen Ausführungsformen können das eine oder die mehreren Merkmale, die die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, eines oder mehr umfassen von: Geschwindigkeit des sich bewegenden Objekts, Bewegungsrichtung des sich bewegenden Objekts, Abstand zwischen dem sich bewegenden Objekt und anderen sich bewegenden Objekten im Verkehr, Abstand zwischen dem sich bewegenden Objekt und dem Fahrzeug und Beschleunigung des sich bewegenden Objekts.
-
In einigen Ausführungsformen können Merkmale, die die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, durch Analysieren des einen oder der mehreren Sätze von Videobildern allein oder in Kombination mit Sensordaten des Fahrzeugs extrahiert werden.
-
Das Verfahren 100 kann ferner in Schritt S130 das Vorhersagen der Bewegungsabsicht des sich bewegenden Objekts in dem einen oder den mehreren Sätzen von Videobildern basierend auf dem einen oder den mehreren Merkmalen umfassen.
-
In einigen Ausführungsformen kann die Bewegungsabsicht eines oder mehrere der folgenden Elemente umfassen: Überqueren der Straße, Beschleunigen, Abbremsen, plötzliches Anhalten, Einscheren, Einparken und Überholen.
-
In einem Beispiel, das eine typische Überholszene annimmt, gibt es zwei Videobilder zum Zeitpunkt t1 bzw. zum Zeitpunkt t2 (wobei der Zeitpunkt t2 nach t1 liegt).
-
In einem vereinfachten Szenario kann eine Bewegungsabsicht zum Überholen bestimmt werden, wenn die folgenden Bedingungen erfüllt sind:
- (a) die Geschwindigkeit des sich bewegenden Objekts M2 (z. B. eines zweiten Lastwagens) zum Zeitpunkt t2 ist höher als die Geschwindigkeit des sich bewegenden Objekts M2 zum Zeitpunkt t1; und
- (b) der Abstand zwischen dem sich bewegenden Objekt M2 und dem sich bewegenden Objekt vor M2 (z. B. einem ersten Lastwagen) zum Zeitpunkt t2 ist kleiner als der Abstand dazwischen zum Zeitpunkt t1.
-
Die verwendete Geschwindigkeit des sich bewegenden Objekts und der Abstand können aus dem einen oder den mehreren Sätzen von identifizierten Videobildern extrahiert worden sein und können durch die in Schritt S120 extrahierten Merkmale angezeigt werden. Darüber hinaus können der Zeitpunkt t1 und der Zeitpunkt t2 Zeitstempel der Videobilder sein.
-
In einem komplexeren Szenario kann eine Bewegungsabsicht zum Überholen bestimmt werden, wenn zusätzliche Bedingungen erfüllt sind:
- (c) die Beschleunigung des sich bewegenden Objekts M2 zum Zeitpunkt t2 ist höher als ein Beschleunigungsschwellenwert; und
- (d) der Abstand zwischen dem sich bewegenden Objekt M2 und dem sich bewegenden Objekt vor M2 zum Zeitpunkt t2 ist größer als ein erster Abstandsschwellenwert und kleiner als ein zweiter Abstandsschwellenwert.
-
Es sei darauf hingewiesen, dass sowohl der Beschleunigungsschwellenwert als auch der erste Abstandsschwellenwert und der zweite Abstandsschwellenwert je nach Erfordernis eingestellt werden können.
-
Es sei auch darauf hingewiesen, dass die verwendete Beschleunigung des sich bewegenden Objekts und der Abstand möglicherweise aus dem einen oder den mehreren Sätzen von identifizierten Videobildern extrahiert wurden und durch die in Schritt S120 extrahierten Merkmale angezeigt werden können. Darüber hinaus können der Zeitpunkt t1 und der Zeitpunkt t2 Zeitstempel der Videobilder sein.
-
In einem anderen Beispiel gibt es unter der Annahme einer typischen plötzlichen Anhalteszene zwei Videobilder zum Zeitpunkt t1 und zum Zeitpunkt t2 (wobei der Zeitpunkt t2 nach t1 liegt).
-
In einem vereinfachten Szenario kann eine Bewegungsabsicht zum plötzlichen Anhalten bestimmt werden, wenn die folgenden Bedingungen erfüllt sind:
- (a) die Geschwindigkeit des sich bewegenden Objekts M2 zum Zeitpunkt t2 ist kleiner als die Geschwindigkeit des sich bewegenden Objekts M2 zum Zeitpunkt t1; und
- (b) der Abstand zwischen dem sich bewegenden Objekt M2 und dem sich bewegenden Objekt vor M2 zum Zeitpunkt t2 ist kleiner als der Abstand dazwischen zum Zeitpunkt t1.
-
Es sei darauf hingewiesen, dass die verwendete Geschwindigkeit des sich bewegenden Objekts und der Abstand möglicherweise aus dem einen oder den mehreren Sätzen von identifizierten Videobildern extrahiert wurden und durch die in Schritt S120 extrahierten Merkmale angezeigt werden können. Darüber hinaus können der Zeitpunkt t1 und der Zeitpunkt t2 Zeitstempel der Videobilder sein.
-
In einem komplexeren Szenario kann eine Bewegungsabsicht zum plötzlichen Anhalten bestimmt werden, wenn zusätzliche Bedingungen erfüllt sind:
- (c) der Absolutwert der Beschleunigung des sich bewegenden Objekts M2 zum Zeitpunkt t2 ist größer als ein Beschleunigungsschwellenwert; und
- (d) der Abstand zwischen dem sich bewegenden Objekt M2 und dem sich bewegenden Objekt vor M2 zum Zeitpunkt t2 ist kleiner als ein Abstandsschwellenwert.
-
Es sei darauf hingewiesen, dass sowohl der Beschleunigungsschwellenwert als auch der Abstandsschwellenwert je nach Erfordernis eingestellt werden können.
-
Es sei auch darauf hingewiesen, dass die verwendete Beschleunigung des sich bewegenden Objekts und der Abstand möglicherweise aus dem einen oder den mehreren Sätzen von identifizierten Videobildern extrahiert wurden und durch die in Schritt S120 extrahierten Merkmale angezeigt werden können. Darüber hinaus können der Zeitpunkt t1 und der Zeitpunkt t2 Zeitstempel der Videobilder sein.
-
In noch einem anderen Beispiel gibt es unter der Annahme einer typischen Einscherszene zwei Videobilder zum Zeitpunkt t1 und zum Zeitpunkt t2 (wobei der Zeitpunkt t2 nach t1 liegt).
-
In einem vereinfachten Szenario kann eine Bewegungsabsicht zum Einscheren bestimmt werden, wenn die folgenden Bedingungen erfüllt sind:
- (a) die Geschwindigkeit des sich bewegenden Objekts M2 zum Zeitpunkt t2 ist höher als die Geschwindigkeit des sich bewegenden Objekts M2 zum Zeitpunkt t1;
- (b) der Abstand zwischen dem sich bewegenden Objekt M2 und dem Fahrzeug zum Zeitpunkt t2 ist kleiner als der Abstand dazwischen zum Zeitpunkt t1; und
- (c) die Bewegungsrichtung des sich bewegenden Objekts ist auf den Fahrstreifen des Fahrzeugs gerichtet.
-
Es sei darauf hingewiesen, dass die Geschwindigkeit des sich bewegenden Objekts, der Abstand und die Bewegungsrichtung möglicherweise aus dem einen oder den mehreren Sätzen von identifizierten Videobildern extrahiert wurden und durch die in Schritt S120 extrahierten Merkmale angezeigt werden können. Darüber hinaus können der Zeitpunkt t1 und der Zeitpunkt t2 Zeitstempel der Videobilder sein.
-
In einem komplexeren Szenario kann eine Bewegungsabsicht zum Einscheren bestimmt werden, wenn zusätzliche Bedingungen erfüllt sind:
- (d) die Beschleunigung des sich bewegenden Objekts M2 zum Zeitpunkt t2 ist höher als ein Beschleunigungsschwellenwert; und
- (e) der Abstand zwischen dem sich bewegenden Objekt M2 und dem Fahrzeug zum Zeitpunkt t2 ist kleiner als ein Abstandsschwellenwert.
-
Es sei darauf hingewiesen, dass sowohl der Beschleunigungsschwellenwert als auch der Abstandsschwellenwert je nach Erfordernis eingestellt werden können.
-
Es sei darauf hingewiesen, dass die verwendete Beschleunigung des sich bewegenden Objekts und der Abstand möglicherweise aus dem einen oder den mehreren Sätzen von identifizierten Videobildern extrahiert wurden und durch die in Schritt S120 extrahierten Merkmale angezeigt werden können. Darüber hinaus können der Zeitpunkt t1 und der Zeitpunkt t2 Zeitstempel der Videobilder sein.
-
Es ist zu beachten, dass das Intervall zwischen dem zweiten Zeitpunkt t2 und dem ersten Zeitpunkt t1 (d. h. Δt) in den obigen Beispielen je nach Erfordernis eingestellt werden kann. Beispielsweise kann Δt auf 1 Sekunde, 1 Minute oder je nach Erfordernis auf andere Werte eingestellt werden. Insbesondere werden für ein Intervall von 1 s zwei Videobilder in dem einem oder den mehreren Sätzen von Videobildern mit Δt=1 s aufgenommen, um die Bewegungsabsicht vorherzusagen.
-
In einigen Ausführungsformen kann das Vorhersagen der Bewegungsabsicht des sich bewegenden Objekts in Schritt S130 in dem einen oder den mehreren Sätzen von Videobildern basierend auf dem einen oder den mehreren Merkmalen das Vorhersagen der Bewegungsabsicht des sich bewegenden Objekts in dem einen oder den mehreren Sätzen von Videobildern basierend auf dem einen oder den mehreren Merkmalen unter Verwendung eines vortrainierten Vorhersagemodells umfassen.
-
2 veranschaulicht ein Verfahren 200 zum Erhalten des vortrainierten Vorhersagemodells gemäß einigen Ausführungsformen der vorliegenden Offenbarung.
-
In Schritt S210 werden ein oder mehrere Sätze von Trainingsvideobildern aus vorher aufgezeichneten Trainingsvideofragmenten identifiziert. Der eine oder die mehreren Sätze von Trainingsvideobildern können ein sich bewegendes Trainingsobjekt umfassen. Die vorher aufgezeichneten Trainingsvideofragmente können durch Fahrzeugkameras aufgezeichnet werden. Das Identifizieren des einen oder der mehreren Sätze von Trainingsvideobildern kann ähnlich wie das Identifizieren in Schritt S110 des Verfahrens 100 sein. Alternativ dazu können der eine oder die mehreren Sätze von Trainingsvideobildern durch den Menschen identifiziert werden.
-
In Schritt S220 wird die tatsächliche Bewegungsabsicht des sich bewegenden Trainingsobjekts in dem einen oder den mehreren Trainingsvideobildern bestimmt. In einem vereinfachten Beispiel kann die tatsächliche Bewegungsabsicht des sich bewegenden Objekts durch den Menschen bestimmt werden. Alternativ kann die tatsächliche Bewegungsabsicht durch Analysieren des einen oder der mehreren Sätze von Trainingsvideobildern bestimmt werden.
-
In Schritt S230 werden ein oder mehrere Trainingsmerkmale, die Bewegungseigenschaften des sich bewegenden Trainingsobjekts anzeigen, aus dem einen oder den mehreren Sätzen von Trainingsvideobildern extrahiert.
-
Das eine oder die mehreren Trainingsmerkmale, die die Bewegungseigenschaften des sich bewegenden Trainingsobjekts anzeigen, können eines oder mehrere der folgenden Merkmale umfassen: Geschwindigkeit des sich bewegenden Trainingsobjekts, Bewegungsrichtung des sich bewegenden Trainingsobjekts, Abstand zwischen dem sich bewegenden Trainingsobjekt und anderen sich bewegenden Trainingsobjekten in dem einen oder den mehreren Sätzen von Trainingsvideobildern, Abstand zwischen dem sich bewegenden Objekt und dem Fahrzeug, über das die Trainingsvideofragmente aufgezeichnet werden, und Beschleunigung des sich bewegenden Trainingsobjekts.
-
In einigen Ausführungsformen können Merkmale, die Bewegungseigenschaften des sich bewegenden Trainingsobjekts anzeigen, durch Analysieren der Trainingsvideobilder allein oder in Kombination mit Sensordaten des Fahrzeugs, über das die Trainingsvideofragmente aufgezeichnet werden, extrahiert werden.
-
In Schritt S240 wird die Bewegungsabsicht des sich bewegenden Trainingsobjekts basierend auf dem einem oder den mehreren Sätzen von Trainingsmerkmalen, die aus dem einem oder den mehreren Sätzen von Trainingsvideobildern extrahiert wurden, unter Verwendung eines Vorhersagemodells vorhergesagt, wodurch die vorhergesagte Bewegungsabsicht des sich bewegenden Trainingsobjekts erhalten wird. In einigen Ausführungsformen kann das Vorhersagemodell eines oder mehrere der folgenden Elemente umfassen: generative kontradiktorische Netzwerke, automatisch kodierende Variations-Bayes und Autoregressionsmodell usw.
-
In Schritt S250 werden die Parameter des Vorhersagemodells basierend auf der tatsächlichen Bewegungsabsicht und der vorhergesagten Bewegungsabsicht modifiziert. Insbesondere werden die Parameter des Vorhersagemodells so modifiziert, dass die tatsächliche Bewegungsabsicht mit der vorhergesagten Bewegungsabsicht übereinstimmt.
-
Es sei darauf hingewiesen, dass die Änderung der Parameter des Vorhersagemodells iterativ durchgeführt werden kann.
-
In der Vorhersagephase (z. B. in Schritt S130 des Verfahrens 100) werden ein oder mehrere Merkmale, die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, die aus dem einen oder den mehreren Sätzen von Videobildern extrahiert wurden, in das trainierte Vorhersagemodell eingegeben, wobei die Ausgabe des trainierten Modells die Bewegungsabsicht des sich bewegenden Objekts ist.
-
In einigen Ausführungsformen kann das Verfahren 100 ferner das Informieren des Fahrers des Fahrzeugs über die Bewegungsabsicht des sich bewegenden Objekts umfassen.
-
Beispielsweise kann der Fahrer des Fahrzeugs visuell, akustisch oder haptisch über die Bewegungsabsicht des sich bewegenden Objekts informiert werden. Insbesondere kann der Fahrer des Fahrzeugs durch ein Bild, das auf einem Bildschirm im Fahrzeug angezeigt wird, oder durch Sprache, die über Lautsprecher im Fahrzeug wiedergegeben wird, oder durch haptische Effekte, die durch in den Fahrersitz, den Sicherheitsgurt oder das Lenkrad eingebettete taktile Elemente erzeugt werden, über die Bewegungsabsicht des sich bewegenden Objekts informiert werden.
-
In einigen Ausführungsformen kann die Bewegungsabsicht periodisch vorhergesagt werden. Dementsprechend kann der Fahrer des Fahrzeugs periodisch informiert werden. Der Zeitraum des Vorhersagens kann je nach Erfordernis eingestellt werden.
-
In einigen Ausführungsformen kann das Verfahren 100 ferner das Steuern des Fahrzeugs basierend auf der vorhergesagten Bewegungsabsicht des sich bewegenden Objekts umfassen, um potenzielle Einflüsse auf das Fahrzeug, die mit der Bewegungsabsicht des sich bewegenden Objekts verknüpft sind, zu mildern oder zu reduzieren.
-
Wenn zum Beispiel vorhergesagt wird, dass das sich bewegende Objekt M2 im vorigen Beispiel eine Bewegungsabsicht zum Überholen aufweist, kann die Geschwindigkeit des Fahrzeugs gesteuert (z. B. verlangsamt) werden. Selbst wenn also das sich bewegende Objekt M2 das sich bewegende Objekt M1 vorher tatsächlich überholt und auf den Fahrstreifen einschert, in der das Fahrzeug fährt, wird das Fahrzeug nicht wesentlich beeinträchtigt. Zusätzlich oder alternativ kann das Lenksystem des Fahrzeugs so gesteuert werden, dass das Fahrzeug vor dem Überholen auf einen anderen Fahrstreifen wechseln kann, wodurch die mögliche Beeinflussung des Fahrzeugs durch das Überholen des sich bewegenden Objekts M2 gemildert oder reduziert wird.
-
In einigen Ausführungsformen kann das Verfahren 100 ferner das Bestimmen einer Bewegungswertes der Bewegungsabsicht basierend auf dem einen oder den mehreren Merkmalen umfassen.
-
In einem Beispiel kann der Bewegungswert der Bewegungsabsicht basierend auf einem einfachen Modell berechnet werden, das wie folgt aufgebaut ist.
-
Ausgehend von einem typischen Überholszenario können typische Werte von Merkmalen festgelegt werden, die die Bewegungseigenschaften (z. B. Geschwindigkeit, Abstand, Beschleunigung usw.) des an dem Szenario beteiligten beweglichen Objekts anzeigen. Darüber hinaus können diese Merkmale normalisiert werden. Dann kann ein Vektor durch die Merkmale als normalisiert konstruiert werden, wodurch ein typischer Merkmalsvektor für das Überholszenario erhalten wird.
-
Beim Bestimmen des Bewegungswertes kann der Korrelationskoeffizient zwischen einem Vektor, der durch die tatsächlichen Merkmale, die extrahiert und dann normiert wurden, und dem typischen Merkmalsvektor für das Überholszenario berechnet werden. Der berechnete Korrelationskoeffizient kann als Bewegungswert verwendet werden.
-
In einem anderen Beispiel kann der Bewegungswert durch einen Satz von vortrainierten Vorhersagemodellen berechnet werden, wobei jedes Modell im Satz für eine Bewegungsabsicht dediziert ist.
-
In einem Vorhersagemodell, das für das Überholen dediziert ist, wird in der Trainingsphase der Objektwert für Proben mit tatsächlicher Bewegungsabsicht, die überholen, auf 100 gesetzt, während der Objektwert für Proben mit tatsächlicher Bewegungsabsicht, die nicht überholen, auf 0 gesetzt wird.
-
Es sei darauf hingewiesen, dass Merkmale, die Bewegungseigenschaften von Fahrzeugen in den Proben anzeigen, aus den Trainingsvideobildern extrahiert und als Eingaben des Vorhersagemodells verwendet werden können, während die Ausgabe des Vorhersagemodells als vorhergesagter Ausgabewert verwendet werden kann.
-
Danach werden die Parameter des Vorhersagemodells angepasst, um die Differenz zwischen dem vorhergesagten Ausgabewert aus dem Modell und dem eingestellten Objektwert zu reduzieren. Beispielsweise kann ein Gradientenabstiegsverfahren zum Trainieren des Modells verwendet werden, wodurch ein trainiertes Vorhersagemodell erhalten wird.
-
In der Vorhersagephase können das eine oder die mehreren Merkmale, die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, die aus dem einen oder den mehreren Sätzen von Videobildern extrahiert wurden, in das trainierte Vorhersagemodell für die Bewegungsabsicht eingegeben werden, wobei die Ausgabe des Vorhersagemodells den Bewegungswert des sich bewegenden Objekts für die Bewegungsabsicht ist.
-
Es sei darauf hingewiesen, dass das Verfahren, das in Bezug auf das für das Überholen vorgesehene Vorhersagemodell beschrieben wurde (d. h. einschließlich der Vorgänge in der Trainingsphase und in der Vorhersagephase), auch auf Vorhersagemodelle anwendbar ist, die für andere Bewegungsabsichten dediziert sind.
-
Mit den obigen Vorgängen kann für ein sich bewegendes Objekt ein Satz von Bewegungsabsichten mit entsprechenden Bewegungswerten erhalten werden.
-
In einigen Ausführungsformen kann das Verfahren 100 auch das Informieren des Fahrers des Fahrzeugs über den Bewegungswert der Bewegungsabsicht umfassen.
-
Beispielsweise kann der Fahrer des Fahrzeugs visuell, akustisch oder haptisch über die Bewegungswerte informiert werden. Insbesondere kann der Fahrer des Fahrzeugs durch ein Bild, das auf einem Bildschirm im Fahrzeug angezeigt wird, oder durch Sprache, die über Lautsprecher im Fahrzeug wiedergegeben wird, oder durch haptische Effekte, die durch in den Fahrersitz, den Sicherheitsgurt oder das Lenkrad eingebettete taktile Elemente erzeugt werden, über den Bewegungswert der Bewegungsabsicht informiert werden.
-
Darüber hinaus können die Bewegungswerte sortiert und dem Fahrer des Fahrzeugs in aufsteigender oder absteigender Reihenfolge dargeboten werden. Für die aufsteigende Reihenfolge wird die Bewegungsabsicht mit dem höchsten Bewegungswert zuerst angegeben. Für die absteigende Reihenfolge wird die Bewegungsabsicht mit dem niedrigsten Bewegungswert zuerst angegeben.
-
In einigen Ausführungsformen können die Bewegungswerte periodisch berechnet werden. Dementsprechend kann der Fahrer periodisch informiert werden. Es sei auch darauf hingewiesen, dass der Zeitraum für das Berechnen der Bewegungswerte je nach Erfordernis eingestellt werden kann.
-
3 zeigt eine Vorrichtung 300 zur Unterstützung des Fahrens gemäß einigen Ausführungsformen der vorliegenden Offenbarung.
-
Wie in 3 gezeigt, kann die Vorrichtung 300 eine Kamera 310 und einen Prozessor 320 umfassen. Die Kamera 310 kann dazu ausgelegt sein, Video über den Umgebungszustand eines Fahrzeugs aufzunehmen. Der Prozessor 320 kann dazu ausgelegt sein, einen oder mehrere Sätze von Videobildern aus dem Video zu identifizieren, wobei der eine oder die mehreren Sätze von Videobildern ein sich bewegendes Objekt umfassen können; ein oder mehrere Merkmale, die Bewegungseigenschaften des sich bewegenden Objekts anzeigen, aus dem einen oder den mehreren Sätzen von Videobildern zu extrahieren; und die Bewegungsabsicht des sich bewegenden Objekts in dem einen oder den mehreren Sätzen von Videobildern basierend auf dem einen oder den mehreren Merkmalen vorherzusagen.
-
In einigen Ausführungsformen kann der Prozessor 320 ferner dazu ausgelegt sein, einen Bewegungswert der Bewegungsabsicht basierend auf dem einen oder den mehreren Merkmalen zu bestimmen.
-
In einigen Ausführungsformen kann der Prozessor 320 zum Vorhersagen der Bewegungsabsicht des sich bewegenden Objekts ferner dazu ausgelegt sein: die Bewegungsabsicht des sich bewegenden Objekts in dem einen oder den mehreren Sätzen von Videobildern basierend auf dem einen oder den mehreren Merkmalen durch Verwenden eines vortrainierten Vorhersagemodells vorherzusagen.
-
In einigen Ausführungsformen kann das vortrainierte Vorhersagemodell durch die folgenden Vorgänge erhalten werden: Identifizieren eines oder mehrerer Sätze von Trainingsvideobildern aus vorher aufgezeichneten Videofragmenten, die ein sich bewegendes Trainingsobjekt umfassen; Bestimmen der tatsächlichen Bewegungsabsicht des sich bewegenden Trainingsobjekts in dem einen oder den mehreren Sätzen von Trainingsvideobildern; Extrahieren eines oder mehrerer Trainingsmerkmale, die Bewegungseigenschaften des sich bewegenden Trainingsobjekts anzeigen, aus dem einen oder den mehreren Sätzen von Trainingsvideobildern; Vorhersagen der Bewegungsabsicht des sich bewegenden Trainingsobjekts basierend auf dem einen oder den mehreren Trainingsmerkmalen, die aus dem einen oder den mehreren Sätzen von Trainingsvideobildern extrahiert wurden, unter Verwendung eines Vorhersagemodells; und Modifizieren von Parametern des Vorhersagemodells basierend auf der tatsächlichen Bewegungsabsicht und der vorhergesagten Bewegungsabsicht.
-
In einigen Ausführungsformen kann der Prozessor 320 ferner dazu ausgelegt sein: den Fahrers des Fahrzeugs über die Bewegungsabsicht des sich bewegenden Objekts zu informieren.
-
In einigen Ausführungsformen kann der Prozessor 320 ferner dazu ausgelegt sein: den Fahrer des Fahrzeugs über den Bewegungswert der Bewegungsabsicht zu informieren.
-
In einigen Ausführungsformen kann der Prozessor 320 ferner dazu ausgelegt sein: das Fahrzeugs basierend auf der vorhergesagten Bewegungsabsicht des sich bewegenden Objekts zu steuern, um potenzielle Einflüsse auf das Fahrzeug, die mit der Bewegungsabsicht des sich bewegenden Objekts verknüpft sind, zu mildern oder zu reduzieren.
-
4 veranschaulicht ein Fahrzeug 400 gemäß einigen Ausführungsformen der vorliegenden Offenbarung. Das Fahrzeug 400 kann die Vorrichtung 300 umfassen.
-
In einigen Ausführungsformen kann die Kamera 310 der Vorrichtung 300 oben auf dem Fahrzeug montiert sein, um Videos über den Umgebungszustand des Fahrzeugs 400 aufzunehmen. Der Prozessor 320 kann im Inneren des Fahrzeugs 400 eingebettet sein.
-
Gemäß einem anderen Aspekt der vorliegenden Offenbarung ist ein nichtflüchtiges computerlesbares Medium vorgesehen, das darauf gespeicherte Anweisungen zum Durchführen des Verfahrens 100 oder des Verfahrens 200 umfasst.
-
5 veranschaulicht ein Blockdiagramm einer Computervorrichtung, die ein Beispiel für die Hardwarevorrichtung ist, die auf die Aspekte der vorliegenden Offenbarung gemäß einigen Ausführungsformen der vorliegenden Offenbarung angewandt werden kann.
-
Mit Bezug auf 5 wird nun eine Computervorrichtung 500 beschrieben, die ein Beispiel für die Hardwarevorrichtung ist, die auf die Aspekte der vorliegenden Offenbarung angewandt werden kann. Die Computervorrichtung 500 kann jede Maschine sein, die zum Durchführen von Verarbeitungen und/oder Berechnungen ausgelegt ist, und kann eine Arbeitsstation, ein Server, ein Desktop-Computer, ein Laptop-Computer, ein Tablet-Computer, ein persönlicher Datenassistent, ein Smartphone, ein Bordcomputer oder eine Kombination davon sein. Die oben genannten verschiedenen Vorrichtungen/Server/Client-Geräte können ganz oder mindestens teilweise durch die Computervorrichtung 500 oder eine ähnliche Vorrichtung oder ein ähnliches System implementiert sein.
-
Die Computervorrichtung 500 kann Elemente umfassen, die möglicherweise über eine oder mehrere Schnittstellen mit einem Bus 502 verbunden sind oder mit diesem kommunizieren. Zum Beispiel kann die Computervorrichtung 500 den Bus 502 und einen oder mehrere Prozessoren 504, ein oder mehrere Eingabevorrichtungen 506 und eine oder mehrere Ausgabevorrichtungen 508 umfassen. Der eine oder die mehreren Prozessoren 504 können alle Arten von Prozessoren sein und können einen oder mehrere Universalprozessoren und/oder einen oder mehrere Spezialprozessoren (wie z. B. spezielle Verarbeitungschips) umfassen, sind aber nicht darauf beschränkt. Die Eingabevorrichtungen 506 können alle Arten von Vorrichtungen sein, die Informationen in die Computervorrichtung eingeben können, und können eine Maus, eine Tastatur, einen Touchscreen, ein Mikrofon und/oder eine Fernbedienung umfassen, sind aber nicht darauf beschränkt. Die Ausgabevorrichtungen 508 können alle Arten von Vorrichtungen sein, die Informationen darstellen können, und können einen Lautsprecher, ein Video-/Audio-Ausgabeendgerät, einen Vibrator und/oder einen Drucker umfassen, sind aber nicht darauf beschränkt. Die Computervorrichtung 500 kann auch nichtflüchtige Speichervorrichtungen 510 umfassen oder mit diesen verbunden sein, die beliebige Speichervorrichtungen sein können, die nichtflüchtig sind und Datenspeicherungen implementieren können, und ein Plattenlaufwerk, eine optische Speichervorrichtung, einen Solid-State-Speicher, eine Diskette, eine flexible Platte, eine Festplatte, ein Magnetband oder ein anderes magnetisches Medium, eine Compact Disc oder ein anderes optisches Medium, ein ROM (Nur-Lese-Speicher), ein RAM (Direktzugriffsspeicher), ein Cache-Speicher und/oder ein anderer Speicherchip oder eine Kassette und/oder ein anderes Medium, aus dem ein Computer Daten, Anweisungen und/oder Code lesen kann, umfassen können, ohne darauf begrenzt zu sein. Die nichtflüchtigen Speichervorrichtungen 510 können von einer Schnittstelle abtrennbar sein. Die nichtflüchtigen Speichervorrichtungen 510 können Daten/Anweisungen/Codes zum Implementieren der oben beschriebenen Verfahren und Schritte aufweisen. Die Computervorrichtung 500 kann auch eine Kommunikationsvorrichtung 512 umfassen. Die Kommunikationsvorrichtung 512 kann jede Art von Vorrichtung oder System sein, das die Kommunikation mit externen Vorrichtungen und/oder mit einem Netzwerk ermöglicht, und kann ein Modem, eine Netzwerkkarte, eine Infrarot-Kommunikationsvorrichtung, eine drahtlose Kommunikationsvorrichtung und/oder einen Chipsatz wie z. B. eine Bluetooth™-Vorrichtung, eine 1302.11-Vorrichtung, eine WLAN-Vorrichtung, eine WiMAX-Vorrichtung, Mobilfunkkommunikationseinrichtungen und/oder Ähnliches umfassen, ist aber nicht darauf beschränkt.
-
Wenn die Computervorrichtung 500 als Bordvorrichtung verwendet wird, kann sie auch mit externen Vorrichtungen verbunden werden, z. B. einem GPS-Empfänger, Sensoren zur Erfassung verschiedener Umgebungsdaten wie einem Beschleunigungssensor, einem Raddrehzahlsensor, einem Gyroskop und so weiter. Auf diese Weise kann die Computervorrichtung 500 z. B. Standortdaten und Sensordaten empfangen, die die Fahrsituation des Fahrzeugs anzeigen. Wenn die Computervorrichtung 500 als Bordvorrichtung verwendet wird, kann sie auch mit anderen Einrichtungen (wie z. B. einem Motorsystem, einem Scheibenwischer, einem Anti-Blockier-Bremssystem oder Ähnlichem) verbunden werden, um die Fahrt und den Betrieb des Fahrzeugs zu steuern.
-
Darüber hinaus können die nichtflüchtigen Speichervorrichtungen 510 Karteninformationen und Softwareelemente aufweisen, sodass der Prozessor 504 eine Verarbeitung zur Routenführung durchführen kann. Darüber hinaus kann die Ausgabevorrichtung 506 ein Display zum Anzeigen der Karte, der Standortmarkierung des Fahrzeugs und auch Bilder, die die Fahrsituation des Fahrzeugs anzeigen, umfassen. Die Ausgabevorrichtung 506 kann auch einen Lautsprecher oder eine Schnittstelle mit einem Ohrhörer für eine akustische Führung umfassen.
-
Der Bus 502 kann einen Industry Standard Architecture (ISA)-Bus, einen Micro Channel Architecture (MCA)-Bus, einen Enhanced ISA (EISA)-Bus, einen lokalen Bus der Video Electronics Standards Association (VESA) und einen Peripheral Component Interconnect (PCI)-Bus umfassen, ist aber nicht darauf beschränkt. Insbesondere bei einer Bordvorrichtung kann der Bus 502 auch einen Controller Area Network (CAN)-Bus oder andere Architekturen enthalten, die für die Anwendung in einem Fahrzeug entwickelt wurden.
-
Die Computervorrichtung 500 kann auch einen Arbeitsspeicher 514 umfassen, der jede Art von Arbeitsspeicher sein kann, der Anweisungen und/oder Daten speichern kann, die für das Arbeiten des Prozessors 504 nützlich sind, und kann einen Direktzugriffsspeicher und/oder eine Nur-Lese-Speichervorrichtung umfassen, ist aber nicht darauf beschränkt.
-
Softwareelemente können sich im Arbeitsspeicher 514 befinden, einschließlich, aber nicht beschränkt auf ein Betriebssystem 516, ein oder mehrere Anwendungsprogramme 518, Treiber und/oder andere Daten und Codes. Anweisungen zum Durchführen der oben beschriebenen Verfahren und Schritte können in einem oder mehreren Anwendungsprogrammen 518 enthalten sein, und die Einrichtungen/Einheiten/Elemente der oben genannten verschiedenen Vorrichtungen/Server/Client-Geräte können durch den Prozessor 504 implementiert werden, der die Anweisungen des einen oder der mehreren Anwendungsprogramme 518 einliest und ausführt.
-
Es versteht sich zudem, dass Abweichungen gemäß den spezifischen Anforderungen vorgenommen werden können. Zum Beispiel kann auch individuell angepasste Hardware verwendet werden, und/oder bestimmte Elemente können in Hardware, Software, Firmware, Middleware, Mikrocode, Hardware-Beschreibungssprachen oder einer Kombination davon implementiert werden. Ferner kann eine Verbindung zu anderen Computervorrichtungen, wie z. B. Netzwerk-Ein-/Ausgabevorrichtungen, verwendet werden. Beispielsweise können einige oder alle der offenbarten Verfahren und Vorrichtungen durch Programmieren von Hardware (z. B. einer programmierbare Logikschaltung mit feldprogrammierbaren Gate-Arrays (FPGA) und/oder programmierbaren Logik-Arrays (PLA)) mit einer Assemblersprache oder einer Hardware-Programmiersprache (wie VERILOG, VHDL, C++) unter Verwendung der Logik und des Algorithmus gemäß der vorliegenden Offenbarung implementiert werden.
-
Obwohl Aspekte der vorliegenden Offenbarung bei weitem mit Bezug auf die Zeichnungen beschrieben sind, sind die oben beschriebenen Verfahren, Systeme und Vorrichtungen lediglich Beispiele, und der Umfang der vorliegenden Offenbarung ist durch diese Aspekte nicht eingeschränkt, sondern wird nur durch die beigefügten Ansprüche und deren Entsprechungen definiert. Verschiedene Elemente können weggelassen oder durch gleichwertige Elemente ersetzt werden. Darüber hinaus können die Schritte in einer anderen Reihenfolge durchgeführt werden, als in der vorliegenden Offenbarung beschrieben ist. Fernerhin können verschiedene Elemente auf verschiedene Art und Weise kombiniert werden. Wichtig ist auch, dass im Zuge der Weiterentwicklung der Technologie viele der beschriebenen Elemente durch gleichwertige Elemente ersetzt werden können, die nach der vorliegenden Offenbarung entstehen.