DE102019202252A1 - Robuste simultane lokalisierung und kartierung durch entfernung dynamischer verkehrsteilnehmer - Google Patents

Robuste simultane lokalisierung und kartierung durch entfernung dynamischer verkehrsteilnehmer Download PDF

Info

Publication number
DE102019202252A1
DE102019202252A1 DE102019202252.9A DE102019202252A DE102019202252A1 DE 102019202252 A1 DE102019202252 A1 DE 102019202252A1 DE 102019202252 A DE102019202252 A DE 102019202252A DE 102019202252 A1 DE102019202252 A1 DE 102019202252A1
Authority
DE
Germany
Prior art keywords
point cloud
image
objects
labels
associating
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
DE102019202252.9A
Other languages
English (en)
Inventor
Abhishek Narendra PATIL
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Publication of DE102019202252A1 publication Critical patent/DE102019202252A1/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, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/94Dynamic range modification of images or parts thereof based on local image properties, e.g. for local contrast enhancement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/187Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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
    • G05D1/0251Control 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 extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/10Recognition assisted with metadata

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Traffic Control Systems (AREA)
  • Instructional Devices (AREA)
  • Navigation (AREA)
  • Optical Radar Systems And Details Thereof (AREA)
  • Image Analysis (AREA)

Abstract

Ein System, ein computerlesbares Medium und ein Verfahren zur Lokalisierung und Kartierung für ein autonomes Fahrzeug werden bereitgestellt. Das System kann ein Bild erhalten. Das System kann einem oder mehreren Objekten des Bildes Labels zuordnen. Das System kann auch eine Punktwolke erhalten. Das System kann einen oder mehrere Objektcluster der Punktwolke bestimmen und die dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke assoziieren. Das System kann ferner dreidimensionale (3D) Objekte der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels identifizieren. In einigen Aspekten kann das System dynamische Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten entfernen und/oder einen simultanen Lokalisierungs- und Kartierungsvorgang an der Punktwolke durchführen, nachdem die dynamischen Verkehrsteilnehmer entfernt worden sind.

Description

  • HINTERGRUND
  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft allgemein eine simultane Lokalisierung und Kartierung und insbesondere eine robuste simultane Lokalisierung und Kartierung durch Entfernung dynamischer Verkehrsteilnehmer.
  • Einleitung
  • Die Entwicklung autonomer Fahrzeuge ist neben anderen Faktoren aufgrund der Erweiterung der Wahrnehmung, Bewegungsplanung und - steuerung und/oder der sich abzeichnenden Sensortechnologien erheblich vorangekommen. Um eine autonome Navigation zu erreichen, kann eine genaue Lokalisierung und Kartierung erforderlich sein. Autonome Fahrzeuge können Bilder und Punktwolken einer Umgebung aufgenommenen, um die Lokalisierung und Kartierung zu unterstützen. Autonome Fahrzeuge führen simultane Lokalisierungs- und Kartierungs- (SLAM - simultaneous localization and mapping) -vorgänge an den aufgenommenen Bildern und Punktwolken durch, um eine Karte der Umgebung zu erstellen und Bewegungs- und Trajektorie-/Odometriedaten zu erhalten. SLAM-Vorgänge können einen oder mehrere Vorgänge umfassen, um eine Lokalisierung und Kartierung zu extrahieren, zu assoziieren, abzuschätzen und/oder zu aktualisieren. Häufig enthalten Bilder und Punktwolken Daten, welche Objekte angeben, welche nicht zum Kartieren der Umgebung und zum Erhalten von Bewegungs- und Trajektorie-/Odometriedaten erforderlich sind. Die unnötigen Objekte können dynamische Verkehrsteilnehmer wie etwa Fahrzeuge, Fußgänger, Radfahrer und Tiere umfassen. Eine Einbeziehung dieser Objekte während eines SLAM-Vorgangs kann zu einer ungenauen oder falschen Kartierung und Lokalisierung führen.
  • Im Hinblick auf das Vorstehende kann in der Technik ein Bedarf nach Wegen bestehen, eine Lokalisierung und Kartierung für autonome Fahrzeuge genauer zu implementieren, indem dynamische Verkehrsteilnehmer identifiziert werden und die dynamischen Teilnehmer vor einem SLAM-Vorgang entfernt werden. Weitere Vorteile und neue Merkmale werden aus der nachstehenden bereitgestellten Offenbarung ersichtlich.
  • ZUSAMMENFASSUNG
  • Das Folgende stellt eine Zusammenfassung eines oder mehrerer Aspekte der Offenbarung dar, um ein grundlegendes Verständnis solcher Aspekte bereitzustellen. Diese Zusammenfassung ist kein umfassender Überblick über alle in Betracht gezogenen Aspekte und soll weder Schlüssel- oder kritische Elemente aller Aspekte identifizieren noch den Umfang einiger oder aller Aspekte abgrenzen. Ihr einziger Zweck besteht darin, einige Konzepte eines oder mehrerer Aspekte der Offenbarung in einer vereinfachten Form als ein Auftakt für die detailliertere Beschreibung darzustellen, welche später präsentiert wird.
  • In einem Beispiel wird ein Verfahren zur Lokalisierung und Kartierung für ein autonomes Fahrzeug bereitgestellt. Das Verfahren kann umfassen ein Erhalten, durch eine Kamera, eines Bildes, welches an einem ersten Ort erlangt wird, ein Zuordnen von Labels zu einem oder mehreren Objekten des Bildes, ein Erhalten, durch einen Lichtdetektor, einer Punktwolke, welche an einem zweiten Ort erlangt wird, welcher sich innerhalb eines Schwellenwertabstands des ersten Orts befindet, ein Bestimmen eines oder mehrerer Objektcluster der Punktwolke, ein Assoziieren der dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke und ein Identifizieren dreidimensionaler (3D) Objekte der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels. In einigen Beispielen kann das Verfahren auch ein Entfernen dynamischer Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten, ein Durchführen eines simultanen Lokalisierungs- und Kartierungsvorgangs an der Punktwolke mit den entfernten dynamischen Verkehrsteilnehmern, ein Durchführen einer semantischen Segmentierung an dem Bild auf einer Pro-Pixel-Basis, ein Assoziieren von Labels wenigstens eines Teils der Pixel des Bildes mit entsprechenden Punkten der Punktwolke, ein Identifizieren der dynamischen Verkehrsteilnehmer innerhalb des Bildes und/oder ein Identifizieren einer Bodenebene der Punktwolke und ein Entfernen der Bodenebene von der Punktwolke umfasst.
  • In einem anderen Beispiel wird ein System zur Lokalisierung und Kartierung für ein autonomes Fahrzeug bereitgestellt. Das System kann eine Kamera zum Aufnehmen eines oder mehrerer Bilder, einen Lichtdetektor zum Aufnehmen einer oder mehrerer Punktwolken, einen mit der Kamera und dem Lichtdetektor gekoppelten Speicher zum Speichern des einen oder der mehreren Bilder und der einen oder den mehreren Punktwolken und einen oder mehrere Prozessoren umfassen, welche mit dem Speicher gekoppelt sind. Der eine oder die mehreren Prozessoren kann/können eingerichtet sein zum Erhalten, durch die Kamera, eines Bildes, welches an einem ersten Ort erlangt wird, Zuordnen von Labels zu einem oder mehreren Objekten des Bildes, Erhalten, durch den Lichtdetektor, einer Punktwolke, welche an einem zweiten Ort erlangt wird, welche sich innerhalb eines Schwellenwertabstands des ersten Orts befindet, Bestimmen eines oder mehrerer Objektcluster der Punktwolke, Assoziieren der dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke und Identifizieren von 3D-Objekten der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels. In einigen Variationen kann/können der eine oder die mehreren Prozessoren ferner eingerichtet sein zum Entfernen dynamischer Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten, Durchführen eines simultanen Lokalisierungs- und Kartierungsvorgangs an der Punktwolke mit den entfernten dynamischen Verkehrsteilnehmern, Durchführen einer semantischen Segmentierung an dem Bild auf einer Pro-Pixel-Basis, Assoziieren von Labels wenigstens eines Teils der Pixel des Bildes mit entsprechenden Punkten der Punktwolke, Identifizieren der dynamischen Verkehrsteilnehmer innerhalb des Bildes und/oder Identifizieren einer Bodenebene der Punktwolke und Entfernen der Bodenebene von der Punktwolke.
  • In einem anderen Beispiel wird ein computerlesbares Medium bereitgestellt, welches einen computerausführbaren Code zur Lokalisierung und Kartierung für ein autonomes Fahrzeug speichert. Das computerlesbare Medium kann einen Code umfassen zum Erhalten, durch eine Kamera, eines Bildes, welches an einem ersten Ort erlangt wird, Zuordnen von Labels zu einem oder mehreren Objekten des Bildes, Erhalten, durch einen Lichtdetektor, einer Punktwolke, welche an einem zweiten Ort erlangt wird, welche sich innerhalb eines Schwellenwertabstands des ersten Orts befindet, Bestimmen eines oder mehrerer Objektcluster der Punktwolke, Assoziieren der dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke und Identifizieren von 3D-Objekten der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels. In einigen Variationen kann das computerlesbare Medium ferner einen Code umfassen zum Entfernen dynamischer Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten, Durchführen eines simultanen Lokalisierungs- und Kartierungsvorgangs an der Punktwolke mit den entfernten dynamischen Verkehrsteilnehmern, Durchführen einer semantischen Segmentierung an dem Bild auf einer Pro-Pixel-Basis, Assoziieren von Labels wenigstens eines Teils der Pixel des Bildes mit entsprechenden Punkten der Punktwolke, Identifizieren der dynamischen Verkehrsteilnehmer innerhalb des Bildes und/oder Identifizieren einer Bodenebene der Punktwolke und Entfernen der Bodenebene von der Punktwolke.
  • Um die vorstehenden und verwandte Ziele zu erreichen, umfassen der eine oder die mehreren Aspekte der Offenbarung die im Folgenden vollständig beschriebenen und insbesondere in den Ansprüchen hervorgehobenen Merkmale. Die folgende Beschreibung und die beigefügten Zeichnungen legen bestimmte veranschaulichende Merkmale des einen oder der mehreren Aspekte im Detail dar. Diese Merkmale sind jedoch nur indikativ für einige der verschiedenen Wege, auf welche die Prinzipien verschiedener Aspekte eingesetzt werden können, und diese Beschreibung soll alle solche Aspekte und deren Äquivalente umfassen.
  • Figurenliste
  • Die neuen Merkmale, von welchen angenommen wird, dass sie Charakteristika der Offenbarung sind, sind in den beigefügten Ansprüchen dargelegt. In der Beschreibung, welche folgt, sind gleiche Teile über die Beschreibung und die Zeichnungen hinweg jeweils mit den gleichen Bezugszeichen versehen. Die Zeichnungsfiguren sind nicht notwendigerweise maßstabsgetreu gezeichnet und bestimmte Figuren können im Interesse der Klarheit und der Übersichtlichkeit übertrieben oder verallgemeinert gezeigt sein. Die Offenbarung selbst wie auch ein bevorzugter Verwendungsmodus, weitere Aufgaben und Vorteile davon werden jedoch am besten unter Bezugnahme auf die folgende detaillierte Beschreibung veranschaulichender Aspekte der Offenbarung verstanden werden, wenn sie in Verbindung mit den beigefügten Zeichnungen gelesen werden, wobei:
    • 1 stellt eine schematische Ansicht eines Beispiels eines Systems zur Lokalisierungskartierung gemäß Aspekten der vorliegenden Offenbarung dar;
    • 2 stellt ein Ablaufdiagramm dar, welches ein beispielhaftes Verfahren zur Lokalisierung und Kartierung gemäß Aspekten der vorliegenden Offenbarung zeigt;
    • 3 stellt ein Beispiel eines zur Lokalisierung und Kartierung aufgenommenen Bildes gemäß einem Aspekt der vorliegenden Offenbarung dar;
    • 4 stellt ein Beispiel eines aus dem Bild aus 3 erzeugten semantischen vorhergesagten Bildes gemäß einem Aspekt der vorliegenden Offenbarung dar;
    • 5 stellt ein Beispiel einer zur Lokalisierung und Kartierung aufgenommenen Punktwolke gemäß einem Aspekt der vorliegenden Offenbarung dar;
    • 6 stellt ein Beispiel einer Punktwolke mit einem Clustering und einer Bodenentfernung, welche aus der Punktwolke aus 5 erzeugt worden sind, gemäß einem Aspekt der vorliegenden Offenbarung dar;
    • 7 stellt ein Beispiel einer aus der Punktwolke aus 5 erzeugten gelabelten Punktwolke gemäß einem Aspekt der vorliegenden Offenbarung dar;
    • 8 stellt ein Beispiel einer aus der gelabelten Punktwolke aus 7 erzeugten Punktwolke mit entfernten dynamischen Verkehrsteilnehmern gemäß einem Aspekt der vorliegenden Offenbarung dar;
    • 9 stellt eine Darstellung eines beispielhaften Systems verschiedener Hardwarekomponenten und anderer Funktionen zur Verwendung gemäß Aspekten der vorliegenden Offenbarung dar; und
    • 10 ist ein Blockdiagramm verschiedener beispielhafter Systemkomponenten zur Verwendung gemäß Aspekten der vorliegenden Offenbarung.
  • DETAILLIERTE BESCHREIBUNG
  • Die detaillierte Beschreibung, welche nachstehend in Verbindung mit den beigefügten Zeichnungen dargelegt wird, soll eine Beschreibung verschiedener Konfigurationen sein und soll nicht die einzigen Konfigurationen darstellen, in welchen die hierin beschriebenen Konzepte praktiziert werden können. Die detaillierte Beschreibung umfasst spezifische Details zu dem Zweck, ein umfassendes Verständnis verschiedener Konzepte zu vermitteln. Jedoch wird es für den Fachmann offensichtlich sein, dass diese Konzepte ohne diese spezifischen Details praktiziert werden können. In einigen Fällen sind allgemein bekannte Komponenten in Form eines Blockdiagramms gezeigt, um zu vermeiden, dass solche Konzepte verschleiert werden.
  • Eine Lokalisierung und Kartierung für ein autonomes Fahrzeug kann unter Verwendung einer Eingabe von einer Mehrzahl von Eingabequellen, wie etwa neben anderen Eingabequellen einer Bildeingabe (z. B. von einer Kamera) und einer Lichtsensoreingabe (z. B. von einer Lichterfassungs- und Entfernungsmessungs- (LIDAR - light detection and ranging) -Vorrichtung), erzeugt werden. Zum Beispiel kann die Mehrzahl von Eingabequellen Eingaben aufnehmen und/oder zu ähnlichen Zeitpunkten, an ähnlichen Orten etc. oder aufgenommene Eingaben zuordnen, so dass die Eingaben gleichzeitig analysiert werden können. In einem spezifischen Beispiel kann eine Testvorrichtung, wie etwa ein Fahrzeug, mit einer Kamera und einer LIDAR-Vorrichtung ausgerüstet sein und kann Bilder und Punktwolken aufnehmen, wenn sich das Fahrzeug entlang einer Route bewegt. Die Bilder und Punktwolken können gleichzeitig analysiert werden, um Punktwolkenkarten und/oder eine Autonomes-Fahrzeug-Bewegungs-Trajektorie/Odometrie zu erzeugen. Zum Beispiel können die Bilder und Punktwolken analysiert werden, um Punktwolkenkarten und/oder eine Autonomes-Fahrzeug-Bewegungs-Trajektorie/Odometrie zu erzeugen. Während eines Analysierens der Bilder und Punktwolken, kann ein Identifizieren und ein Labeln dynamischer Verkehrsteilnehmer, wie etwa Fahrzeuge, Fußgänger, Radfahrer oder Tiere, in der Punktwolke basierend auf Labels von den Bildern durchgeführt werden. Ferner können die dynamischen Verkehrsteilnehmer von Punktwolken entfernt werden, um genauere Ergebnisse von einem simultanen Lokalisierungs- und Kartierungs-(SLAM) -vorgang bereitzustellen.
  • Das Folgende umfasst Definitionen ausgewählter Ausdrücke, welche hierin verwendet werden. Die Definitionen umfassen verschiedene Beispiele und/oder Formen von Komponenten, welche in den Geltungsbereich eines Ausdrucks fallen und welche für eine Implementierung verwendet werden können. Die Beispiele sollen nicht einschränkend sein.
  • Der Ausdruck „Bus“, wie er hierin verwendet wird, kann sich auf eine miteinander verbundene Architektur beziehen, welche betriebsfähig verbunden ist, um Daten zwischen Computerkomponenten innerhalb eines einzelnen oder mehrerer Systeme zu übertragen. Der Bus kann unter anderem ein Speicherbus, ein Speichercontroller, ein Peripheriebus, ein externer Bus, ein Kreuzschienenschalter und/oder ein lokaler Bus sein. Der Bus kann auch ein Fahrzeugbus sein, welcher Komponenten innerhalb eines Fahrzeugs unter Verwendung von Protokollen wie etwa Controller Area Network (CAN) und Local Interconnect Network (LIN) miteinander verbindet.
  • Der Ausdruck „Speicher“, wie er hierin verwendet wird, kann einen flüchtigen Speicher und/oder einen nichtflüchtigen Speicher umfassen. Der nichtflüchtige Speicher kann zum Beispiel einen Nur-Lese-Speicher (ROM - read only memory), einen programmierbaren Nur-Lese-Speicher (PROM - programmable read only memory), einen löschbaren PROM (EPROM - erasable PROM) und einen elektrisch löschbaren PROM (EEPROM - electrically erasable PROM) umfassen. Der flüchtige Speicher kann zum Beispiel einen Direktzugriffsspeicher (RAM - random access memory), einen synchronen RAM (SRAM - synchronous RAM), einen dynamischen RAM (DRAM - dynamic RAM), einen synchronen DRAM (SDRAM - synchronous DRAM), einen SDRAM mit doppelter Datenrate (DDR SDRAM - double data rate SDRAM) und einen Direkt-RAM-Bus-RAM (DRRAM - direct RAM bus RAM) umfassen.
  • Der Ausdruck „betriebsfähige Verbindung“, wie er hierin verwendet wird, kann eine Verbindung umfassen, durch die Funktionseinheiten „betriebsfähig verbunden“ sind, wobei Signale, physikalische Kommunikationen und/oder logische Kommunikationen gesendet und/oder empfangen werden können. Eine betriebsfähige Verbindung kann eine physikalische Schnittstelle, eine Datenschnittstelle und/oder eine elektrische Schnittstelle umfassen.
  • Der Ausdruck „Prozessor“, wie er hierin verwendet wird, kann sich auf eine Vorrichtung beziehen, welche Signale verarbeitet und allgemeine Datenverarbeitungs- und Arithmetikfunktionen durchführt. Von dem Prozessor verarbeitete Signale können digitale Signale, Datensignale, Computeranweisungen, Prozessoranweisungen, Nachrichten, ein Bit, einen Bitstrom oder andere Datenverarbeitungen umfassen, welche empfangen, übertragen und/oder erfasst werden können. Ein Prozessor kann zum Beispiel Mikroprozessoren, Mikrocontroller, digitale Signalprozessoren (DSPs - digital signal processors), feldprogrammierbare Gate-Arrays (FPGAs - field programmable gate arrays), programmierbare Logikvorrichtungen (PLDs - programmable logic devices), Zustandsmaschinen, gattergesteuerte Logik, diskrete Hardwareschaltungen, ein System auf einem Chip (SoC - system-on-a-chip) und andere geeignete Hardware umfassen, welche dazu eingerichtet ist, die hierin beschriebenen verschiedenen Funktionen durchzuführen.
  • Einige Aspekte bestimmter Systeme werden nun unter Bezugnahme auf verschiedene Vorrichtungen und Verfahren dargelegt. Diese Vorrichtungen und Verfahren werden in der folgenden detaillierten Beschreibung beschrieben und in den beigefügten Zeichnungen durch verschiedene Blöcke, Module, Komponenten, Schaltungen, Schritte, Prozesse, Algorithmen etc. (kollektiv als „Elemente“ bezeichnet) dargestellt. Diese Elemente können unter Verwendung von elektronischer Hardware, Computersoftware oder jeglicher Kombination davon implementiert werden. Ob solche Elemente als Hardware oder Software implementiert werden, hängt von den bestimmten Anwendungs- und Designbeschränkungen ab, welche dem Gesamtsystem auferlegt sind.
  • Als Beispiel kann ein Element oder jeglicher Teil eines Elements oder jegliche Kombination von Elementen mit einem „Verarbeitungssystem“ implementiert werden, welches einen oder mehrere Prozessoren umfasst. Ein oder mehrere Prozessoren in dem Verarbeitungssystem können Software ausführen. Software soll derart breit ausgelegt werden, dass Anweisungen, Anweisungssätze, Code, Codesegmente, Programmcode, Programme, Subprogramme, Softwaremodule, Anwendungen, Softwareanwendungen, Softwarepakete, Routinen, Subroutinen, Objekte, ausführbare Dateien, Ausführungsthreads, Vorgänge, Funktionen etc. gemeint sind, unabhängig davon, ob sie als Software, Firmware, Middleware, Mikrocode, Hardwarebeschreibungssprache oder auf andere Weise bezeichnet wird.
  • Dementsprechend können die beschriebenen Funktionen in einem oder mehreren Aspekten in Hardware, Software, Firmware oder jeglicher Kombination davon implementiert werden. Wenn sie in Software implementiert werden, können die Funktionen als eine oder mehrere Anweisungen oder als Code auf einem computerlesbaren Medium gespeichert oder codiert werden. Computerlesbare Medien umfassen Computerspeichermedien. Speichermedien können jegliche verfügbare Medien sein, auf welche ein Computer zugreifen kann. Als Beispiel und nicht als Einschränkung können solche computerlesbaren Medien RAM, ROM, EEPROM, CD-ROM oder andere optische Plattenspeicher, Magnetplattenspeicher oder andere magnetische Speichervorrichtungen oder jegliches andere Medium umfassen, welches verwendet werden kann, um gewünschten Programmcode in der Form von Anweisungen oder Datenstrukturen zu tragen oder zu speichern, und auf welches ein Computer zugreifen kann.
  • 1 zeigt eine schematische Ansicht eines Beispiels eines Systems 100 zum Lokalisieren und Kartieren gemäß hierin beschriebenen Aspekten. Komponenten des Systems 100 wie auch die Komponenten anderer Systeme, Hardwarearchitekturen und Softwarearchitekturen, welche hierin erörtert werden, können für verschiedene Aspekte der Offenbarung kombiniert, weggelassen oder in unterschiedliche Architekturen organisiert werden. Jedoch konzentrieren sich die hierin diskutierten beispielhaften Aspekte und Konfigurationen auf das System 100, wie es in 1 dargestellt ist, mit entsprechenden Systemkomponenten und zugehörigen Verfahren.
  • Wie in 1 gezeigt, kann das System 100 einen oder mehrere Prozessoren 102 und einen oder mehrere Speicher 104 umfassen oder betriebsfähig damit gekoppelt sein (oder durch diese ausgeführt werden), welche kommunizieren, um bestimmte hierin beschriebene Aktionen zu bewirken. Zum Beispiel können der eine oder die mehreren Prozessoren 102 und/oder der eine oder die mehreren Speicher 104 eine Lokalisierungs- und Kartierungskomponente 106 zum Erzeugen von Lokalisierungs- und Kartierungsinformationen, wie etwa eine dreidimensionale (3D) Punktwolkenkarte und eine Autonomes-Fahrzeug-Bewegungs-Trajektorie/Odometrie, eine Bildkomponente 108 zum Empfangen eines oder mehrerer Bilder (z. B. von einer Kamera 110), eine Punktwolkenkomponente 112 zum Empfangen einer oder mehrerer Punktwolken (z. B. von einer LIDAR- 114 -Vorrichtung) und/oder eine Ortskomponente 116 zum Empfangen eines oder mehrerer Parameter, welche sich auf einen Ort des Systems 100 beziehen (z. B. und/oder entsprechend den Bild- und/oder Punktwolkeneingaben), ausführen und/oder Anweisungen, Parameter etc. zum Ausführen speichern. Der Prozessor / die Prozessoren 102, der/die Speicher 104, verschiedene der Komponenten 106, 108, 112, 116 etc. können über einen Bus 118 betriebsfähig gekoppelt sein. In einem anderen Beispiel kann/können der Prozessor / die Prozessoren 102 eine oder mehrere der verschiedenen Komponenten 106, 108, 112, 116 ausführen, um hierin beschriebene Funktionen durchzuführen, während sie über den Bus 118 betriebsfähig mit dem Speicher / den Speichern 104 und/oder anderen Komponenten gekoppelt sind.
  • In einem Beispiel kann die Lokalisierungs- und Kartierungskomponente 106 eine 3D-Erfassungskomponente 120 zum Erfassen von Objekten in einer Punktwolke basierend auf einer Bildeingabe und einer Punktwolkeneingabe, eine Dynamischer-Verkehrsteilnehmer-Entfernungskomponente 122 zum Entfernen dynamischer Verkehrsteilnehmer von einer Punktwolke und/oder eine SLAM-Komponente 124 zum Durchführen eines SLAM-Vorgangs an der Punktwolke mit entfernten dynamischen Verkehrsteilnehmern umfassen.
  • In einem Aspekt kann das System 100 vollständig oder teilweise innerhalb eines Fahrzeugs eingesetzt werden, welches eine Route fährt. In einem anderen Beispiel kann das System 100 zwischen einem Fahrzeug und einem oder mehreren entfernten Geräten verteilt sein (z. B. kann die Kamera 110 oder der LIDAR 114 an dem Fahrzeug vorhanden sein, während eine oder mehrere Komponenten, wie etwa die Lokalisierungs- und Kartierungskomponente 106, auf einen oder mehrere entfernt angeordnete Computer verteilt werden können). In dieser Hinsicht kann zum Beispiel eine Verarbeitung einer Eingabe von der Kamera 110, dem LIDAR 114 etc. an dem Fahrzeug oder an einer entfernt angeordneten Vorrichtung zum Durchführen einer Lokalisierung und Kartierung stattfinden. In einem Aspekt kann in jedem Fall die Lokalisierungs- und Kartierungskomponente 106 einer oder mehreren anderen Vorrichtungen über ein Netzwerk 140 zum Anzeigen und/oder zum weiteren Verarbeiten Lokalisierungs- und Kartierungsinformationen, wie etwa eine 3D-Punktwolkenkarte und/oder die Autonomes-Fahrzeug-Bewegungs-Trajektorie/Odometrie, bereitstellen.
  • Nun wird unter Bezugnahme auf 2, welche in Verbindung mit dem beispielhaften System 100 aus 1 beschrieben wird, ein beispielhaftes Verfahren 200 zum Lokalisieren und Kartieren dargestellt. In einem Aspekt kann das Verfahren 200 durch den einen oder die mehreren Prozessoren 102 und/oder die Speicher 104 des Systems 100 durchgeführt werden, welche, wie oben beschrieben, in einem Fahrzeug angeordnet sein können oder an verschiedenen Orten verteilt sein können. In dieser Hinsicht können ein oder mehrere Blöcke (z. B. vollständig oder teilweise) an einem Fahrzeug oder an einem entfernten Ort durchgeführt werden, um Lokalisierungs- und Karteninformationen zu erzeugen.
  • In Block 202 kann das Verfahren ein Erhalten eines Bildes umfassen. In einem Aspekt kann die Bildkomponente 108 über eine Kamera (z. B. Kamera 110) das Bild erhalten. Zum Beispiel kann die Kamera 110 an einem Fahrzeug positioniert sein, welches entlang einer Route fährt, und kann dazu eingerichtet sein, periodisch Bilder aufzunehmen und/oder ein Video mit einer bestimmten Anzahl von Bildern pro Sekunde (FPS - frames per second) aufzunehmen. Die Kamera 110 kann die Bilder / das Video lokal und/oder in einem oder mehreren Speichern 104 speichern und/oder kann die Bilder / das Video einer entfernten Vorrichtung bereitstellen, von welcher die Bildkomponente 108 das Bild empfangen kann. Zusätzlich kann die Ortskomponente 116 zum Beispiel einen mit dem Bild assoziierten Ort bestimmen, was ein Erhalten von Global-Positioning-System- (GPS - global positioning system) -Koordinaten eines die Kamera 110 umfassenden Fahrzeugs zu oder nahe dem Zeitpunkt umfassen kann, zu welchem das Bild durch die Kamera 110 aufgenommen wird. In einem Aspekt kann die Ortskomponente 116 die GPS-Koordinaten mit dem Bild assoziieren (z. B. in Bildmetadaten oder anderweitig in einem relationalen Speicher), so dass der Ort für das Bild bestimmt werden kann, wenn das Bild verarbeitet wird.
  • In Block 204 kann das Verfahren 200 ein Durchführen einer semantischen Segmentierung an dem Bild umfassen. In einem Aspekt kann die Lokalisierungs- und Kartierungskomponente 106 die semantische Segmentierung an dem Bild durchführen. Zum Beispiel kann die 3D-Erfassungskomponente 120 eine semantische Segmentierung an dem Bild durchführen, indem ein neuronales Netzwerk mit erweiterter semantischer Segmentierung mit Faltung auf das Bild angewendet wird, um wenigstens einen Teil der Pixel mit einer oder mehreren semantischen Vorhersagen zu assoziieren. In einem Aspekt kann die 3D-Erfassungskomponente 120 das neuronale Netzwerk mit erweiterter semantischer Segmentierung mit Faltung anwenden. Eine Objekterkennung kann in dem Bildbereich (z. B. im Gegensatz zu dem Punktwolkenbereich) basierend auf einer genaueren bildlichen Darstellung der Szene genauer sein. Dementsprechend kann die 3D-Erfassungskomponente 120 das neuronale Netzwerk mit erweiterter semantischer Segmentierung mit Faltung auf das Bild anwenden, um eine Vorhersage von dichten pixelweisen semantischen Kategorien auszugeben. Zum Beispiel kann die Ausgabe von dem Anwenden der semantischen Segmentierung derart erscheinen, dass sie ähnliche Formen und Umrisse wie das Bild aufweist, wobei Farbwerte für die Pixel basierend auf Objektdefinitionen in der semantischen Segmentierung durch Farbwerte ersetzt werden, welche einem erkannten Objekt entsprechen. Somit kann zum Beispiel eine semantische Kategorie, welche einer Gruppe von Pixeln entspricht, basierend auf dem Pixelfarbwert bestimmt werden und bestimmte Größenparameter des Objekts können basierend auf einer Anzahl benachbarter Pixel, welche dem Pixelfarbwert entsprechen, in einer vorgegebenen Richtung bestimmt oder abgeleitet werden. Die semantische Segmentierung kann dazu führen, dass ein Bild Pixel aufweist, welche entsprechend den semantischen Kategorien gelabelt sind.
  • In einem Aspekt können die semantischen Kategorien neben anderen Kategorien Straße, Himmel, Gehweg, Pflanze, Person, Fahrzeug und Gebäude umfassen. In einem Beispiel kann die 3D-Erfassungskomponente 120 die semantischen Kategorien bestimmen, welche an einer Grenze des Objekts in dem Bild teilweise aufgrund der Unsicherheit, ob die Randpixel des Objekts aufgrund von Ungenauigkeiten der Informationen in der semantischen Segmentierung Teil des Objekts sind, nicht genau sein können. Darüber hinaus kann zum Beispiel ein Anwenden der semantischen Segmentierung zu einer semantischen Kategorisierung führen, welche nicht instanzspezifisch ist (z. B. können mehrere Objekte, welche die gleiche semantische Kategorie aufweisen, mit den gleichen Pixelwerten assoziiert werden).
  • In Block 206 kann das Verfahren 200 ein Erhalten einer Punktwolke umfassen. In einem Aspekt kann die Punktwolkenkomponente 112 über den Lichtdetektor (z. B. den LIDAR 114) die Punktwolke erhalten. Zum Beispiel kann der LIDAR 114 an einem entlang einer Route fahrenden Fahrzeug positioniert sein und dazu eingerichtet sein, Punktwolkenscans eines Bereichs entlang der Route periodisch aufzunehmen. Der LIDAR 114 kann die Punktwolken lokal und/oder in dem Speicher / den Speichern 104 speichern und/oder kann die Punktwolken einer entfernten Vorrichtung bereitstellen, von welcher die Punktwolkenkomponente 112 die Punktwolken empfangen kann. Zusätzlich kann die Ortskomponente 116 zum Beispiel einen mit den Punktwolken assoziierten Ort bestimmen, was ein Erhalten von Global-Positioning-System- (GPS - global positioning system) -Koordinaten eines den LIDAR 114 umfassenden Fahrzeugs zu oder nahe dem Zeitpunkt umfassen kann, zu welchem wenigstens ein Teil der Punktwolke durch den LIDAR 114 aufgenommen wird. In einem Beispiel kann die Ortskomponente 116 die GPS-Koordinaten mit den Punktwolken assoziieren (z. B. in Punktwolkenmetadaten oder anderweitig in einem relationalen Speicher), so dass der Ort für die Punktwolke bei einem Verarbeiten der Punktwolke für eine Lokalisierung und Kartierung bestimmt werden kann.
  • In einem Aspekt kann die Ortskomponente 116 die zu einem ähnlichen Zeitpunkt aufgenommenen Bilder und Punktwolken miteinander und/oder mit den entsprechenden Orten assoziieren. Zusätzlich kann, wie hierin weiter beschrieben, die Lokalisierungs- und Kartierungskomponente 106 die Bild- und Punktwolkeneingaben erhalten, welche unter anderen Faktoren basierend auf einem assoziierten Zeitpunkt, zu welchem das Aufnehmen des Bildes und der Punktwolke stattfand, und basierend auf dem assoziierten Ort synchronisiert werden können.
  • In Block 208 kann das Verfahren 200 ein Bestimmen einer Mehrzahl von Objektclustern innerhalb der Punktwolke umfassen. Zum Beispiel kann die 3D-Erfassungskomponente 120 die Objektcluster bestimmen, indem die Punktwolke in kleinere Teile organisiert wird und verschiedene Teile der Punktwolke kategorisiert werden. In einem Aspekt kann die 3D-Erfassungskomponente 120 ein Clustering durchführen, indem sie zum Beispiel ein Clustering-Verfahren mit radial begrenztem nächsten Nachbarn (RBNN - radially bounded nearest neighbor), ein Euklidischer-Sinn-Verfahren oder ein Regionswachstumssegmentierungsverfahren verwendet.
  • In Block 210 kann das Verfahren 200 ein Entfernen eines Bodens von der Punktwolke umfassen. In einem Aspekt kann die 3D-Erfassungskomponente 120 Boden entfernen, indem sie Punkte entfernt, welche geclustert und als Boden identifiziert worden sind. Zum Beispiel kann die 3D-Erfassungskomponente 120 den Boden als die größte planare Komponente in der Punktwolke bestimmen. Zusätzlich kann die Objekt-Clustering-Komponente 120 Punkte in der Punktwolke entfernen, ignorieren oder anderweitig vermeiden, von denen bestimmt wird, dass sie planare Inlier sind, bis es keine große Ebene gibt (z. B. eine Ebene, welche größer als eine Schwellenpunktgröße ist). Zum Beispiel kann die 3D-Erfassungskomponente 120 die planaren Inlier unter Verwendung von Übereinstimmung mit einer zufälligen Stichprobe (RANSAC - random sample consensus) entfernen, ignorieren oder anderweitig vermeiden, um die planaren Inlier zu bestimmen, welche die Schwellenwertpunktgröße erreichen.
  • In Block 212 kann das Verfahren ein Übertragen von Labels von dem Bild zu der Punktwolke umfassen. In einem Aspekt kann die 3D-Erfassungskomponente 120 das Bild empfangen, nachdem eine semantische Segmentierung durchgeführt worden ist, und die Punktwolke empfangen, nachdem die Objekte geclustert worden sind und der Boden entfernt worden ist. In einem Aspekt kann die 3D-Erfassungskomponente 120 wenigstens den Teil der Punkte, welcher wenigstens dem Teil der Pixel entspricht, mit der assoziierten einen oder den assoziierten mehreren semantischen Vorhersagen assoziieren. Basierend auf der Assoziation der Pixel zu den Punkten kann die 3D-Erfassungskomponente 120 Labels von den Pixeln des Bildes zu assoziierten Punkten der Punktwolke übertragen.
  • In Block 214 kann das Verfahren 200 ein Entfernen dynamischer Teilnehmer von der Punktwolke umfassen. In einem Aspekt kann die Dynamischer-Verkehrsteilnehmer-Entfernungskomponente 122 die gelabelte Punktwolke empfangen und die dynamischen Teilnehmer basierend auf den Labels von der Punktwolke entfernen. Zum Beispiel kann die Dynamischer-Verkehrsteilnehmer-Entfernungskomponente 122 Punkte entfernen, welche als eine Person, ein Fahrzeug oder ein anderes Objekt gelabelt sind, welches als ein dynamischer Verkehrsteilnehmer angesehen wird.
  • In Block 216 kann das Verfahren 200 ein Durchführen eines SLAM-Vorgangs umfassen. In einem Aspekt kann die SLAM-Komponente 124 die Punktwolke empfangen, welche entfernte dynamische Teilnehmer entfernt hat, und den SLAM-Vorgang an der Punktwolke mit entfernten dynamischen Verkehrsteilnehmern durchführen. In einem Beispiel kann die SLAM-Komponente 124 der SLAM-Vorgang unter Verwendung eines oder mehrerer SLAM-Algorithmen durchführen, wie etwa Normal-Distributive-Transformation (NDT - Normal Distributive Transformation), Iterative-Closest-Point (ICP - Iterative Closest Point), Probabilistic-Iterative-Correspondence (pIC - Probabilistic Iterative Correspondence), Conditional-Random-Fields (CRF - Conditional Random Fields), Local-Geometric-Features-registration und Branch-and-Bound.
  • In Block 218 kann das Verfahren 200 eine Lokalisierung und Kartierung basierend auf dem durchgeführten SLAM-Algorithmus ausgeben. In einem Aspekt kann die SLAM-Komponente 124 3D-Punktwolkenkartendaten und/oder Autonomes-Fahrzeug-Bewegungs-Trajektorie-/Odometriedaten basierend auf dem SLAM-Algorithmus ausgeben.
  • In einem Beispiel kann die Lokalisierungs- und Kartierungskomponente 106 die 3D-Punktwolkenkartendaten und/oder die Autonomes-Fahrzeug-Bewegungs-Trajektorie-/Odometriedaten über das Netzwerk 140 einer oder mehreren anderen Vorrichtungen bereitstellen. Zum Beispiel kann die Lokalisierungs- und Kartierungskomponente 106 die 3D-Punktwolkenkartendaten und/oder die Autonomes-Fahrzeug-Bewegungs-Trajektorie-/Odometriedaten über das Netzwerk 140 hochladen und andere Fahrzeuge, persönliche Vorrichtungen (z. B. Mobiltelefone, Tablets etc.) können die 3D-Punktwolkenkartendaten und/oder die Autonomes-Fahrzeug-Bewegungs-Trajektorie-/Odometriedaten zum Anzeigen auf einer Anzeige eines Navigationssystems, zum Erweitern oder Aktualisieren der 3D-Kartierungs- und/oder Autonomes-Fahrzeug-Bewegungs-Trajektorie-/Odometriedaten etc. herunterladen.
  • Die 3-8 stellen Beispiele von Bildern und/oder Scans gemäß oben beschriebener Aspekte dar. 3 stellt ein Beispiel eines von einer Kamera 110 aufgenommenen Bildes 300 dar, wobei die Kamera 110 an einem Fahrzeug 302 montiert sein kann, welches eine Route fährt. Das Bild 300 stellt eine entlang der Route von der Kamera 110 aufgenommene Szene dar und die Szene kann mit einem Ort assoziiert sein (z. B. einem Ort des Fahrzeugs 302, wenn das Bild 300 aufgenommen wird), wie oben beschrieben. Das Bild 300 umfasst eine Straße 304, verschiedene Gebäude 306 entlang der Straße 304, eine Mehrzahl von Personen 308, 310, 312, welche auf oder in der Nähe der Straße 304 gehen, und eine Mehrzahl von Fahrzeugen 314, 316, 318, welche geparkt sind und/oder entlang der Straße 304 fahren. Dieses Bild 300 kann ein Beispiel für ein der Lokalisierungs- und Kartierungskomponente 106 bereitgestelltes Bild sein. 4 stellt ein Beispiel eines aus dem Bild 300 erzeugten vorhergesagten semantischen Bildes 400 dar. Zum Beispiel kann die 3D-Erfassungskomponente 120 die Straße 304 in dem Bild 300 erfassen und Pixelwerte von als Straße 304 identifizierten Pixeln derart modifizieren, dass sie eine Farbe haben, um in dem vorhergesagten semantischen Bild 400 eine Straße 404 zu ergeben. Ähnlich kann die 3D-Erfassungskomponente 120 die Gebäude 306 in dem Bild 300 erfassen und Pixelwerte von als Gebäude 306 identifizierten Pixeln derart modifizieren, dass sie eine Farbe haben, um in dem vorhergesagten semantischen Bild 400 Gebäude 406 zu ergeben. Ferner kann die 3D-Erfassungskomponente 120 die Personen 308, 310, 312 in dem Bild 300 erfassen und Pixelwerte von als Personen 308, 310, 312 Pixeln derart modifizieren, dass sie eine Farbe haben, um in dem vorhergesagten semantischen Bild 400 Personen 408 zu ergeben. Darüber hinaus kann zum Beispiel die 3D-Erfassungskomponente 120 die Fahrzeuge 314, 316, 318 in dem Bild 300 erfassen und Pixelwerte von als ein Fahrzeug identifizierten Pixeln derart modifizieren, dass sie eine Farbe haben, um in dem vorhergesagten semantischen Bild 400 Fahrzeuge 410 zu ergeben. Wie beschrieben, können in der gleichen semantischen Klasse (z. B. Fahrzeug) identifizierte Objekte derart modifiziert werden, dass sie die gleiche Farbe haben und daher das gleiche Label umfassen.
  • 5 stellt ein Beispiel einer Punktwolke 500 dar, welche von einem LIDAR 114 erhalten wird, welcher auch an dem Fahrzeug 502 montiert sein kann, welches die Route fährt. Die Punktwolke 500 stellt einen entlang der Route von dem LIDAR 114 aufgenommenen LIDAR-Scan dar und kann basierend auf einer Zeit, zu welcher das Bild 300 und die Punktwolke 500 aufgenommen werden, einem Ort des Fahrzeugs 502, wenn die Punktwolke 500 aufgenommen wird etc., auch mit einem Ort des Bildes 300 assoziiert sein. Die Punktwolke 500 umfasst eine Mehrzahl von Punkten, welche eine Straße 504 (welche in dem Bild 300 die Straße 304 sein kann), ein oder mehrere Gebäude 506 (welche in dem Bild 300 das Gebäude 306 sein können) eine Mehrzahl von Personen 508, 510, 512 (welche in dem Bild 300 die Mehrzahl von Personen 308-312 sein kann) und eine Mehrzahl von Fahrzeugen 514, 516, 518 (welche in dem Bild 300 eines oder mehrere der Fahrzeuge 314-318 sein können) definieren. Die Punktwolke 500 kann auch der Lokalisierungs- und Kartierungskomponente 106 bereitgestellt werden.
  • 6 stellt ein Beispiel einer Punktwolke 600 dar, bei welcher ein Objekt-Clustering und eine Bodenentfernung durchgeführt worden ist. In einem Aspekt kann die 3D-Erfassungskomponente 120 Objektcluster basierend auf dem einen oder den mehreren oben beschriebenen Verfahren bestimmen. Zum Beispiel kann die 3D-Erfassungskomponente 120 die Straße 504 (nicht in 6 gezeigt), das Gebäude 606 (welches das Gebäude 506 der Punktwolke 500 sein kann), die Personen 608, 610, 612 (welche die Mehrzahl von Personen 508-512 der Punktwolke 500 sein können) und die Fahrzeuge 614, 616, 618 (welche die Mehrzahl von Fahrzeugen 514- 518 der Punktwolke 500 sein können) clustern. Die 3D-Erfassungskomponente 120 kann Boden von der Punktwolke 600 entfernen, indem sie zum Beispiel bestimmt, dass der Boden die größte planare Komponente in der Punktwolke 600 ist.
  • 7 stellt ein Beispiel einer Punktwolke 700 mit von dem Bild 400 übertragenen Labels, mit Labeling für die Punktwolke 600, wobei Clustering durchgeführt worden ist, und mit entferntem Boden dar. In einem Aspekt kann die 3D-Erfassungskomponente 120 die Label des Bildes 300 mit den Punkten der Punktwolke 600 assoziieren und kann dynamische Verkehrsteilnehmer basierend auf den Labels bestimmen. Wie durch 7 gezeigt, sind die Personen 608-612 (welche die Personen 508- 512 der Punktwolke 500 sein können) der Punktwolke 600 als Personen und die Fahrzeuge 614-618 (welche die Fahrzeuge 514-518 der Punktwolke 500 sein können) der Punktwolke 600 als Fahrzeuge gelabelt worden und sind daher als dynamische Verkehrsteilnehmer 702 bestimmt. Jedoch ist das Gebäude 706 (welches das Gebäude 506 der Punktwolke 500 sein kann) der Punktwolke 700 als ein Gebäude gelabelt worden, für welches bestimmt ist, dass es ein dynamischer Verkehrsteilnehmer ist.
  • 8 stellt ein Beispiel einer Punktwolke 800 dar, bei welcher die dynamischen Verkehrsteilnehmer entfernt sind. In einem Aspekt kann die Dynamischer-Verkehrsteilnehmer-Komponente 122 dynamische Verkehrsteilnehmer basierend auf der gelabelten Punktwolke entfernen. In einem Beispiel können dynamische Verkehrsteilnehmer die Personen 508-512 und die Fahrzeuge 514-518 umfassen. Im Vergleich zu 5, umfasst 8 die Personen 508-512 und die Fahrzeuge 514-518 nicht, da die dynamischen Verkehrsteilnehmer von der Punktwolke 800 entfernt worden sind. Wie in 8 gezeigt, verbleibt jedoch das Gebäude 808 (welches das Gebäude 506 der Punktwolke 500 sein kann) in der Punktwolke 800. Sobald dynamische Verkehrsteilnehmer entfernt worden sind, kann die SLAM-Komponente einen SLAM-Vorgang wie oben beschrieben unter Verwendung von Daten von der Punktwolke 800 durchführen, bei welcher dynamische Verkehrsteilnehmer entfernt sind.
  • Aspekte der vorliegenden Offenbarung können unter Verwendung von Hardware, Software oder einer Kombination davon implementiert werden und können in einem oder mehreren Computersystemen oder anderen Verarbeitungssystemen implementiert werden. In einer Variation sind Aspekte der Offenbarung auf ein oder mehrere Computersysteme gerichtet, welche dazu in der Lage sind, die hierin beschriebene Funktionalität auszuführen. Ein Beispiel eines solchen Computersystems 900 ist in 9 gezeigt.
  • Das Computersystem 900 umfasst einen oder mehrere Prozessoren, wie etwa einen Prozessor 904. Der Prozessor 904 ist mit einer Kommunikationsinfrastruktur 906 (z. B. einem Kommunikationsbus, einer Überkreuzungsstange oder einem Netzwerk) verbunden. Verschiedene Softwareaspekte werden im Hinblick auf dieses beispielhafte Computersystem beschrieben. Nach dem Lesen dieser Beschreibung wird einem Fachmann in dem relevanten Fachgebiet ersichtlich werden, wie Aspekte der Offenbarung unter Verwendung anderer Computersysteme und/oder Architekturen implementiert werden können.
  • Das Computersystem 900 kann eine Anzeigeschnittstelle 902 umfassen, welche Grafiken, Text und andere Daten von der Kommunikationsinfrastruktur 906 (oder von einem nicht gezeigten Bildpuffer) zur Anzeige auf einer Anzeigeeinheit 930 weiterleitet. Das Computersystem 900 umfasst auch einen Hauptspeicher 908, vorzugsweise einen Direktzugriffsspeicher (RAM - random access memory), und kann auch einen Sekundärspeicher 910 umfassen. Der Sekundärspeicher 910 kann zum Beispiel ein Festplattenlaufwerk 912 und/oder ein Wechselspeicherlaufwerk 914 umfassen, welches ein Diskettenlaufwerk, ein Magnetbandlaufwerk, ein optisches Plattenlaufwerk etc. darstellt. Das Wechselspeicherlaufwerk 914 liest aus und/oder schreibt in eine Wechselspeichereinheit 918 auf bekannte Weise. Die Wechselspeichereinheit 918 stellt eine Diskette, ein Magnetband, eine optische Platte etc. dar, welche von dem Wechselspeicherlaufwerk 914 gelesen und beschrieben werden. Wie zu erkennen ist, umfasst die Wechselspeichereinheit 918 ein in einem Computer verwendbares Speichermedium mit darin gespeicherter Computersoftware und/oder darin gespeicherten Daten.
  • In alternativen Aspekten kann der Sekundärspeicher 910 andere ähnliche Vorrichtungen umfassen, um zu ermöglichen, dass Computerprogramme oder andere Anweisungen in das Computersystem 900 geladen werden. Solche Vorrichtungen können zum Beispiel eine Wechselspeichereinheit 922 und eine Schnittstelle 920 umfassen. Beispiele davon können eine Programmkassette und eine Kassettenschnittstelle (wie diejenigen, welche in Videospielvorrichtungen vorhanden sind), einen Wechselspeicherchip (wie etwa einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM - erasable programmable read only memory) oder einen programmierbaren Nur-Lese-Speicher (PROM - programmable read only memory)) und eine assoziierte Buchse sowie andere Wechselspeichereinheiten 922 und Schnittstellen 920 umfassen, welche ermöglichen, dass Software und Daten von der Wechselspeichereinheit 922 zu dem Computersystem 900 übertragen werden.
  • Das Computersystem 900 kann auch eine Kommunikationsschnittstelle 924 umfassen. Die Kommunikationsschnittstelle 924 ermöglicht, dass Software und Daten zwischen dem Computersystem 900 und externen Vorrichtungen übertragen werden. Beispiele der Kommunikationsschnittstelle 924 können ein Modem, eine Netzwerkschnittstelle (wie etwa eine Ethernet-Karte), einen Kommunikationsanschluss, einen Personal-Computer-Memory-Card-International-Association- (PCMCIA - Personal Computer Memory Card International Association) -Steckplatz und eine Personal-Computer-Memory-Card-International-Association-Karte etc. umfassen. Software und Daten, welche über die Kommunikationsschnittstelle 924 übertragen werden, liegen in der Form von Signalen 928 vor, welche elektronische, elektromagnetische, optische oder andere Signale sein können, welche von der Kommunikationsschnittstelle 924 empfangen werden können. Diese Signale 928 werden der Kommunikationsschnittstelle 924 über einen Kommunikationspfad (z. B. Kanal) 926 bereitgestellt. Dieser Pfad 926 trägt Signale 928 und kann unter Verwendung von Draht oder Kabel, Faseroptik, einer Telefonleitung, einer zellularen Verbindung, einer Funkfrequenz- (RF - radio frequency) -Verbindung und/oder anderen Kommunikationskanälen implementiert werden. In diesem Dokument werden die Ausdrücke „Computerprogrammmedium“ und „computernutzbares Medium“ verwendet, um sich allgemein auf Medien wie etwa ein Wechselspeicherlaufwerk 980, eine im Festplattenlaufwerk 970 installierte Festplatte und Signale 928 zu beziehen. Diese Computerprogrammprodukte dem Computersystem 900 Software bereit. Aspekte der Offenbarung sind auf solche Computerprogrammprodukte gerichtet.
  • Computerprogramme (auch als Computersteuerlogik bezeichnet) werden in dem Hauptspeicher 908 und/oder in dem Sekundärspeicher 910 gespeichert. Computerprogramme können auch über die Kommunikationsschnittstelle 924 empfangen werden. Solche Computerprogramme ermöglichen, wenn sie ausgeführt werden, dass das Computersystem 900 verschiedene Funktionen gemäß Aspekten der vorliegenden Offenbarung durchführt, wie hierin erörtert. Insbesondere ermöglichen die Computerprogramme, wenn sie ausgeführt werden, dass der Prozessor 904 solche Funktionen durchführt. Dementsprechend stellen solche Computerprogramme Steuerungen des Computersystems 900 dar. Computerprogramme können eine Lokalisierungs- und Kartierungskomponente 106, eine Bildkomponente 108 zum Empfangen von Bildern von einer oder mehreren Kameras 110, eine Punktwolkenkomponente 112 zum Empfangen von Punktwolken, eine Ortskomponente 116 zum Bestimmen eines Orts einer oder mehrerer Einheiten, welche mit dem Prozessor 904 etc. assoziiert sind, umfassen, wie hierin beschrieben.
  • In Variationen, bei welchen Aspekte der Offenbarung unter Verwendung von Software implementiert werden, kann die Software in einem Computerprogrammprodukt gespeichert werden und unter Verwendung eines Wechselspeicherlaufwerks 914, eines Festplattenlaufwerks 912 oder einer Kommunikationsschnittstelle 920 in das Computersystem 900 geladen werden. Die Steuerlogik (Software) veranlasst, wenn sie durch den Prozessor 904 ausgeführt wird, dass der Prozessor 904 die Funktionen gemäß Aspekten der Offenbarung durchführt, wie hierin beschrieben. In einer anderen Variation werden Aspekte hauptsächlich in Hardware implementiert, wobei zum Beispiel Hardwarekomponenten verwendet werden, wie etwa anwendungsspezifische integrierte Schaltungen (ASICs - application specific integrated circuits). Eine Implementierung der Hardware-Zustandsmaschine, um die hierin beschriebenen Funktionen durchzuführen, ist für einen Fachmann in dem relevanten Fachgebiet offensichtlich.
  • In noch einer weiteren Variation werden Aspekte der Offenbarung unter Verwendung einer Kombination von sowohl Hardware als auch Software implementiert.
  • 10 ist ein Blockdiagramm verschiedener beispielhafter Systemkomponenten, welche werden können, gemäß Aspekten der vorliegenden Offenbarung. Zum Beispiel können sich die verschiedenen Komponenten innerhalb des Fahrzeugs 102 befinden oder nur einige der Komponenten können sich innerhalb des Fahrzeugs 102 befinden und andere Komponenten können sich von dem Fahrzeug 102 entfernt befinden. Das System 1000 umfasst einen oder mehrere Accessoren 1060, 1062 (ebenfalls hierin austauschbar als ein oder mehrere „Benutzer“ bezeichnet) und ein oder mehrere Endgeräte 1042, 1066 (solche Endgeräte können zum Beispiel verschiedene Funktionen des Objekterfassungssystems 110 sein oder umfassen). In einem Aspekt werden Daten zur Verwendung gemäß Aspekten der vorliegenden Offenbarung zum Beispiel durch die Accesssoren 1060, 1062 eingegeben oder es wird auf diese Daten durch die Accessoren zugegriffen über die Endgeräte 1042, 1066, wie etwa Personal Computer (PCs - personal computers), Minicomputer, Großrechner, Mikrocomputer, Telefonvorrichtungen oder drahtlose Vorrichtungen, wie etwa persönliche digitale Assistenten („PDAs“ - personal digital assistants) oder mit einem Server 1043 gekoppelte tragbare drahtlose Vorrichtungen, wie etwa ein PC, ein Minicomputer, ein Großrechner, ein Mikrocomputer oder eine andere Vorrichtung mit einem Prozessor und einem Repository für Daten und/oder einer Verbindung zu einem Repository für Daten, zum Beispiel über ein Netzwerk 1044, wie etwa das Internet oder ein Intranet, und Kopplungen 1045, 1046, 1064. Die Kopplungen 1045, 1046, 1064 umfassen zum Beispiel verdrahtete, drahtlose oder Faseroptikverbindungen. In einer anderen beispielhaften Variation arbeiten das Verfahren und das System gemäß Aspekten der vorliegenden Offenbarung in einer eigenständigen Umgebung, wie etwa auf einem einzelnen Endgerät.
  • Die hierin diskutierten Aspekte der Offenbarung können auch in dem Kontext eines computerlesbaren Speichermediums beschrieben und implementiert werden, welches computerausführbare Anweisungen speichert. Computerlesbare Speichermedien umfassen Computerspeichermedien und Kommunikationsmedien. Zum Beispiel Flash-Speicherlaufwerke, Digital Versatile Discs (DVDs), Compact Discs (CDs), Disketten und Bandkassetten. Computerlesbare Speichermedien können flüchtige und nicht flüchtige, entfernbare und nicht entfernbare Medien umfassen, welche in jeglichem Verfahren oder jeglicher Technologie zum Speichern von Informationen wie etwa computerlesbaren Anweisungen, Datenstrukturen, Modulen oder anderen Daten implementiert sind.
  • Es versteht sich, dass verschiedene Implementierungen der vorstehend offenbarten und anderer Merkmale und Funktionen oder Alternativen oder Varianten davon wünschenswerterweise in vielen anderen verschiedenen Systemen oder Anwendungen kombiniert werden können. Auch, dass verschiedene derzeit unvorhergesehene oder unerwartete Alternativen, Modifikationen, Variationen oder Verbesserungen darin nachträglich durch einen Fachmann vorgenommen werden können, welche ebenfalls von den folgenden Ansprüchen umfasst sein sollen.
  • Ein System, ein computerlesbares Medium und ein Verfahren zur Lokalisierung und Kartierung für ein autonomes Fahrzeug werden bereitgestellt. Das System kann ein Bild erhalten. Das System kann einem oder mehreren Objekten des Bildes Labels zuordnen. Das System kann auch eine Punktwolke erhalten. Das System kann einen oder mehrere Objektcluster der Punktwolke bestimmen und die dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke assoziieren. Das System kann ferner dreidimensionale (3D) Objekte der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels identifizieren. In einigen Aspekten kann das System dynamische Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten entfernen und/oder einen simultanen Lokalisierungs- und Kartierungsvorgang an der Punktwolke durchführen, nachdem die dynamischen Verkehrsteilnehmer entfernt worden sind.

Claims (20)

  1. Verfahren zur Lokalisierung und Kartierung für ein autonomes Fahrzeug, umfassend: Erhalten, durch eine Kamera, eines Bildes, welches an einem ersten Ort erlangt wird; Zuordnen von Labels zu einem oder mehreren Objekten des Bildes; Erhalten, durch einen Lichtdetektor, einer Punktwolke, welche an einem zweiten Ort erlangt wird, welche sich innerhalb eines Schwellenwertabstands des ersten Orts befindet; Bestimmen eines oder mehrerer Objektcluster der Punktwolke; Assoziieren der dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke; und Identifizieren dreidimensionaler (3D) Objekte der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels.
  2. Verfahren nach Anspruch 1, ferner umfassend: Entfernen dynamischer Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten.
  3. Verfahren nach Anspruch 2, ferner umfassend: Durchführen eines simultanen Lokalisierungs- und Kartierungsvorgangs an der Punktwolke, nachdem die dynamischen Verkehrsteilnehmer von der Punktwolke entfernt worden sind.
  4. Verfahren nach Anspruch 1, wobei das Zuordnen von Labels zu dem einen oder den mehreren Objekten des Bildes ein Durchführen einer semantischen Segmentierung an dem Bild auf einer Pro-Pixel-Basis umfasst.
  5. Verfahren nach Anspruch 4, wobei das Assoziieren der Labels ein Assoziieren von Labels wenigstens eines Teils der Pixel des Bildes mit entsprechenden Punkten der Punktwolke umfasst.
  6. Verfahren nach Anspruch 1, wobei das Zuordnen von Labels zu einem oder mehreren Objekten des Bildes ein Identifizieren der dynamischen Verkehrsteilnehmer innerhalb des Bildes umfasst.
  7. Verfahren nach Anspruch 1, wobei das Bestimmen eines oder mehrerer Objektcluster der Punktwolke ein Identifizieren einer Bodenebene der Punktwolke und ein Entfernen der Bodenebene von der Punktwolke umfasst.
  8. System zur Lokalisierung und Kartierung für ein autonomes Fahrzeug, umfassend: eine Kamera zum Aufnehmen eines oder mehrerer Bilder; einen Lichtdetektor zum Aufnehmen einer oder mehrerer Punktwolken; einen mit der Kamera und dem Lichtdetektor gekoppelten Speicher zum Speichern des einen oder der mehreren Bilder und der einen oder den mehreren Punktwolken; und einen oder mehrere Prozessoren, welche mit dem Speicher gekoppelt sind, wobei der eine oder die mehreren Prozessoren eingerichtet ist/sind zum: Erhalten, durch die Kamera, eines Bildes, welches an einem ersten Ort erlangt wird; Zuordnen von Labels zu einem oder mehreren Objekten des Bildes; Erhalten, durch den Lichtdetektor, einer Punktwolke, welche an einem zweiten Ort erlangt wird, welcher sich innerhalb eines Schwellenwertabstands des ersten Orts befindet; Bestimmen eines oder mehrerer Objektcluster der Punktwolke; Assoziieren der dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke; und Identifizieren dreidimensionaler (3D) Objekte der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels.
  9. System nach Anspruch 8, wobei der eine oder die mehreren Prozessoren ferner eingerichtet ist/sind zum: Entfernen dynamischer Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten.
  10. System nach Anspruch 9, wobei der eine oder die mehreren Prozessoren ferner eingerichtet ist/sind zum: Durchführen eines simultanen Lokalisierungs- und Kartierungsvorgangs an der Punktwolke, nachdem die dynamischen Verkehrsteilnehmer von der Punktwolke entfernt worden sind.
  11. System nach Anspruch 8, wobei der eine oder die mehreren Prozessoren ferner eingerichtet ist/sind zum: Durchführen einer semantischen Segmentierung an dem Bild auf einer Pro-Pixel-Basis.
  12. System nach Anspruch 11, wobei der eine oder die mehreren Prozessoren ferner eingerichtet ist/sind zum: Assoziieren von Labels wenigstens eines Teils der Pixel des Bildes mit entsprechenden Punkten der Punktwolke.
  13. System nach Anspruch 8, wobei der eine oder die mehreren Prozessoren ferner eingerichtet ist/sind zum: Identifizieren der dynamischen Verkehrsteilnehmer innerhalb des Bildes.
  14. System nach Anspruch 8, wobei der eine oder die mehreren Prozessoren ferner eingerichtet ist/sind zum: Identifizieren einer Bodenebene der Punktwolke; und Entfernen der Bodenebene von der Punktwolke.
  15. Computerlesbares Medium, welches einen computerausführbaren Code zur Lokalisierung und Kartierung für ein autonomes Fahrzeug speichert, umfassend einen Code zum: Erhalten, durch eine Kamera, eines Bildes, welches an einem ersten Ort erlangt wird; Zuordnen von Labels zu einem oder mehreren Objekten des Bildes; Erhalten, durch einen Lichtdetektor, einer Punktwolke, welche an einem zweiten Ort erlangt wird, welche sich innerhalb eines Schwellenwertabstands des ersten Orts befindet; Bestimmen eines oder mehrerer Objektcluster der Punktwolke; Assoziieren der dem einen oder den mehreren Objekten des Bildes zugeordneten Labels mit Punkten der Objektcluster der Punktwolke; und Identifizieren dreidimensionaler (3D) Objekte der Punktwolke basierend auf den mit den Punkten der Objektcluster assoziierten Labels.
  16. Computerlesbares Medium nach Anspruch 15, ferner umfassend einen Code zum: Entfernen dynamischer Verkehrsteilnehmer von der Punktwolke basierend auf den identifizierten 3D-Objekten.
  17. Computerlesbares Medium nach Anspruch 16, ferner umfassend einen Code zum: Durchführen eines simultanen Lokalisierungs- und Kartierungsvorgangs an der Punktwolke, nachdem die dynamischen Verkehrsteilnehmer von der Punktwolke entfernt worden sind.
  18. Computerlesbares Medium nach Anspruch 15, wobei der Code zum Zuordnen von Labels zu dem einen oder den mehreren Objekten des Bildes einen Code zum Durchführen einer semantischen Segmentierung an dem Bild auf einer Pro-Pixel-Basis umfasst.
  19. Computerlesbares Medium nach Anspruch 18, wobei der Code zum Assoziieren der Labels einen Code zum Assoziieren von Labels wenigstens eines Teils der Pixel des Bildes mit entsprechenden Punkten der Punktwolke umfasst.
  20. Computerlesbares Medium nach Anspruch 15, wobei der Code zum Zuordnen von Labels zu einem oder mehreren Objekten des Bildes einen Code umfasst, welcher die dynamischen Verkehrsteilnehmer innerhalb des Bildes identifiziert.
DE102019202252.9A 2018-03-13 2019-02-19 Robuste simultane lokalisierung und kartierung durch entfernung dynamischer verkehrsteilnehmer Withdrawn DE102019202252A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/919,548 US10657388B2 (en) 2018-03-13 2018-03-13 Robust simultaneous localization and mapping via removal of dynamic traffic participants
US15/919,548 2018-03-13

Publications (1)

Publication Number Publication Date
DE102019202252A1 true DE102019202252A1 (de) 2019-09-19

Family

ID=67774720

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019202252.9A Withdrawn DE102019202252A1 (de) 2018-03-13 2019-02-19 Robuste simultane lokalisierung und kartierung durch entfernung dynamischer verkehrsteilnehmer

Country Status (4)

Country Link
US (1) US10657388B2 (de)
JP (1) JP7221089B2 (de)
CN (1) CN110275516A (de)
DE (1) DE102019202252A1 (de)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11163998B2 (en) * 2018-10-22 2021-11-02 Woven Planet North America, Inc. Systems and methods for automated image labeling for images captured from vehicles
US10823855B2 (en) * 2018-11-19 2020-11-03 Fca Us Llc Traffic recognition and adaptive ground removal based on LIDAR point cloud statistics
US11151391B2 (en) * 2018-12-10 2021-10-19 Here Global B.V. Method and apparatus for creating a visual map without dynamic content
CN109606384B (zh) * 2018-12-29 2021-04-20 百度在线网络技术(北京)有限公司 车辆控制方法、装置、设备和存储介质
JP7019731B2 (ja) * 2019-01-30 2022-02-15 バイドゥ ドットコム タイムス テクノロジー (ベイジン) カンパニー リミテッド 自動運転車のためのリアルタイム地図生成システム
US12014459B2 (en) * 2019-09-12 2024-06-18 Sony Interactive Entertainment Inc. Image processing device, image processing method, and program for forming an accurate three-dimensional map
JP7313998B2 (ja) * 2019-09-18 2023-07-25 株式会社トプコン 測量データ処理装置、測量データ処理方法および測量データ処理用プログラム
CN114503044B (zh) * 2019-09-30 2024-08-20 北京航迹科技有限公司 用于在3d点云中自动标记对象的系统和方法
DE102019215903A1 (de) * 2019-10-16 2021-04-22 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erzeugen von Trainingsdaten für ein Erkennungsmodell zum Erkennen von Objekten in Sensordaten eines Sensors insbesondere eines Fahrzeugs, Verfahren zum Trainieren und Verfahren zum Ansteuern
CN110910389B (zh) * 2019-10-30 2021-04-09 中山大学 一种基于图描述子的激光slam回环检测系统及方法
CN110956137A (zh) * 2019-12-02 2020-04-03 深圳市镭神智能系统有限公司 点云数据的目标检测方法、系统及介质
CN111060924B (zh) * 2019-12-02 2021-10-15 北京交通大学 一种slam与目标跟踪方法
CN113330331A (zh) * 2019-12-04 2021-08-31 华为技术有限公司 用于交通场景中收集和自动标记测量数据的装置和方法
KR102363501B1 (ko) * 2019-12-10 2022-02-16 주식회사 라이드플럭스 3차원 포인트 클라우드 데이터로부터 지표면 데이터를 생성하는 방법, 장치 및 컴퓨터프로그램
CN111190191A (zh) * 2019-12-11 2020-05-22 杭州电子科技大学 一种基于激光slam的扫描匹配方法
KR102125538B1 (ko) * 2019-12-13 2020-06-22 주식회사 토르 드라이브 자율 주행을 위한 효율적인 맵 매칭 방법 및 그 장치
CN110956651B (zh) * 2019-12-16 2021-02-19 哈尔滨工业大学 一种基于视觉和振动触觉融合的地形语义感知方法
US11100702B2 (en) * 2019-12-27 2021-08-24 Industrial Technology Research Institute 3D image labeling method based on labeling information of 2D image and 3D image labeling device
JP7517675B2 (ja) 2020-01-31 2024-07-17 Necソリューションイノベータ株式会社 地図データ生成装置、地図データ生成方法、及びプログラム
JP2023037043A (ja) * 2020-02-19 2023-03-15 株式会社Nttドコモ マップデータ生成装置及び測位装置
US11544935B2 (en) * 2020-02-26 2023-01-03 Honda Motor Co., Ltd. System for risk object identification via causal inference and method thereof
US20230162371A1 (en) * 2020-03-13 2023-05-25 Nec Corporation Image processing apparatus, image processing method, and computer-readable medium
CN111427373B (zh) * 2020-03-24 2023-11-24 上海商汤临港智能科技有限公司 一种位姿确定方法、装置、介质和设备
CN113792566B (zh) * 2020-05-25 2024-05-17 华为技术有限公司 一种激光点云的处理方法及相关设备
US10861175B1 (en) * 2020-05-29 2020-12-08 Illuscio, Inc. Systems and methods for automatic detection and quantification of point cloud variance
US20220026226A1 (en) * 2020-07-21 2022-01-27 Ag Leader Technology Visual Boundary Segmentations And Obstacle Mapping For Agricultural Vehicles
JP7379300B2 (ja) 2020-09-07 2023-11-14 株式会社東芝 推定装置、推定方法及びプログラム
US11657572B2 (en) * 2020-10-21 2023-05-23 Argo AI, LLC Systems and methods for map generation based on ray-casting and semantic class images
CN112484738B (zh) * 2020-11-24 2023-04-28 深圳市优必选科技股份有限公司 机器人建图方法、装置、计算机可读存储介质及机器人
KR20220094416A (ko) * 2020-12-29 2022-07-06 (주)에이아이매틱스 근미래 객체 위치 예측 시스템
CN112819833B (zh) * 2021-02-05 2022-07-12 四川大学 一种大场景点云语义分割方法
US11055428B1 (en) 2021-02-26 2021-07-06 CTRL IQ, Inc. Systems and methods for encrypted container image management, deployment, and execution
CN113126115B (zh) * 2021-04-06 2023-11-17 北京航空航天大学杭州创新研究院 基于点云的语义slam方法、装置、电子设备和存储介质
KR102316097B1 (ko) * 2021-04-27 2021-10-26 주식회사 모빌테크 라이다 좌표를 이용하여 맵 정보의 동기화를 수행하는 맵 정보 제공 시스템
CN113313654B (zh) * 2021-06-23 2023-12-15 上海西井科技股份有限公司 激光点云滤波去噪方法、系统、设备及存储介质
US11608084B1 (en) * 2021-08-27 2023-03-21 Motional Ad Llc Navigation with drivable area detection
CN114549605B (zh) * 2021-12-31 2023-08-04 广州景骐科技有限公司 基于点云匹配的图像优化方法、装置、设备及存储介质
WO2023139793A1 (ja) * 2022-01-24 2023-07-27 三菱電機株式会社 Slam装置、slam攻撃対策プログラムおよび自律型モビリティ
CN114509782A (zh) * 2022-02-17 2022-05-17 广州大学 一种基于三维激光slam实现混合现实的方法
KR102694568B1 (ko) * 2023-07-21 2024-08-14 주식회사 모빌테크 노이즈 제거 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
CN117968682B (zh) * 2024-04-01 2024-07-02 山东大学 基于多线激光雷达和惯性测量单元的动态点云去除方法

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8213711B2 (en) * 2007-04-03 2012-07-03 Her Majesty The Queen In Right Of Canada As Represented By The Minister Of Industry, Through The Communications Research Centre Canada Method and graphical user interface for modifying depth maps
US7995055B1 (en) * 2007-05-25 2011-08-09 Google Inc. Classifying objects in a scene
US8649565B1 (en) 2009-06-18 2014-02-11 Hrl Laboratories, Llc System for automatic object localization based on visual simultaneous localization and mapping (SLAM) and cognitive swarm recognition
KR101619076B1 (ko) 2009-08-25 2016-05-10 삼성전자 주식회사 모바일 플랫폼의 동적 물체 검출 및 추적 방법
JP5480914B2 (ja) * 2009-12-11 2014-04-23 株式会社トプコン 点群データ処理装置、点群データ処理方法、および点群データ処理プログラム
JP5333860B2 (ja) * 2010-03-31 2013-11-06 アイシン・エィ・ダブリュ株式会社 風景画像認識を用いた自車位置検出システム
US8494285B2 (en) * 2010-12-09 2013-07-23 The Hong Kong University Of Science And Technology Joint semantic segmentation of images and scan data
US9152882B2 (en) * 2011-06-17 2015-10-06 Microsoft Technology Licensing, Llc. Location-aided recognition
US9235766B2 (en) * 2011-10-20 2016-01-12 International Business Machines Corporation Optimizing the detection of objects in images
US8630805B2 (en) * 2011-10-20 2014-01-14 Robert Bosch Gmbh Methods and systems for creating maps with radar-optical imaging fusion
KR101901588B1 (ko) * 2012-01-02 2018-09-28 삼성전자주식회사 물체 인식 방법과, 물체 인식을 위한 기술자 생성 방법, 물체 인식을 위한 기술자 생성 장치
US8798357B2 (en) * 2012-07-09 2014-08-05 Microsoft Corporation Image-based localization
US9383753B1 (en) * 2012-09-26 2016-07-05 Google Inc. Wide-view LIDAR with areas of special attention
US9523772B2 (en) 2013-06-14 2016-12-20 Microsoft Technology Licensing, Llc Object removal using lidar-based classification
US9619716B2 (en) * 2013-08-12 2017-04-11 Magna Electronics Inc. Vehicle vision system with image classification
US9633483B1 (en) * 2014-03-27 2017-04-25 Hrl Laboratories, Llc System for filtering, segmenting and recognizing objects in unconstrained environments
US9235775B2 (en) * 2014-06-08 2016-01-12 Uber Technologies, Inc. Entrance detection from street-level imagery
US10043097B2 (en) * 2015-03-10 2018-08-07 Fringefy Ltd. Image abstraction system
US9958864B2 (en) * 2015-11-04 2018-05-01 Zoox, Inc. Coordination of dispatching and maintaining fleet of autonomous vehicles
JP6790417B2 (ja) * 2016-03-31 2020-11-25 ソニー株式会社 情報処理装置及び情報処理サーバ
US10816654B2 (en) 2016-04-22 2020-10-27 Huawei Technologies Co., Ltd. Systems and methods for radar-based localization
CN106056643B (zh) * 2016-04-27 2018-10-26 深圳积木易搭科技技术有限公司 一种基于点云的室内动态场景slam方法及系统
US20170344855A1 (en) * 2016-05-24 2017-11-30 Agt International Gmbh Method of predicting traffic collisions and system thereof
JP6672076B2 (ja) * 2016-05-27 2020-03-25 株式会社東芝 情報処理装置及び移動体装置
WO2017214595A1 (en) * 2016-06-10 2017-12-14 The Board Of Trustees Of The Leland Systems and methods for performing three-dimensional semantic parsing of indoor spaces
US10839535B2 (en) * 2016-07-19 2020-11-17 Fotonation Limited Systems and methods for providing depth map information
DE102016214027A1 (de) * 2016-07-29 2018-02-01 Volkswagen Aktiengesellschaft Verfahren und System zum Erfassen von Landmarken in einem Verkehrsumfeld einer mobilen Einheit
KR102404155B1 (ko) * 2016-09-28 2022-05-31 톰톰 글로벌 콘텐트 비.브이. 위치파악 참조 데이터를 생성 및 사용하기 위한 방법 및 시스템
CN107918753B (zh) * 2016-10-10 2019-02-22 腾讯科技(深圳)有限公司 点云数据处理方法及装置
CN107016924B (zh) * 2016-12-20 2020-04-07 阿里巴巴集团控股有限公司 虚拟地图中的瓦片地图生成方法、更新方法和装置
WO2018126215A1 (en) * 2016-12-30 2018-07-05 DeepMap Inc. High definition map updates
US10078790B2 (en) * 2017-02-16 2018-09-18 Honda Motor Co., Ltd. Systems for generating parking maps and methods thereof
US10417816B2 (en) * 2017-06-16 2019-09-17 Nauto, Inc. System and method for digital environment reconstruction
CN110019570B (zh) * 2017-07-21 2020-03-20 百度在线网络技术(北京)有限公司 用于构建地图的方法、装置及终端设备
JP7259749B2 (ja) * 2017-08-04 2023-04-18 ソニーグループ株式会社 情報処理装置、および情報処理方法、プログラム、並びに移動体
CN107689075B (zh) * 2017-08-30 2019-02-19 北京三快在线科技有限公司 导航地图的生成方法、装置及机器人
US10509413B2 (en) * 2017-09-07 2019-12-17 GM Global Technology Operations LLC Ground reference determination for autonomous vehicle operations
US10473788B2 (en) * 2017-12-13 2019-11-12 Luminar Technologies, Inc. Adjusting area of focus of vehicle sensors by controlling spatial distributions of scan lines
US10671862B2 (en) * 2018-01-30 2020-06-02 Wipro Limited Method and system for detecting obstacles by autonomous vehicles in real-time
US11157527B2 (en) * 2018-02-20 2021-10-26 Zoox, Inc. Creating clean maps including semantic information
US10491885B1 (en) * 2018-06-13 2019-11-26 Luminar Technologies, Inc. Post-processing by lidar system guided by camera information
US10890663B2 (en) * 2018-06-28 2021-01-12 Zoox, Inc. Loading multi-resolution maps for localization
CN109146943B (zh) * 2018-08-03 2019-12-03 百度在线网络技术(北京)有限公司 静止物体的检测方法、装置及电子设备

Also Published As

Publication number Publication date
US10657388B2 (en) 2020-05-19
JP2019207220A (ja) 2019-12-05
JP7221089B2 (ja) 2023-02-13
US20190286915A1 (en) 2019-09-19
CN110275516A (zh) 2019-09-24

Similar Documents

Publication Publication Date Title
DE102019202252A1 (de) Robuste simultane lokalisierung und kartierung durch entfernung dynamischer verkehrsteilnehmer
DE102012207620B4 (de) System und Verfahren für die Lichtsignaldetektierung
DE102018105417A1 (de) Fahrzeugortung unter verwendung von kameras
DE102013205952B4 (de) Rekonfigurierbares System und Verfahren zur Detektion eines freien Pfads
DE102020104363A1 (de) Erkennung eines anomalen bilds in zusammenhang mit bilddaten von einer oder mehreren kameras eines computerunterstützt oder autonom fahrenden fahrzeugs
DE112011103690T5 (de) Erkennung und Verfolgung sich bewegender Objekte
DE102019115676A1 (de) Verfahren und system zur rekonstruktion einer fahrzeug-szene in einer cloud-ebene
DE102018215344A1 (de) System und verfahren für fahrzeugkonvois
DE102018205879A1 (de) Verfahren, Vorrichtung und computerlesbares Speichermedium mit Instruktionen zur Verarbeitung von Sensordaten
DE112018003986T5 (de) Steuervorrichtung, steuerverfahren, programm und mobileinheit
DE102012218390A1 (de) Optimierung der Erkennung von Objekten in Bildern
DE102014203833A1 (de) Verfahren und System zur automatischen hierarchischen Schulung eines Fahrzeugnachweis-Systems im Gelände
DE112017004302T5 (de) Fahrerunterstützungssystem zum Bestimmen einer Position eines Fahrzeugs
CN109614859B (zh) 视觉定位特征提取和匹配方法及装置
DE102019208216A1 (de) Detektion, 3D-Rekonstruktion und Nachverfolgung von mehreren relativ zueinander bewegten starren Objekten
DE112017008101T5 (de) Autonome roboter und verfahren zum betreiben derselben
DE102018111935A1 (de) Bildverarbeitungssystem, Bildverarbeitungsverfahren, Informationsverarbeitungsvorrichtung und Aufzeichnungsmedium
DE102022102934A1 (de) Ereignisbasierte fahrzeugposenschätzung unter verwendung monochromatischer bildgebung
DE102019117559A1 (de) Verfahren und System zum Fusionieren von zweidimensionalen semantischen Informationen aus Bildern mit einer dreidimensionalen Punktwolke
DE102014216383A1 (de) Verfahren und Vorrichtung zur Bereitstellung der Fahrzeugnavigationsinformation im Bereich einer Hochstraße
DE102020100230A1 (de) Rekonstruktion von landmarkenpositionen in autonomen maschinenanwendungen
CN114972758A (zh) 一种基于点云弱监督的实例分割方法
Ding et al. Mit-avt clustered driving scene dataset: Evaluating perception systems in real-world naturalistic driving scenarios
DE102020127315B4 (de) System und Verfahren zum Annotieren von Automobilradardaten
CN111311601A (zh) 一种拼接图像的分割方法及装置

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee