DE102018129075A1 - Systeme und verfahren zur visuellen positionsschätzung in autonomen fahrzeugen - Google Patents

Systeme und verfahren zur visuellen positionsschätzung in autonomen fahrzeugen Download PDF

Info

Publication number
DE102018129075A1
DE102018129075A1 DE102018129075.6A DE102018129075A DE102018129075A1 DE 102018129075 A1 DE102018129075 A1 DE 102018129075A1 DE 102018129075 A DE102018129075 A DE 102018129075A DE 102018129075 A1 DE102018129075 A1 DE 102018129075A1
Authority
DE
Germany
Prior art keywords
vehicle
virtual camera
environment
camera image
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102018129075.6A
Other languages
English (en)
Inventor
Gautier Minster
Clement Creusot
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of DE102018129075A1 publication Critical patent/DE102018129075A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0291Fleet control
    • G05D1/0297Fleet control by controlling means in a control room
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/58Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads

Abstract

Systeme und Verfahren werden zum Steuern eines Fahrzeugs bereitgestellt. In einer Ausführungsform beinhaltet ein visuelles Positionsschätzverfahren das Bereitstellen eines Bodenmodells einer Umgebung, und das Empfangen von Sensordaten in Bezug auf die Umgebung an einem Fahrzeug, wobei die Sensordaten optische Bilddaten beinhalten, die von einer mit dem Fahrzeug gekoppelten optischen Kamera erfasst werden. Ein virtuelles Kamerabild wird basierend auf dem Bodenmodell, der Position des Fahrzeugs und einer Position der optischen Kamera erzeugt. Die Position eines Objekts in der Umgebung wird basierend auf dem virtuellen Kamerabild und den optischen Bilddaten bestimmt.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Offenbarung bezieht sich im Allgemeinen auf autonome Fahrzeuge und insbesondere auf Systeme und Verfahren zum Bestimmen der räumlichen Position von erkannten Objekten, die von einem autonomen Fahrzeug erkannt werden.
  • HINTERGRUND
  • Ein autonomes Fahrzeug ist ein Fahrzeug, das in der Lage ist, seine Umgebung zu erfassen und mit geringfügiger oder gar keiner Benutzereingabe zu navigieren. Dies geschieht durch den Einsatz von Sensoren, wie beispielsweise Radar, Lidar, Bildsensoren und dergleichen. Autonome Fahrzeuge nutzen weiterhin Informationen von globalen Positioniersystemen (GPS), Navigationssystemen, Fahrzeug-Fahrzeug-Kommunikationen, Fahrzeug-Infrastruktur-Technologien und/oder drahtgesteuerten Systemen, um das Fahrzeug zu navigieren.
  • Während in den letzten Jahren signifikante Fortschritte bei Navigationssystemen zu verzeichnen waren, könnten solche Systeme in mehrfacher Hinsicht noch verbessert werden. So sind beispielsweise effiziente, schnelle und genaue Verfahren zum Bestimmen der Position von in der Umgebung erkannten Objekten, wie beispielsweise andere Fahrzeuge, Bauobjekte und dergleichen, erforderlich.
  • Dementsprechend ist es wünschenswert, Systeme und Verfahren zum Erkennen und Bestimmen der Position von Objekten bereitzustellen, die von autonomen Fahrzeugen erkannt werden. Ferner werden andere wünschenswerte Funktionen und Merkmale der vorliegenden Erfindung aus der nachfolgenden ausführlichen Beschreibung und den beigefügten Ansprüchen, in Verbindung mit den beigefügten Zeichnungen, sowie mit dem vorangehenden technischen Gebiet und Hintergrund ersichtlich offensichtlich.
  • KURZDARSTELLUNG
  • Es sind Systeme und Verfahren zur Steuerung eines ersten Fahrzeugs vorgesehen. In einer Ausführungsform beinhaltet ein visuelles Positionsschätzverfahren das Bereitstellen eines Bodenmodells einer Umgebung und das Empfangen von Sensordaten in Bezug auf die Umgebung an einem Fahrzeug, wobei die Sensordaten optische Bilddaten beinhalten, die von einer mit dem Fahrzeug gekoppelten optischen Kamera erfasst werden. Das Verfahren beinhaltet ferner das Erzeugen eines virtuellen Kamerabildes mit einem Prozessor basierend auf dem Bodenmodell, der Position des Fahrzeugs und einer Position der optischen Kamera; und das Bestimmen einer Position eines Objekts in der Umgebung mit einem Prozessor basierend auf dem virtuellen Kamerabild und den optischen Bilddaten.
  • In einer Ausführungsform wird das Bodenmodell der Umgebung durch Erfassen von Sensordaten, die sich auf die Position des Bodens beziehen, über eine Vielzahl von Sensorsystemen bereitgestellt, die in eine entsprechende Vielzahl von autonomen Fahrzeugen integriert sind.
  • In einer Ausführungsform beinhaltet das Bestimmen der Position des Objekts das Überlagern des virtuellen Kamerabildes auf die optischen Bilddaten.
  • In einer Ausführungsform beinhaltet das Bestimmen der Position des Objekts das Bestimmen eines Schnittpunktes zwischen dem Bodenmodell im virtuellen Kamerabild und einer geometrischen Darstellung des Objekts.
  • In einer Ausführungsform ist die geometrische Darstellung des Objekts ein begrenzendes Rechteck.
  • In einer Ausführungsform beinhaltet das virtuelle Kamerabild eine Vielzahl von Pixeln, die jeweils einen entsprechenden vorberechneten Abstand vom Fahrzeug und einen Punkt auf dem Bodenmodell aufweisen.
  • In einer Ausführungsform beinhaltet das Bodenmodell eine zweidimensionale Anordnung von Positionswerten in einem Weltkoordinatenrahmen.
  • Ein System zum Steuern eines Fahrzeugs gemäß einer Ausführungsform beinhaltet ein Bodenmodell-Erstellmodul, ein Sensorsystem, ein virtuelles Kamerabildmodul und ein Objektpositionsbestimmungsmodul. Das Bodenmodell-Erstellmodul, das einen Prozessor beinhaltet, ist konfiguriert, um ein Bodenmodell einer Umgebung zu erzeugen. Das Sensorsystem ist konfiguriert, um Sensordaten in Bezug auf die Umgebung zu erzeugen, wobei die Sensordaten optische Bilddaten beinhalten, die von einer mit dem Fahrzeug gekoppelten optischen Kamera erfasst werden. Das virtuelle Kamerabildmodul, das einen Prozessor beinhaltet, ist konfiguriert, um ein virtuelles Kamerabild basierend auf dem Bodenmodell, der Position des Fahrzeugs und einer Position der optischen Kamera zu erzeugen. Das Objektpositionsbestimmungsmodul, das einen Prozessor beinhaltet, ist konfiguriert, um eine Position eines Objekts in der Umgebung basierend auf dem virtuellen Kamerabild und den optischen Bilddaten zu bestimmen.
  • In einer Ausführungsform wird das Bodenmodell der Umgebung über Sensordaten, die sich auf die Position des Bodens beziehen, über eine Vielzahl von Sensorsystemen erzeugt, die in eine entsprechende Vielzahl von autonomen Fahrzeugen integriert sind.
  • In einer Ausführungsform wird die Position des Objekts bestimmt, indem das virtuelle Kamerabild den optischen Bilddaten überlagert wird.
  • In einer Ausführungsform wird die Position des Objekts bestimmt, indem ein Schnittpunkt zwischen dem Bodenmodell im virtuellen Kamerabild und einer geometrischen Darstellung des Objekts gefunden wird.
  • In einer Ausführungsform ist die geometrische Darstellung des Objekts ein begrenzendes Rechteck.
  • In einer Ausführungsform beinhaltet das virtuelle Kamerabild eine Vielzahl von Pixeln, die jeweils einen entsprechenden vorberechneten Abstand vom Fahrzeug und einen Punkt auf dem Bodenmodell aufweisen.
  • In einer Ausführungsform beinhaltet das Bodenmodell eine zweidimensionale Anordnung von Positionswerten in einem Weltkoordinatenrahmen.
  • Ein autonomes Fahrzeug gemäß einer Ausführungsform beinhaltet mindestens einen Sensor, der Sensordaten bereitstellt, wobei die Sensordaten optische Bilddaten beinhalten, die von einer mit dem Fahrzeug gekoppelten optischen Kamera erfasst werden. Das autonome Fahrzeug beinhaltet ferner eine Steuerung, die durch einen Prozessor und basierend auf den Sensordaten ein virtuelles Kamerabild basierend auf einem Bodenmodell, einer Position des autonomen Fahrzeugs und einer Position der optischen Kamera erzeugt und eine Position eines Objekts in der Umgebung basierend auf dem virtuellen Kamerabild und den optischen Bilddaten bestimmt.
  • Gemäß einer Ausführungsform wird das Bodenmodell der Umgebung durch Erfassen von Sensordaten, die sich auf die Position des Bodens beziehen, über eine Vielzahl von Sensorsystemen erzeugt, die in eine entsprechende Vielzahl von autonomen Fahrzeugen integriert sind.
  • In einer Ausführungsform wird die Position des Objekts bestimmt, indem das virtuelle Kamerabild auf die optischen Bilddaten überlagert wird und ein Schnittpunkt zwischen dem Bodenmodell im virtuellen Kamerabild und einer geometrischen Darstellung des Objekts bestimmt wird.
  • In einer Ausführungsform ist die geometrische Darstellung des Objekts ein begrenzendes Rechteck.
  • In einer Ausführungsform beinhaltet das virtuelle Kamerabild eine Vielzahl von Pixeln, die jeweils einen entsprechenden vorberechneten Abstand vom Fahrzeug und einen Punkt auf dem Bodenmodell aufweisen.
  • In einer Ausführungsform beinhaltet das Bodenmodell eine zweidimensionale Anordnung von Positionswerten in Bezug auf einen Weltkoordinatenrahmen.
  • Figurenliste
  • Die exemplarischen Ausführungsformen werden nachfolgend in Verbindung mit den folgenden Zeichnungen beschrieben, worin gleiche Bezugszeichen gleiche Elemente bezeichnen, und worin gilt:
    • 1 ist ein Funktionsblockdiagramm, das ein autonomes Fahrzeug mit einem visuellen Positionsschätzungssystem gemäß verschiedenen Ausführungsformen veranschaulicht;
    • 2 ist ein Funktionsblockdiagramm, das ein Transportsystem mit einem oder mehreren autonomen Fahrzeugen aus 1 gemäß verschiedenen Ausführungsformen veranschaulicht;
    • 3 ist ein Funktionsblockdiagramm, das ein autonomes Antriebssystem (ADS) in Verbindung mit einem autonomen Fahrzeug gemäß verschiedenen Ausführungsformen veranschaulicht;
    • 4 ist ein Datenflussdiagramm, das ein visuelles Positionsschätzungssystem für ein autonomes Fahrzeug gemäß verschiedenen Ausführungsformen veranschaulicht;
    • 5 ist ein Flussdiagramm, das ein Steuerverfahren für das Steuern des autonomen Fahrzeugs gemäß verschiedenen Ausführungsformen veranschaulicht;
    • 6 veranschaulicht und exemplarisiert das Bodenmodell gemäß verschiedenen Ausführungsformen;
    • 7 veranschaulicht ein Objekt, das von einer Kamera erfasst wird, die in ein autonomes Fahrzeug integriert ist, gemäß verschiedenen Ausführungsformen;
    • 8 veranschaulicht ein virtuelles Sichtfeld der Kamera, das der in 7 abgebildeten Umgebung entspricht; und
    • 9 veranschaulicht eine Kombination aus einem virtuellen Kamerabild und einem tatsächlichen Kamerabild entsprechend den Beispielen der 7 und 8 gemäß verschiedenen Ausführungsformen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die folgende ausführliche Beschreibung dient lediglich als Beispiel und soll die Anwendung und Verwendung in keiner Weise einschränken. Weiterhin besteht keine Absicht, im vorstehenden technischen Bereich, Hintergrund, der Kurzzusammenfassung oder der folgenden detaillierten Beschreibung, an eine ausdrücklich oder implizit vorgestellte Theorie gebunden zu sein. Der hierin verwendete Begriff „Modul“ bezieht sich auf alle Hardware-, Software-, Firmwareprodukte, elektronische Steuerkomponenten, Verarbeitungslogik und/oder Prozessorgeräte, einzeln oder in allen Kombinationen, unter anderem beinhaltend, eine anwendungsspezifische integrierte Schaltung (ASIC), ein feldprogrammierbares Gate-Array (FPGA), eine elektronische Schaltung, einen Prozessor (gemeinsam genutzt, dediziert oder Gruppenprozessor) und einen Speicher, der ein oder mehrere Software- oder Firmwareprogramme, eine kombinatorische Logikschaltung und/oder andere geeignete Komponenten ausführt, welche die beschriebene Funktionalität bieten.
  • Ausführungsformen der vorliegenden Offenbarung können hierin als funktionale und/oder logische Blockkomponenten und verschiedene Verarbeitungsschritte beschrieben sein. Es ist zu beachten, dass derartige Blockkomponenten aus einer beliebigen Anzahl an Hardware-, Software- und/oder Firmware-Komponenten aufgebaut sein können, die zur Ausführung der erforderlichen Funktionen konfiguriert sind. Zum Beispiel kann eine Ausführungsform der vorliegenden Offenbarung eines Systems oder einer Komponente verschiedene integrierte Schaltungskomponenten, beispielsweise Speicherelemente, digitale Signalverarbeitungselemente, Logikelemente, Wertetabellen oder dergleichen, einsetzen, die mehrere Funktionen unter der Steuerung eines oder mehrerer Mikroprozessoren oder anderer Steuervorrichtungen durchführen können. Zudem werden Fachleute auf dem Gebiet erkennen, dass die exemplarischen Ausführungsformen der vorliegenden Offenbarung in Verbindung mit einer beliebigen Anzahl an Systemen eingesetzt werden können, und dass das hierin beschriebene System lediglich eine exemplarische Ausführungsform der vorliegenden Offenbarung darstellt.
  • Der Kürze halber können konventionelle Techniken in Verbindung mit der Signalverarbeitung, Datenübertragung, Signalgebung, Steuerung, Maschinenlernmodelle, Radar, Lidar, Bildanalyse und weiteren funktionalen Aspekten der Systeme (und den einzelnen Bedienkomponenten der Systeme) hierin nicht im Detail beschrieben werden. Weiterhin sollen die in den verschiedenen Figuren dargestellten Verbindungslinien exemplarische Funktionsbeziehungen und/oder physikalische Verbindungen zwischen den verschiedenen Elementen darstellen. Es sollte beachtet werden, dass viele alternative oder zusätzliche funktionale Beziehungen oder physikalische Verbindungen in einer Ausführungsform der vorliegenden Offenbarung vorhanden sein können.
  • Unter Bezugnahme auf 1 ist ein bei 100 allgemein dargestelltes visuelles Positionsschätzungssystem mit einem Fahrzeug 10 gemäß verschiedenen Ausführungsformen assoziiert. Im Allgemeinen ermöglicht das visuelle Positionsschätzungssystem (oder einfach „System“) 100 das Schätzen der Position von erkannten Objekten in der Umgebung des AV 10 unter Verwendung eines Bodenmodells und eines virtuellen Kamerabildes basierend auf der Position und der Stellung des AV 10.
  • Wie in 1 dargestellt, beinhaltet das Fahrzeug 10 im Allgemeinen ein Fahrgestell 12, eine Karosserie 14, Vorderräder 16 und Hinterräder 18. Die Karosserie 14 ist auf dem Fahrgestell 12 angeordnet und umhüllt im Wesentlichen die anderen Komponenten des Fahrzeugs 10. Die Karosserie 14 und das Fahrgestell 12 können gemeinsam einen Rahmen bilden. Die Räder 16-18 sind jeweils mit dem Fahrgestell 12 in der Nähe einer jeweiligen Ecke der Karosserie 14 drehbar verbunden.
  • In verschiedenen Ausführungsformen ist das Fahrzeug 10 ein autonomes Fahrzeug und das visuelle Positionsschätzungssystem 100 ist in das autonome Fahrzeug 10 (nachfolgend als das autonome Fahrzeug 10 bezeichnet) integriert. Das autonome Fahrzeug 10 ist beispielsweise ein Fahrzeug, das automatisch gesteuert wird, um Passagiere von einem Ort zum anderen zu befördern. Das Fahrzeug 10 ist in der veranschaulichten Ausführungsform als Pkw dargestellt, es sollte jedoch beachtet werden, dass auch jedes andere Fahrzeug einschließlich Motorräder, Lastwagen, Sportfahrzeuge (SUVs), Freizeitfahrzeuge (RVs), Schiffe, Flugzeuge usw. verwendet werden können.
  • In einer exemplarischen Ausführungsform entspricht das autonome Fahrzeug 10 einem Automatisierungssystem des Levels vier oder Levels fünf gemäß der Standardtaxonomie automatisierter Fahrlevels der Society of Automotive Engineers (SAE) „J3016“. Mit dieser Terminologie bezeichnet ein Level-Vier-System eine „hohe Automatisierung“ unter Bezugnahme auf einen Fahrmodus, bei dem das automatisierte Fahrsystem alle Aspekte der dynamischen Fahraufgabe übernimmt, selbst wenn ein menschlicher Fahrer nicht angemessen auf eine Aufforderung zum Eingreifen reagiert. Ein Level-Fünf-System hingegen zeigt eine „Vollautomatisierung“ und bezeichnet einen Fahrmodus, bei dem das automatisierte Fahrsystem alle Aspekte der dynamischen Fahraufgabe unter allen Fahrbahn- und Umweltbedingungen erfüllt, die ein menschlicher Fahrer bewältigen kann. Es versteht sich, dass die Ausführungsformen gemäß der vorliegenden Thematik nicht auf eine bestimmte Taxonomie oder Rubrik der Automatisierungskategorien beschränkt sind. Darüber hinaus können Systeme gemäß der vorliegenden Ausführungsform in Verbindung mit jedem Fahrzeug verwendet werden, in dem der vorliegende Gegenstand umgesetzt werden kann, unabhängig von seiner Autonomie.
  • Wie dargestellt, beinhaltet das autonome Fahrzeug 10 im Allgemeinen ein Antriebssystem 20, ein Übertragungssystem 22, ein Lenksystem 24, ein Bremssystem 26, ein Sensorsystem 28, ein Stellantriebsystem 30, mindestens einen Datenspeicher 32, mindestens eine Steuerung 34 und ein Kommunikationssystem 36. Das Antriebssystem 20 kann in verschiedenen Ausführungsformen einen Verbrennungsmotor, eine elektrische Maschine, wie beispielsweise einen Traktionsmotor und/oder ein Brennstoffzellenantriebssystem, beinhalten. Das Übertragungssystem 22 ist dazu konfiguriert, Leistung vom Antriebssystem 20 auf die Fahrzeugräder 16 und 18 gemäß den wählbaren Übersetzungsverhältnissen zu übertragen. Gemäß verschiedenen Ausführungsformen kann das Getriebesystem 22 ein Stufenverhältnis-Automatikgetriebe, ein stufenlos verstellbares Getriebe oder ein anderes geeignetes Getriebe beinhalten.
  • Das Bremssystem 26 ist dazu konfiguriert, den Fahrzeugrädern 16 und 18 ein Bremsmoment bereitzustellen. Das Bremssystem 26 kann in verschiedenen Ausführungsformen Reibungsbremsen, Bake-by-Wire, ein regeneratives Bremssystem, wie beispielsweise eine elektrische Maschine und/oder andere geeignete Bremssysteme, beinhalten.
  • Das Lenksystem 24 beeinflusst eine Position der Fahrzeugräder 16 und/oder 18. Während in einigen Ausführungsformen innerhalb des Umfangs der vorliegenden Offenbarung zur Veranschaulichung als ein Lenkrad 25 dargestellt, kann das Lenksystem 24 kein Lenkrad beinhalten.
  • Das Sensorsystem 28 beinhaltet eine oder mehrere Sensorvorrichtungen 40a-40n, die beobachtbare Zustände der äußeren Umgebung und/oder der inneren Umgebung des autonomen Fahrzeugs 10 (zum Beispiel den Zustand eines oder mehrerer Insassen) erfassen können. Sensorvorrichtungen 40a-40n können, sind jedoch nicht beschränkt auf, Radare (z. B. Langstrecken-, Mittelstrecken-Kurzbereich), Lidare, globale Positionierungssysteme, optische Kameras (z. B. nach vorne gerichtet, 360-Grad, nach hinten gerichtet, seitlich gerichtet, Stereo, usw.), beinhalten, Wärmebildkameras (z. B. Infrarot), Ultraschallsensoren, Geschwindigkeitsmesssensoren (z. B. Encoder) und/oder andere Sensoren, die in Verbindung mit Systemen und Verfahren gemäß dem vorliegenden Gegenstand verwendet werden können.
  • Das Stellgliedsystem 30 beinhaltet ein oder mehrere Stellgliedvorrichtungen 42a-42n, die ein oder mehrere Fahrzeugeigenschaften, wie zum Beispiel das Antriebssystem 20, das Übertragungssystem 22, das Lenksystem 24 und das Bremssystem 26, steuern, sind aber nicht darauf beschränkt. In verschiedenen Ausführungsformen kann das autonome Fahrzeug 10 auch Fahrzeug-Innen- und/oder Außenausstattungen beinhalten, die nicht in 1 dargestellt sind, wie beispielsweise verschiedene Türen, Kofferraum- und Kabinenausstattungen, wie Luft, Musik, Beleuchtung, Touchscreen-Display-Komponenten (wie sie in Verbindung mit Navigationssystemen verwendet werden) und dergleichen.
  • Die Datenspeichervorrichtung 32 speichert Daten zur Verwendung beim automatischen Steuern des autonomen Fahrzeugs 10. In verschiedenen Ausführungsformen speichert die Datenspeichervorrichtung 32 definierte Landkarten der navigierbaren Umgebung. In verschiedenen Ausführungsformen werden die definierten Landkarten vordefiniert und von einem entfernten System (in weiteren Einzelheiten in Bezug auf 2 beschrieben) erhalten. So können beispielsweise die definierten Landkarten durch das entfernte System zusammengesetzt und dem autonomen Fahrzeug 10 (drahtlos und/oder drahtgebunden) mitgeteilt und in der Datenspeichervorrichtung 32 gespeichert werden. Routeninformationen können auch in der Datenspeichervorrichtung 32 gespeichert werden - d. h. in einer Reihe von Straßenabschnitten (die geografisch mit einer oder mehreren der definierten Karten verknüpft sind), die zusammen eine Route definieren, die der Benutzer von einem Startort (z. B. dem aktuellen Standort des Benutzers) zu einem Zielort zurücklegen kann. Wie ersichtlich ist, kann die Datenspeichervorrichtung 32 ein Teil der Steuerung 34, von der Steuerung 34 getrennt, oder ein Teil der Steuerung 34 und Teil eines separaten Systems sein.
  • Die Steuerung 34 beinhaltet mindestens einen Prozessor 44 und eine computerlesbare Speichervorrichtung oder Medien 46. Der Prozessor 44 kann eine Spezialanfertigung oder ein handelsüblicher Prozessor sein, eine Zentraleinheit (CPU), eine Grafikprozessoreinheit (GPU), eine anwendungsspezifische integrierte Schaltung (ASIC) (z.B. eine benutzerdefinierte ASIC, die ein neuronales Netzwerk implementiert), ein feldprogrammierbares Gate-Array (FPGA), ein Hilfsprozessor unter mehreren Prozessoren, verbunden mit der Steuerung 34, ein Mikroprozessor auf Halbleiterbasis (in Form eines Mikrochips oder Chip-Satzes) eine Kombination derselben oder allgemein jede beliebige Vorrichtung zur Ausführung von Anweisungen. Die computerlesbare Speichervorrichtung oder Medien 46 können flüchtige und nicht-flüchtige Speicher in einem Nur-Lese-Speicher (ROM), einem Speicher mit direktem Zugriff (RAM) und einem Keep-Alive-Memory (KAM) beinhalten. KAM ist ein persistenter oder nicht-flüchtiger Speicher, der verwendet werden kann, um verschiedene Betriebsvariablen zu speichern, während der Prozessor 44 ausgeschaltet ist. Die computerlesbare Speichervorrichtung oder Medien 46 können unter Verwendung einer beliebigen einer Anzahl an bekannten Speichervorrichtungen, wie beispielsweise PROMs (programmierbarer Nur-Lese-Speicher), EPROMs (elektrische PROM), EEPROMs (elektrisch löschbarer PROM), Flash-Speicher oder beliebige andere elektrischen, magnetischen, optischen oder kombinierten Speichervorrichtungen implementiert werden, die Daten speichern können, von denen einige ausführbare Anweisungen darstellen, die von der Steuerung 34 beim Steuern des autonomen Fahrzeugs 10 verwendet werden. In verschiedenen Ausführungsformen ist die Steuerung 34 konfiguriert, um das im Folgenden ausführlich erläuterte visuelle Positionsschätzungssystem zu implementieren.
  • Die Anweisungen können ein oder mehrere separate Programme beinhalten, von denen jede eine geordnete Auflistung von ausführbaren Anweisungen zum Implementieren von logischen Funktionen beinhaltet. Die Anweisungen empfangen und verarbeiten, wenn diese vom Prozessor 44 ausgeführt werden, Signale vom Sensorsystem 28, führen Logik, Berechnungen, Verfahren und/oder Algorithmen zur automatischen Steuerung der Komponenten des autonomen Fahrzeugs 10 durch und erzeugen Steuersignale, die an das Stellgliedsystem 30 übertragen werden, um die Komponenten des autonomen Fahrzeugs 10 basierend auf der Logik, den Berechnungen, den Verfahren und/oder Algorithmen automatisch zu steuern. Obwohl in 1 nur eine Steuerung 34 dargestellt ist, können Ausführungsformen des autonomen Fahrzeugs 10 eine beliebige Anzahl an Steuerungen 34 beinhalten, die über ein geeignetes Kommunikationsmedium oder eine Kombination von Kommunikationsmedien kommunizieren und zusammenwirken, um die Sensorsignale zu verarbeiten, Logiken, Berechnungen, Verfahren und/oder Algorithmen durchzuführen, und Steuersignale zu erzeugen, um die Funktionen des autonomen Fahrzeugs 10 automatisch zu steuern.
  • Das Kommunikationssystem 36 ist konfiguriert, um Informationen drahtlos an und von anderen Einheiten 48, wie beispielsweise, jedoch nicht beschränkt auf andere Fahrzeuge („V2V“-Kommunikation,) Infrastruktur („V2I“-Kommunikation), Netzwerke („V2N“-Kommunikation), Fußgänger („V2P“-Kommunikation), entfernte Transportsysteme und/oder Benutzervorrichtungen zu übermitteln (näher beschrieben in Bezug auf 2). In einer exemplarischen Ausführungsform ist das drahtlose Kommunikationssystem 36 dazu konfiguriert, über ein drahtloses lokales Netzwerk (WLAN) unter Verwendung des IEEE 802.11-Standards, über Bluetooth oder mittels einer mobilen Datenkommunikation zu kommunizieren. Im Geltungsbereich der vorliegenden Offenbarung werden jedoch auch zusätzliche oder alternative Kommunikationsverfahren, wie beispielsweise ein dedizierter Nahbereichskommunikations-(DSRC)-Kanal, berücksichtigt. DSRC-Kanäle beziehen sich auf Einweg- oder Zweiwege-Kurzstrecken- bis Mittelklasse-Funkkommunikationskanäle, die speziell für den Automobilbau und einen entsprechenden Satz von Protokollen und Standards entwickelt wurden.
  • Mit weiterem Bezug auf 2 in verschiedenen Ausführungsformen kann das autonome Fahrzeug 10, das mit Bezug auf 1 beschrieben ist, für den Einsatz im Rahmen eines Taxi- oder Shuttle-Unternehmens in einem bestimmten geografischen Gebiet (z. B. einer Stadt, einer Schule oder einem Geschäftscampus, einem Einkaufszentrum, einem Vergnügungspark, einem Veranstaltungszentrum oder dergleichen) geeignet sein. So kann beispielsweise das autonome Fahrzeug 10 einem autonomen fahrzeugbasierten Transportsystem zugeordnet sein. 2 veranschaulicht eine exemplarische Ausführungsform einer Betriebsumgebung, die im Allgemeinen bei 50 dargestellt ist und ein autonomes fahrzeugbasiertes entferntes Transportsystem (oder einfach „entferntes Transportsystem“) 52 beinhaltet, das, wie mit Bezug auf 1 beschrieben, einem oder mehreren autonomen Fahrzeugen 10a-10n zugeordnet ist. In verschiedenen Ausführungsformen beinhaltet die Betriebsumgebung 50 (die ganz oder teilweise den in 1 dargestellten Einheiten 48 entsprechen können) ferner eine oder mehrere Benutzervorrichtungen 54, die mit dem autonomen Fahrzeug 10 und/oder dem entfernten Transportsystem 52 über ein Kommunikationsnetzwerk 56 kommunizieren.
  • Das Kommunikationsnetzwerk 56 unterstützt die Kommunikation zwischen Geräten, Systemen und Komponenten, die von der Betriebsumgebung 50 unterstützt werden (z. B. über physische Kommunikationsverbindungen und/oder drahtlose Kommunikationsverbindungen). So kann beispielsweise das Kommunikationsnetzwerk 56 ein drahtloses Trägersystem 60 beinhalten, wie beispielsweise ein Mobiltelefonsystem, das eine Vielzahl von Mobilfunktürmen (nicht dargestellt), eine oder mehrere Mobilvermittlungsstellen (MSCs) (nicht dargestellt) sowie alle anderen Netzwerkkomponenten beinhalten, die zum Verbinden des drahtlosen Trägersystems 60 mit dem Festnetz erforderlich sind. Jeder Mobilfunkturm beinhaltet Sende- und Empfangsantennen und eine Basisstation, wobei die Basisstationen verschiedener Mobilfunktürme mit den MSC verbunden sind, entweder direkt oder über Zwischenvorrichtungen, wie beispielsweise eine Basisstationssteuerung. Das Drahtlosträgersystem 60 kann jede geeignete Kommunikationstechnologie implementieren, beispielsweise digitale Technologien, wie CDMA (z. B. CDMA2000), LTE (z. B. 4G LTE oder 5G LTE), GSM/GPRS oder andere aktuelle oder neu entstehende drahtlose Technologien. Andere Mobilfunkturm/Basisstation/MSC-Anordnungen sind möglich und könnten mit dem Mobilfunkanbietersystem 60 verwendet werden. So könnten sich beispielsweise die Basisstation und der Mobilfunkturm an derselben Stelle oder entfernt voneinander befinden, jede Basisstation könnte für einen einzelnen Mobilfunkturm zuständig sein oder eine einzelne Basisstation könnte verschiedene Mobilfunktürme bedienen, oder verschiedene Basisstationen könnten mit einer einzigen MSC gekoppelt werden, um nur einige der möglichen Anordnungen zu nennen.
  • Abgesehen vom Verwenden des drahtlosen Trägersystems 60 kann ein zweites drahtloses Trägersystem in Form eines Satellitenkommunikationssystems 64 verwendet werden, um unidirektionale oder bidirektionale Kommunikation mit dem autonomen Fahrzeug 10a-10n bereitzustellen. Dies kann unter Verwendung von einem oder mehreren Kommunikationssatelliten (nicht dargestellt) und einer aufwärts gerichteten Sendestation (nicht dargestellt) erfolgen. Die unidirektionale Kommunikation kann beispielsweise Satellitenradiodienste beinhalten, worin programmierte Inhaltsdaten (Nachrichten, Musik usw.) von der Sendestation empfangen werden, für das Hochladen gepackt und anschließend zum Satelliten gesendet werden, der die Programmierung an die Teilnehmer ausstrahlt. Die bidirektionale Kommunikation kann beispielsweise Satellitentelefondienste beinhalten, die den Satelliten verwenden, um Telefonkommunikationen zwischen dem Fahrzeug 10 und der Station weiterzugeben. Die Satellitentelefonie kann entweder zusätzlich oder anstelle des Mobilfunkanbietersystems 60 verwendet werden.
  • Ein Festnetz-Kommunikationssystem 62 kann ein konventionelles Festnetz-Telekommunikationsnetzwerk beinhalten, das mit einem oder mehreren Festnetztelefonen verbunden ist und das drahtlose Trägersystem 60 mit dem entfernten Transportsystem 52 verbindet. So kann beispielsweise das Festnetz-Kommunikationssystem 62 ein Fernsprechnetz (PSTN) wie jenes sein, das verwendet wird, um festverdrahtetes Fernsprechen, paketvermittelte Datenkommunikationen und die Internetinfrastruktur bereitzustellen. Ein oder mehrere Segmente des Festnetz-Kommunikationssystems 62 könnten durch Verwenden eines normalen drahtgebundenen Netzwerks, eines Lichtleiter- oder eines anderen optischen Netzwerks, eines Kabelnetzes, von Stromleitungen, anderen drahtlosen Netzwerken, wie drahtlose lokale Netzwerke (WLANs) oder Netzwerke, die drahtlosen Breitbandzugang (BWA) bereitstellen oder jeder Kombination davon implementiert sein. Weiterhin muss das entfernte Transportsystem 52 nicht über das Festnetz-Kommunikationssystem 62 verbunden sein, sondern könnte Funktelefonausrüstung beinhalten, sodass sie direkt mit einem drahtlosen Netzwerk, wie z. B. dem drahtlosen Trägersystem 60, kommunizieren kann.
  • Obwohl in 2 nur eine Benutzervorrichtung 54 dargestellt ist, können Ausführungsformen der Betriebsumgebung 50 eine beliebige Anzahl an Benutzervorrichtungen 54, einschließlich mehrerer Benutzervorrichtungen 54 unterstützen, die das Eigentum einer Person sind, von dieser bedient oder anderweitig verwendet werden. Jede Benutzervorrichtung 54, die von der Betriebsumgebung 50 unterstützt wird, kann unter Verwendung einer geeigneten Hardwareplattform implementiert werden. In dieser Hinsicht kann die Benutzervorrichtung 54 in einem gemeinsamen Formfaktor realisiert werden, darunter auch in: einen Desktop-Computer; einem mobilen Computer (z. B. einem Tablet-Computer, einem Laptop-Computer oder einem Netbook-Computer); einem Smartphone; einem Videospielgerät; einem digitalen Media-Player; eine Komponente eines Heimunterhaltungsgeräts; einer Digitalkamera oder Videokamera; einem tragbaren Computergerät (z. B. einer Smart-Uhr, Smart-Brille, Smart-Kleidung); oder dergleichen. Jede von der Betriebsumgebung 50 unterstützte Benutzervorrichtung 54 ist als computerimplementiertes oder computergestütztes Gerät mit der Hardware-, Software-, Firmware- und/oder Verarbeitungslogik realisiert, die für die Durchführung der hier beschriebenen verschiedenen Techniken und Verfahren erforderlich ist. So beinhaltet beispielsweise die Benutzervorrichtung 54 einen Mikroprozessor in Form einer programmierbaren Vorrichtung, die eine oder mehrere in einer internen Speicherstruktur gespeicherte Anweisungen beinhaltet und angewendet wird, um binäre Eingaben zu empfangen und binäre Ausgaben zu erzeugen. In einigen Ausführungsformen beinhaltet die Benutzervorrichtung 54 ein GPS-Modul, das GPS-Satellitensignale empfangen und GPS-Koordinaten basierend auf diesen Signalen erzeugen kann. In weiteren Ausführungsformen beinhaltet die Benutzervorrichtung 54 eine Mobilfunk-Kommunikationsfunktionalität, sodass die Vorrichtung Sprach- und/oder Datenkommunikationen über das Kommunikationsnetzwerk 56 unter Verwendung eines oder mehrerer Mobilfunk-Kommunikationsprotokolle durchführt, wie hierin erläutert. In verschiedenen Ausführungsformen beinhaltet die Benutzervorrichtung 54 eine visuelle Anzeige, wie zum Beispiel ein grafisches Touchscreen-Display oder eine andere Anzeige.
  • Das entfernte Transportsystem 52 beinhaltet ein oder mehrere Backend-Serversysteme, nicht dargestellt), die an dem speziellen Campus oder dem geografischen Standort, der vom Transportsystem 52 bedient wird, Cloud-basiert, netzwerkbasiert oder resident sein können. Das entfernte Transportsystem 52 kann mit einem Live-Berater, einem automatisierten Berater, einem System der künstlichen Intelligenz oder einer Kombination davon besetzt sein. Das entfernte Transportsystem 52 kann mit den Benutzervorrichtungen 54 und den autonomen Fahrzeugen 10a-10n kommunizieren, um Fahrten zu planen, autonome Fahrzeuge 10a-10n zu versetzen und dergleichen. In verschiedenen Ausführungsformen speichert das entfernte Transportsystem 52 Kontoinformationen, wie zum Beispiel Teilnehmer-Authentisierungsdaten, Fahrzeugkennzeichen, Profilaufzeichnungen, biometrische Daten, Verhaltensmuster und andere entsprechende Teilnehmerinformationen.
  • Gemäß einem typischen Anwendungsfall-Arbeitsablauf kann ein registrierter Benutzer des entfernten Transportsystems 52 über die Benutzervorrichtung 54 eine Fahrtanforderung erstellen. Die Fahrtanforderung gibt typischerweise den gewünschten Abholort des Fahrgastes (oder den aktuellen GPS-Standort), den gewünschten Zielort (der einen vordefinierten Fahrzeugstopp und/oder ein benutzerdefiniertes Passagierziel identifizieren kann) und eine Abholzeit an. Das entfernte Transportsystem 52 empfängt die Fahrtanforderung, verarbeitet die Anforderung und sendet ein ausgewähltes der autonomen Fahrzeuge 10a-10n (wenn und sofern verfügbar), um den Passagier an dem vorgesehenen Abholort und zu gegebener Zeit abzuholen. Das Transportsystem 52 kann zudem eine entsprechend konfigurierte Bestätigungsnachricht oder Benachrichtigung an die Benutzervorrichtung 54 erzeugen und senden, um den Passagier zu benachrichtigen, dass ein Fahrzeug unterwegs ist.
  • Wie ersichtlich, bietet der hierin offenbarte Gegenstand bestimmte verbesserte Eigenschaften und Funktionen für das, was als ein standardmäßiges oder Basislinien autonomes Fahrzeug 10 und/oder ein autonomes fahrzeugbasiertes Transportsystem 52 betrachtet werden kann. Zu diesem Zweck kann ein autonomes fahrzeugbasiertes Transportsystem modifiziert, erweitert oder anderweitig ergänzt werden, um die nachfolgend näher beschriebenen zusätzlichen Funktionen bereitzustellen.
  • Gemäß verschiedener Ausführungsformen realisiert die Steuerung 34 ein autonomes Antriebssystem (ADS) 70, wie in 3 dargestellt. Das heißt, dass geeignete Soft- und/oder Hardwarekomponenten der Steuerung 34 (z. B. der Prozessor 44 und das computerlesbare Speichermedium 46) verwendet werden, um ein autonomes Antriebssystem 70 bereitzustellen, das in Verbindung mit dem Fahrzeug 10 verwendet wird.
  • In verschiedenen Ausführungsformen können die Anweisungen des autonomen Antriebssystems 70 je nach Funktion oder System gegliedert sein. Das autonome Antriebssystem 70 kann beispielsweise, wie in 3 dargestellt, ein Computer-Sichtsystem 74, ein Positionierungssystem 76, ein Leitsystem 78 und ein Fahrzeugsteuersystem 80 beinhalten. Wie ersichtlich ist, können die Anweisungen in verschiedenen Ausführungsformen in beliebig viele Systeme (z. B. kombiniert, weiter unterteilt usw.) gegliedert werden, da die Offenbarung nicht auf die vorliegenden Beispiele beschränkt ist.
  • In verschiedenen Ausführungsformen synthetisiert und verarbeitet das Computer-Sichtsystem 74 Sensordaten und prognostiziert Anwesenheit, Standort, Klassifizierung und/oder Verlauf von Objekten und Merkmalen der Umgebung des Fahrzeugs 10. In verschiedenen Ausführungsformen kann das Computer-Vision-System 74 Informationen von mehreren Sensoren (z. B. dem Sensorsystem 28) beinhalten, einschließlich, aber nicht beschränkt auf Kameras, Lidars, Radars und/oder eine beliebige Anzahl anderer Arten von Sensoren.
  • Das Positionierungssystem 76 verarbeitet Sensordaten zusammen mit anderen Daten, um eine Position (z. B. eine lokale Position in Bezug auf eine Karte, eine exakte Position in Bezug auf die Fahrspur einer Straße, Fahrzeugrichtung, usw.) des Fahrzeugs 10 in Bezug auf die Umgebung zu bestimmen. Wie zu erkennen ist, können verschiedene Techniken eingesetzt werden, um diese Lokalisierung durchzuführen, beispielsweise simultane Lokalisierung und Kartierung (SLAM), Partikelfilter, Kalman-Filter, Bayes'sche Filter und dergleichen.
  • Das Leitsystem 78 verarbeitet Sensordaten zusammen mit anderen Daten, um eine Strecke zu bestimmen, dem das Fahrzeug 10 folgen soll. Das Fahrzeugsteuerungssystem 80 erzeugt Steuersignale zum Steuern des Fahrzeugs 10 entsprechend der ermittelten Strecke.
  • In verschiedenen Ausführungsformen implementiert die Steuerung 34 maschinelle Lerntechniken, um die Funktionalität der Steuerung 34 zu unterstützen, wie z. B. Merkmalerkennung/Klassifizierung, Hindernisminderung, Routenüberquerung, Kartierung, Sensorintegration, Boden-Wahrheitsbestimmung und dergleichen.
  • In verschiedenen Ausführungsformen kann das visuelle Positionsschätzungssystem 100 ganz oder teilweise in das Computer-Sichtsystem 74, das Positioniersystem 76, das Leitsystem 78 und/oder das Fahrzeugsteuerungssystem 80 eingebunden werden. Wie bereits kurz erwähnt, ist das visuelle Positionsschätzungssystem 100 von 1 konfiguriert, um die räumliche Position eines oder mehrerer erkannter Objekte in der Nähe des AV 10 (z. B. Fahrzeuge, Fußgänger, Bauobjekte oder dergleichen) zu schätzen, indem es ein virtuelles Kamerabild der Umgebung basierend auf einem Bodenmodell erzeugt und dann das virtuelle Kamerabild einem vom AV 10 erfassten tatsächlichen Kamerabild überlagert. Die Position des erkannten Objekts kann dann basierend darauf geschätzt werden, wo das erkannte Objekt (z. B. ein begrenzendes Rechteck des erkannten Objekts) das Bodenmodell schneidet.
  • Unter Bezugnahme auf 4, mit weiterem Bezug auf die 1-3, beinhaltet ein exemplarisches visuelles Positionsschätzungssystem 100 gemäß verschiedenen Ausführungsformen ein Bodenmodell-Erstellmodul 410, ein virtuelles Kamerabildmodul 420 und ein Objektpositionsbestimmungsmodul 430. Das Bodenmodell-Erstellmodul 410 empfängt im Allgemeinen Sensordaten 401, die sich auf die Umgebung des Fahrzeugs beziehen (z. B. Kamerabilder, Lidardaten oder andere Sensordaten, die von den Sensoren 28 von 1 empfangen werden) und weist als Ausgabe (411) ein Bodenmodell auf, das über eine geeignete Datenstruktur repräsentiert wird, die in der Lage ist, die Topographie des Bodens in der Umgebung des AV 10 zu charakterisieren. In einer Ausführungsform, wie im Folgenden näher beschrieben wird, ist das Bodenmodell 411 ein Netz oder eine Matrix von Punkten im dreidimensionalen Raum in Bezug auf einen Weltkoordinatenrahmen.
  • Das virtuelle Kamerabildmodul 420 ist im Allgemeinen konfiguriert, um das Bodenmodell 411 zu nutzen und ein virtuelles Kamerabild 421 zu erzeugen, das der erwarteten Bodentopographie in der Nähe des AV 10 entspricht, wenn die tatsächliche Position und Stellung des AV 10 (und seiner verschiedenen Sensoren) berücksichtigt wird. Das heißt, angesichts des bekannten Standorts des AV 10 und der bekannten Positionen seiner verschiedenen Kameras bestimmt das virtuelle Kamerabildmodul 420 eine Projektion des Bodenmodells 411 innerhalb des Sichtfeldes der Kameras (d. h. indem die virtuelle Kamera an der gleichen Position und mit der gleichen Ausrichtung innerhalb des virtuellen Raums des Bodenmodells 411 platziert wird).
  • Das Objektpositionsbestimmungsmodul 430 ist im Allgemeinen konfiguriert, um das virtuelle Kamerabild 421 und ein tatsächliches Kamerabild 422 zu empfangen und so zu überlagern, dass die räumliche Position (Ausgabe 431) von erkannten Objekten (innerhalb des tatsächlichen Kamerabildes 422) geschätzt werden kann. In einer Ausführungsform, wie im Folgenden näher erläutert wird, wird die geschätzte Position eines erkannten Objekts bestimmt, indem das begrenzende Rechteck des erkannten Objekts untersucht und bestimmt wird, wo dessen Unterkante oder Liniensegment das Bodenmodell schneidet. Der Schnittpunkt oder die Schnittpunkte innerhalb des Bodenmodells (deren Positionen im Raum bekannt sind) werden dann verwendet, um die geschätzte Position des erkannten Objekts zu bestimmen. Es versteht sich, dass die Rechenkomplexität eines derartigen Vorgangs (z. B. das Bestimmen des Schnittpunktes eines Rechtecks mit einer Netzfläche) gering ist, sodass das Schätzen der Position von Objekten auf diese Weise sehr schnell durchgeführt werden kann.
  • Verschiedene Ausführungsformen des visuellen Positionsschätzungssystems 100 gemäß der vorliegenden Offenbarung können eine beliebige Anzahl von in die Steuerung 34 eingebetteten Submodule beinhalten, die mit den hierin beschriebenen Systemen und Verfahren kombiniert und/oder weiter untergliedert werden können. Weiterhin können Eingaben in das visuelle Positionsschätzungssystem 100 vom Sensorsystem 28 empfangen werden, die von anderen Steuermodulen (nicht dargestellt) empfangen werden, die dem autonomen Fahrzeug 10 zugeordnet sind, die vom Kommunikationssystem 36 empfangen werden und/oder von anderen Untermodulen (nicht dargestellt), die innerhalb der Steuerung 34 ermittelt/modelliert werden. Weiterhin können die Eingaben auch einer Vorverarbeitung unterzogen werden, wie beispielsweise Teilabtastung, Rauschunterdrückung, Normalisierung, Merkmalsextraktion, fehlende Datenreduktion und dergleichen.
  • Des Weiteren können die verschiedenen vorstehend beschriebenen Module (z. B. die Module 410, 420 und 430) als ein oder mehrere maschinelle Lernmodelle implementiert werden, die einem überwachten, unbeaufsichtigten, teilüberwachten oder verstärkten Lernen unterzogen werden und Klassifizierungen (z. B. binäre oder mehrstufige Klassifizierungen), Regression, Clustering, Dimensionalitätsreduktion und/oder solche Aufgaben durchführen. Beispiele für diese Modelle sind künstliche neuronale Netze (ANN) (z. B. rekurrierende neuronale Netze (RNN) und faltungsneuronale Netze (CNN)), Entscheidungsbaummodelle (z. B. Klassifikations- und Regressionsbäume (CART)), Ensemble-Lernmodelle (z. B. Boosting, Bootstrapped Aggregation, Gradienten-Boost-Maschinen und Random Forest), Bayes'sche Netzwerkmodelle (z. B. naive Bayes), Hauptkomponentenanalyse (PCA), Unterstützungsvektormaschinen (SVM), Clustering-Modelle (wie K-Neighbor, K-Mittel, Erwartungsmaximierung, hierarchisches Clustering usw.), lineare Diskriminanzanalysemodelle. In einigen Ausführungsformen erfolgt das Lernen innerhalb eines vom Fahrzeug 10 entfernten Systems (z. B. das System 52 in 2) und wird anschließend für den normalen Betrieb des Fahrzeugs 10 auf das Fahrzeug 10 heruntergeladen. In weiteren Ausführungsformen erfolgt das Lernen zumindest teilweise innerhalb der Steuerung 34 des Fahrzeugs 10 selbst, und das Modell wird anschließend mit externen Systemen und/oder anderen Fahrzeugen einer Flotte geteilt (wie in 2 dargestellt). Trainingsdaten können in ähnlicher Weise vom Fahrzeug 10 erzeugt oder extern erfasst und vor dem Anlernen in Trainings-, Validierungs- und Testsätze aufgeteilt werden.
  • Unter jetziger Bezugnahme auf 5 zusammen mit den zuvor beschriebenen 1-4 und den verschiedenen in den 6-9 dargestellten Beispielen, veranschaulicht ein Flussdiagramm ein Steuerverfahren 500, das von dem System 100 gemäß der vorliegenden Offenbarung ausgeführt werden kann. Wie angesichts der Offenbarung zu erkennen ist, ist die Abfolge der Vorgänge innerhalb der Verfahrens nicht auf die sequenzielle Ausführung beschränkt, wie in der Figur dargestellt, sondern kann in einer oder mehreren variierenden anwendbaren Reihenfolgen gemäß der vorliegenden Offenbarung durchgeführt werden. In verschiedenen Ausführungsformen kann das Verfahren basierend auf einem oder mehreren vordefinierten Ereignissen zur Ausführung geplant werden und/oder kontinuierlich während des Betriebs des autonomen Fahrzeugs 10 ausgeführt werden.
  • In verschiedenen Ausführungsformen beginnt das Verfahren 500 bei 501, in dem ein Bodenmodell der Umgebung bereitgestellt wird (z. B. durch Empfangen des Modells vom entfernten System 52. In diesem Zusammenhang zeigt 6 ein exemplarisches Bodenmodell 600, das ein Netz oder eine Matrix von Punkten 601 beinhaltet, die zusammen die Topographie des „Bodens“ charakterisieren (d. h. die nominale Basisfläche, die den Straßen, Gehwegen und anderen derartigen Oberflächen entspricht, die typischerweise durch das AV 10 während des Betriebs beobachtet werden).
  • Wie zu erkennen ist, können bestimmte Bereiche innerhalb des Bodenmodells 600 undefiniert sein (veranschaulicht als Bereiche 602 in 6), da die Position des Bodens aufgrund der Anwesenheit von Gebäuden, Bäumen und anderen derartigen Strukturen nicht immer bekannt ist. Das Vorhandensein derartiger undefinierter Bereiche ist unproblematisch, da das Bodenmodell 600 in erster Linie darauf ausgelegt ist, die Fahrbahnen zu charakterisieren, durch die das AV 10 fahren soll.
  • Die Auflösung (d. h. der seitliche Abstand) des Bodenmodells 600 kann variieren, liegt jedoch in einer Ausführungsform im Bereich von etwa 0,5-1,5 Metern. In einigen Ausführungsformen liegt die Auflösung des Bodenmodells 600 in der Größenordnung von 10-20 cm. Obwohl das Bodenmodell 600 als quadratisches Netz veranschaulicht wird, ist der Umfang der Ausführungsformen nicht so begrenzt. Das Bodenmodell 600 kann durch ein Netz aus rechteckigen Elementen, dreieckigen Elementen oder einer anderen geeigneten Netzelementform gekennzeichnet sein.
  • Unabhängig von der verwendeten Auflösung beinhaltet das Bodenmodell 600 eine Reihe von Punkten mit bekannten absoluten Positionen innerhalb eines Weltkoordinatenrahmens (z. B. eine 2D-Anordnung von Werten, die den x-, y- und z-Koordinaten entspricht). Wie im Folgenden erläutert wird, können diese Punkte später in einen 3D-Kamerakoordinatenrahmen umgewandelt und dann auf eine 2D-Ebene projiziert werden, um ein virtuelles Bild des Bodenmodells 600 zu erzeugen.
  • Das Bodenmodell 600 kann auf verschiedene Weise erzeugt werden. In einer Ausführungsform wird das Bodenmodell 600 beispielsweise durch Sensordaten (z. B. Lidar, Radar und optische Daten) erzeugt, die von mehreren autonomen Fahrzeugen (z. B. dem AV 10) während ihrer Fahrt durch die Umgebung im normalen Fahrbetrieb erfasst werden. Das heißt, das Bodenmodell 600 kann im Laufe der Zeit unter Verwendung von Sensordaten bestückt und verfeinert werden, die von einer Flotte von autonomen Fahrzeugen erfasst werden, die im Laufe der Zeit auf den Fahrbahnen unterwegs sind. In einer Ausführungsform wird nur ein vorgegebener Bereich um das autonome Fahrzeug herum zum Charakterisieren des Bodenmodells 600 verwendet - z. B. ein 240 x 240 Quadratmeter großer Bereich, der auf dem autonomen Fahrzeug zentriert ist, während es sich durch die Umgebung bewegt. Auf diese Weise kann das AV 10 die Speicherung von Bodenmodellinformationen vermeiden, die den Regionen entsprechen, durch die das AV 10 wahrscheinlich nicht fährt (z. B. Bereiche, die einen erheblichen Abstand zu einem befahrbaren Raum aufweisen).
  • Unter erneuter Bezugnahme auf 5 werden bei 502 Sensordaten, die sich auf die Umgebung in der Nähe des AV 10 beziehen, im Normalbetrieb des AV 10 empfangen (z. B. über das Sensorsystem 28). 7 veranschaulicht ein AV 10, das eine optische Kamera 702 (dargestellt, ohne Verlust der Allgemeinheit, als oben montierte Kamera) beinhaltet, deren Position und Ausrichtung so gewählt ist, dass sie ein Sichtfeld 703 aufweist. Die Kamera 702 nimmt somit ein Bild der Umgebung 700 auf, die durch den rechteckigen Bereich 704 repräsentiert wird. Wie in diesem Beispiel gezeigt, wird ein Objekt 710 (in der Figur als Verkehrskegel veranschaulicht) vom AV 10 unter Verwendung aller verfügbaren Sensordaten (wie optische, Lidar- und Radardaten) abgebildet.
  • Unter Berücksichtigung der bekannten Position des AV 10 sowie der bekannten Position und Ausrichtung der Kamera 702 in Bezug auf das AV 10 wird bei 502 ein virtuelles Kamerabild des Bodenmodells 600 erzeugt. Dies kann in regelmäßigen Abständen durchgeführt werden, z. B. bei einer Abtastrate von etwa 10 Hz. In diesem Zusammenhang stellt 8 eine virtuelle Kamera 802 dar, die (innerhalb der virtuellen Umgebung des Bodenmodells 600) an einer virtuellen Position „platziert“ ist, die der Position und Ausrichtung der tatsächlichen Kamera 702 von 7 entspricht. Wie zu erkennen ist, sind die Position des AV 10 sowie die Position und Ausrichtung der Kamera 702 in Bezug auf das AV 10 aufgrund von Kalibriervorgängen, die mit der Kamera 702 durchgeführt wurden, von vornherein bekannt. In ähnlicher Weise, da die Brennweite und andere geometrische Merkmale der Kamera 702 ebenfalls bekannt sind, kann die virtuelle Kamera 802 so konfiguriert werden, dass sie ein Sichtfeld 803 aufweist, das ebenfalls im Wesentlichen identisch mit dem Sichtfeld 703 der tatsächlichen Kamera 702 ist. Auf diese Weise kann ein virtuelles Bild (804) eines Bereichs 690 des Bodenmodells 600 erzeugt werden. Bei einer Ausführungsform beinhaltet das virtuelle Bild 804 bei jedem Pixel einen berechneten Abstand von der virtuellen Kamera 802 zum entsprechenden Netzpunkt des Bodenmodells 600.
  • Abschließend wird bei 504 die Position des erkannten Objekts 710 basierend auf dem virtuellen Kamerabild 804 und dem tatsächlichen Kamerabild 704 geschätzt. Dies kann auf vielfältige Weise erreicht werden. Als nicht einschränkendes Beispiel zeigt 9 ein Bild 900, das der Überlagerung des virtuellen Bildes 704 (von 7) und des tatsächlichen Kamerabilds 804 (von 8) entspricht. Das erkannte Objekt 710 wird zusammen mit seinem begrenzenden Rechteck 910 dargestellt. Wie zu sehen ist, schneidet ein unterer Abschnitt (z.B. das unterste Liniensegment) des begrenzenden Rechtecks 910 den Bodenmodellbereich 690 in der Nähe eines Punktes 912. Da die Position des Punktes 912 innerhalb des Bodenmodells 600 bekannt ist, kann die Position des erkannten Objekts 710 basierend auf der Position des Punktes 912 geschätzt werden. Andere Verfahren, die das begrenzende Rechteck 910 (oder eine andere begrenzende Form) und seine geometrische Beziehung zum Bodenmodellbereich 690 berücksichtigen, können verwendet werden.
  • In einigen Ausführungsformen beinhaltet das System die Möglichkeit, auch Unsicherheiten bei der Entfernungsmessung außerhalb der Position zu assoziieren. Wenn das AV 10 beispielsweise einen Hügel beobachtet, der sich leicht von ihm entfernt, reduziert das System seine Sicherheit bei der Fahrzeugortung, da mehrere Positionen im Kartenraum vorhanden sind, die dem gleichen Pixel im Bildraum entsprechen. Wenn das Fahrzeug jedoch einen Hügel hinauffährt, kann das AV 10 die jeweilige Position mit einem hohen Maß an Sicherheit kennen.
  • Während mindestens eine exemplarische Ausführungsform in der vorstehenden ausführlichen Beschreibung dargestellt wurde, versteht es sich, dass es eine große Anzahl an Varianten gibt. Es versteht sich weiterhin, dass die exemplarische Ausführungsform oder die exemplarischen Ausführungsformen lediglich Beispiele sind und den Umfang, die Anwendbarkeit oder die Konfiguration dieser Offenbarung in keiner Weise einschränken sollen. Die vorstehende ausführliche Beschreibung stellt Fachleuten auf dem Gebiet vielmehr einen zweckmäßigen Plan zur Implementierung der exemplarischen Ausführungsform bzw. der exemplarischen Ausführungsformen zur Verfügung. Es versteht sich, dass verschiedene Veränderungen an der Funktion und der Anordnung von Elementen vorgenommen werden können, ohne vom Umfang der Offenbarung, wie er in den beigefügten Ansprüchen und deren rechtlichen Entsprechungen aufgeführt ist, abzuweichen.

Claims (10)

  1. Visuelles Positionsschätzungsverfahren, umfassend: Bereitstellen eines Bodenmodells einer Umgebung; Empfangen von Sensordaten in Bezug auf die Umgebung an einem Fahrzeug, wobei die Sensordaten optische Bilddaten beinhalten, die von einer mit dem Fahrzeug gekoppelten optischen Kamera erfasst werden; Erzeugen eines virtuellen Kamerabildes mit einem Prozessor basierend auf dem Bodenmodell, der Position des Fahrzeugs und einer Position der optischen Kamera; und Bestimmen einer Position eines Objekts in der Umgebung mit einem Prozessor basierend auf dem virtuellen Kamerabild und den optischen Bilddaten.
  2. Verfahren nach Anspruch 1, worin das Bereitstellen des Bodenmodells der Umgebung das Erfassen von Sensordaten, die sich auf die Position des Bodens beziehen, über eine Vielzahl von Sensorsystemen beinhaltet, die in eine entsprechende Vielzahl von autonomen Fahrzeugen integriert sind.
  3. Verfahren nach Anspruch 1, worin das Bestimmen der Position des Objekts das Überlagern des virtuellen Kamerabildes auf die optischen Bilddaten beinhaltet.
  4. Verfahren nach Anspruch 3, worin das Bestimmen der Position des Objekts das Bestimmen eines Schnittpunktes zwischen dem Bodenmodell in dem virtuellen Kamerabild und einer geometrischen Darstellung des Objekts beinhaltet.
  5. Verfahren nach Anspruch 4, worin die geometrische Darstellung des Objekts ein begrenzendes Rechteck ist.
  6. Verfahren nach Anspruch 1, worin das virtuelle Kamerabild eine Vielzahl von Pixeln beinhaltet, die jeweils einen entsprechenden vorberechneten Abstand vom Fahrzeug und einen Punkt auf dem Bodenmodell aufweisen.
  7. System zum Steuern eines Fahrzeugs, umfassend: ein Bodenmodell-Erstellmodul, das einen Prozessor beinhaltet, der konfiguriert ist, um ein Bodenmodell einer Umgebung zu erzeugen; ein Sensorsystem, das konfiguriert ist, um Sensordaten in Bezug auf die Umgebung zu erzeugen, wobei die Sensordaten optische Bilddaten beinhalten, die von einer mit dem Fahrzeug gekoppelten optischen Kamera erfasst werden; ein virtuelles Kamerabildmodul, das einen Prozessor beinhaltet, der konfiguriert ist, um ein virtuelles Kamerabild basierend auf dem Bodenmodell, der Position des Fahrzeugs und einer Position der optischen Kamera zu erzeugen; und ein Objektpositionsbestimmungsmodul, das einen Prozessor beinhaltet und konfiguriert ist, um eine Position eines Objekts in der Umgebung basierend auf dem virtuellen Kamerabild und den optischen Bilddaten zu bestimmen.
  8. System nach Anspruch 7, worin das Bodenmodell der Umgebung über Sensordaten erzeugt wird, die sich auf die Position des Bodens beziehen, über eine Vielzahl von Sensorsystemen erzeugt, die in eine entsprechende Vielzahl von autonomen Fahrzeugen integriert sind.
  9. Verfahren nach Anspruch 7, worin die Position des Objekts durch Überlagern des virtuellen Kamerabildes mit den optischen Bilddaten bestimmt wird.
  10. System nach Anspruch 9, worin die Position des Objekts bestimmt wird, indem ein Schnittpunkt zwischen dem Bodenmodell im virtuellen Kamerabild und einer geometrischen Darstellung des Objekts gefunden wird.
DE102018129075.6A 2017-11-22 2018-11-19 Systeme und verfahren zur visuellen positionsschätzung in autonomen fahrzeugen Withdrawn DE102018129075A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/820,628 2017-11-22
US15/820,628 US20180095475A1 (en) 2017-11-22 2017-11-22 Systems and methods for visual position estimation in autonomous vehicles

Publications (1)

Publication Number Publication Date
DE102018129075A1 true DE102018129075A1 (de) 2019-05-23

Family

ID=61757024

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018129075.6A Withdrawn DE102018129075A1 (de) 2017-11-22 2018-11-19 Systeme und verfahren zur visuellen positionsschätzung in autonomen fahrzeugen

Country Status (3)

Country Link
US (1) US20180095475A1 (de)
CN (1) CN109813555A (de)
DE (1) DE102018129075A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10552691B2 (en) * 2017-04-25 2020-02-04 TuSimple System and method for vehicle position and velocity estimation based on camera and lidar data
KR20200010640A (ko) * 2018-06-27 2020-01-31 삼성전자주식회사 모션 인식 모델을 이용한 자체 운동 추정 장치 및 방법, 모션 인식 모델 트레이닝 장치 및 방법
US10884424B2 (en) * 2018-09-07 2021-01-05 GM Global Technology Operations LLC Traffic light occlusion detection for autonomous vehicle
CN110049444A (zh) * 2018-12-29 2019-07-23 中国银联股份有限公司 基于5g的定位方法以及基于5g的定位系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4021685B2 (ja) * 2002-03-04 2007-12-12 松下電器産業株式会社 画像合成変換装置
JP5302227B2 (ja) * 2010-01-19 2013-10-02 富士通テン株式会社 画像処理装置、画像処理システム、および、画像処理方法
KR101265711B1 (ko) * 2011-11-30 2013-05-20 주식회사 이미지넥스트 3d 차량 주변 영상 생성 방법 및 장치
DE102012200731A1 (de) * 2012-01-19 2013-07-25 Robert Bosch Gmbh Verfahren und Vorrichtung zum Visualisieren der Umgebung eines Fahrzeugs
DE102012204541B4 (de) * 2012-03-21 2024-01-25 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Vorrichtung zur Bildverarbeitung von Bilddaten
DE102013211126A1 (de) * 2013-06-14 2014-12-18 Robert Bosch Gmbh Verfahren zum Modellieren eines Umfelds eines Fahrzeugs
CN104658036B (zh) * 2015-01-30 2018-06-15 郑州大学 一种快速建立智能交通三维场的方法
CN106846410B (zh) * 2016-12-20 2020-06-19 北京鑫洋泉电子科技有限公司 基于三维的行车环境成像方法及装置

Also Published As

Publication number Publication date
US20180095475A1 (en) 2018-04-05
CN109813555A (zh) 2019-05-28

Similar Documents

Publication Publication Date Title
DE102018129066B4 (de) Systeme und verfahren für ungeschütztes linksabbiegen in situationen mit hohem verkehrsaufkommen in autonomen fahrzeugen
DE102018132981B4 (de) Autonomes fahrsystem, computerimplementiertes verfahren und autonomes fahrzeug zur ampelzustandsbewertung
DE102018129295A1 (de) Systeme und Verfahren zum Abbilden von Fahrbahnstörobjekten in autonomen Fahrzeugen
DE102018129048B4 (de) Verfahren zum durchführen einer autonomen fahrzeugbetriebsanalyse
DE102019100569A1 (de) Systeme und verfahren zum mindern von ungeschützten manövern in autonomen fahrzeugen
DE102018129074A1 (de) Systeme und verfahren zum umfahren von hindernissen in autonomen fahrzeugen
DE102018121124A1 (de) Verfahren und Systeme zum Erzeugen von Echtzeit-Karteninformationen
DE102018110153A1 (de) Systeme und verfahren zur hindernisvermeidung und wegplanung in autonomen fahrzeugen
DE102019110184A1 (de) Systeme und verfahren zum autonomen fahren unter verwendung eines auf neuronalen netzwerken basierten fahrerlernens auf tokenizierten sensoreingaben
DE102018121122A1 (de) Systeme und Verfahren zur Fahrzeugsignalleuchtenerfassung
DE102019100572A1 (de) Systeme und verfahren für die wegplanung in autonomen fahrzeugen
DE102018129064A1 (de) Systeme und verfahren zur geschwindigkeitsanpassung für einen bevorstehenden spurwechsel in autonomen fahrzeugen
DE102018105693A1 (de) Strassenbau-Erfassungssysteme und -Verfahren
DE102018112115A1 (de) Verfahren und Systeme zum Ermitteln der Geschwindigkeit von sich bewegenden Objekten
DE102018121597A1 (de) Boden-referenzbestimmung für den betrieb von autonomen fahrzeugen
DE102018104717A1 (de) Systeme und verfahren zur vorhersage der fahrzeugabmessung
DE102018109366A1 (de) Systeme und verfahren zur lichtsignalanlagenerfassung
DE102017130936A1 (de) Expertenmodus für Fahrzeuge
DE102018114600A1 (de) Systeme und verfahren zum reagieren auf einsatzfahrzeuge in einem autonomen fahrzeug
DE102018129077A1 (de) Systeme und verfahren zum einfahren in den verkehrsfluss von autonomen fahrzeugen
DE102018117429A1 (de) Klassifizierungsverfahren und -systeme
DE102018115263A1 (de) Systeme und verfahren zur vorhersage von verkehrsmustern in einem autonomen fahrzeug
DE102018114040A1 (de) Systeme und verfahren zur implementierung von fahrmodi in autonomen fahrzeugen
DE102019107485A1 (de) Bewegung eines autonomen fahrzeugs um stationäre fahrzeuge herum
DE102018116001A1 (de) Verfahren und systeme zur erkennung des toten winkels in einem autonomen fahrzeug

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: MANITZ FINSTERWALD PATENT- UND RECHTSANWALTSPA, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee