-
GEBIET DER TECHNIK
-
Die vorliegende Offenbarung betrifft eine computergesteuerte Fahrzeugposenschätzung und insbesondere eine ereignisbasierte Fahrzeugposenschätzung unter Verwendung monochromatischer Bildgebung.
-
ALLGEMEINER STAND DER TECHNIK
-
In geschlossenen Räumen, wie etwa Parkhäusern, ist eine genaue Erfassung und Lokalisierung von Fahrzeugen für die Verkehrssteuerung durch ein Terminal und andere Anwendungen, bei denen ein zentrales Terminal den Fahrzeugverkehr lokalisiert und leitet, zwingend erforderlich. Eine derartige Lokalisierung wird besonders wichtig sein, wenn autonome Fahrzeuge alltäglich sind. Ein Problem bei der Verkehrslenkung ist die Signalübertragung in umschlossenen Räumen wie Parkhäusern. Die genaue Position, die Abmessungen und Ausrichtung des Fahrzeugs sind erforderlich, um die Fahrzeuge in engen Räumen im Innenbereich korrekt zu leiten. Im Inneren von vielen Strukturen sind Signale eines globalen Positionsbestimmungssystems (Global Positioning System - GPS) häufig nicht empfangbar und können keine verwendbaren Fahrzeuglokalisierungsinformationen bereitstellen. Das ist problematisch, weil eine genaue Erfassung und Lokalisierung von Fahrzeugen für Anwendungen wie die Verkehrssteuerung durch ein Terminal, bei denen das Terminal die Fahrzeuge lokalisiert und leitet, zwingend erforderlich ist.
-
Einige herkömmliche Lokalisierungssysteme können sensorische Systeme verwenden, die RGB-Kameras, LiDAR oder eine andere sensorische Ausrüstung beinhalten, um sich bewegende Objekte als Fahrzeuge zu identifizieren und eine Posenschätzung bereitzustellen, die die erfassten Objekte ausrichtet und Fahrzeugbewegungsbahnen verfolgt. Sensorbasierte Ansätze zur Fahrzeugposenschätzung sind aufgrund der Notwendigkeit von mehreren hochentwickelten Kameras und Sensoren häufig kostspielig.
-
Das kontinuierliche Versuchen, Fahrzeuge zu erfassen verbraucht Leistung und ist ineffektiv, wenn der Verkehrsfluss in einem Parkhaus sehr gering ist. Andere Ausgestaltungsansätze beinhalten das Integrieren von Sensoren in die Fahrzeuge, anstatt Kameras in dem Innenbereich des Parkhauses zu montieren. Derartige Umsetzungen können zu kostspielig sein und können in Situationen, wenn das Fahrzeug für ausgedehnte Zeiträume geparkt ist, möglicherweise nicht über lange Zeiträume verwendbar sein, da die Kamerasysteme immer aufzeichnen und Batterieressourcen aufbrauchen. Kamerabasierte Systeme mit reduziertem Energieverbrauch, die monochromatische Kameras verwenden, wurden ebenfalls in Betracht gezogen, aber bei bestehenden monochromatischen kamerabasierten Erfassungsverfahren können Fahrzeuge mit einem größeren Abstand in Bezug auf den Kamerastandort nicht genau erfasst und in einem Weltkoordinatensystem lokalisiert werden.
-
Die Offenbarung in dieser Schrift wird in Bezug auf diese und andere Erwägungen dargelegt.
-
KURZDARSTELLUNG
-
Es wird ein computerimplementiertes Verfahren zum Schätzen einer Fahrzeugpose für ein sich bewegendes Fahrzeug beschrieben, das das Erhalten eines monochromatischen Bildes einer Betriebsumgebung über einen Prozessor, der in Kommunikation mit einer monochromatischen Kamera angeordnet ist, und das Erfassen eines Ereignisfelds in dem monochromatischen Bild, das eine Vielzahl von Pixeln zeigt, die dem sich bewegenden Fahrzeug zugeordnet sind, beinhaltet. Das Verfahren beinhaltet ferner das Erzeugen einer Karte des optischen Flusses unter Verwendung eines unüberwachten Netzes zur Vorhersage des optischen Flusses, um einen optischen Fluss für jedes Pixel in dem monochromatischen Bild vorherzusagen. Die Karte des optischen Flusses beinhaltet ein Rot-Grün-Blau(RGB)-Feld, das Farbinformationen aufweist, die einer Geschwindigkeit für das sich bewegende Fahrzeug zugeordnet sind. Das System erzeugt eine Pixelebenenereignismaske, die das RGB-Feld beinhaltet, und schätzt die Fahrzeugpose für das sich bewegende Fahrzeug.
-
Figurenliste
-
Die detaillierte Beschreibung wird unter Bezugnahme auf die beigefügten Zeichnungen dargelegt. Die Verwendung der gleichen Bezugszeichen kann ähnliche oder identische Elemente angeben. Für verschiedene Ausführungsformen können andere Elemente und/oder Komponenten als die in den Zeichnungen veranschaulichten genutzt werden und einige Elemente und/oder Komponenten sind in verschiedenen Ausführungsformen unter Umständen nicht enthalten. Die Elemente und/oder Komponenten in den Figuren sind nicht zwingend mal stabsgetreu gezeichnet. Für die gesamte Offenbarung gilt, dass Ausdrücke im Singular und Plural je nach Kontext synonym verwendet werden können.
- 1 bildet eine beispielhafte Umgebung ab, in der Techniken und Strukturen zum Bereitstellen der in dieser Schrift offenbarten Systeme und Verfahren umgesetzt sein können.
- 2 veranschaulicht eine beispielhafte Karte des optischen Flusses von einem unüberwachten Netz zur Vorhersage des optischen Flusses gemäl der vorliegenden Offenbarung.
- 3 veranschaulicht ein Blockdiagramm eines beispielhaften Rechensystems zum Betreiben des unüberwachten Netzes zur Vorhersage des optischen Flusses gemäl der vorliegenden Offenbarung.
- 4 bildet ein Blockdiagramm des unüberwachten Netzes zur Vorhersage des optischen Flusses aus 3 gemäl der vorliegenden Offenbarung ab.
- 5 bildet eine Farbkarte des optischen Flusses und eine Pixelebenenereignismaske gemäl der vorliegenden Offenbarung ab.
- 6 veranschaulicht eine beispielhafte Ausgabe eines Netzes zur Vorhersage eines Fahrzeugmodells und von Rollen-Nicken-Gieren (Roll-Pitch-Yaw - RPY) gemäl der vorliegenden Offenbarung.
- 7 veranschaulicht ein beispielhaftes RPY-Vorhersagenetz für Fahrzeuge gemäl der vorliegenden Offenbarung.
- 8 bildet ein Funktionsblockdiagramm eines Verfahrens gemäl der vorliegenden Offenbarung ab.
-
DETAILLIERTE BESCHREIBUNG
-
Die Offenbarung wird nachfolgend unter Bezugnahme auf die beigefügten Zeichnungen, in denen beispielhafte Ausführungsformen der Offenbarung gezeigt sind, ausführlicher beschrieben und soll nicht einschränkend sein.
-
1 bildet eine beispielhafte Umgebung ab, in der Techniken und Strukturen zum Bereitstellen der in dieser Schrift offenbarten Systeme und Verfahren umgesetzt sein können. Eines der Hauptprobleme bei der Verkehrslenkung sind umschlossene Räume. 1 bildet einen beispielhaften parkhausähnlichen Raum 100 ab, in dem ein Fahrzeug 105 betrieben werden kann. In einem parkhausähnlichen Raum ist GPS häufig nicht funktionsfähig und kann keine Fahrzeuglokalisierungsinformationen bereitstellen, die zum Steuern von Stationen zum Lenken des Verkehrs innerhalb der umschlossenen Umgebung verwendet werden können. Die Schwierigkeit, Signale aus diesen umschlossenen Räumen zu senden und zu empfangen, ist problematisch, da eine genaue Erfassung und Lokalisierung des Fahrzeugs 105 für Anwendungen, wie etwa die Verkehrssteuerung durch ein Terminal, zwingend erforderlich sein kann, bei denen ein Terminal das Fahrzeug 105 zum Parken, für Dienste, wie etwa Aufladen, Wartung, Abholung/Absetzen usw., lokalisiert und zu einer Station (nicht in 1 gezeigt) leitet. Einige herkömmliche Lokalisierungssysteme können sensorische Systeme verwenden, die RGB-Kameras, LiDAR und andere sensorische Ausrüstung beinhalten können, um sich bewegende Objekte als Fahrzeuge zu identifizieren und eine Posenschätzung zum Ausrichten der erfassten Objekte und Verfolgen der Bewegungsbahn bereitzustellen. Derartige sensorische Ansätze zur Fahrzeugposenschätzung sind aufgrund der Notwendigkeit von mehreren Kameras und Sensoren kostspielig, da sie in der Regel an mehreren Betrachtungspunkten innerhalb des umschlossenen Raums angeordnet sind.
-
Wie in 1 gezeigt, kann eine monochromatische Kamera 110 an einem oder mehreren Betrachtungsstandorten angeordnet sein, um Bilder von Fahrzeugen aufzunehmen, die innerhalb eines Sichtfelds 120 der monochromatischen Kamera 110 betrieben werden. Einige herkömmliche Lokalisierungssysteme können sensorische Systeme verwenden, die RGB-Kameras, LiDAR und eine andere sensorische Ausrüstung beinhalten können, um sich bewegende Objekte als Fahrzeuge zu identifizieren, eine Posenschätzung zum Ausrichten der erfassten Objekte und Verfolgen der Bewegungsbahn bereitzustellen. Derartige sensorische Ansätze zur Fahrzeugposenschätzung können aufgrund der Notwendigkeit von mehreren Kameras und Sensoren kostspielig sein, da sie in der Regel an mehreren Betrachtungspunkten innerhalb des geschlossenen Raums angeordnet sind. Gemäl einer Ausführungsform, wie sie in 1 gezeigt ist, kann die monochromatische Kamera 110 eine monochromatische Kamera sein, die als Teil eines ereignisbasierten Fahrzeugposenschätzungssystems 300 (wie in 3 gezeigt) betrieben wird.
-
Die monochromatische Kamera 110 kann statisch an einer Fläche 115 montiert sein. Anstatt kontinuierlich sich bewegende Objekte und Fahrzeuge in der Betriebsumgebung 100 zu erfassen, kann die monochromatische Kamera 110 Fahrzeuge nur dann erfassen, wenn eine Bewegung in dem Sichtfeld 120 erfasst wird. Das System (z. B. das Ereigniserfassungssystem 300) kann ein Ereigniserfassungssystem durchführen und eine Karte des optischen Flusses als Reaktion auf das Bestimmen, dass ein Fahrzeug (z. B. das Fahrzeug 105) in der Betriebsumgebung 100 betrieben wird, erzeugen. Ein Ereignis kann im vorliegenden Zusammenhang beinhalten, dass sich ein Objekt innerhalb des Sichtfelds 120 der monochromatischen Kamera 110 bewegt.
-
2 veranschaulicht eine beispielhafte Ereignismaskenansicht 200, die durch ein unüberwachtes Netz zur Vorhersage des optischen Flusses (z. B. das unüberwachte Netz 370 zur Vorhersage des Flusses, wie es in Bezug auf 3 gezeigt ist) erzeugt wird, das als Teil des Ereigniserfassungssystems 300 gemäl der vorliegenden Offenbarung betrieben wird. Als Reaktion auf das Erfassen eines sich bewegenden Objekts innerhalb des Sichtfelds 120 kann das Netz 370 zur Vorhersage des Flusses eine ereignismaskierte Ansicht 205 erzeugen, die eine maskierte Ansicht des Fahrzeugs 105 beinhalten kann. Die maskierte Ansicht 205 kann ein Blob von Pixeln sein, das ein Volumen oder eine Form umfasst, die das Fahrzeug 105 darstellen. Die maskierte Ansicht 205 kann verwendet werden, um eine Ereigniskarte (in dieser Schrift als eine Ereignismaske bezeichnet) zu erzeugen, wie in 4 gezeigt.
-
Bevor die Ereignismaske ausführlicher erörtert wird, wird im folgenden Abschnitt eine kurze Einführung in das System 300 beschrieben. 3 veranschaulicht ein Blockdiagramm eines beispielhaften Ereigniserfassungssystems 300 (nachfolgend „System 300“) zur Verwendung bei der Umsetzung der in dieser Schrift beschriebenen Ausführungsformen. Das in dieser Schrift beschriebene System 300 kann in Hardware, Software (z. B. Firmware) oder einer Kombination davon umgesetzt sein.
-
Wie in 3 gezeigt kann das System 300 den einen oder die mehreren Prozessor(en) 305, einen Speicher 310, der kommunikativ mit dem einen oder den mehreren Prozessor(en) 305 gekoppelt ist, und einen oder mehrere Eingabe-/Ausgabeadapter 315 beinhalten, die kommunikativ mit externen Vorrichtungen verbunden werden können. Die Eingabe-/Ausgabeadapter 315 können zum Beispiel die monochromatische Kamera 210 beinhalten.
-
Die monochromatische Kamera 210 kann ein oder mehrere digitale Sensoren, die keine Farbfilteranordnung beinhalten, sein und/oder diese beinhalten. Somit kann die monochromatische Kamera 210 das gesamte Licht aufzeichnen, das auf jedes Pixel fällt. Da kein Licht durch Farbfilter verloren geht, kann die Sensorempfindlichkeit der monochromatischen Kamera 210 höher sein als die Empfindlichkeit eines ähnlichen Rot-Grün-Blau(RGB)-Kamerasensorsystems, während weniger Leistung für den Betrieb verbraucht wird.
-
Die Eingabe-/Ausgabeadapter 315 können über eine Speicherschnittstelle 320 mit einer oder mehreren internen und/oder externen Speichervorrichtungen, auf denen eine oder mehrere Datenbank(en) gespeichert ist/sind, eine Wirkverbindung herstellen und Informationen mit diesen kommunizieren. In einer beispielhaften Ausführungsform kann/können die Datenbank(en) eine oder mehrere Datenbank(en) 330 beinhalten, die Fahrzeugeigenschaften, wie sie nachstehend in Bezug auf 7 beschrieben sind, beinhalten können.
-
Das System 300 kann einen oder mehrere Netzwerkkommunikationsadapter 325 beinhalten, die dazu in der Lage sind, das System 300 kommunikativ mit einem oder mehreren Netzwerken 307 zu verbinden. In einigen beispielhaften Ausführungsformen kann/können das/die Netzwerk(e) 307 eine Telekommunikationsnetzinfrastruktur sein oder beinhalten, die eine mobile Vorrichtung (nicht gezeigt) oder eine andere Vorrichtung, wie etwa eine drahtlose Kamera, mit dem/den Server(n) 125 verbinden kann. In derartigen Ausführungsformen kann das System 300 ferner einen oder mehrere Kommunikationsadapter 340 beinhalten. Das System 300 kann ferner eine oder mehrere Eingabevorrichtungen 345 und/oder eine oder mehrere Ausgabevorrichtungen 350 über den/die E/A-Adapter 315 beinhalten und/oder mit diesen verbunden sein.
-
Der eine oder die mehreren Prozessor(en) 305 sind gemeinsam eine Hardwarevorrichtung zum Ausführen von Programmanweisungen (auch bekannt als Software), die in einem computerlesbaren Speicher (z. B. dem Speicher 310) gespeichert sind. Der eine oder die mehreren Prozessor(en) 305 kann/können ein mal geschneiderter oder handelsüblicher Prozessor, eine zentrale Verarbeitungseinheit (Central Processing Unit - CPU), eine Vielzahl von CPUs, ein Hilfsprozessor unter mehreren anderen Prozessoren, die dem/den Server(n) 125 zugeordnet sind, ein halbleiterbasierter Mikroprozessor (in der Form eines Mikrochips oder Chipsatzes) oder im Allgemeinen eine beliebige Vorrichtung zum Ausführen von Anweisungen sein.
-
Der eine oder die mehreren Prozessoren 305 können in Kommunikation mit einer oder mehreren Speichervorrichtungen (z. B. dem Speicher 310 und/oder einer oder mehreren externen Datenbank(en) 330 usw.) über eine Speicherschnittstelle 320 angeordnet sein. Die Speicherschnittstelle 320 kann zudem eine Verbindung mit einer oder mehreren Speichervorrichtungen, die unter anderem eine oder mehrere Datenbank(en) 330 und/oder ein oder mehrere anderer Speicherlaufwerke (in 2 nicht gezeigt) beinhalten, die zum Beispiel ein Wechselplattenlaufwerk, einen Speicher eines Fahrzeugrechensystems, Cloud-Speicher usw. beinhalten, unter Verwendung von Verbindungsprotokollen, wie etwa Serial Advanced Technology Attachment (SATA), Integrated Drive Electronics (IDE), Universal Serial Bus (USB), Fibre Channel, Small Computer Systems Interface (SCSI) usw., herstellen.
-
Der Speicher 310 kann ein beliebiges oder eine Kombination aus flüchtigen Speicherelementen (z. B. dynamischem Direktzugriffsspeicher (Dynamic Random Access Memory - DRAM), synchronem dynamischem Direktzugriffsspeicher (Synchronous Dynamic Random Access Memory - SDRAM) usw.) beinhalten und kann ein beliebiges oder mehrere beliebige nichtflüchtige Speicherelemente (z. B. löschbaren programmierbaren Nurlesespeicher (Erasable Programmable Read-Only Memory - EPROM), Flash-Speicher, elektronisch löschbaren programmierbaren Nurlesespeicher (Electronically Erasable Programmable Read-Only Memory - EEPROM), programmierbaren Nurlesespeicher (Programmable Read-Only Memory - PROM) usw.) beinhalten.
-
Die Anweisungen in dem Speicher 310 können ein oder mehrere separate Programme beinhalten, die jeweils eine geordnete Auflistung computerausführbarer Anweisungen zum Umsetzen logischer Funktionen beinhalten können. In dem Beispiel aus 3 können die Anweisungen in dem Speicher 310 ein Betriebssystem 355 beinhalten. Das Betriebssystem 355 kann die Ausführung anderer Computerprogramme steuern, wie zum Beispiel die Instanziierung eines Netzes zur Vorhersage eines Fahrzeugmodells und von Rollen-Nicken-Gieren, die Instanziierung eines unüberwachten Netzes zur Vorhersage des optischen Flusses und/oder Anwendungen zur Verkehrssteuerung durch ein Terminal, die Fahrzeugposeninformationen verwenden, um den Verkehr in der Betriebsumgebung 100 zu steuern.
-
In einer beispielhaften Ausführungsform kann/können der/die Prozessor(en) 305 ein monochromatisches Bild (in 3 nicht gezeigt) der Betriebsumgebung 100 erhalten, ein Ereignisfeld erfassen, das eine Vielzahl von Pixeln beinhaltet, die dem sich bewegenden Fahrzeug 105 zugeordnet sind, eine Karte des optisches Flusses erzeugen, um einen optischen Fluss für jedes Pixel in dem monochromatischen Bild vorherzusagen und auf Grundlage der Karte des optischen Flusses eine Pixelebenenereignismaske zu erzeugen, die ein Rot-Grün-Blau (RGB)-Feld umfasst. Das System 300 kann unter Verwendung eines Flussvorhersagenetzes 370 eine Fahrzeugpose für das sich bewegende Fahrzeug 105 unter Verwendung des optischen Flusses schätzen.
-
Die in dem Speicher 310 gespeicherten Programmanweisungen können ferner Anwendungsdaten 360 und Anweisungen zum Steuern des Systems 300 und/oder Interagieren mit diesem über eine Benutzerschnittstelle 365 beinhalten.
-
Der E/A-Adapter 315 kann eine Vielzahl von Eingabevorrichtungen 345 mit dem/den Server(n) 125 verbinden. Die Eingabevorrichtungen können zum Beispiel eine Tastatur, eine Maus, ein Mikrofon, einen Sensor usw. beinhalten. Die Ausgabevorrichtung 350 kann zum Beispiel eine Anzeige, einen Lautsprecher, einen Touchscreen usw. beinhalten.
-
Der E/A-Adapter 315 kann ferner einen Anzeigeadapter beinhalten, der mit einer oder mehreren Anzeigen gekoppelt ist. Der E/A-Adapter 315 kann dazu konfiguriert sein, eine oder mehrere Eingabe-/Ausgabe-(E/A-)Vorrichtungen 350 mit dem/den Server(n) 125 wirkzukoppeln. Zum Beispiel kann der E/A-Adapter 315 eine Tastatur und eine Maus, einen Touchscreen, einen Lautsprecher, eine haptische Ausgabevorrichtung oder eine andere Ausgabevorrichtung verbinden. Die Ausgabevorrichtungen 350 können unter anderem einen Drucker, einen Scanner und/oder dergleichen beinhalten. Andere Ausgabevorrichtungen können ebenfalls beinhaltet sein, obwohl dies in 3 nicht gezeigt ist. Schließlich können die mit dem E/A-Adapter 315 verbindbaren E/A-Vorrichtungen ferner Vorrichtungen beinhalten, die sowohl Eingaben als auch Ausgaben übermitteln, zum Beispiel unter anderem eine Netzwerkschnittstellenkarte (Network Interface Card - NIC) oder einen Modulator/Demodulator (für den Zugriff auf andere Dateien, Vorrichtungen, Systeme oder ein Netzwerk), einen Funkfrequenz-(RF-) oder einen anderen Sendeempfänger, eine Telefonschnittstelle, eine Brücke, einen Router und dergleichen.
-
Gemäl einigen beispielhaften Ausführungsformen kann/können der/die Server 125 einen Mobilkommunikationsadapter 340 beinhalten. Der Mobilkommunikationsadapter 340 kann ein globales Positionsbestimmungssystem (GPS), Mobilfunk-, Mobil- und/oder andere Kommunikationsprotokolle für die drahtlose Kommunikation beinhalten. Es versteht sich, dass das GPS in einigen Ausführungsformen, in denen sich die Betriebsumgebung 100 möglicherweise nicht in einem geschlossenen Raum befindet, Koordinaten zur Lokalisierung des Fahrzeugs 105 bereitstellen kann.
-
In einigen Ausführungsformen kann/können der/die Server 125 ferner einen Kommunikationsadapter 340 zum Koppeln an das eine oder die mehreren Netzwerk(e) 307 beinhalten. Das Netzwerk/die Netzwerke 307 kann/können (ein) Netzwerk(e), das/die auf dem Internet Protocol (IP) basiert/basieren, zur Kommunikation zwischen dem/den Server(n) 125 und einer beliebigen externen Vorrichtung beinhalten. Das/Die Netzwerk(e) 307 kann/können Daten zwischen dem/den Server(n) 125 und Vorrichtungen und/oder Systemen außerhalb des Servers/der Server 125 übertragen und empfangen. In einer beispielhaften Ausführungsform kann es sich bei dem/den Netzwerk(en) 307 um ein verwaltetes IP-Netzwerk handeln, das von einem Dienstanbieter geführt wird. Das/Die Netzwerk(e) 307 kann/können auf eine drahtlose Weise umgesetzt werden, z. B. unter Verwendung von Protokollen und Technologien zur drahtlosen Kommunikation, wie etwa Wi-Fi, WiMAX usw. Das/Die Netzwerk(e) 307 kann/können zudem mit einem drahtgebundenen Netzwerk, z. B. einem Ethernet-Netzwerk, einem Controller Area Network (CAN) usw., das eine beliebige drahtgebundene Konnektivität aufweist, die z. B. eine RS232-Verbindung beinhaltet usw., verbunden sein und/oder dieses beinhalten. Das/Die Netzwerk(e) 307 kann/können zudem ein paketvermitteltes Netzwerk sein und/oder beinhalten, wie etwa ein lokales Netzwerk, ein Weitverkehrsnetzwerk, ein städtisches Netzwerk, das Internet oder eine andere ähnliche Art von Netzwerkumgebung. Das/Die Netzwerk(e) 307 kann/können ein festes drahtloses Netzwerk, ein drahtloses lokales Netzwerk (Local Area Network - LAN), ein drahtloses Weitverkehrsnetz (Wide Area Network- WAN), ein persönliches Netzwerk (Personal Area Network - PAN), ein virtuelles privates Netzwerk (Virtual Private Network - VPN), ein Intranet oder ein anderes geeignetes Netzwerksystem sein.
-
4 bildet ein Blockdiagramm des unüberwachten Netzes 400 zur Vorhersage des optischen Flusses („Netz 400“) gemäß der vorliegenden Offenbarung ab. Das Netz 400 kann ein Einzelbild k 405 und ein vorhergehendes Einzelbild k-1 410, einen Codierer 415, einen Decodierer 420, eine Karte 425 des vorhergesagten optischen Flusses, einen Rekonstruktionsfehlerberechnungsblock 430 und einen Rekonstruktionsberechnungsfehlerblock 435 beinhalten. Das Einzelbild k 405 kann ein Einzelbild des Sichtfelds 120 beinhalten, wie in 1 gezeigt. Das Einzelbild k kann daher eine Vielzahl von Pixeln beinhalten, die ein monochromatisches Bild des Fahrzeugs 105 darstellen, während sich das Fahrzeug in das und durch das Sichtfeld 120 bewegt. Das Einzelbild K-1 veranschaulicht eine Darstellung des vorhergehenden Einzelbilds im Anschluss an das Einzelbild K 405. Es versteht sich, dass die monochromatische Kamera 110 die Einzelbilder 405 und 410 nacheinander erhalten kann, wobei jedes nachfolgende Einzelbild eine pixelierte Bilddarstellung des Fahrzeugs 105 aufnimmt, während dieses das Sichtfeld 120 durchquert.
-
Der Codierer 415 kann das monochromatische Bild decodieren und das decodierte Bild an einen Digitaldecodierer 420 weiterleiten, der das Signal an den Block 425 für den vorhergesagten optischen Fluss übertragen kann. Der Block 430 zum Rekonstruieren des Einzelbilds K kann das vorhergehende Einzelbild K-1 410 und die Zuführung des vorhergesagten optischen Flusses von dem Block 425 empfangen und das rekonstruierte Einzelbild dem Block 435 zur Berechnung der Rekonstruktion bereitstellen. Der Block 435 zur Berechnung der Rekonstruktion kann ferner das Einzelbild K in Verbindung mit dem Rekonstruktionseinzelbild K empfangen und eine Ausgabe für die Backpropagation bereitstellen.
-
5 bildet eine Karte 500 des optischen Flusses (die eine Ausgabe der Karte des vorhergesagten optischen Flusses sein kann, wie in Block 435 veranschaulicht) und eine Pixelebenenereignismaske 520 gemäl der vorliegenden Offenbarung ab. Die Farbkarte 500 des optische Flusses veranschaulicht eine Vielzahl von Rot-Grün-Blau(RGB)-Feldern 510, die einem oder mehreren Fahrzeugen zugeordnet sein können, die sich in und/oder durch das Sichtfeld 120 der monochromatischen Kamera 110 bewegt haben. Die Karte 500 des optischen Flusses umfasst ein RGB-Feld 510, wobei das RGB-Feld Farbinformationen aufweist, die einer Geschwindigkeit für das sich bewegende Fahrzeug 105 zugeordnet sind. Das System 300 kann eine Projektion aus der Vogelperspektive auf Grundlage der Pixelebenenereignismaske 520 erzeugen. Obwohl sie ohne Farbe veranschaulicht ist, versteht es sich, dass die Farbkarte 500 des optischen Flusses derart codiert sein kann, dass ein oder mehrere RGB-Felder 510 eine Farbe beinhalten, die einer relativen Geschwindigkeit für dieses bestimmte RGB-Feld zugeordnet ist, die von niedrig bis hoch variieren kann (wie auf der Geschwindigkeitskarte 515 gezeigt).
-
In einem Aspekt kann das System 300 über den/die Prozessor(en) 305 und auf Grundlage des monochromatischen Bildes (z. B. Einzelbild 430 und Einzelbild K-1) ein Ereignisfeld 510 erfassen, das eine Vielzahl von Pixeln umfasst, die dem sich bewegenden Fahrzeug 105 zugeordnet sind. Das System 300 kann die Karte 500 des optischen Flusses mit einem Schwellenwert versehen, um die Pixelebenenereignismaske 520 zu erzeugen, indem die RGB-Felder innerhalb jeder Ereignismaske extrahiert werden. Das System 300 kann die Ereignismaske in einen gut kalibrierten Projektionsraum aus der Vogelperspektive umwandeln, wobei die Umwandlung der Pixel zu x, y, z genau bekannt ist. Diese Kalibrierung muss einmal durchgeführt werden und kann durch Platzieren von 4 ArUco-Markern auf dem Boden und Zuordnen ihrer Koordinaten zu dem Projektionsraum aus der Vogelperspektive erfolgen. Das System 300 kann dann die Größe der Projektion aus der Vogelperspektive in der Farbkarte 500 des optischen Flusses auf eine vorbestimmte Größe (z. B. 256 Pixel x 256 Pixel) anpassen und die Pixelebenenereignismaske 520 erzeugen.
-
Das System 300 kann ferner auf Grundlage des in der Größe angepassten RGB-Felds 510 und über das unüberwachte Netz 700 zur Vorhersage des Fahrzeugmodells und von Rollen-Nicken-Gieren (RPY) die Fahrzeugausrichtung 620 bestimmen, die eine lineare Funktion 715 zum Bestimmen eines Fahrzeugrollwerts 635, eines Fahrzeugnickwerts 640 und eines Fahrzeuggierwerts 645 beinhaltet. 6 veranschaulicht eine beispielhafte Ausgabe eines Netzes zur Vorhersage eines Fahrzeugmodells und von Rollen-Nicken-Gieren (RPY) (wie z. B. des RPY-Vorhersagenetzes 700 wie in 7 gezeigt) gemäß der vorliegenden Offenbarung.
-
Die Fahrzeugpose 600 kann x-, y-, z-Werte beinhalten, die der Fahrzeugausrichtung für das Fahrzeug 105 zugeordnet sind, wenn es im Sichtfeld 120 betrieben wird. Zum Beispiel kann die Fahrzeugpose 600 einen Fahrzeuglängenwert 605, einen Fahrzeugbreitenwert 610 und einen Fahrzeughöhenwert 615 beinhalten. Das Extrahieren des RGB-Felds 510 aus der Pixelebenenereignismaske kann das Anpassen der Gröle des RGB-Felds 510 auf eine Zielauflösung beinhalten. Das System 300 kann Fahrzeuginformationen, die Fahrzeugmarkeninformationen 625, Fahrzeugmodellinformationen 630 und Fahrzeugausrichtungsinformationen 620 beinhalten, unter Verwendung bekannter Objekterfassungs- und -charakterisierungstechniken bestimmen. Die Fahrzeugausrichtungsinformationen 620 können einen Fahrzeuglängenwert 605, einen Fahrzeugbreitenwert 610, einen Fahrzeughöhenwert 615 und Fahrzeugausrichtungsinformationen 620 beinhalten.
-
7 veranschaulicht ein beispielhaftes RPY-Vorhersagenetz 700 für Fahrzeuge gemäß der vorliegenden Offenbarung. Das RPY-Vorhersagenetz 700 kann das RGB-Feld 510 über den Codierer 415 codieren und das RGB-Feld 510 über eine Funktion 705 zum maschinellen Lernen decodieren, die eine Vielzahl von gespeicherten Werten 710 für bekannte Marken-, Modell- und Abmessungsinformationen von Fahrzeugen aufweist. Gemäß einer Ausführungsform werden bereits bekannte Informationen über die Fahrzeugmodellinformationen 630 verwendet, um Informationen zu erhalten, die Fahrzeugabmessungen (Länge 605, Breite 610, Höhe 615) zugeordnet sind. Aus der Vogelperspektive (wie in der Farbkarte 500 des optischen Flusses in 5 veranschaulicht) wird die x-, y-, z-Ausrichtung für den Schwerpunkt jedes Ereignisfelds 510 berechnet. Es ist anzumerken, dass die Ausrichtung 620 aus der Karte 500 des optischen Flusses als Mittelwert der Pixelrichtung innerhalb des maskierten Bereichs (z. B. des maskierten Bereichs für jedes Blob) erhalten werden kann. Die Ausrichtung 620 wird mit dem durch das Netz 700 zur Vorhersage des Fahrzeugmodells und von RPY vorhergesagten Gieren 645 kombiniert, um ein robustes Gieren zu erhalten.
-
Das RPY-Vorhersagenetz 700 verwendet Merkmalserkennungstechniken, bei denen es sich um einen Bildverarbeitungsvorgang auf niedriger Ebene handelt. Das heil t, dieser wird üblicherweise als der erste Vorgang an einem Bild durchgeführt und untersucht jedes Pixel, um festzustellen, ob an diesem Pixel ein Merkmal vorhanden ist. Wenn er Teil eines größeren Algorithmus ist, dann wird der Algorithmus in der Regel nur das Bild in dem Bereich der Merkmale untersuchen. Als integrierte Voraussetzung für die Merkmalserkennung wird das Eingabebild üblicherweise durch einen Gaußkern in einer Skalenraumdarstellung geglättet und ein oder mehrere Merkmalsbilder werden berechnet, oftmals ausgedrückt als lokale Bildableitungsvorgänge. Gelegentlich, wenn die Merkmalserkennung rechenintensiv ist und es Zeitbeschränkungen gibt, kann ein übergeordneter Algorithmus verwendet werden, um die Merkmalserkennungsstufe zu führen, sodass nur bestimmte Teile des Bildes nach Merkmalen durchsucht werden.
-
8 bildet ein Funktionsblockdiagramm eines Verfahrens zum Schätzen einer Fahrzeugpose für ein sich bewegendes Fahrzeug gemäß der vorliegenden Offenbarung ab. Das System 300 kann eine Vielzahl von monochromatischen Bildern 805 erhalten und aus der Vielzahl von monochromatischen Bildern eine Karte 810 des optischen Flusses erzeugen. Das System 800 kann eine Ereigniskarte 815 erzeugen und extrahiert das RGB-Feld innerhalb jedes maskierten Bereichs, wie in Block 820 gezeigt. Die extrahierten RGB-Felder oder -„Blobs“ stellen Informationen bereit, die Fahrzeugformen, Abmessungen und eine Geschwindigkeit beinhalten können, mit der sich das Fahrzeug durch das Sichtfeld bewegt.
-
Blobs stellen im Gegensatz zu Ecken, die eher punktförmig sind, eine komplementäre Beschreibung von Bildstrukturen in Bezug auf Bereiche bereit. Nichtsdestotrotz können Blob-Deskriptoren häufig einen bevorzugten Punkt (ein lokales Maximum einer Bedienerreaktion oder einen Schwerpunkt) enthalten, was bedeutet, dass viele Blob-Detektoren auch als Operatoren von markanten Punkten betrachtet werden können. Blob-Detektoren können Flächen in einem Bild erfassen, die zu glatt sind, um von einem Eckendetektor erfasst zu werden. Das System kann die Marke und das Modell des Autos anhand des in der Größe angepassten RGB-Felds, das die fraglichen Blob-Informationen aufweist, bestimmen. Das System bestimmt dann bei Block 825 das Fahrzeugmodell, referenziert Fahrzeugabmessungsinformationen und bestimmt ein Rollen, Nicken und Gieren des sich bewegenden Fahrzeugs. Die Vogelperspektive 835 aus der Karte 810 des optischen Flusses wird verwendet, um die x-, y-, z-Ausrichtung des Fahrzeugs bei Block 840 zu bestimmen, die dann bei Block 845 mit den Fahrzeugabmessungsinformationen und dem Rollen, Nicken und Gieren aus Block 825 kombiniert wird. Das System kann dann eine Fahrzeugpose 850 ausgeben, die x-, y-, z-Werte , die der Fahrzeugausrichtung zugeordnet sind, einen Fahrzeuglängenwert, einen Fahrzeugbreitenwert und einen Fahrzeughöhenwert beinhaltet.
-
Dieses Verfahren erstellt eine Ereigniskarte unter Verwendung nur einer Monokamera, was Kosten spart, indem eine monochromatische Kamera anstelle von hochentwickelten LiDAR-, RADAR- oder RGB-Kameras verwendet wird, um die Fahrzeugpose zu bestimmen. Durch Betreiben eines neuronalen Netzes, um Fahrzeugmodell, Rollen, Nicken und Gieren nur dann vorherzusagen, wenn ein Ereignis erfasst wird, kann das System Rechenenergie und -zeit sparen, was Leistungsressourcen sparen kann, wenn in dem Parkhaus kein Fahrzeugverkehr herrscht. Darüber hinaus nutzt das offenbarte Verfahren die bekannte Abmessung des Autos, um einen genauen 3-dimensionalen umgebenden Quader (bounding box) bereitzustellen. Aktuelle auf monochromatischen Kameras basierende Verfahren können keinen genauen umgebenden Quader in Weltkoordinaten bereitstellen, was für das Leiten eines Autos in einem engen parkhausähnlichen Raum für Anwendungen wie die Verkehrssteuerung durch ein Terminal zwingend erforderlich ist. Das mit RGB-Feldern von Autos in verschiedenen Ausrichtungen trainierte Modell kombiniert mit der Posenextraktion aus einer gut kalibrierten Vogelperspektive einer Ereigniskarte stellt eine genaue Roll-, Nick- und Gierschätzung bereit.
-
In der vorstehenden Offenbarung wurde auf die beigefügten Zeichnungen Bezug genommen, die einen Teil hiervon bilden und konkrete Umsetzungen veranschaulichen, in denen die vorliegende Offenbarung angewendet werden kann. Es versteht sich, dass auch andere Umsetzungen genutzt und strukturelle Änderungen vorgenommen werden können, ohne vom Umfang der vorliegenden Offenbarung abzuweichen. Bezugnahmen in der Beschreibung auf „eine Ausführungsform“, „eine beispielhafte Ausführungsform“ usw. geben an, dass die beschriebene Ausführungsform ein(e) bestimmte(s) Merkmal, Struktur oder Eigenschaft beinhalten kann, doch nicht notwendigerweise jede Ausführungsform diese(s) bestimmte Merkmal, Struktur oder Eigenschaft beinhalten muss.Darüber hinaus beziehen sich derartige Formulierungen nicht zwingend auf die gleiche Ausführungsform. Ferner wird, wenn ein(e) Merkmal, Struktur oder Eigenschaft in Verbindung mit einer Ausführungsform beschrieben ist, der Fachmann ein(e) derartige(s) Merkmal, Struktur oder Eigenschaft in Verbindung mit anderen Ausführungsformen erkennen, ob dies nun ausdrücklich beschrieben ist oder nicht.
-
Ferner können gegebenenfalls die in dieser Schrift beschriebenen Funktionen in einem oder mehreren von Hardware, Software, Firmware, digitalen Komponenten oder analogen Komponenten durchgeführt werden.Eine oder mehrere anwendungsspezifische integrierte Schaltungen (ASICs) können zum Beispiel dazu programmiert sein, eine(s) oder mehrere der in dieser Schrift beschriebenen Systeme und Prozeduren auszuführen.Bestimmte Ausdrücke, die in der gesamten Beschreibung und den Patentansprüchen verwendet werden, beziehen sich auf konkrete Systemkomponenten.Für den Fachmann liegt es auf der Hand, dass die Komponenten mit anderen Benennungen bezeichnet werden können.In dieser Schrift soll nicht zwischen Komponenten unterschieden werden, die sich der Benennung nach unterscheiden, nicht jedoch hinsichtlich ihrer Funktion.
-
Es versteht sich zudem, dass das Wort „Beispiel“, wie in dieser Schrift verwendet, nicht ausschliel ender und nicht einschränkender Natur sein soll. Insbesondere gibt das Wort „Beispiel“, wie in dieser Schrift verwendet, eines von mehreren Beispielen an und es versteht sich, dass keine übermäßige Betonung oder Bevorzugung auf das konkrete beschriebene Beispiel gerichtet ist.
-
Ein computerlesbares Medium (auch als prozessorlesbares Medium bezeichnet) beinhaltet ein beliebiges nichttransitorisches (z. B. physisches) Medium, das am Bereitstellen von Daten (z. B. Anweisungen) beteiligt ist, die durch einen Computer (z. B. durch einen Prozessor eines Computers) gelesen werden können. Ein derartiges Medium kann viele Formen annehmen, die unter anderem nichtflüchtige Medien und flüchtige Medien beinhalten. Rechenvorrichtungen können computerausführbare Anweisungen beinhalten, wobei die Anweisungen durch eine oder mehrere Rechenvorrichtungen, wie etwa durch die vorstehend aufgeführten, ausführbar sein können und auf einem computerlesbaren Medium gespeichert sein können.
-
Hinsichtlich der in dieser Schrift beschriebenen Prozesse, Systeme, Verfahren, Heuristiken usw. versteht es sich, dass die Schritte derartiger Prozesse usw. zwar als gemäß einer bestimmten Reihenfolge erfolgend beschrieben worden sind, derartige Prozesse jedoch umgesetzt werden könnten, wobei die beschriebenen Schritte in einer Reihenfolge durchgeführt werden, die von der in dieser Schrift beschriebenen Reihenfolge abweicht. Es versteht sich ferner, dass bestimmte Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder bestimmte in dieser Schrift beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt, dienen die Beschreibungen von Prozessen in dieser Schrift dem Zwecke der Veranschaulichung verschiedener Ausführungsformen und sollten keinesfalls dahingehend ausgelegt werden, dass sie die Patentansprüche einschränken.
-
Dementsprechend versteht es sich, dass die vorstehende Beschreibung veranschaulichend und nicht einschränkend sein soll. Aus der Lektüre der vorangehenden Beschreibung ergeben sich viele andere Ausführungsformen und Anwendungen als die aufgeführten Beispiele. Der Umfang sollte nicht unter Bezugnahme auf die vorstehende Beschreibung, sondern stattdessen unter Bezugnahme auf die beigefügten Patentansprüche bestimmt werden, zusammen mit der gesamten Bandbreite an Äquivalenten, zu denen diese Patentansprüche berechtigen. Es ist davon auszugehen und beabsichtigt, dass es zukünftige Entwicklungen im in dieser Schrift erörterten Stand der Technik geben wird und dass die offenbarten Systeme und Verfahren in derartige zukünftige Ausführungsformen aufgenommen werden. Insgesamt versteht es sich, dass die Anmeldung modifiziert und verändert werden kann.
-
Allen in den Patentansprüchen verwendeten Ausdrücken soll deren allgemeine Bedeutung zugeordnet werden, wie sie Fachleuten auf dem Gebiet der in dieser Schrift beschriebenen Technologien bekannt ist, sofern in dieser Schrift kein ausdrücklicher Hinweis auf das Gegenteil erfolgt. Insbesondere ist die Verwendung der Singularartikel, wie etwa „ein“, „eine“, „der“, „die“, „das“ usw., dahingehend zu verstehen, dass eines oder mehrere der angegebenen Elemente genannt werden, sofern ein Patentanspruch nicht eine ausdrückliche gegenteilige Einschränkung nennt. Mit Formulierungen, die konditionale Zusammenhänge ausdrücken, wie unter anderem „kann“, „könnte“ , „können“ oder „könnten“, soll im Allgemeinen vermittelt werden, dass gewisse Ausführungsformen gewisse Merkmale, Elemente und/oder Schritte beinhalten könnten, wohingegen andere Ausführungsformen diese nicht beinhalten können, es sei denn, es ist konkret etwas anderes angegeben oder es ergibt sich etwas anderes aus dem jeweils verwendeten Kontext. Somit sollen derartige Formulierungen, die konditionale Zusammenhänge ausdrücken, nicht implizieren, dass Merkmale, Elemente und/oder Schritte für eine oder mehrere Ausführungsformen in irgendeiner Weise erforderlich sind.
-
Gemäß einer Ausführungsform umfasst die Karte des optischen Flusses das RGB-Feld, wobei das RGB-Feld Farbinformationen aufweist, die einer Geschwindigkeit für das sich bewegende Fahrzeug zugeordnet sind.
-
Gemäß einer Ausführungsform ist die Erfindung ferner durch darauf gespeicherte Anweisungen zu Folgendem gekennzeichnet: Versehen der Karte des optischen Flusses mit einem Schwellenwert, um die Pixelebenenereignismaske zu erzeugen, die das RGB-Feld umfasst; und Erzeugen einer Projektion aus der Vogelperspektive auf Grundlage der Pixelebenenereignismaske.
-
Gemäß einer Ausführungsform umfasst die Fahrzeugpose Folgendes: x-, y-, z-Werte , die der Fahrzeugausrichtung zugeordnet sind, einen Fahrzeuglängenwert, einen Fahrzeugbreitenwert und einen Fahrzeughöhenwert.
-
Gemäß einer Ausführungsform ist die Erfindung ferner gekennzeichnet durch darauf gespeicherte Anweisungen zu Folgendem: Anpassen der Größe des RGB-Felds auf eine Zielauflösung; und Bestimmen einer Fahrzeugmarke, eines Fahrzeugmodells, einer Fahrzeuglänge, Fahrzeugbreite, Fahrzeughöhe und einer Fahrzeugausrichtung auf Grundlage des in der Größe angepassten RGB-Felds und über ein unüberwachtes Netz zur Vorhersage des Fahrzeugmodells und von Rollen-Nicken-Gieren (RPY).
-
Gemäß einer Ausführungsform umfasst die Fahrzeugausrichtung ferner einen Fahrzeugrollwert, einen Fahrzeugnickwert, einen Fahrzeuggierwert.