-
[Technisches Gebiet]
-
Die vorliegende Technologie betrifft eine Informationsverarbeitungseinrichtung, ein Informationsverarbeitungsverfahren, ein Programm und einen sich bewegenden Körper und insbesondere eine Informationsverarbeitungseinrichtung, ein Informationsverarbeitungsverfahren, ein Programm und einen sich bewegenden Körper, die vorzugsweise in einem Fall verwendet werden, in dem eine Selbstpositionsschätzung des sich bewegenden Körpers unter Verwendung einer Karte basierend auf einem Bild durchgeführt wird.
-
[Stand der Technik]
-
Herkömmlicherweise wurde eine Technik zum Bestimmen, ob ein Objekt im Umfeld eines sich bewegenden Körpers ein bewegliches Objekt ist oder nicht, basierend auf Merkmalsdaten des Objekts und Informationen bezüglich eines im Voraus vorbereiteten Objektattributs, und zum Erzeugen einer Umgebungskarte ohne das bewegliche Objekt vorgeschlagen (siehe z. B. PTL 1).
-
[Zitatliste]
-
[Patentliteratur]
-
[PTL 1]
Japanisches Patent, Offenlegungs-Nr. 2014-203429
-
[Kurzdarstellung]
-
[Technisches Problem]
-
Es gibt jedoch andere Objekte als das bewegliche Objekt, deren Aussehen oder Formen sich beispielsweise aufgrund von Zeitablauf, Umgebung oder Wetter ändern. In einem Fall, in dem eine Selbstpositionsschätzung basierend auf Informationen bezüglich dieser Objekte durchgeführt wird, kann die Schätzgenauigkeit nachteilig verringert werden.
-
Die vorliegende Technologie ist im Hinblick auf eine solche Situation hergestellt und hat zum Ziel, die Genauigkeit der Selbstpositionsschätzung eines sich bewegenden Körpers zu verbessern.
-
[Lösung des Problems]
-
Eine Informationsverarbeitungseinrichtung gemäß einem ersten Aspekt der vorliegenden Technologie weist Folgendes auf: einen Merkmalspunktdetektor, der einen Merkmalspunkt in einem Referenzbild detektiert, das zur Selbstpositionsschätzung eines sich bewegenden Körpers verwendet wird, einen Invarianzschätzabschnitt, der die Invarianz des Merkmalspunkts schätzt, und einen Kartengenerator, der eine Karte basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts erzeugt.
-
Ein Informationsverarbeitungsverfahren gemäß dem ersten Aspekt der vorliegenden Technologie weist Folgendes auf: Detektieren eines Merkmalspunkts in einem Referenzbild, das zur Selbstpositionsschätzung eines sich bewegenden Körpers verwendet wird, Schätzen der Invarianz des Merkmalspunkts und Erzeugen einer Karte basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts.
-
Ein Programm gemäß dem ersten Aspekt der vorliegenden Technologie bewirkt, dass ein Computer Folgendes ausführt: Detektieren eines Merkmalspunkts in einem Referenzbild, das zur Selbstpositionsschätzung eines sich bewegenden Körpers verwendet wird, Schätzen der Invarianz des Merkmalspunkts und Erzeugen einer Karte basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts.
-
Ein sich bewegender Körper gemäß einem zweiten Aspekt der vorliegenden Technologie weist Folgendes auf: einen Merkmalspunktdetektor, der einen Merkmalspunkt in einem beobachteten Bild detektiert, einen Merkmalspunktkollationierungsabschnitt, der eine Kollationierung zwischen einem Merkmalspunkt in einer Karte, die basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts erzeugt wird, und dem Merkmalspunkt in dem beobachteten Bild durchführt, und einen Selbstpositionsschätzabschnitt, der eine Selbstpositionsschätzung basierend auf einem Kollationierungsergebnis zwischen dem Merkmalspunkt in der Karte und dem Merkmalspunkt in dem beobachteten Bild durchführt.
-
In dem ersten Aspekt der vorliegenden Technologie wird der Merkmalspunkt in dem Referenzbild, das für die Selbstpositionsschätzung des sich bewegenden Körpers verwendet wird, detektiert, die Invarianz des Merkmalspunkts wird geschätzt und die Karte wird basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts erzeugt.
-
In dem zweiten Aspekt der vorliegenden Technologie wird der Merkmalspunkt in dem beobachteten Bild detektiert, die Kollationierung zwischen dem Merkmalspunkt in der Karte, die basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts erzeugt wird, und dem Merkmalspunkt in dem beobachteten Bild wird durchgeführt, und die Selbstpositionsschätzung wird basierend auf dem Kollationierungsergebnis zwischen dem Merkmalspunkt in der Karte und dem Merkmalspunkt im beobachteten Bild durchgeführt.
-
[Vorteilhafte Effekte der Erfindung]
-
Gemäß dem ersten Aspekt der vorliegenden Technologie kann die Invarianz der Karte, die für die Selbstpositionsschätzung des sich bewegenden Körpers verwendet wird, verbessert werden. Infolgedessen kann die Genauigkeit der Selbstpositionsschätzung des sich bewegenden Körpers verbessert werden.
-
Gemäß dem zweiten Aspekt der vorliegenden Technologie kann die Genauigkeit der Kollationierung zwischen dem Merkmalspunkt in der Karte und dem Merkmalspunkt in dem beobachteten Bild verbessert werden. Infolgedessen kann die Genauigkeit der Selbstpositionsschätzung des sich bewegenden Körpers verbessert werden.
-
Es ist zu beachten, dass die hierin beschriebenen Effekte nicht notwendigerweise beschränkt sind und dass ein beliebiger in der vorliegenden Offenbarung beschriebener Effekt enthalten sein kann.
-
Figurenliste
-
- [1] 1 ist ein Blockdiagramm, das ein Konfigurationsbeispiel von schematischen Funktionen eines Fahrzeugsteuersystems veranschaulicht, auf das die vorliegende Technologie anwendbar ist.
- [2] 2 ist ein Blockdiagramm, das ein Ausführungsbeispiel eines Selbstpositionsschätzsystems veranschaulicht, auf das die vorliegende Technologie angewendet wird.
- [3] 3 ist ein Flussdiagramm zur Erläuterung eines Kartenerzeugungsprozesses.
- [4] 4 ist eine Tabelle, die Beispiele für Invarianzbewertungen von Merkmalspunkten veranschaulicht.
- [5] 5 ist eine Ansicht zur Erläuterung eines Invarianzbewertungs-Einstellverfahrens der Merkmalspunkte.
- [6] 6 ist eine Ansicht zur Erläuterung des Invarianzbewertungs-Einstellverfahrens der Merkmalspunkte.
- [7] 7 ist eine Ansicht zur Erläuterung des Invarianzbewertungs-Einstellverfahrens der Merkmalspunkte.
- [8] 8 ist eine Ansicht zur Erläuterung des Invarianzbewertungs-Einstellverfahrens der Merkmalspunkte.
- [9] 9 ist eine Ansicht zur Erläuterung eines Invarianzbewertungs-Berechnungsverfahrens eines Referenzbildes.
- [10] 10 ist eine Ansicht zur Erläuterung eines Extraktionsverfahrens eines Referenzbildes, das für ein Schlüsselframe verwendet werden soll.
- [11] 11 ist ein Flussdiagramm zur Erläuterung eines Selbstpositionsschätzprozesses.
- [12] 12 ist eine Ansicht zur Erläuterung eines Löschverfahrens des Schlüsselframes.
- [13] 13 ist ein Konfigurationsbeispiel eines Computers.
-
[Beschreibung der Ausführungsform]
-
Nachfolgend wird ein Ausführungsbeispiel der vorliegenden Technologie beschrieben. Die Beschreibung erfolgt in der folgenden Reihenfolge.
- 1. Konfigurationsbeispiel eines Fahrzeugsteuersystems
- 2. Ausführungsbeispiel
- 3. Modifikationen
- 4. Anderes
-
«1. Konfigurationsbeispiel eines Fahrzeugsteuersystems»
-
1 ist ein Blockdiagramm, das ein Konfigurationsbeispiel von schematischen Funktionen eines Fahrzeugsteuersystems 100 als ein Beispiel eines Steuersystems für einen sich bewegenden Körper veranschaulicht, auf das die vorliegende Technologie anwendbar ist.
-
Das Fahrzeugsteuersystem 100 ist ein System, das an einem Fahrzeug 10 montiert ist und das Fahrzeug 10 auf verschiedene Weise steuert. Es ist zu beachten, dass im Folgenden in einem Fall, in dem das Fahrzeug 10 von anderen Fahrzeugen unterschieden wird, das Fahrzeug 10 als ein Host-Auto oder ein Host-Fahrzeug bezeichnet wird.
-
Das Fahrzeugsteuersystem 100 weist Folgendes auf: einen Eingabeabschnitt 101, einen Datenerfassungsabschnitt 102, einen Kommunikationsabschnitt 103, eine fahrzeuginterne Einrichtung 104, eine Ausgabesteuerung 105, einen Ausgabeabschnitt 106, eine fahrbezogene Steuerung 107, ein fahrbezogenes System 108, eine karosseriebezogene Steuerung 109, ein karosseriebezogenes System 110, eine Speicherung 111 und eine Automatisches-Fahren-Steuerung 112. Der Eingabeabschnitt 101, der Datenerfassungsabschnitt 102, der Kommunikationsabschnitt 103, die Ausgabesteuerung 105, die fahrbezogene Steuerung 107, die karosseriebezogene Steuerung 109, die Speicherung 111 und die Automatisches-Fahren-Steuerung 112 sind über ein Kommunikationsnetzwerk 121 miteinander verbunden. Das Kommunikationsnetzwerk 121 weist beispielsweise Folgendes auf: ein fahrzeuginternes Kommunikationsnetzwerk, das einem beliebigen Standard entspricht, wie etwa CAN (Controller Area Network), LIN (Local Interconnect Network), LAN (Local Area Network) oder FlexRay (eingetragenes Markenzeichen), oder einen Bus. Es ist zu beachten, dass jeder Abschnitt in dem Fahrzeugsteuersystem 100 in einigen Fällen ohne Eingreifen des Kommunikationsnetzwerks 121 direkt miteinander verbunden ist.
-
Es ist zu beachten, dass im Folgenden in einem Fall, in dem jeder Abschnitt in dem Fahrzeugsteuersystem 100 eine Kommunikation über das Kommunikationsnetzwerk 121 durchführt, eine Beschreibung des Kommunikationsnetzwerks 121 weggelassen wird. Beispielsweise wird in einem Fall, in dem der Eingabeabschnitt 101 über das Kommunikationsnetzwerk 121 mit der Automatisches-Fahren-Steuerung 112 kommuniziert, lediglich beschrieben, dass der Eingabeabschnitt 101 mit der Automatisches-Fahren-Steuerung 112 kommuniziert.
-
Der Eingabeabschnitt 101 weist Einrichtungen auf, die durch einen Insassen verwendet werden, um beispielsweise verschiedene Daten und Anweisungen einzugeben. Beispielsweise weist der Eingabeabschnitt 101 Folgendes auf: eine Bedienvorrichtung wie etwa ein Touchpanel, eine Taste, ein Mikrofon, einen Schalter und einen Hebel sowie eine Bedienvorrichtung, die in der Lage ist, verschiedene Daten und Anweisungen durch ein Verfahren neben einer manuellen Bedienung, beispielsweise unter Verwendung von Stimme oder Geste, einzugeben. Darüber hinaus kann der Eingabeabschnitt 101 beispielsweise eine Fernsteuereinrichtung sein, die einen Infrarotstrahl oder andere Funkwellen verwendet, oder eine externe Verbindungseinrichtung, die dem Betrieb des Fahrzeugsteuersystems 100 entspricht, wie etwa eine mobile Einrichtung oder eine tragbare Einrichtung. Der Eingabeabschnitt 101 erzeugt ein Eingabesignal, das beispielsweise auf Daten oder Anweisungen basiert, die durch den Insassen eingegeben werden, und liefert das Eingabesignal an die Abschnitte in dem Fahrzeugsteuersystem 100.
-
Der Datenerfassungsabschnitt 102 weist beispielsweise verschiedene Arten von Sensoren zum Erfassen von Daten, die in Prozessen des Fahrzeugsteuersystems 100 verwendet werden, auf und liefert die erfassten Daten an die Abschnitte in dem Fahrzeugsteuersystem 100.
-
Beispielsweise weist der Datenerfassungsabschnitt 102 verschiedene Arten von Sensoren zum Detektieren von beispielsweise Zuständen des Fahrzeugs 10 auf. Insbesondere weist der Datenerfassungsabschnitt 102 beispielsweise einen Gyrosensor, einen Beschleunigungssensor, eine inertiale Messeinheit (IMU) und Sensoren zum Detektieren beispielsweise eines Betätigungsbetrags eines Gaspedals, eines Betätigungsbetrags eines Bremspedals, eines Lenkwinkels eines Lenkrads, einer Verbrennungsmotordrehzahl, einer Motordrehzahl oder einer Rotationsgeschwindigkeit eines Rades auf.
-
Zusätzlich weist der Datenerfassungsabschnitt 102 beispielsweise verschiedene Arten von Sensoren zum Detektieren von Informationen einer Außenseite des Fahrzeugs 10 auf. Insbesondere weist der Datenerfassungsabschnitt 102 zum Beispiel Bildgebungseinrichtungen auf, wie etwa eine ToF(Time Of Flight - Laufzeit)-Kamera, eine Stereokamera, eine Monokularkamera, eine Infrarotkamera und andere Kameras. Ferner weist der Datenerfassungsabschnitt 102 beispielsweise einen Umgebungssensor zum Detektieren von beispielsweise Wetter oder meteorologischen Phänomenen und einen Umfeldinformationen-Detektionssensor zum Detektieren eines Objekts im Umfeld des Fahrzeugs 10 auf. Der Umgebungssensor weist beispielsweise einen Regensensor, einen Nebelsensor, einen Sonnensensor und einen Schneesensor auf. Der Umfeldinformationen-Detektionssensor weist beispielsweise einen Ultraschallsensor, ein Radar, LiDAR (Light Detection and Ranging - Lichtdetektion und -entfernungsmessung, Laser Imaging Detection and Ranging - Laserbildgebungsdetektion und -entfernungsmessung) und ein Sonar auf.
-
Zusätzlich weist der Datenerfassungsabschnitt 102 beispielsweise verschiedene Arten von Sensoren zum Detektieren einer aktuellen Position des Fahrzeugs 10 auf. Insbesondere weist der Datenerfassungsabschnitt 102 beispielsweise einen GNSS-Empfänger (Global Navigation Satellite System - globales Satellitennavigationssystem) auf, der ein Satellitensignal von einem GNSS-Satelliten empfängt, der ein Navigationssatellit ist (nachstehend als GNSS-Signal bezeichnet).
-
Zusätzlich weist der Datenerfassungsabschnitt 102 beispielsweise verschiedene Arten von Sensoren zum Detektieren von Fahrzeuginnenrauminformationen auf. Insbesondere weist der Datenerfassungsabschnitt 102 beispielsweise eine Bildgebungseinrichtung, die einen Fahrer abbildet, einen Biosensor, der Bioinformationen des Fahrers detektiert, und ein Mikrofon, das Ton in einem Fahrgastraum sammelt, auf. Der Biosensor ist beispielsweise an einer Sitzfläche oder einem Lenkrad bereitgestellt und detektiert Bioinformationen des Insassen, der auf einem Sitz sitzt, oder des Fahrers, der das Lenkrad greift.
-
Der Kommunikationsabschnitt 103 kommuniziert beispielsweise mit der fahrzeuginternen Einrichtung 104 und verschiedenen Einrichtungen außerhalb des Fahrzeugs, wie etwa einem Server oder einer Basisstation, um Daten zu übertragen, die von den Abschnitten in dem Fahrzeugsteuersystem 100 geliefert werden, oder um empfangene Daten an die Abschnitte in dem Fahrzeugsteuersystem 100 zu liefern. Es ist zu beachten, dass ein Kommunikationsprotokoll, das der Kommunikationsabschnitt 103 unterstützt, nicht besonders eingeschränkt ist, und der Kommunikationsabschnitt 103 auch mehrere Arten von Kommunikationsprotokollen unterstützen kann.
-
Der Kommunikationsabschnitt 103 kommuniziert drahtlos mit der fahrzeuginternen Einrichtung 104 beispielsweise über Drahtlos-LAN, Bluetooth (eingetragenes Markenzeichen), NFC (Nahfeldkommunikation) oder WUSB (Drahtlos-USB). Ferner kommuniziert der Kommunikationsabschnitt 103 drahtgebunden mit der fahrzeuginternen Einrichtung 104 über beispielsweise USB (Universal Serial Bus), HDMI (eingetragenes Markenzeichen) (High-Definition Multimedia Interface) oder MHL (Mobile High-Definition Link), über einen nicht veranschaulichten Verbindungsanschluss (und ggf. ein Kabel).
-
Außerdem kommuniziert der Kommunikationsabschnitt 103 beispielsweise mit einer Einrichtung (z. B. einem Anwendungsserver oder einem Steuerungsserver), die in einem externen Netzwerk (z. B. dem Internet, einem Cloud-Netzwerk oder einem unternehmensspezifischen Netzwerk) vorhanden ist, über eine Basisstation oder einen Zugangspunkt. Ferner kommuniziert der Kommunikationsabschnitt 103 beispielsweise mit einem in der Nähe des Fahrzeugs 10 vorhandenen Endgerät (z. B. einem Endgerät eines Fußgängers oder eines Geschäfts oder einem MTC-Endgerät (Machine Type Communication - Maschinentypkommunikation)) unter Verwendung von P2P(Peer-zu-Peer)-Technologie. Ferner führt der Kommunikationsabschnitt 103 beispielsweise eine V2X-Kommunikation durch, wie etwa eine Fahrzeug-zu-Fahrzeug-Kommunikation, eine Fahrzeug-zu-Infrastruktur-Kommunikation, eine Fahrzeug-zu-Haus-Kommunikation und eine Fahrzeug-zu-Fußgänger-Kommunikation. Ferner weist der Kommunikationsabschnitt 103 beispielsweise einen Beacon-Empfänger zum Empfangen von Funkwellen oder elektromagnetischen Wellen, die beispielsweise durch eine auf einer Straße installierten Funkstation übertragen werden, und zum Erfassen von Informationen wie etwa einer aktuellen Position, Verkehrsstaus, Verkehrsregelung oder notwendiger Zeit auf.
-
Die fahrzeuginterne Einrichtung 104 weist beispielsweise eine mobile Einrichtung oder eine tragbare Einrichtung, die dem Insassen gehört, eine Informationseinrichtung, die in das Fahrzeug 10 getragen wird oder an diesem angebracht ist, und eine Navigationseinrichtung, die nach einer Route zu einem beliebigen Ziel sucht, auf.
-
Die Ausgabesteuerung 105 steuert verschiedene Arten von Informationsausgaben an den Insassen des Fahrzeugs 10 oder die Außenseite des Fahrzeugs 10. Beispielsweise erzeugt die Ausgabesteuerung 105 ein Ausgabesignal, das visuelle Informationen (z. B. Bilddaten) und/oder akustische Information (z. B. Tondaten) enthält, und liefert das Ausgabesignal an den Ausgabeabschnitt 106, um eine Ausgabe der visuellen Informationen und der akustischen Informationen vom Ausgabeabschnitt 106 zu steuern. Insbesondere synthetisiert beispielsweise die Ausgabesteuerung 105 Bilddaten, die durch verschiedene Bildgebungseinrichtungen in dem Datenerfassungsabschnitt 102 aufgenommen wurden, erzeugt beispielsweise ein Overhead-Bild oder ein Panoramabild und liefert ein Ausgabesignal einschließlich des erzeugten Bildes an den Ausgabeabschnitt 106. Ferner erzeugt die Ausgabesteuerung 105 beispielsweise Tondaten, einschließlich beispielsweise eines Warntons oder einer Warnnachricht in Bezug auf Gefahren wie etwa Kollision, Kontakt oder Eintritt in eine Gefahrenzone, und liefert ein Ausgabesignal, das die erzeugten Tondaten enthält, an den Ausgabeabschnitt 106.
-
Der Ausgabeabschnitt 106 weist eine Einrichtung auf, die die visuellen Informationen oder die akustischen Informationen an den Insassen des Fahrzeugs 10 oder an die Außenseite des Fahrzeugs 10 ausgeben kann. Beispielsweise weist der Ausgabeabschnitt 106 eine Anzeigeeinrichtung, eine Instrumententafel, einen Audio-Lautsprecher, Kopfhörer, eine tragbare Einrichtung wie etwa eine Brillenanzeige, die durch den Insassen getragen wird, einen Projektor und eine Lampe auf. Die in dem Ausgabeabschnitt 106 enthaltene Anzeigeeinrichtung kann eine Einrichtung, die die visuellen Informationen in einem Gesichtsfeld des Fahrers anzeigt, wie etwa eine Head-up-Anzeige, eine Anzeige vom Übertragungstyp und eine Einrichtung mit einer AR-Anzeigefunktion (AR: Augmented Reality - erweiterte Realität), außer einer Einrichtung mit einer normalen Anzeige sein.
-
Die fahrbezogene Steuerung 107 erzeugt verschiedene Arten von Steuersignalen und liefert die Steuersignale an das fahrbezogene System 108, um das fahrbezogene System 108 zu steuern. Ferner liefert die fahrbezogene Steuerung 107 die Steuersignale an andere Abschnitte als das fahrbezogene System 108, um beispielsweise bei Bedarf einen Steuerzustand des fahrbezogenen Systems 108 zu melden.
-
Das fahrbezogene System 108 weist verschiedene Arten von Einrichtungen bezüglich eines Fahrsystems des Fahrzeugs 10 auf. Beispielsweise weist das fahrbezogene System 108 Folgendes auf: eine Antriebskrafterzeugungseinrichtung zum Erzeugen einer Antriebskraft, wie etwa einen Verbrennungsmotor oder einen Antriebsmotor, einen Antriebskraftübertragungsmechanismus zum Übertragen der Antriebskraft auf ein Rad, einen Lenkmechanismus, der einen Lenkwinkel einstellt, eine Bremseinrichtung, die eine Bremskraft erzeugt, ABS (Antiblockiersystem), ESC (elektronische Stabilitätskontrolle) und eine elektrische Servolenkungseinrichtung.
-
Die karosseriebezogene Steuerung 109 erzeugt verschiedene Arten von Steuersignalen und liefert die Steuersignale an das karosseriebezogene System 110, um das karosseriebezogene System 110 zu steuern. Ferner liefert die karosseriebezogene Steuerung 109 die Steuersignale an andere Abschnitte als das karosseriebezogene System 110, um beispielsweise bei Bedarf einen Steuerzustand des karosseriebezogenen Systems 110 zu melden.
-
Das karosseriebezogene System 110 weist verschiedene Arten von karosseriebezogenen Einrichtungen auf, die an einer Karosserie montiert sind. Beispielsweise weist das karosseriebezogene System 110 ein schlüsselloses Zugangssystem, ein Smart-Key-System, eine elektrische Fenstereinrichtung, einen elektrischen Sitz, ein Lenkrad, eine Klimaanlage und verschiedene Arten von Leuchten (z. B. einen Scheinwerfer, eine Rückleuchte, eine Bremsleuchte, einen Blinker und einen Nebelscheinwerfer) auf.
-
Die Speicherung 111 weist beispielsweise ein ROM (Nur-Lese-Speicher), einen RAM (Direktzugriffsspeicher), eine magnetische Speicherungsvorrichtung wie etwa ein HDD (Festplattenlaufwerk), eine Halbleiterspeicherungsvorrichtung, eine optische Speicherungsvorrichtung und eine magnetooptische Speicherungsvorrichtung auf. Die Speicherung 111 speichert beispielsweise verschiedene Arten von Programmen und Daten, die durch die Abschnitte in dem Fahrzeugsteuersystem 100 verwendet werden sollen. Beispielsweise speichert die Speicherung 111 Kartendaten wie etwa eine dreidimensionale genaue Karte einschließlich einer dynamischen Karte, eine globale Karte, deren Genauigkeit geringer als die der genauen Karte ist und die einen größeren Bereich abdeckt, und eine lokale Karte einschließlich Informationen des Umfelds des Fahrzeugs 10.
-
Die Automatisches-Fahren-Steuerung 112 steuert automatisches Fahren, wie etwa autonomes Fahren oder Fahrunterstützung. Insbesondere führt die Automatisches-Fahren-Steuerung 112 beispielsweise eine kooperative Steuerung zum Implementieren von Funktionen des FAS (Fahrerassistenzsystem) durch, einschließlich Kollisionsvermeidung oder Stoßdämpfung des Fahrzeugs 10, einer verfolgenden Fahrt basierend auf einer Entfernung zwischen Fahrzeugen, einer fahrzeuggeschwindigkeitshaltenden Fahrt, Kollisionswarnung des Fahrzeugs 10 und Spurverlassenswarnung des Fahrzeugs 10. Ferner führt die Automatisches-Fahren-Steuerung 112 beispielsweise eine kooperative Steuerung durch, die auf das automatische Fahren für autonomes Fahren ohne die Bedienung eines Fahrers abzielt. Die Automatisches-Fahren-Steuerung 112 weist einen Detektor 131, einen Selbstpositionsschätzabschnitt 132, einen Zustandsanalyseabschnitt 133, einen Planungsabschnitt 134 und eine Betriebssteuerung 135 auf.
-
Der Detektor 131 detektiert verschiedene Informationen, die zum Steuern des automatischen Fahrens erforderlich sind. Der Detektor 131 weist einen Fahrzeugaußeninformationsdetektor 141, einen Fahrzeuginneninformationsdetektor 142 und einen Fahrzeugzustandsdetektor 143 auf.
-
Der Fahrzeugaußeninformationsdetektor 141 führt einen Detektionsprozess von Informationen der Außenseite des Fahrzeugs 10 basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100 durch. Beispielsweise führt der Fahrzeugaußeninformationsdetektor 141 einen Detektionsprozess, einen Erkennungsprozess und einen Verfolgungsprozess in Bezug auf ein Objekt im Umfeld des Fahrzeugs 10 und einen Detektionsprozess für eine Entfernung bis zum Objekt durch. Das zu detektierende Objekt schließt beispielsweise ein Fahrzeug, einen Menschen, ein Hindernis, eine Struktur, eine Straße, eine Ampel, ein Verkehrszeichen und eine Verkehrsmarkierung ein. Ferner führt der Fahrzeugaußeninformationsdetektor 141 beispielsweise einen Detektionsprozess der Umgebung im Umfeld des Fahrzeugs 10 durch. Die zu detektierende Umgebung im Umfeld des Fahrzeugs 10 schließt beispielsweise Wetter, eine Lufttemperatur, Luftfeuchtigkeit, Helligkeit und einen Zustand einer Straße ein. Der Fahrzeugaußeninformationsdetektor 141 liefert Daten, die Ergebnisse der Detektionsprozesse angeben, an den Selbstpositionsschätzabschnitt 132, einen Kartenanalyseabschnitt 151, einen Verkehrsregelerkennungsabschnitt 152 und einen Zustandserkennungsabschnitt 153 in dem Zustandsanalyseabschnitt 133, und einen Notfallvermeidungsabschnitt 171 in der Betriebssteuerung 135.
-
Der Fahrzeuginneninformationsdetektor 142 führt einen Detektionsprozess für Informationen des Innenraums des Fahrzeugs 10 basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100 durch. Beispielsweise führt der Fahrzeuginneninformationsdetektor 142 einen Authentifizierungsprozess und einen Erkennungsprozess des Fahrers, einen Detektionsprozess eines Zustands des Fahrers, einen Detektionsprozess des Insassen und einen Detektionsprozess der Umgebung innerhalb des Fahrzeugs 10 durch. Der zu detektierende Zustand des Fahrers schließt beispielsweise eine körperliche Verfassung, Wachsamkeit, Konzentration, Müdigkeit und eine Blickrichtung ein. Die zu detektierende Umgebung innerhalb des Fahrzeugs 10 schließt beispielsweise eine Lufttemperatur, Luftfeuchtigkeit, Helligkeit und Geruch ein. Der Fahrzeuginneninformationsdetektor 142 liefert Daten, die Ergebnisse der Detektionsprozesse angeben, beispielsweise an den Zustandserkennungsabschnitt 153 in dem Zustandsanalyseabschnitt 133 und den Notfallvermeidungsabschnitt 171 in der Betriebssteuerung 135.
-
Der Fahrzeugzustandsdetektor 143 führt einen Detektionsprozess des Zustands des Fahrzeugs 10 basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100 durch. Der zu detektierende Zustand des Fahrzeugs 10 schließt beispielsweise Geschwindigkeit, Beschleunigung, einen Lenkwinkel, Vorhandensein und Einzelheiten einer Abnormalität, einen Zustand eines Fahrvorgangs, eine Position und Neigung eines elektrischen Sitzes, einen Zustand eines Türschlosses und Zustände anderer am Fahrzeug angebrachter Einrichtungen ein. Der Fahrzeugzustandsdetektor 143 liefert Daten, die Ergebnisse der Detektionsprozesse angeben, beispielsweise an den Zustandserkennungsabschnitt 153 in dem Zustandsanalyseabschnitt 133 und den Notfallvermeidungsabschnitt 171 in der Betriebssteuerung 135.
-
Der Selbstpositionsschätzabschnitt 132 führt einen Schätzprozess von beispielsweise einer Position und Stellung des Fahrzeugs 10 basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100, wie etwa dem Fahrzeugaußeninformationsdetektor 141 und dem Zustandserkennungsabschnitt 153 im Zustandsanalyseabschnitt 133 durch. Ferner erzeugt der Selbstpositionsschätzabschnitt 132 bei Bedarf die lokale Karte, die zum Schätzen einer Selbstposition verwendet wird (nachstehend als Selbstpositionsschätzungskarte bezeichnet). Die Selbstpositionsschätzungskarte dient als eine hochgenaue Karte, die beispielsweise eine Technologie wie etwa SLAM (Simultaneous Localization and Mapping - simultane Positionsbestimmung und Kartenerstellung) verwendet. Der Selbstpositionsschätzabschnitt 132 liefert beispielsweise Daten, die Ergebnisse des Schätzprozesses angeben, an den Kartenanalyseabschnitt 151, den Verkehrsregelerkennungsabschnitt 152 und den Zustandserkennungsabschnitt 153 in dem Zustandsanalyseabschnitt 133. Ferner speichert der Selbstpositionsschätzabschnitt 132 die Selbstpositionsschätzungskarte in der Speicherung 111.
-
Der Zustandsanalyseabschnitt 133 führt einen Analyseprozess von Zuständen des Fahrzeugs 10 und der Peripherie durch. Der Zustandsanalyseabschnitt 133 weist den Kartenanalyseabschnitt 151, den Verkehrsregelerkennungsabschnitt 152, den Zustandserkennungsabschnitt 153 und einen Zustandsvorhersageabschnitt 154 auf.
-
Der Kartenanalyseabschnitt 151 führt einen Analyseprozess verschiedener Arten von Karten, die in der Speicherung 111 gespeichert sind, unter Verwendung von Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100, wie etwa dem Selbstpositionsschätzabschnitt 132 und dem Fahrzeugaußeninformationsdetektor 141, nach Bedarf durch, um eine Karte einschließlich Informationen, die für einen automatischen Fahrprozess erforderlich sind, zu erstellen. Der Kartenanalyseabschnitt 151 liefert die erstellte Karte an den Verkehrsregelerkennungsabschnitt 152, den Zustandserkennungsabschnitt 153 und den Zustandsvorhersageabschnitt 154 sowie zum Beispiel an einen Routenplanungsabschnitt 161, einen Handlungsplanungsabschnitt 162 und einen Betriebsplanungsabschnitt 163 im Planungsabschnitt 134.
-
Der Verkehrsregelerkennungsabschnitt 152 führt einen Erkennungsprozess einer Verkehrsregel im Umfeld des Fahrzeugs 10 basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100 durch, wie etwa dem Selbstpositionsschätzabschnitt 132, dem Fahrzeugaußeninformationsdetektor 141 und dem Kartenanalyseabschnitt 151. Dieser Erkennungsprozess ermöglicht beispielsweise das Erkennen einer Position und eines Zustands einer Ampel im Umfeld des Fahrzeugs 10, von Einzelheiten der Verkehrsregelung im Umfeld des Fahrzeugs 10 und einer befahrbaren Fahrspur. Der Verkehrsregelerkennungsabschnitt 152 liefert beispielsweise Daten, die Ergebnisse des Erkennungsprozesses angeben, an den Zustandsvorhersageabschnitt 154.
-
Der Zustandserkennungsabschnitt 153 führt einen Erkennungsprozess des Zustands des Fahrzeugs 10 basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100 durch, wie etwa dem Selbstpositionsschätzabschnitt 132, dem Fahrzeugaußeninformationsdetektor 141, dem Fahrzeuginneninformationsdetektor 142, dem Fahrzeugzustandsdetektor 143 und dem Kartenanalyseabschnitt 151. Beispielsweise führt der Zustandserkennungsabschnitt 153 Erkennungsprozesse des Zustands des Fahrzeugs 10, eines Zustands im Umfeld des Fahrzeugs 10 und eines Zustands des Fahrers des Fahrzeugs 10 durch. Ferner erzeugt der Zustandserkennungsabschnitt 153 bei Bedarf die lokale Karte, die zur Erkennung des Zustands im Umfeld des Fahrzeugs 10 verwendet wird (im Folgenden als Zustandserkennungskarte bezeichnet). Die Zustandserkennungskarte dient beispielsweise als eine Belegungsgitterkarte.
-
Der zu erkennende Zustand des Fahrzeugs 10 schließt beispielsweise eine Position, Stellung und Bewegung (z. B. Geschwindigkeit, Beschleunigung und eine Bewegungsrichtung) des Fahrzeugs 10 sowie das Vorhandensein und Einzelheiten einer Abnormalität ein. Der zu erkennende Zustand im Umfeld des Fahrzeugs 10 schließt beispielsweise eine Art und eine Position eines stationären Objekts in der Umgebung, eine Art, eine Position und eine Bewegung (z. B. Geschwindigkeit, Beschleunigung und eine Bewegungsrichtung) eines sich bewegenden Objekts in der Umgebung, eine Konfiguration einer Straße und einen Zustand einer Straßenoberfläche in der Umgebung sowie Wetter, Lufttemperatur, Luftfeuchtigkeit und Helligkeit in der Umgebung ein. Der zu erkennende Zustand des Fahrers schließt beispielsweise eine körperliche Verfassung, Wachsamkeit, Konzentration, Müdigkeit, Bewegung einer Sichtlinie und Fahrweise ein.
-
Der Zustandserkennungsabschnitt 153 liefert beispielsweise Daten, die Ergebnisse der Erkennungsprozesse angeben (einschließlich der Zustandserkennungskarte, falls erforderlich), an den Selbstpositionsschätzabschnitt 132 und den Zustandsvorhersageabschnitt 154. Ferner bewirkt der Zustandserkennungsabschnitt 153, dass die Zustandserkennungskarte in der Speicherung 111 gespeichert wird.
-
Der Zustandsvorhersageabschnitt 154 führt einen Vorhersageprozess des Zustands des Fahrzeugs 10 basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100 durch, wie etwa dem Kartenanalyseabschnitt 151, dem Verkehrsregelerkennungsabschnitt 152 und dem Zustandserkennungsabschnitt 153. Beispielsweise führt der Zustandsvorhersageabschnitt 154 Vorhersageprozesse des Zustands des Fahrzeugs 10, des Zustands im Umfeld des Fahrzeugs 10 und des Zustands des Fahrers durch.
-
Der vorherzusagende Zustand des Fahrzeugs 10 schließt beispielsweise das Verhalten des Fahrzeugs 10, das Auftreten einer Abnormalität und eine fahrbare Entfernung ein. Der vorherzusagende Zustand im Umfeld des Fahrzeugs 10 schließt beispielsweise das Verhalten eines sich bewegenden Objekts im Umfeld des Fahrzeug 10, die Änderung eines Zustands einer Ampel und die Änderung der Umgebung, wie etwa das Wetter, ein. Der vorherzusagende Zustand des Fahrers schließt beispielsweise das Verhalten und eine körperliche Verfassung des Fahrers ein.
-
Der Zustandsvorhersageabschnitt 154 liefert Daten, die Ergebnisse der Vorhersageprozesse angeben, beispielsweise an den Routenplanungsabschnitt 161, den Handlungsplanungsabschnitt 162 und den Betriebsplanungsabschnitt 163 in dem Planungsabschnitt 134, zusammen mit Daten von dem Verkehrsregelerkennungsabschnitt 152 und dem Zustandserkennungsabschnitt 153.
-
Der Routenplanungsabschnitt 161 plant eine Route zu einem Ziel basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100, wie etwa dem Kartenanalyseabschnitt 151 und dem Zustandsvorhersageabschnitt 154. Beispielsweise legt der Routenplanungsabschnitt 161 die Route von einer aktuellen Position zu einem vorgegebenen Ziel basierend auf der globalen Karte fest. Ferner modifiziert der Routenplanungsabschnitt 161 beispielsweise die Route gegebenenfalls basierend auf Zuständen wie etwa Überlastung, einem Unfall, Verkehrsregelung und Baustellen, und der physischen Verfassung des Fahrers. Der Routenplanungsabschnitt 161 liefert Daten, die die geplante Route angeben, beispielsweise an den Handlungsplanungsabschnitt 162.
-
Der Handlungsplanungsabschnitt 162 plant eine Handlung des Fahrzeugs 10 zum sicheren Fahren der durch den Routenplanungsabschnitt 161 geplanten Route innerhalb einer geplanten Zeit basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100, wie etwa dem Kartenanalyseabschnitt 151 und dem Zustandsvorhersageabschnitt 154. Zum Beispiel plant der Handlungsplanungsabschnitt 162 das Starten, Anhalten, eine Fahrtrichtung (z. B. Vorwärtsbewegung, Rückwärtsbewegung, Linkskurve, Rechtskurve und Fahrtrichtungsänderung), eine Fahrspur, eine Fahrgeschwindigkeit und das Überholen eines vorausfahrenden Fahrzeugs. Der Handlungsplanungsabschnitt 162 liefert Daten, die die geplante Handlung des Fahrzeugs 10 angeben, beispielsweise an den Betriebsplanungsabschnitt 163.
-
Der Betriebsplanungsabschnitt 163 plant einen Betrieb des Fahrzeugs 10 zum Erreichen der durch den Handlungsplanungsabschnitt 162 geplanten Handlung basierend auf Daten oder Signalen von den Abschnitten in dem Fahrzeugsteuersystem 100, wie etwa dem Kartenanalyseabschnitt 151 und dem Zustandsvorhersageabschnitt 154. Beispielsweise plant der Betriebsplanungsabschnitt 163 Beschleunigung, Abbremsung und eine Fahrtrajektorie. Der Betriebsplanungsabschnitt 163 liefert Daten, die den geplanten Betrieb des Fahrzeugs 10 angeben, beispielsweise an eine Beschleunigungs-/Abbremsungssteuerung 172 und eine Richtungssteuerung 173 in der Betriebssteuerung 135.
-
Die Betriebssteuerung 135 steuert den Betrieb des Fahrzeugs 10. Die Betriebssteuerung 135 weist den Notfallvermeidungsabschnitt 171, die Beschleunigungs-/Abbremsungssteuerung 172 und die Richtungssteuerung 173 auf.
-
Der Notfallvermeidungsabschnitt 171 führt einen Detektionsprozess eines Notfalls, wie etwa Kollision, Kontakt, Eintritt in eine Gefahrenzone, Abnormalität des Fahrers und Abnormalität des Fahrzeugs 10, basierend auf den Detektionsergebnissen des Fahrzeugaußeninformationsdetektors 141, des Fahrzeuginneninformationsdetektors 142 und des Fahrzeugzustandsdetektors 143 durch. Wenn das Auftreten des Notfalls detektiert wird, plant der Notfallvermeidungsabschnitt 171 den Betrieb des Fahrzeugs 10 zur Vermeidung des Notfalls, wie etwa plötzliches Anhalten und starkes Abbiegen. Der Notfallvermeidungsabschnitt 171 liefert Daten, die den geplanten Betrieb des Fahrzeugs 10 angeben, beispielsweise an die Beschleunigungs-/Abbremsungssteuerung 172 und die Richtungssteuerung 173.
-
Die Beschleunigungs-/Abbremsungssteuerung 172 steuert die Beschleunigung und Abbremsung zum Erreichen des Betriebs des Fahrzeugs 10, der durch den Betriebsplanungsabschnitt 163 oder den Notfallvermeidungsabschnitt 171 geplant ist. Beispielsweise berechnet die Beschleunigungs-/Abbremsungssteuerung 172 einen Steuerzielwert der Antriebskrafterzeugungseinrichtung oder der Bremseinrichtung zum Erreichen der geplanten Beschleunigung, der geplanten Abbremsung oder des geplanten plötzlichen Anhaltens und liefert einen Steuerbefehl, der den berechneten Steuerzielwert angibt, an die fahrbezogene Steuerung 107.
-
Die Richtungssteuerung 173 führt eine Richtungssteuerung zum Erreichen des Betriebs des Fahrzeugs 10 durch, der durch den Betriebsplanungsabschnitt 163 oder den Notfallvermeidungsabschnitt 171 geplant ist. Beispielsweise berechnet die Richtungssteuerung 173 einen Steuerzielwert des Lenkmechanismus zum Erreichen der Fahrtrajektorie oder des starken Abbiegens, die bzw. das durch den Betriebsplanungsabschnitt 163 oder den Notfallvermeidungsabschnitt 171 geplant ist, und liefert einen Steuerbefehl, der den berechneten Steuerzielwert angibt, an die fahrbezogene Steuerung 107.
-
«2. Ausführungsbeispiel»
-
Anschließend wird ein Ausführungsbeispiel der vorliegenden Technologie unter Bezugnahme auf die 2 bis 11 beschrieben.
-
Es ist zu beachten, dass dieses Ausführungsbeispiel Technologien einschließt, die sich hauptsächlich auf die Prozesse des Selbstpositionsschätzabschnitts 132, des Fahrzeugaußeninformationsdetektors 141 und des Zustandserkennungsabschnitts 153 in dem Fahrzeugsteuersystem 100 in 1 und einen Erzeugungsprozess einer Karte, die in dem Selbstpositionsschätzprozess verwendet wird, beziehen.
-
<Konfigurationsbeispiel des Selbstpositionsschätzsystems>
-
2 ist ein Blockdiagramm, das ein Konfigurationsbeispiel eines Selbstpositionsschätzsystems 201 veranschaulicht, das ein Ausführungsbeispiel eines Selbstpositionsschätzsystems ist, das mit der vorliegenden Technologie angewendet wird.
-
Das Selbstpositionsschätzsystem 201 ist ein System, das eine Selbstpositionsschätzung des Fahrzeugs 10 durchführt.
-
Das Selbstpositionsschätzsystem 201 weist einen Kartenerzeugungsprozessor 211, eine Karten-DB (Datenbank) 212 und einen Selbstpositionsschätzprozessor 213 auf.
-
Der Kartenerzeugungsprozessor 211 führt einen Erzeugungsprozess eines Schlüsselframes durch, das eine Schlüsselframekarte konfiguriert, die eine Karte zum Schätzen der Selbstposition des Fahrzeugs 10 ist.
-
Es ist anzumerken, dass der Kartenerzeugungsprozessor 211 nicht notwendigerweise in dem Fahrzeug 10 installiert ist. Beispielsweise kann der Kartenerzeugungsprozessor 211 in einem Fahrzeug installiert sein, das sich von dem Fahrzeug 10 unterscheidet, und das Fahrzeug, das sich von dem Fahrzeug 10 unterscheidet, kann verwendet werden, um das Schlüsselframe zu erzeugen.
-
Es ist anzumerken, dass im Folgenden ein Beispiel für einen Fall beschrieben wird, in dem der Kartenerzeugungsprozessor 211 in dem Fahrzeug installiert ist, das sich von dem Fahrzeug 10 unterscheidet (nachstehend als ein Kartenerzeugungsfahrzeug bezeichnet).
-
Der Kartenerzeugungsprozessor 211 weist einen Bilderfassungsabschnitt 221, einen Selbstpositionsschätzabschnitt 222, einen Puffer 223, einen Objekterkennungsabschnitt 224, einen Merkmalspunktdetektor 225, einen Invarianzschätzabschnitt 226 und einen Kartengenerator 227 auf.
-
Der Bilderfassungsabschnitt 221 weist beispielsweise eine Kamera auf, nimmt ein Bild vor dem Kartenerzeugungsfahrzeug auf und speichert das erfasste Bild (im Folgenden als ein Referenzbild bezeichnet) in dem Puffer 223.
-
Der Selbstpositionsschätzabschnitt 222 führt einen Selbstpositionsschätzprozess des Kartenerzeugungsfahrzeugs durch, liefert Daten, die das Schätzergebnis angeben, an den Kartengenerator 227 und speichert die Daten in dem Puffer 223.
-
Der Objekterkennungsabschnitt 224 führt einen Erkennungsprozess eines Objekts in dem Referenzbild durch und liefert Daten, die das Erkennungsergebnis angeben, an den Invarianzschätzabschnitt 226.
-
Der Merkmalspunktdetektor 225 führt einen Detektionsprozess von Merkmalspunkten in dem Referenzbild durch und liefert Daten, die das Detektionsergebnis angeben, an den Invarianzschätzabschnitt 226.
-
Der Invarianzschätzabschnitt 226 führt einen Invarianzschätzprozess der Merkmalspunkte in dem Referenzbild durch und liefert Daten, die das geschätzte Ergebnis angeben, und das Referenzbild an den Kartengenerator 227.
-
Der Kartengenerator 227 erzeugt das Schlüsselframe und registriert das Schlüsselframe in der Karten-DB 212. Das Schlüsselframe enthält beispielsweise Daten, die eine Position in einem Bildkoordinatensystem und eine Merkmalsgröße jedes im Referenzbild detektierten Merkmalspunkts sowie eine Position und Stellung des Kartenerzeugungsfahrzeugs in einem Weltkoordinatensystem, wenn das Referenzbild aufgenommen wird (d. h. eine Position und Stellung, an der das Referenzbild aufgenommen wird), angeben.
-
Es ist anzumerken, dass im Folgenden die Position und Stellung des Kartenerzeugungsfahrzeugs, wenn das für die Erzeugung des Schlüsselframes verwendete Referenzbild aufgenommen wird, auch lediglich als eine Position und Stellung des Schlüsselframes bezeichnet wird.
-
Zusätzlich weist der Kartengenerator 227 den Objekterkennungsabschnitt 224 an, den Erkennungsprozess des Objekts in dem Referenzbild durchzuführen, oder weist den Merkmalspunktdetektor 225 an, den Detektionsprozess der Merkmalspunkte in dem Referenzbild durchzuführen.
-
Die Karten-DB 212 speichert eine Schlüsselframekarte, die mehrere Schlüsselframes enthält, basierend auf mehreren Referenzbildern, die durch das an verschiedenen Orten fahrende Kartenerzeugungsfahrzeug aufgenommen wurden.
-
Es ist zu beachten, dass die Anzahl der Kartenerzeugungsfahrzeuge, die für die Schlüsselframekartenerzeugung verwendet werden, nicht unbedingt eins sein muss und zwei oder mehr sein kann.
-
Darüber hinaus ist die Karten-DB 212 nicht notwendigerweise im Fahrzeug 10 installiert und kann beispielsweise in einem Server installiert sein. In diesem Fall bezieht sich das Fahrzeug 10 beispielsweise auf die in der Karten-DB 212 gespeicherte Schlüsselframekarte oder lädt sie vor oder während der Fahrt herunter. Die so heruntergeladene Schlüsselframekarte wird beispielsweise vorübergehend in der Speicherung 111 (1) im Fahrzeug 10 gespeichert.
-
Der Selbstpositionsschätzprozessor 213 ist in dem Fahrzeug 10 installiert und führt den Selbstpositionsschätzprozess des Fahrzeugs 10 durch. Der Selbstpositionsschätzprozessor 213 weist einen Bilderfassungsabschnitt 241, einen Merkmalspunktdetektor 242, einen Merkmalspunktkollationierungsabschnitt 243 und einen Selbstpositionsschätzabschnitt 244 auf.
-
Der Bilderfassungsabschnitt 241 weist beispielsweise eine Kamera auf, nimmt ein Bild vor dem Fahrzeug 10 auf und liefert das erfasste Bild (im Folgenden als ein beobachtetes Bild bezeichnet) an den Merkmalspunktdetektor 242.
-
Der Merkmalspunktdetektor 242 führt einen Detektionsprozess von Merkmalspunkten in dem beobachteten Bild durch und liefert Daten, die das Detektionsergebnis angeben, an den Merkmalspunktkollationierungsabschnitt 243.
-
Der Merkmalspunktkollationierungsabschnitt 243 führt einen Kollationierungsprozess zwischen den Merkmalspunkten in dem beobachteten Bild und den Merkmalspunkten in den Schlüsselframes der in der Karten-DB 212 gespeicherten Schlüsselframekarte durch. Der Merkmalspunktkollationierungsabschnitt 243 liefert das Kollationierungsergebnis bezüglich der Merkmalspunkte und Daten, die eine Position und Stellung jedes der für die Kollationierung verwendeten Schlüsselframes angeben, an den Selbstpositionsschätzabschnitt 244.
-
Der Selbstpositionsschätzabschnitt 244 schätzt eine Position und Stellung des Fahrzeugs 10 in dem Weltkoordinatensystem basierend auf dem Kollationierungsergebnis zwischen den Merkmalspunkten in dem beobachteten Bild und den Merkmalspunkten in dem Schlüsselframe, und die Position und Stellung des für die Kollationierung verwendeten Schlüsselframes. Der Selbstpositionsschätzabschnitt 244 liefert Daten, die die Position und Stellung des Fahrzeugs 10 angeben, beispielsweise an den Kartenanalyseabschnitt 151, den Verkehrsregelerkennungsabschnitt 152 und den Zustandserkennungsabschnitt 153 in 1.
-
Es ist zu beachten, dass in einem Fall, in dem der Kartenerzeugungsprozessor 211 in dem Fahrzeug 10, und nicht in dem Kartenerzeugungsfahrzeug, installiert ist, mit anderen Worten, in einem Fall, in dem das zur Erzeugung der Schlüsselframekarte verwendete Fahrzeug und das Fahrzeug zur Durchführung des Selbstpositionsschätzprozesses identisch sind, der Bilderfassungsabschnitt 221 und der Merkmalspunktdetektor 225 in dem Kartenerzeugungsprozessor 211 und der Bilderfassungsabschnitt 241 und der Merkmalspunktdetektor 242 in dem Selbstpositionsschätzprozessor 231 zum Beispiel gemein gemacht werden können.
-
<Kartenerzeugungsprozess>
-
Anschließend wird unter Bezugnahme auf ein Flussdiagramm in 3 der Kartenerzeugungsprozess beschrieben, der durch den Kartenerzeugungsprozessor 211 durchgeführt werden soll. Es ist zu beachten, dass dieser Prozess beispielsweise startet, wenn das Kartenerzeugungsfahrzeug gestartet wird und ein Vorgang zum Starten des Fahrens durchgeführt wird, beispielsweise wenn ein Zündschalter, ein Leistungsschalter oder ein Startschalter in dem Kartenerzeugungsfahrzeug eingeschaltet wird. Dieser Prozess endet beispielsweise, wenn ein Vorgang zum Beenden des Fahrens durchgeführt wird, beispielsweise wenn der Zündschalter, der Leistungsschalter oder der Startschalter in dem Kartenerzeugungsfahrzeug ausgeschaltet wird.
-
In Schritt S1 erfasst der Bilderfassungsabschnitt 221 das Referenzbild. Insbesondere nimmt der Bilderfassungsabschnitt 221 ein Bild vor dem Kartenerzeugungsfahrzeug auf und speichert das erfasste Referenzbild in dem Puffer 223.
-
In Schritt S2 schätzt der Selbstpositionsschätzabschnitt 222 eine Selbstposition. Mit anderen Worten schätzt der Selbstpositionsschätzabschnitt 222 die Position und Stellung des Kartenerzeugungsfahrzeugs im Weltkoordinatensystem. Mit dieser Konfiguration werden die Position und Stellung des Kartenerzeugungsfahrzeugs geschätzt, wenn das Referenzbild mit dem Prozess in Schritt S1 aufgenommen wird. Der Selbstpositionsschätzabschnitt 222 liefert Daten, die das Schätzergebnis angeben, an den Kartengenerator 227 und übergibt die Daten, die das Schätzergebnis angeben, an das in dem Puffer 223 gespeicherte Referenzbild als Metadaten.
-
Es ist zu beachten, dass ein beliebiges Verfahren für das Selbstpositionsschätzverfahren des Kartenerzeugungsfahrzeugs verwendet werden kann. Beispielsweise wird ein hochgenaues Schätzverfahren unter Verwendung von RTK(Real Time Kinematic)-GNSS oder LiDAR verwendet.
-
In Schritt S3 bestimmt der Kartengenerator 227, ob sich das Kartenerzeugungsfahrzeug ausreichend von einer registrierten Position des vorherigen Schlüsselframes bewegt hat oder nicht. Insbesondere berechnet der Kartengenerator 227 einen Abstand zwischen der Position des Kartenerzeugungsfahrzeugs, wenn das für die Erzeugung des vorherigen Schlüsselframes verwendete Referenzbild erfasst wird, und der Position des Kartenerzeugungsfahrzeugs, die durch den Prozess in Schritt S2 geschätzt wird. In einem Fall, in dem der berechnete Abstand kleiner als eine vorbestimmte Schwelle ist, bestimmt der Kartengenerator 227, dass sich das Kartenerzeugungsfahrzeug noch nicht ausreichend von der registrierten Position des vorherigen Schlüsselframes bewegt hat, und der Prozess kehrt zu Schritt S1 zurück.
-
Anschließend werden die Prozesse von Schritt S1 bis Schritt S3 wiederholt ausgeführt, bis in Schritt S3 bestimmt wird, dass sich das Kartenerzeugungsfahrzeug ausreichend von der registrierten Position des vorherigen Schlüsselframes bewegt hat.
-
Andererseits bestimmt in Schritt S3 in einem Fall, in dem der berechnete Abstand größer oder gleich der vorbestimmten Schwelle ist, der Kartengenerator 227, dass sich das Kartenerzeugungsfahrzeug ausreichend von der registrierten Position des vorherigen Schlüsselframes bewegt hat, und der Prozess geht zu Schritt S4 über.
-
Es ist zu beachten, dass beispielsweise vor dem Registrieren eines ersten Schlüsselframes der Prozess in Schritt S3 übersprungen wird und der Prozess bedingungslos zu Schritt S4 übergeht.
-
In Schritt S4 führt der Objekterkennungsabschnitt 224 eine Objekterkennung für jedes Referenzbild durch. Insbesondere weist der Kartengenerator 227 den Objekterkennungsabschnitt 224 an, den Erkennungsprozess des Objekts in dem Referenzbild durchzuführen.
-
Der Objekterkennungsabschnitt 224 liest aus dem Puffer 223 alle in dem Puffer 223 gespeicherten Referenzbilder. Es ist zu beachten, dass in dem Puffer 223 das Referenzbild gespeichert ist, das nach vorheriger Durchführung von Prozessen von Schritt S4 bis Schritt S5 erfasst wurde. In einem Fall, in dem die Prozesse von Schritt S4 bis Schritt S5 zum ersten Mal durchgeführt werden, wird jedoch das nach dem Starten des Kartenerzeugungsprozesses erfasste Referenzbild in dem Puffer 223 gespeichert.
-
Der Objekterkennungsabschnitt 224 führt den Erkennungsprozess des Objekts in jedem Referenzbild durch. Mit diesem Prozess werden beispielsweise eine Position und eine Art des Objekts in jedem Referenzbild erkannt.
-
Es ist zu beachten, dass für das Erkennungsverfahren des Objekts im Referenzbild ein beliebiges Verfahren, wie etwa semantische Segmentierung, verwendet werden kann.
-
Der Objekterkennungsabschnitt 224 liefert Daten, die das Erkennungsergebnis des Objekts in jedem Referenzbild angeben, an den Invarianzschätzabschnitt 226.
-
In Schritt S5 detektiert der Merkmalspunktdetektor 225 Merkmalspunkte in jedem Referenzbild. Insbesondere weist der Kartengenerator 227 den Merkmalspunktdetektor 225 an, einen Merkmalspunktdetektionsprozess in dem Referenzbild durchzuführen.
-
Der Merkmalspunktdetektor 225 liest aus dem Puffer 223 alle in dem Puffer 223 gespeicherten Referenzbilder. Der Merkmalspunktdetektor 225 führt den Merkmalspunktdetektionsprozess in jedem Referenzbild durch. Mit diesem Prozess werden beispielsweise eine Position und eine Merkmalsgröße von jedem der Merkmalspunkte in jedem Referenzbild detektiert.
-
Es ist zu beachten, dass als das Merkmalspunktdetektionsverfahren ein beliebiges Verfahren, wie etwa Harris-Corner, verwendet werden kann.
-
Der Merkmalspunktdetektor 225 liefert Daten, die das Detektionsergebnis der Merkmalspunkte in jedem Referenzbild angeben, und das Referenzbild an den Invarianzschätzabschnitt 226. Ferner löscht der Merkmalspunktdetektor 225 die gelesenen Referenzbilder aus dem Puffer 223.
-
In Schritt S6 schätzt der Invarianzschätzabschnitt 226 die Invarianz jedes Merkmalspunkts. Insbesondere erfasst der Invarianzschätzabschnitt 226 eine Invarianzbewertung jedes Merkmalspunkts basierend auf einer Art eines Objekts, zu dem jeder Merkmalspunkt in jedem Referenzbild gehört.
-
Hierin ist die Invarianzbewertung eine Bewertung, die einen Grad angibt, mit dem sich der Merkmalspunkt weniger wahrscheinlich gegenüber Zeitablauf oder Umgebungsänderung ändert. Insbesondere ist die Invarianzbewertung eine Bewertung, die einen Grad angibt, mit dem sich eine Position und eine Merkmalsgröße des Merkmalspunkts weniger wahrscheinlich gegenüber Zeitablauf oder Umgebungsänderung ändern. Dementsprechend wird eine Invarianzbewertung eines Merkmalspunkts, bei dem die Änderung einer Position und einer Merkmalsgröße gegenüber Zeitablauf oder Umgebungsänderung kleiner ist, höher. Da sich beispielsweise die Position eines Merkmalspunkts eines stationären Objekts nicht wesentlich ändert, wird seine Merkmalspunktbewertung hoch. Andererseits wird eine Invarianzbewertung eines Merkmalspunkts, bei dem die Änderung einer Position und/oder einer Merkmalsgröße gegenüber eines Zeitablaufs und/oder einer Umgebungsänderung größer ist, geringer. Da sich beispielsweise die Position eines Merkmalspunkts eines sich bewegenden Objekts leicht ändert, wird seine Merkmalspunktbewertung niedrig.
-
4 veranschaulicht Beispiele der Invarianzbewertungen. In den Beispielen werden Objekte in mehrere Arten kategorisiert, und die Invarianzbewertung wird für jedes Objekt individuell festgelegt.
-
Beispielsweise sind ein Gebäude und ein Haus stationäre Objekte, deren Position sich nicht ändert. Darüber hinaus ist es weniger wahrscheinlich, dass diese Objekte gebaut oder zerstört werden. Daher ist es weniger wahrscheinlich, dass sich eine Position und eine Merkmalsgröße eines im Gebäude oder im Haus detektierten Merkmalspunkts ändern. Dementsprechend sind die Invarianzbewertungen des Gebäudes und des Hauses hoch eingestellt.
-
Es ist zu beachten, dass sich das Erscheinungsbild des Hauses mit größerer Wahrscheinlichkeit ändert als das des Gebäudes, zum Beispiel aufgrund des Umgestaltens oder Aufhängens von Wäsche zum Trocknen. Dementsprechend ist die Invarianzbewertung des Hauses niedriger eingestellt als die des Gebäudes.
-
Es ist zu beachten, dass zum Beispiel, wie in 5 und 6 veranschaulicht, in gewerblichen Anlagen wie etwa Geschäften, die sich auf der gleichen Höhe wie eine Straßenoberfläche befinden, beispielsweise Schilder, Displays oder Ausstellungslayouts von Waren häufig geändert werden. Darüber hinaus werden beispielsweise warenführende Lastwagen oder Fahrzeuge oder Fahrräder von Kunden häufig vor den gewerblichen Anlagen geparkt. Darüber hinaus gibt es viele Fälle wie etwa das Öffnen und Schließen von Fensterläden von Geschäften, die Neubesetzung von Geschäften und das Schließen von Geschäften. Dementsprechend können die Invarianzbewertungen der gewerblichen Anlagen (insbesondere der gewerblichen Anlagen, die sich auf derselben Höhe wie die Straßenoberfläche befinden) niedrig eingestellt werden, obwohl es sich bei den gewerblichen Anlagen um Gebäude handelt.
-
Obwohl die Straßenoberfläche ein stationäres Objekt ist, ist ihre Änderung gegenüber Zeitablauf oder Umgebungsänderung relativ groß. Beispielsweise ändert sich ein Zustand der Straßenoberfläche (z. B. Reflexionscharakteristik) stark, oder ein betrachteter Zustand einer Verkehrsmarkierung, beispielsweise einer weißen Linie auf der Straßenoberfläche, ändert sich stark, beispielsweise aufgrund einer nassen Straßenoberfläche oder eine Pfütze, die durch Regen oder angesammelten Schnee verursacht wird. Infolgedessen ändern sich eine Position und eine Merkmalsgröße eines auf der Straßenoberfläche detektierten Merkmalspunkts stark.
-
Zusätzlich wird zum Beispiel, wie in 7 veranschaulicht, auf der Straße häufig im Vergleich zu der Struktur wie dem Gebäude oder dem Haus gebaut. Wenn der Straßenbau durchgeführt wird, werden beispielsweise Lastkraftwagen, Maschinen, Werkzeuge oder Führungsbleche des Baus auf der Straßenoberfläche platziert. Außerdem wird in einigen Fällen die Verkehrsmarkierung auf der Straßenoberfläche entfernt oder überarbeitet. Infolgedessen ändern sich die Position und die Merkmalsgröße des auf der Straßenoberfläche detektierten Merkmalspunkts stark.
-
Zum Beispiel, wie in 8 veranschaulicht, wird ferner die Verkehrsmarkierung auf der Straßenoberfläche häufig von einem auf der Straße geparkten Fahrzeug verdeckt. Infolgedessen ändern sich die Position und die Merkmalsgröße des auf der Straßenoberfläche detektierten Merkmalspunkts stark.
-
Dementsprechend ist eine Invarianzbewertung der Straßenoberfläche niedriger als die des Gebäudes und des Hauses eingestellt.
-
Pflanzen sind stationäre Objekte, deren Positionen nicht grundsätzlich bewegt werden, deren Änderung jedoch gegenüber Zeitablauf oder Umgebungsänderung groß ist. Zum Beispiel ändern sich Farben und Formen der Pflanzen, zum Beispiel aufgrund von blühenden Blüten, dicht wachsenden Blättern, wechselnden Farben von Blättern, fallenden Blättern, wachsenden Blättern oder verwelkten Blättern, je nach Jahreszeit. Außerdem ändern sich die Formen der Pflanzen, während sie im Wind wehen. Infolgedessen ändern sich eine Position und eine Merkmalsgröße des in der Pflanze detektierten Merkmalspunkts stark. Dementsprechend wird eine Invarianzbewertung der Pflanze niedriger als die der Straßenoberfläche eingestellt.
-
Das Fahrzeug ist ein sich bewegender Körper und bewegt sich daher höchstwahrscheinlich eine aktuelle Position verlassend. Dementsprechend ist eine Invarianzbewertung des Fahrzeugs extrem niedrig eingestellt.
-
Es ist zu beachten, dass 4 ein Beispiel für ein Einstellungsverfahren für die Invarianzbewertung ist und auf beliebige Weise modifiziert werden kann. Zum Beispiel ist es möglich, Arten von Objekten zu erweitern oder die Objekte genauer zu kategorisieren.
-
In Schritt S7 schätzt der Invarianzschätzabschnitt 226 die Invarianz jedes Referenzbildes. Insbesondere summiert der Invarianzschätzabschnitt 226 die Invarianzbewertung jedes Merkmalspunkts für jedes Referenzbild und definiert den summierten Wert als die Invarianzbewertung jedes Referenzbildes. Dementsprechend wird eine Invarianzbewertung eines Referenzbildes, das mehr Merkmalspunkte enthält, von denen jeder eine höhere Invarianzbewertung aufweist, höher.
-
Hierin wird unter Bezugnahme auf 9 ein spezifisches Beispiel eines Berechnungsverfahrens für die Invarianzbewertung des Referenzbildes beschrieben. 9 veranschaulicht ein Beispiel des Referenzbildes. X-Markierungen im Referenzbild geben die Positionen detektierter Merkmalspunkte an. In diesem Referenzbild werden die Merkmalspunkte in einem Gebiet R1 bis zu einem Gebiet R3 detektiert. Das Gebiet R1 wird als ein Haus erkannt, das Gebiet R2 wird als ein Fahrzeug erkannt und das Gebiet R3 wird als eine Pflanze erkannt.
-
Im Fall dieses Beispiels wird jedem Merkmalspunkt im Gebiet R1 basierend auf der Tabelle in 4 ein Wert 1 gegeben, der die Invarianzbewertung des Hauses ist. Jedem Merkmalspunkt im Gebiet R2 wird ein Wert von 0,0005 gegeben, der die Invarianzbewertung des Fahrzeugs ist. Jedem Merkmalspunkt im Gebiet R3 wird ein Wert von 0,01 gegeben, der die Invarianzbewertung der Pflanze ist. Durch Summieren der Invarianzbewertung, die jedem Merkmalspunkt gegeben wird, wird die Invarianzbewertung des Referenzbildes berechnet.
-
Der Invarianzschätzabschnitt 226 liefert dem Kartengenerator 227 Daten, die die Positionen, die Merkmalsgrößen und die Invarianzbewertungen der Merkmalspunkte in jedem Referenzbild angeben, Daten, die die Invarianzbewertung jedes Referenzbildes angeben, und jedes Referenzbild.
-
In Schritt S8 bestimmt der Kartengenerator 227, ob ein Referenzbild vorhanden ist, dessen Invarianzbewertung eine Schwelle überschreitet oder nicht. In einem Fall, in dem der Kartengenerator 227 bestimmt, dass das Referenzbild vorhanden ist, dessen Invarianzbewertung die Schwelle überschreitet, geht der Prozess zu Schritt S9 über.
-
In Schritt S9 erzeugt und registriert der Kartengenerator 227 das Schlüsselframe.
-
Beispielsweise wählt der Kartengenerator 227 ein Referenzbild, dessen Invarianzbewertung am höchsten ist, als ein Referenzbild aus, das zur Erzeugung des Schlüsselframes verwendet wird. Als Nächstes extrahiert der Kartengenerator 227 Merkmalspunkte, deren Invarianzbewertungen größer oder gleich einer Schwelle sind, aus den Merkmalspunkten des ausgewählten Referenzbildes. Der Kartengenerator 227 erzeugt dann ein Schlüsselframe, das Daten enthält, die eine Position und eine Merkmalsgröße, in einem Bildkoordinatensystem, von jedem extrahierten Merkmalspunkt und eine Position und Stellung, in dem Weltkoordinatensystem, des Kartenerzeugungsfahrzeugs, wenn das Referenzbild aufgenommen wird (d. h. eine Erfassungsposition und eine Erfassungsstellung des Schlüsselframes), angeben. Der Kartengenerator 227 registriert das erzeugte Schlüsselframe in der Karten-DB 212.
-
Zum Beispiel, wie in 10 veranschaulicht, wird in einem Fall, in dem ein Referenzbild P1 bis zu einem Referenzbild P4 erfasst werden, das Schlüsselframe basierend auf dem Referenzbild P2 erzeugt, dessen Invarianzbewertung am höchsten ist, und wird registriert.
-
Der Prozess kehrt dann zu Schritt S1 zurück, und Schritt S1 und die Schritte nach Schritt S1 werden durchgeführt.
-
Andererseits wird in Schritt S8 in einem Fall, in dem der Kartengenerator 227 bestimmt, dass das Referenzbild, dessen Invarianzbewertung die Schwelle überschreitet, nicht vorhanden ist, der Prozess in Schritt S9 nicht durchgeführt, der Prozess kehrt zu Schritt S1 zurück und Schritt S1 und die Schritte nach Schritt S1 werden durchgeführt. Mit anderen Worten, da das Referenzbild einschließlich vieler Merkmalspunkte, von denen jeder eine hohe Invarianz aufweist, nicht erfasst wird, wird das Schlüsselframe nicht erzeugt.
-
Anschließend, unter Bezugnahme auf ein Flussdiagramm in 11, wird ein Selbstpositionsschätzprozess beschrieben, der durch den Selbstpositionsschätzprozessor 213 durchgeführt werden soll. Es ist zu beachten, dass dieser Prozess beispielsweise startet, wenn das Fahrzeug 10 gestartet wird und ein Vorgang zum Starten des Fahrens durchgeführt wird, beispielsweise wenn der Zündschalter, der Leistungsschalter oder der Startschalter des Fahrzeugs 10 eingeschaltet wird. Ferner endet dieser Prozess, wenn ein Vorgang zum Beenden des Fahrens durchgeführt wird, beispielsweise wenn der Zündschalter, der Leistungsschalter oder der Startschalter des Fahrzeugs 10 ausgeschaltet wird.
-
In Schritt S51 erfasst der Bilderfassungsabschnitt 241 das beobachtete Bild. Insbesondere nimmt der Bilderfassungsabschnitt 241 ein Bild vor dem Fahrzeug 10 auf und liefert das erfasste beobachtete Bild an den Merkmalspunktdetektor 242.
-
In Schritt S52 detektiert der Merkmalspunktdetektor 242 Merkmalspunkte in dem beobachteten Bild. Der Merkmalspunktdetektor 242 liefert Daten, die das Detektionsergebnis angeben, an den Merkmalspunktkollationierungsabschnitt 243.
-
Es ist zu beachten, dass als das Detektionsverfahren für die Merkmalspunkte ein Verfahren ähnlich dem Merkmalspunktdetektor 225 in dem Kartenerzeugungsprozessor 211 verwendet wird.
-
In Schritt S53 sucht der Merkmalspunktkollationierungsabschnitt 243 nach dem Schlüsselframe und führt einen Abgleich mit dem beobachteten Bild durch. Beispielsweise sucht der Merkmalspunktkollationierungsabschnitt 243 aus den in der Karten-DB 212 gespeicherten Schlüsselframes nach einem Schlüsselframe, dessen Erfassungsposition nahe an einer Position des Fahrzeugs 10 liegt, wenn das beobachtete Bild aufgenommen wird. Als Nächstes führt der Merkmalspunktkollationierungsabschnitt 243 einen Abgleich zwischen den Merkmalspunkten in dem beobachteten Bild und Merkmalspunkten in dem durch die Suche erfassten Schlüsselframe durch (d. h. den Merkmalspunkten in dem vorab aufgenommenen Referenzbild).
-
Es ist zu beachten, dass in einem Fall, in dem mehrere Schlüsselframes extrahiert werden, der Merkmalspunktabgleich zwischen jedem der Schlüsselframes und dem beobachteten Bild durchgeführt wird.
-
Als Nächstes berechnet in einem Fall, in dem ein Schlüsselframe vorhanden ist, dessen Merkmalspunktabgleich mit dem beobachteten Bild erfolgreich ist, der Merkmalspunktkollationierungsabschnitt 243 eine Übereinstimmungsrate zwischen dem beobachteten Bild und dem Schlüsselframe, dessen Merkmalspunktabgleich erfolgreich ist. Beispielsweise berechnet der Merkmalspunktkollationierungsabschnitt 243 ein Verhältnis von Merkmalspunkten, die erfolgreich mit den Merkmalspunkten im Schlüsselframe abgeglichen werden, unter den Merkmalspunkten im beobachteten Bild als die Übereinstimmungsrate. Es ist zu beachten, dass in einem Fall, in dem mehrere Schlüsselframes vorhanden sind, deren Merkmalspunktabgleich erfolgreich ist, die Übereinstimmungsrate für jedes Schlüsselframe berechnet wird.
-
Der Merkmalspunktkollationierungsabschnitt 243 wählt dann ein Schlüsselframe, dessen Übereinstimmungsrate am höchsten ist, als ein Referenzschlüsselframe aus. Es ist zu beachten, dass in einem Fall, in dem nur ein Schlüsselframe beim Merkmalspunktabgleich erfolgreich ist, dieses Schlüsselframe als das Referenzschlüsselframe ausgewählt wird.
-
Der Merkmalspunktkollationierungsabschnitt 243 liefert Übereinstimmungsinformationen zwischen dem beobachteten Bild und dem Referenzschlüsselframe und Daten, die eine Erfassungsposition und Erfassungsstellung des Referenzschlüsselframes angeben, an den Selbstpositionsschätzabschnitt 244. Es ist zu beachten, dass die Übereinstimmungsinformationen beispielsweise eine Position und eine entsprechende Beziehung jedes Merkmalspunkts, der bei dem Abgleich zwischen dem beobachteten Bild und dem Referenzschlüsselframe erfolgreich ist, enthalten.
-
In Schritt S54 bestimmt der Merkmalspunktkollationierungsabschnitt 243, ob der Merkmalspunktabgleich erfolgreich durchgeführt wird oder nicht, basierend auf dem Ergebnis des Prozesses in Schritt S53. In einem Fall, in dem bestimmt wird, dass der Merkmalspunktabgleich fehlgeschlagen ist, kehrt der Prozess zu Schritt S51 zurück.
-
Danach werden die Prozesse von Schritt S51 bis Schritt S54 wiederholt durchgeführt, bis bestimmt wird, dass der Merkmalspunktabgleich in Schritt S54 erfolgreich durchgeführt wird.
-
Wenn andererseits in einem Fall bestimmt wird, dass der Merkmalspunktabgleich in Schritt S54 erfolgreich durchgeführt wird, geht der Prozess zu Schritt S55 über.
-
In Schritt S55 schätzt der Selbstpositionsschätzabschnitt 244 eine Position und Stellung des Fahrzeugs 10. Insbesondere berechnet der Selbstpositionsschätzabschnitt 244 die Position und Stellung des Fahrzeugs 10 für die Erfassungsposition und die Erfassungsstellung des Referenzschlüsselframes basierend auf den Übereinstimmungsinformationen zwischen dem beobachteten Bild und dem Referenzschlüsselframe, und die Erfassungsposition und die Erfassungsstellung des Referenzschlüsselframes. Genauer gesagt berechnet der Selbstpositionsschätzabschnitt 244 die Position und die Stellung des Fahrzeugs 10 für die Position und die Stellung des Kartenerzeugungsfahrzeugs, wenn das dem Referenzschlüsselframe entsprechende Referenzbild aufgenommen wird.
-
Als Nächstes wandelt der Selbstpositionsschätzabschnitt 244 die Position und Stellung des Fahrzeugs 10 für die Erfassungsposition und die Erfassungsstellung des Referenzschlüsselframes in eine Position und Stellung im Weltkoordinatensystem um. Der Selbstpositionsschätzabschnitt 244 liefert dann Daten, die das geschätzte Ergebnis der Position und der Stellung des Fahrzeugs 10 im Weltkoordinatensystem angeben, beispielsweise zum Kartenanalyseabschnitt 151, zum Verkehrsregelerkennungsabschnitt 152 und zum Zustandserkennungsabschnitt 153 in 1.
-
Danach kehrt der Prozess zu Schritt S51 zurück, und Schritt S51 und die Schritte nach Schritt S51 werden durchgeführt.
-
Wie oben beschrieben, wird das Schlüsselframe basierend auf dem Referenzbild mit hoher Invarianz erzeugt, und nur Merkmalspunkte mit jeweils hoher Invarianz werden im Schlüsselframe registriert. Daher wird die Übereinstimmungsrate zwischen den Merkmalspunkten des beobachteten Bildes und den Merkmalspunkten des Schlüsselframes (Kollationierungsgenauigkeit zwischen den Merkmalspunkten des beobachteten Bildes und den Merkmalspunkten des Schlüsselframes) verbessert. Infolgedessen wird die Genauigkeit der Selbstpositionsschätzung des Fahrzeugs 10 verbessert.
-
Ein Schlüsselframe, das auf einem Referenzbild mit geringer Invarianz basiert, wird nicht erzeugt. Daher können eine Last zum Erzeugen einer Schlüsselframekarte und eine Kapazität der Schlüsselframekarte reduziert werden. Ferner werden die Merkmalspunkte, die jeweils eine niedrige Invarianz aufweisen, nicht im Schlüsselframe registriert. Daher kann die Kapazität der Schlüsselframekarte weiter reduziert werden.
-
«3. Modifikationen»
-
Nachfolgend werden Modifikationen des oben beschriebenen Ausführungsbeispiels der vorliegenden Technologie beschrieben.
-
In der obigen Beschreibung ist mit dem Prozess in Schritt S9 in 3 ein Beispiel veranschaulicht, in dem nur das Referenzbild mit der höchsten Invarianzbewertung zum Erzeugen des Schlüsselframes verwendet wird. Zum Beispiel können jedoch alle Referenzbilder verwendet werden, von denen jedes eine Invarianzbewertung aufweist, die die Schwelle überschreitet, um die Schlüsselframes zu erzeugen.
-
Alternativ kann beispielsweise jedes Schlüsselframe eine Invarianz (z. B. Invarianzbewertung) jedes Merkmalspunkts enthalten.
-
In diesem Fall kann beispielsweise der Merkmalspunktkollationierungsabschnitt 243 eine Kollationierung zwischen den Merkmalspunkten des beobachteten Bildes und den Merkmalspunkten des Schlüsselframes durchführen, während eine Gewichtung basierend auf der Invarianz jedes Merkmalspunkts in dem Schlüsselframe durchgeführt wird. Beispielsweise kann in einem Fall, in dem die Übereinstimmungsrate zwischen dem beobachteten Bild und dem Schlüsselframe berechnet wird, der Merkmalspunktkollationierungsabschnitt 243 eine Übereinstimmungsbewertung für einen Merkmalspunkt mit hoher Invarianz erhöhen und eine Übereinstimmungsbewertung für einen Merkmalspunkt mit geringer Invarianz verringern. Mit dieser Prozedur erhöht eine höhere Häufigkeit, mit der die Übereinstimmung mit dem Merkmalspunkt mit hoher Invarianzbewertung erfolgreich ist, die Übereinstimmungsrate mehr.
-
In der obigen Beschreibung ist ein Beispiel veranschaulicht, in dem die Merkmalspunkte, von denen jeder eine Invarianzbewertung aufweist, die größer oder gleich der Schwelle ist, extrahiert werden und im Schlüsselframe registriert werden. Alle Merkmalspunkte können jedoch zusammen mit ihren Invarianzbewertungen im Schlüsselframe registriert werden. In diesem Fall kann beispielsweise der Merkmalspunktkollationierungsabschnitt 243 eine Kollationierung zwischen dem beobachteten Bild und dem Schlüsselframe durchführen, wobei nur Merkmalspunkte verwendet werden, von denen jeder eine Invarianzbewertung aufweist, die größer oder gleich einer vorbestimmten Schwelle ist, unter den Merkmalspunkten in dem Schlüsselframe. Ferner kann in diesem Fall die Schwelle in Abhängigkeit von Bedingungen wie etwa Wetter geändert werden.
-
Darüber hinaus können mehrere Kameras in dem Bilderfassungsabschnitt 221 in dem Kartenerzeugungsprozessor 211 installiert sein, und Referenzbilder können durch mehrere Kameras aufgenommen werden. In diesem Fall nehmen nicht unbedingt alle Kameras das Bild vor dem Kartenerzeugungsfahrzeug auf, aber einige oder alle Kameras können Bilder in anderen Richtungen als der Richtung vor dem Kartenerzeugungsfahrzeug aufnehmen.
-
In ähnlicher Weise können mehrere Kameras in dem Bilderfassungsabschnitt 241 in dem Selbstpositionsschätzprozessor 213 installiert sein, und beobachtete Bilder können durch mehrere Kameras aufgenommen werden. In diesem Fall nehmen nicht unbedingt alle Kameras das Bild vor dem Fahrzeug 10 auf, aber einige oder alle Kameras können Bilder in anderen Richtungen als der Richtung vor dem Fahrzeug 10 aufnehmen.
-
Darüber hinaus kann beispielsweise ein Schlüsselframe mit einer geringen Abgleicherfolgsrate mit dem beobachteten Bild gelöscht werden. Zum Beispiel kann ein Schlüsselframe, dessen Abgleicherfolgsrate mit dem beobachteten Bild während eines vorbestimmten Zeitraums kleiner als eine vorbestimmte Schwelle war, oder ein Schlüsselframe, das während eines Zeitraums größer oder gleich eines vorbestimmten Zeitraums nicht erfolgreich mit dem beobachteten Bild abgeglichen wurde, gelöscht werden.
-
Zum Beispiel veranschaulicht 12 ein Beispiel eines Referenzbildes P11 bis zu einem Referenzbild P14, die als Quellen für registrierte Schlüsselframes dienen. Beispielsweise wird angenommen, dass ein auf dem Referenzbild P11 basierendes Schlüsselframe vor zwei Tagen endgültig mit dem beobachteten Bild abgeglichen wurde, ein auf dem Referenzbild P12 basierendes Schlüsselframe vor 15 Tagen endgültig erfolgreich mit dem beobachteten Bild abgeglichen wurde, ein auf dem Referenzbild P13 basierendes Schlüsselframe endgültig vor zwei Tagen mit dem beobachteten Bild abgeglichen wurde und ein auf dem Referenzbild P14 basierendes Schlüsselframe gestern endgültig erfolgreich mit dem beobachteten Bild abgeglichen wurde. In einem Fall, in dem beispielsweise entschieden wird, ein Schlüsselframe zu löschen, das für einen Zeitraum von mehr als oder gleich zwei Wochen nicht erfolgreich mit dem beobachteten Bild abgeglichen wurde, wird das Schlüsselframe basierend auf dem Referenzbild P12 gelöscht.
-
Mit dieser Prozedur kann beispielsweise ein unnötiges Schlüsselframe gelöscht werden, das aufgrund einer signifikanten Änderung eines Zustands innerhalb eines Abbildungsbereichs des Referenzbildes P12 nach der Aufnahme des Referenzbildes P12 schwer mit dem beobachteten Bild abzugleichen ist. Mit dieser Prozedur kann die Kapazität des Karten-DB 212 effektiv verwendet werden.
-
Es ist zu beachten, dass in diesem Fall beispielsweise ein Schlüsselframe basierend auf einem Referenzbild P15, das an einer Position und Stellung nahe denen des Referenzbildes P12 neu aufgenommen wurde, neu erzeugt und registriert werden kann.
-
Darüber hinaus kann die Invarianzbewertung des Merkmalspunkts durch Hinzufügen anderer Bedingungen als der Art des Objekts, beispielsweise der umliegenden Umgebung, eingestellt werden. Beispielsweise kann eine Invarianzbewertung eines Merkmalspunkts eines Ortes, an dem sich die Bedingungen, die sich auf die Merkmalsgröße auswirken (z. B. Sonnenschein, Beleuchtung und Wetter), stark ändern, verringert werden.
-
Alternativ kann zum Beispiel die Invarianzbewertung jedes Merkmalspunkts basierend auf einem Grad, mit dem sich die Merkmalspunkte weniger wahrscheinlich gegenüber entweder einem Zeitablauf oder einer Umgebungsänderung ändern, nicht gegenüber beiden, eingestellt werden.
-
Darüber hinaus ist die vorliegende Technologie auch auf einen Fall anwendbar, in dem die Selbstpositionsschätzung für verschiedene Arten von sich bewegenden Körpern durchgeführt wird, wie etwa ein Motorrad, ein Fahrrad, eine persönliche Mobilität, ein Flugzeug, ein Schiff, eine Baumaschine, eine landwirtschaftliche Maschine (Traktor), eine Drohne und ein Roboter, außer dem oben veranschaulichten Fahrzeug.
-
«4. Anderes»
-
<Konfigurationsbeispiel des Computers>
-
Eine Reihe von oben beschriebenen Prozessen kann durch Hardware oder durch Software durchgeführt werden. In einem Fall, in dem die Reihe von Prozessen durch Software durchgeführt wird, sind Programme, die die Software konfigurieren, auf einem Computer installiert. Hierin enthalten Beispiele des Computers einen Computer, der in dedizierter Hardware integriert ist, und einen Computer, der verschiedene Funktionen ausführen kann, während er mit verschiedenen Arten von Programmen installiert wird, beispielsweise einen Allzweckcomputer.
-
13 ist ein Blockdiagramm, das ein Hardwarekonfigurationsbeispiel eines Computers veranschaulicht, der die oben beschriebene Reihe von Prozessen durch die Programme durchführt.
-
In einem Computer 500 sind eine CPU (Zentralverarbeitungseinheit) 501, ein ROM (Nur-LeseSpeicher) 502 und ein RAM (Direktzugriffsspeicher) 503 über einen Bus 504 miteinander verbunden.
-
Ferner ist eine Eingabe/Ausgabe-Schnittstelle 505 mit dem Bus 504 verbunden. Die Eingabe/Ausgabe-Schnittstelle 505 ist mit einem Eingabeabschnitt 506, einem Ausgabeabschnitt 507, einem Aufzeichnungsabschnitt 508, einem Kommunikationsabschnitt 509 und einem Laufwerk 510 verbunden.
-
Der Eingabeabschnitt 506 weist beispielsweise einen Eingabeschalter, eine Taste, ein Mikrofon und ein Bildgebungselement auf. Der Ausgabeabschnitt 507 weist beispielsweise eine Anzeige und einen Lautsprecher auf. Der Aufzeichnungsabschnitt 508 weist beispielsweise eine Festplatte und einen nichtflüchtigen Speicher auf. Der Kommunikationsabschnitt 509 weist beispielsweise eine Netzwerkschnittstelle auf. Das Laufwerk 510 steuert ein entfernbares Aufzeichnungsmedium 511 an, wie etwa eine Magnetplatte, eine optische Platte, eine magnetooptische Platte oder einen Halbleiterspeicher.
-
In dem derart konfigurierten Computer 500 lädt beispielsweise die CPU 501 Programme, die in dem Aufzeichnungsabschnitt 508 aufgezeichnet sind, über die Eingabe/Ausgabe-Schnittstelle 505 und den Bus 504 in den RAM 503 und führt die Programme aus, wodurch die oben beschriebene Reihe von Prozessen durchgeführt wird.
-
Die durch den Computer 500 (CPU 501) auszuführenden Programme können bereitgestellt werden, während sie auf dem entfernbaren Aufzeichnungsmedium 511 beispielsweise als ein Paketmedium aufgezeichnet werden. Ferner können die Programme über ein drahtgebundenes oder drahtloses Übertragungsmedium wie etwa ein lokales Netzwerk, das Internet oder digitale Satellitenübertragung bereitgestellt werden.
-
In dem Computer 500 können die Programme im Aufzeichnungsabschnitt 508 über die Eingabe/Ausgabe-Schnittstelle 505 installiert werden, indem das entfernbare Aufzeichnungsmedium 511 in das Laufwerk 510 eingehängt wird. Ferner können die Programme in dem Aufzeichnungsabschnitt 508 installiert werden, indem die Programme mit dem Kommunikationsabschnitt 509 über das drahtgebundene oder drahtlose Übertragungsmedium empfangen werden. Andernfalls können die Programme vorab im ROM 502 oder im Aufzeichnungsabschnitt 508 installiert werden.
-
Es ist zu beachten, dass die durch den Computer auszuführenden Programme Programme sein können, in denen die Prozesse in Zeitreihen in der in dieser Spezifikation beschriebenen Reihenfolge ausgeführt werden, oder Programme sein können, in denen die Prozesse parallel oder zu einem erforderlichen Timing ausgeführt werden, beispielsweise wenn ein Aufruf ausgegeben wird.
-
In dieser Spezifikation bedeutet ein System einen Satz mehrerer Komponenten (z. B. Einrichtungen und Module (Teile)), unabhängig davon, ob alle Komponenten in einem identischen Gehäuse enthalten sind oder nicht. Dementsprechend werden sowohl mehrere Einrichtungen, die in getrennten Gehäusen untergebracht sind und über ein Netzwerk verbunden sind, als auch eine Einrichtung, in der mehrere Module in einem Gehäuse untergebracht sind, als das System bezeichnet.
-
Darüber hinaus ist das Ausführungsbeispiel der vorliegenden Technologie nicht auf das oben beschriebene Ausführungsbeispiel beschränkt und kann auf verschiedene Weise modifiziert werden, ohne vom Kern der vorliegenden Technologie abzuweichen.
-
Beispielsweise kann die vorliegende Technologie eine Konfiguration von Cloud-Computing annehmen, bei der mehrere Einrichtungen die Verantwortung übernehmen und zusammenarbeiten, um eine Funktion über ein Netzwerk zu verarbeiten.
-
Jeder in den oben beschriebenen Flussdiagrammen erläuterte Schritt kann durch eine Einrichtung durchgeführt werden oder kann durch mehrere Einrichtungen während der Gemeinsamnutzung durchgeführt werden.
-
Darüber hinaus können in einem Fall, in dem ein Schritt mehrere Prozesse aufweist, die mehreren Prozesse, die in dem einen Schritt enthalten sind, durch eine Einrichtung durchgeführt werden oder kann durch mehrere Einrichtungen durchgeführt werden, während sie gemeinsam genutzt werden.
-
<Kombinationsbeispiel von Konfigurationen>
-
Die vorliegende Technologie kann auch die folgenden Konfigurationen annehmen.
- (1) Eine Informationsverarbeitungseinrichtung, die Folgendes aufweist:
- einen Merkmalspunktdetektor, der einen Merkmalspunkt in einem Referenzbild detektiert, das zur Selbstpositionsschätzung eines sich bewegenden Körpers verwendet wird;
- einen Invarianzschätzabschnitt, der die Invarianz des Merkmalspunkts schätzt; und
- einen Kartengenerator, der eine Karte basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts erzeugt.
- (2) Die Informationsverarbeitungseinrichtung gemäß dem Punkt (1), wobei der Kartengenerator das für die Karte verwendete Referenzbild basierend auf der Invarianz des Referenzbildes basierend auf der Invarianz des Merkmalspunkts extrahiert.
- (3) Die Informationsverarbeitungseinrichtung gemäß dem Punkt (2), wobei der Kartengenerator das für die Karte verwendete Referenzbild basierend auf einer Invarianzbewertung extrahiert, die durch Summieren einer Invarianzbewertung erhalten wird, die die Invarianz des Merkmalspunkts für jedes Referenzbild angibt, und die Invarianz des Referenzbildes angibt.
- (4) Die Informationsverarbeitungseinrichtung gemäß einem der Punkte (1) bis (3), wobei der Kartengenerator den für die Karte verwendeten Merkmalspunkt basierend auf der Invarianz des Merkmalspunkts extrahiert.
- (5) Die Informationsverarbeitungseinrichtung gemäß einem der Punkte (1) bis (4), die ferner Folgendes aufweist:
- einen Objekterkennungsabschnitt, der einen Erkennungsprozess eines Objekts im Referenzbild durchführt;
- wobei der Invarianzschätzabschnitt die Invarianz des Merkmalspunkts basierend auf einer Art des Objekts schätzt, zu dem der Merkmalspunkt gehört.
- (6) Die Informationsverarbeitungseinrichtung gemäß einem der Punkte (1) bis (5), wobei die Invarianz des Merkmalspunkts einen Grad angibt, mit dem sich der Merkmalspunkt weniger wahrscheinlich gegenüber einem Zeitablauf und/oder einer Umgebungsänderung ändert.
- (7) Die Informationsverarbeitungseinrichtung gemäß einem der Punkte (1) bis (6), wobei die Karte eine Position, eine Merkmalsgröße und die Invarianz des Merkmalspunkts enthält.
- (8) Ein Informationsverarbeitungsverfahren, das Folgendes aufweist:
- Detektieren eines Merkmalspunkts in einem Referenzbild, das zur Selbstpositionsschätzung eines sich bewegenden Körpers verwendet wird;
- Schätzen der Invarianz des Merkmalspunkts; und Erzeugen einer Karte basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts.
- (9) Ein Programm zum Veranlassen, dass ein Computer Folgendes ausführt:
- Detektieren eines Merkmalspunkts in einem Referenzbild, das zur Selbstpositionsschätzung eines sich bewegenden Körpers verwendet wird;
- Schätzen der Invarianz des Merkmalspunkts; und Erzeugen einer Karte basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts.
- (10) Ein sich bewegender Körper, der Folgendes aufweist:
- einen Merkmalspunktdetektor, der einen Merkmalspunkt in einem beobachteten Bild detektiert;
- einen Merkmalspunktkollationierungsabschnitt, der eine Kollationierung zwischen einem Merkmalspunkt in einer Karte, die basierend auf dem Merkmalspunkt und der Invarianz des Merkmalspunkts erzeugt wird, und dem Merkmalspunkt in dem beobachteten Bild durchführt; und
- einen Selbstpositionsschätzabschnitt, der eine Selbstpositionsschätzung basierend auf einem Kollationierungsergebnis zwischen dem Merkmalspunkt in der Karte und dem Merkmalspunkt im beobachteten Bild durchführt.
- (11) Der sich bewegende Körper gemäß dem Punkt (10), wobei der Merkmalspunktkollationierungsabschnitt die Kollationierung zwischen dem Merkmalspunkt in der Karte und dem Merkmalspunkt im beobachteten Bild durchführt, während eine Gewichtung basierend auf der Invarianz des Merkmalspunkts in der Karte durchgeführt wird.
- (12) Der sich bewegende Körper gemäß dem Punkt (10) oder (11), wobei der Merkmalspunktkollationierungsabschnitt die Kollationierung zwischen einem Merkmalspunkt, dessen Invarianz größer oder gleich einer vorbestimmten Schwelle ist, unter mehreren Merkmalspunkten in der Karte und dem Merkmalspunkt im beobachteten Bild durchführt.
- (13) Der sich bewegende Körper gemäß einem der Punkte (10) bis (12), wobei die Invarianz des Merkmalspunkts einen Grad angibt, mit dem sich der Merkmalspunkt weniger wahrscheinlich gegenüber einem Zeitablauf und/oder einer Umgebungsänderung ändert.
-
Es ist zu beachten, dass die in dieser Spezifikation beschriebenen Effekte nur zur Veranschaulichung dienen und nicht beschränkt sind und andere Effekte erzielt werden können.
-
Bezugszeichenliste
-
- 10
- Fahrzeug
- 100
- Fahrzeugsteuersystem
- 132
- Selbstpositionsschätzabschnitt
- 141
- Fahrzeugaußeninformationsdetektor
- 201
- Selbstpositionsschätzsystem
- 211
- Kartenerzeugungsprozessor
- 213
- Selbstpositionsschätzprozessor
- 221
- Bilderfassungsabschnitt
- 224
- Objekterkennungsabschnitt
- 225
- Merkmalspunktdetektor
- 226
- Invarianzschätzabschnitt
- 227
- Kartengenerator
- 241
- Bilderfassungsabschnitt
- 242
- Merkmalspunktdetektor
- 243
- Merkmalspunktkollationierungsabschnitt
- 244
- Selbstpositionsschätzabschnitt
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-