DE112016002022T5 - Managen von merkmalsdaten zur umgebungsabbildung auf einer elektronischen vorrichtung - Google Patents

Managen von merkmalsdaten zur umgebungsabbildung auf einer elektronischen vorrichtung Download PDF

Info

Publication number
DE112016002022T5
DE112016002022T5 DE112016002022.8T DE112016002022T DE112016002022T5 DE 112016002022 T5 DE112016002022 T5 DE 112016002022T5 DE 112016002022 T DE112016002022 T DE 112016002022T DE 112016002022 T5 DE112016002022 T5 DE 112016002022T5
Authority
DE
Germany
Prior art keywords
electronic device
feature
data
features
location data
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.)
Ceased
Application number
DE112016002022.8T
Other languages
English (en)
Inventor
Esha Nerurkar
Joel Hesch
Simon Lynen
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.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE112016002022T5 publication Critical patent/DE112016002022T5/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • 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
    • G06T7/593Depth or shape recovery from multiple images from stereo 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
    • 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/40Extraction of image or video features
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/758Involving statistics of pixels or of feature values, e.g. histogram matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/70Labelling scene content, e.g. deriving syntactic or semantic representations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Library & Information Science (AREA)
  • Optics & Photonics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Generation (AREA)
  • Complex Calculations (AREA)

Abstract

Eine elektronische Vorrichtung [100] reduziert Lokalisierungsdaten [230] basierend auf Merkmalscharakteristiken, die aus den Daten [225] identifiziert sind. Basierend auf den Merkmalscharakteristiken kann ein Qualitätswert jedem identifizierten Merkmal [343] zugeordnet werden, was die Wahrscheinlichkeit anzeigt, dass die mit dem Merkmal assoziierten Daten beim Abbilden bzw. Kartieren einer lokalen Umgebung der elektronischen Vorrichtung nützlich sein werden. Die Lokalisierungsdaten werden durch Entfernen von Daten reduziert, die mit Merkmalen assoziiert sind, die einen niedrigen Qualitätswert haben, und die reduzierten Lokalisierungsdaten werden verwendet, um die lokale Umgebung der Vorrichtung [235] durch Lokalisieren von Merkmalen abzubilden bzw. zu kartieren, die aus den reduzierten Lokalisierungsdaten identifiziert sind, in einem Referenzrahmen für die elektronische Vorrichtung.

Description

  • GEBIET DER OFFENBARUNG
  • Die vorliegende Offenbarung betrifft allgemein eine Aufnahmen- bzw. Bildererfassung und -verarbeitung und insbesondere ein Managen von Standort- bzw. Lokalisierungsdaten bei einer elektronischen Vorrichtung.
  • HINTERGRUND
  • Eine Implementierung einer Maschinenvision bei einer mobilen Vorrichtung kann eine Vielfalt von Anwendungen unterstützen, ermöglicht eine gleichzeitige Lokalisierung und Kartenerstellung (SLAM), was wiederum eine Vielfalt von Anwendungen unterstützen kann, wie beispielsweise Anwendungen einer erweiterten Realität (AR) und Anwendungen einer virtuellen Realität (VR), indem eine Identifizierung von Objekten innerhalb der lokalen Umgebung einer Vorrichtung durch die Analyse einer Aufnahme bzw. von Bildern der lokalen Umgebung, die durch die Vorrichtung erfasst ist bzw. sind ermöglicht wird und durch Korrelieren von Positionsinformation für die mobile Vorrichtung mit den identifizierten Objekten. Um diese Merkmale zu unterstützen, kann die mobile Vorrichtung eine weite Vielfalt von Daten sammeln, einschließlich durch Erfassen von Bildern bei einem oder mehreren Bildsensoren und durch Empfangen von Daten von einer Vielfalt von nichtvisuellen Sensoren (z. B. Akzelerometern und Gyroskopen). Jedoch können die Dichte und Größe der gesammelten Information die Identifizierung von Objekten verlangsamen sowie die Speicherressourcen der mobilen Vorrichtung negativ beeinflussen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Offenbarung kann besser verstanden werden und ihre zahlreichen Merkmale und Vorteile können Fachleuten auf dem Gebiet offensichtlich gemacht werden durch Bezugnahme auf die beigefügten Zeichnungen. Die Verwendung derselben Bezugszeichen in unterschiedlichen Zeichnungen zeigen ähnliche oder identische Elemente an.
  • 1 ist ein Diagramm, das eine elektronische Vorrichtung gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung darstellt, die konfiguriert ist, um Standort- bzw. Lokalisierungsdaten basierend auf Charakteristiken von Merkmalen zu reduzieren, die aus den Daten identifiziert sind.
  • 2 ist ein Diagramm, das gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung einen Teilbereich der elektronischen Vorrichtung der 1 darstellt, der Lokalisierungsdaten basierend auf Charakteristiken von Merkmalen reduziert, die aus den Daten identifiziert sind.
  • 3 ist ein Diagramm des Datenreduzierers der 2 gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung.
  • 4 ist ein Diagramm, das gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung einen Merkmalsdeskriptor darstellt, der durch den Datenreduzierer der 3 verwendet werden kann, um eine Qualität eines assoziierten Merkmals zu identifizieren.
  • 5 ist ein Diagramm, das ein Beispiel einer geografischen Kompression bei dem Datenreduzierer der 3 gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung darstellt.
  • 6 ist ein Blockdiagramm, das ein Verarbeitungssystem einer elektronischen Vorrichtung gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung darstellt.
  • 7 ist ein Ablaufdiagramm, das einen Betrieb einer elektronischen Vorrichtung gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung darstellt, um Lokalisierungsdaten basierend auf einer Merkmalsqualität zu reduzieren.
  • DETAILLIERTE BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
  • Die folgende Beschreibung soll ein vollständiges Verstehen der vorliegenden Offenbarung durch Bereitstellen einer Anzahl spezifischer Ausführungsformen und Details, einschließlich der Bestimmung einer relativen Position oder einer relativen Ausrichtung einer elektronischen Vorrichtung basierend auf einer bildbasierten Identifizierung von Objekten in einer lokalen Umgebung der elektronischen Vorrichtung, vermitteln. Es wird jedoch verstanden, dass die vorliegende Offenbarung nicht auf diese spezifischen Ausführungsformen und Details beschränkt ist, welche nur Beispiele sind, und der Schutzumfang der Offenbarung soll demgemäß nur durch die folgenden Ansprüche und ihre Äquivalente beschränkt sein. Es wird weiterhin verstanden, dass jemand, der durchschnittliches Fachkönnen auf dem Gebiet besitzt, angesichts bekannter Systeme und Verfahren die Verwendung der Offenbarung für ihre beabsichtigten Zwecke und Vorteile in irgendeiner Anzahl von alternativen Ausführungsformen erkennen würde, in Abhängigkeit von spezifischer Ausgestaltung und anderen Notwendigkeiten.
  • Die 17 stellen verschiedene Techniken zum Reduzieren von Lokalisierungsdaten bei einer elektronischen Vorrichtung basierend auf Charakteristiken von Merkmalen dar, die aus den Daten identifiziert sind. Basierend auf den Merkmalscharakteristiken kann jedem identifizierten Merkmal ein Qualitätswert zugeordnet werden, was die Wahrscheinlichkeit anzeigt, dass die mit dem Merkmal assoziierten Daten beim Kartieren einer lokalen Umgebung der elektronischen Vorrichtung nützlich sein werden. Die Lokalisierungsdaten werden durch Entfernen von Daten reduziert, die mit Merkmalen assoziiert sind, die einen niedrigen Qualitätswert haben, und die reduzierten Lokalisierungsdaten werden verwendet, um die lokale Umgebung der elektronischen Vorrichtung durch Lokalisieren von Merkmalen, die aus den reduzierten Lokalisierungsdaten identifiziert sind, in einem Referenzeinzelbild bzw. -rahmen für die elektronische Vorrichtung zu kartieren. Durch Reduzieren der Lokalisierungsdaten auf diese Weise wird die Größe von einer oder mehreren Datendateien reduziert, die die Lokalisierungsdaten speichern, während die Gesamtqualität der Lokalisierungsdaten beibehalten wird. Die reduzierten Lokalisierungsdaten unterstützen daher eine Kartierung bzw. Kartenerstellung hoher Qualität der lokalen Umgebung, während der Einfluss einer Kartierung auf Ressourcen der elektronischen Vorrichtung, einschließlich eines Speicherplatzes und von Verarbeitungsressourcen, reduziert wird.
  • Der Qualitätswert eines Merkmals kann basierend auf irgendeinem einer Vielfalt von Faktoren oder irgendeiner Kombination davon identifiziert werden, einschließlich einer Anzahl von Beobachtungen des Merkmals über unterschiedliche erfasste Bilder, einer Anzahl unterschiedlicher Winkel, unter welchen das Merkmal über unterschiedliche Bilder erfasst wurde, einer Beständigkeit einer Position des Merkmals über unterschiedliche erfasste Bilder, einer dynamischen Charakteristik des Merkmals (die beispielsweise anzeigt, ob das Merkmal häufig verschwindet oder sich aus der Umgebung herausbewegt, die kartiert wird), einer Entfernung des Merkmals von der elektronischen Vorrichtung in einem oder mehreren der erfassten Bilder, und von ähnlichem. Vor oder nach einem Identifizieren und Entfernen von den Lokalisierungsdaten von denjenigen Merkmalen, die mit niedrigen Qualitätswerten assoziiert sind, kann die elektronische Vorrichtung weitere Schritte vornehmen, um die Größe der Lokalisierungsdaten zu reduzieren. Beispiele für solche Schritte enthalten ein Entfernen von nicht-visuellen Sensordaten von den Lokalisierungsdaten, ein Identifizieren von Schlüsselbildern von den Lokalisierungsdaten und ein Entfernen von Daten, die nicht mit den Schlüsselbildern assoziiert sind, ein geometrisches Komprimieren von mehreren Merkmalen in eine kleinere Untergruppe von Merkmalen und ähnliches. Die elektronische Vorrichtung kann dadurch die Größe der Lokalisierungsdaten wesentlich reduzieren, was die Effizienz des durch die Lokalisierungsdaten unterstützten Kartierungsprozesses verbessert.
  • 1 stellt eine elektronische Vorrichtung 100 gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung dar, die konfiguriert ist, um eine lokalisierungsbasierte Funktionalität, wie beispielsweise SLAM, VR oder AR, unter Verwendung von Bild- und nicht-visuellen Sensordaten zu unterstützen. Die elektronische Vorrichtung 100 kann eine vom Anwender tragbare mobile Vorrichtung enthalten, wie beispielsweise einen Tablet-Computer, ein computerfähiges zellulares Telefon (z. B. ein ”Smartphone”), einen Notebook-Computer, einen persönlichen digitalen Assistenten (PDA), eine Spielsystem-Fernbedienung, eine Fernseher-Fernbedienung und ähnliches. Bei anderen Ausführungsformen kann die elektronische Vorrichtung 100 einen weiteren Typ von mobiler Vorrichtung enthalten, wie beispielsweise ein Automobil, eine ferngesteuerte Drohne oder eine andere durch die Luft beförderte Vorrichtung und ähnliches. Der Einfachheit einer Darstellung halber ist die elektronische Vorrichtung 100 allgemein hierin im beispielhaften Zusammenhang mit einer mobilen Vorrichtung beschrieben, wie beispielsweise einem Tablet-Computer oder einem Smartphones; jedoch ist die elektronische Vorrichtung 100 nicht auf diese beispielhaften Implementierungen beschränkt.
  • Beim gezeigten Beispiel enthält die elektronische Vorrichtung 100 ein Gehäuse 102 mit einer Oberfläche 104, die einer weiteren Oberfläche 106 gegenüberliegt. Bei der gezeigten beispielhaften Bauform eines dünnen rechteckförmigen Blocks sind die Oberflächen 104 und 106 im Wesentlichen parallel und enthält das Gehäuse 102 weitere vier Seitenoberflächen (oben, unten, links und rechts) zwischen der Oberfläche 104 und der Oberfläche 106. Das Gehäuse 102 kann in vielen anderen Bauformen implementiert sein und die Oberflächen 104 und 106 können eine nicht parallele Ausrichtung haben. Für die dargestellte Tablet-Implementierung enthält die elektronische Vorrichtung 100 eine auf der Oberfläche 106 angeordnete Anzeige 108 zum Präsentieren visueller Information zu einem Anwender 110. Demgemäß wird der Einfachheit einer Bezugnahme halber als Wiedergabe dieser beispielhaften Ausrichtung der elektronischen Vorrichtung 100 relativ zum Anwender 110 die Oberfläche 106 hierin als die ”nach vorne gerichtete” Oberfläche bezeichnet und wird die Oberfläche 104 hierin als die ”zum Anwender gerichtete” Oberfläche bezeichnet, obwohl die Ausrichtung dieser Oberflächen durch diese bezugsmäßigen Bezeichnungen nicht beschränkt ist.
  • Die elektronische Vorrichtung 100 enthält eine Vielzahl von Sensoren, um Information in Bezug auf eine lokale Umgebung 112 der elektronischen Vorrichtung 100 zu erhalten. Die elektronische Vorrichtung 100 erhält visuelle Information (Bilder bzw. eine Aufnahme) für die lokale Umgebung 112 über Bildgebungssensoren 114 und 116 und einen Tiefensensor 120, die auf der nach vorn gerichteten Oberfläche 106 angeordnet sind, und einen Bildgebungssensor 118, der auf der zum Anwender gerichteten Oberfläche 104 angeordnet ist. Bei einer Ausführungsform ist der Bildgebungssensor 114 als ein Weitwinkel-Bildgebungssensor mit einem Fischaugenobjektiv oder einem anderen Weitwinkelobjektiv implementiert, um eine Ansicht der lokalen Umgebung 112 mit weiterem Winkel zur Verfügung zu stellen, die zur Oberfläche 106 gerichtet ist. Der Bildgebungssensor 116 ist als ein Engwinkel-Bildgebungssensor implementiert, der ein typisches Blickwinkelobjektiv hat, um einen engeren Sichtwinkel der lokalen Umgebung 112 zur Verfügung zu stellen, die zur Oberfläche 106 gerichtet ist. Demgemäß werden der Bildgebungssensor 114 und der Bildgebungssensor 116 hierin jeweils auch als der ”Weitwinkel-Bildgebungssensor 114” und der ”Engwinkel-Bildgebungssensor 116” bezeichnet. Wie es nachstehend detaillierter beschrieben ist, können der Weitwinkel-Bildgebungssensor 114 und der Engwinkel-Bildgebungssensor 116 auf der nach vorne gerichteten Oberfläche 106 so positioniert und ausgerichtet sein, dass sich ihre Blickwinkel beginnend bei einem spezifizierten Abstand von der elektronischen Vorrichtung 100 überlagern, um dadurch über eine Bildanalyse eine Tiefenerfassung von Objekten in der lokalen Umgebung 112 zu ermöglichen, die in der Region von sich überlagernden Blickwinkeln positioniert sind. Der Bildgebungssensor 118 kann verwendet werden, um Bilddaten für die lokale Umgebung 112 zu erfassen, die zur Oberfläche 104 gerichtet ist. Weiterhin ist der Bildgebungssensor 118 bei einigen Ausführungsformen zum Verfolgen der Bewegungen des Kopfs 122 oder zur Gesichtserkennung konfiguriert und stellt somit Kopfverfolgungsinformation zur Verfügung, die verwendet werden kann, um eine Ansichtsperspektive einer Aufnahme einzustellen, die über die Anzeige 108 präsentiert wird.
  • Der Tiefensensor 120 verwendet bei einer Ausführungsform einen Modulationslichtprojektor 119, um modulierte Lichtmuster von der nach vorn gerichteten Oberfläche 106 in die lokale Umgebung zu projizieren, und verwendet einen oder beide der Bildgebungssensoren 114 und 116, um Reflexionen der modulierten Lichtmuster zu erfassen, wenn sie von Objekten in der lokalen Umgebung 112 zurück reflektieren. Diese modulierten Lichtmuster können entweder räumlich modulierte Lichtmuster oder temporär modulierte Lichtmuster sein. Die erfassten Reflexionen der modulierten Lichtmuster werden hierin als ”Tiefenbild” bezeichnet. Der Tiefensensor 120 kann dann die Tiefen der Objekte, das heißt die Abstände der Objekte von der elektronischen Vorrichtung 100, basierend auf der Analyse des Tiefenbilds berechnen. Die resultierenden Tiefendaten, die vom Tiefensensor 120 erhalten sind, können verwendet werden, um Tiefeninformation zu kalibrieren oder auf andere Weise zu erweitern, die aus einer Bildanalyse (z. B. stereoskopischen Analyse) der Bilddaten erhalten ist, die durch die Bildgebungssensoren 114 und 116 erfasst sind. Alternativ können die Tiefendaten vom Tiefensensor 120 anstelle von Tiefeninformation verwendet werden, die aus der Bildanalyse erhalten ist. Um es darzustellen, ist eine Mehrfachansichtsanalyse typischerweise geeigneter für helle Belichtungsbedingungen, und wenn die Objekte relativ entfernt sind, wohingegen ein auf moduliertem Licht basierendes Tiefenerfassen besser geeignet ist für Bedingungen mit weniger Licht oder für den Fall, in welchem wenn die beobachteten Objekte relativ nahe sind (z. B. innerhalb von 4–5 Metern). Somit kann, wenn die elektronische Vorrichtung 100 erfasst, dass sie im Freien ist oder auf andere Weise in relativ guten Belichtungsbedingungen, die elektronische Vorrichtung 100 auswählen, eine Mehrfachansichtsanalyse zu verwenden, um Objekttiefen zu bestimmen. Gegensätzlich dazu kann, wenn die elektronische Vorrichtung 100 erfasst, dass sie drinnen ist oder auf andere Weise in relativ schlechten Belichtungsbedingungen, die elektronische Vorrichtung 100 zu einem Verwenden eines Tiefenerfassens basierend auf moduliertem Licht über den Tiefensensor 120 umschalten.
  • Die elektronische Vorrichtung 100 kann auch auf nicht-visueller Positionsinformation zur Positionserfassung beruhen. Diese nicht-visuelle Positionsinformation kann durch die elektronische Vorrichtung 100 über einen oder mehrere nicht-visuelle Sensoren (in 1 nicht gezeigt) erhalten werden, wie beispielsweise eine IMU, die ein oder mehrere Gyroskope, Magnetometer oder Akzelerometer enthält. Bei wenigstens einer Ausführungsform kann die IMU verwendet werden, um Positionsinformation entlang mehrerer Bewegungsachsen, einschließlich Translationsachsen, ausgedrückt als X-, Y- und Z-Achsen eines Referenzrahmens für die elektronische Vorrichtung 100, und Rotations- bzw. Drehachsen, ausgedrückt als Roll, Nick- und Gierachsen des Referenzrahmens für die elektronische Vorrichtung 100, zu erzeugen. Die nicht-visuellen Sensoren können auch Umgebungslichtsensoren und Lokalisierungssensoren enthalten, wie beispielsweise GPS-Sensoren, oder andere Sensoren, die verwendet werden können, um einen Standort der elektronischen Vorrichtung 100 zu identifizieren, wie beispielsweise eines oder mehreres von drahtlosem Funk, zellularem Funk und ähnliches.
  • In Betrieb verwendet die elektronische Vorrichtung 100 die Bildsensordaten und die nicht-visuellen Sensordaten, um eine Position der elektronischen Vorrichtung 100 zu schätzen. Bei wenigstens einer Ausführungsform bestimmt die elektronische Vorrichtung 100 nach einem Rücksetzen eine Anfangsposition basierend auf Geolokalisierungsdaten, anderen nicht-visuellen Sensordaten, visuellen Sensordaten, wie es nachstehend weiter beschrieben ist, oder einer Kombination davon. Wenn sich die Position der elektronischen Vorrichtung 100 ändert, erzeugen die nicht-visuellen Sensoren mit einer relativ hohen Geschwindigkeit nicht-visuelle Positionsinformation, die die Änderungen bezüglich der Vorrichtungsposition berücksichtigt. Gleichzeitig erfassen die visuellen Sensoren Bilder, die auch Vorrichtungspositionsänderungen berücksichtigen. Basierend auf dieser nicht-visuellen und visuellen Positionsinformation aktualisiert die elektronische Vorrichtung 100 die Anfangsposition, um eine aktuelle Position der Vorrichtung widerzuspiegeln.
  • Die elektronische Vorrichtung 100 erzeugt visuelle Positionsinformation basierend auf der Erfassung von räumlichen Merkmalen in Bilddaten, die durch einen oder mehrere der Bildgebungssensoren 114, 116 und 118 erfasst sind. Um es darzustellen enthält die lokale Umgebung 112 beim gezeigten Beispiel der 1 einen Gang eines Bürogebäudes, der drei Ecken 124, 126 und 128, eine Fußbodenleiste 130 und eine Steckdose 132 enthält. Der Anwender 110 hat die elektronische Vorrichtung 100 so positioniert und ausgerichtet, dass die nach vorn gerichteten Bildgebungssensoren 114 und 116 jeweils Weitwinkel-Bildgebungssensor-Bilddaten 134 und Engwinkel-Bildgebungssensor-Bilddaten 136 erfassen, die diese räumlichen Merkmale des Gangs enthalten. Bei diesem Beispiel erfasst der Tiefensensor 120 auch Tiefendaten 138, die die relativen Abstände von diesen räumlichen Merkmalen relativ zur aktuellen Position der elektronischen Vorrichtung 100 widerspiegeln. Weiterhin erfasst der zum Anwender gerichtete Bildgebungssensor 118 Bilddaten, die Kopfverfolgungsdaten 140 für die aktuelle Position des s 122 des Anwenders 110 darstellen. Nicht-visuelle Sensordaten 142, wie beispielsweise Auslesungen aus der IMU, werden durch die elektronische Vorrichtung 100 bei ihrer aktuellen Position auch gesammelt.
  • Aus diesen Eingangsdaten kann die elektronische Vorrichtung 100 eine Schätzung ihrer relativen Position ohne explizite absolute Lokalisierungsinformation von einer externen Quelle bestimmen. Um es darzustellen kann die elektronische Vorrichtung 100 eine Analyse der Weitwinkel-Bildgebungssensor-Bilddaten 134 und der Engwinkel-Bildgebungssensor-Bilddaten 136 durchführen, um die Abstände zwischen der elektronischen Vorrichtung 100 und den Ecken 124, 126, 128 zu bestimmen. Alternativ können die vom Tiefensensor 120 erhaltenen Tiefendaten 138 verwendet werden, um die Abstände der räumlichen Merkmale zu bestimmen. Aus diesen Abständen kann die elektronische Vorrichtung 100 ihre relative Position im Büro, dargestellt durch die lokale Umgebung 112, triangulieren oder auf andere Weise ableiten. Als ein weiteres Beispiel kann die elektronische Vorrichtung 100 räumliche Merkmale identifizieren, die in einer Gruppe von erfassten Bildern der Bilddaten 134 und 136 vorhanden sind, die anfänglichen Abstände zu diesen räumlichen Merkmalen bestimmen und dann die Änderungen bezüglich einer Position und Abständen von diesen räumlichen Merkmalen in einem darauffolgenden erfassten Bild verfolgen, um die Änderung bezüglich einer Position der elektronischen Vorrichtung 100 in einem freien Referenzrahmen zu bestimmen. Bei diesem Ansatz können bestimmte nicht-visuelle Sensordaten, wie beispielsweise Gyroskopdaten oder Akzelerometerdaten, verwendet werden, um räumliche Merkmale, die in einem Bild beobachtet sind, mit räumlichen Merkmalen, die in einem darauffolgenden Bild beobachtet sind, zu korrelieren.
  • Bei wenigstens einer Ausführungsform verwendet die elektronische Vorrichtung 100 die Bilddaten und die nicht-visuellen Daten, um Merkmalsdeskriptoren für die räumlichen Merkmale zu erzeugen, die im erfassten Bild identifiziert sind. Jeder der erzeugten Merkmalsdeskriptoren beschreibt die Ausrichtung, die Gravitationsrichtung, den Maßstab und andere Aspekte von einem oder mehreren der identifizierten räumlichen Merkmale. Die erzeugten Merkmalsdeskriptoren werden mit einer Gruppe von gespeicherten Deskriptoren (die zu Zwecken einer Beschreibung ”bekannte Merkmalsdeskriptoren” genannt werden) verglichen, die jeweils zuvor identifizierte räumliche Merkmale und ihre entsprechenden Positionen identifiziert. Bei wenigstens einer Ausführungsform ist jeder der bekannten Merkmalsdeskriptoren ein Deskriptor, der zuvor erzeugt worden ist und dessen Position definitiv etabliert ist durch entweder die elektronische Vorrichtung 100 oder eine andere elektronische Vorrichtung. Die bekannten Merkmalsdeskriptoren können bei der elektronischen Vorrichtung 100, bei einem entfernten Server oder einer anderen Speichervorrichtung oder einer Kombination davon gespeichert sein. Demgemäß kann der Vergleich der erzeugten Merkmalsdeskriptoren bei der elektronischen Vorrichtung 100, bei dem entfernten Server oder einer anderen Vorrichtung oder einer Kombination davon durchgeführt werden.
  • Bei wenigstens einer Ausführungsform wird ein erzeugter Merkmalsdeskriptor mit einem bekannten Merkmalsdeskriptor durch Vergleichen von jedem Aspekt des erzeugten Merkmalsdeskriptors (z. B. der Ausrichtung des entsprechenden Merkmals, des Maßstabs des entsprechenden Merkmals, und ähnliches) mit dem entsprechenden Aspekt des bekannten Merkmalsdeskriptors und Bestimmen eines Fehlerwerts, der die Abweichung zwischen den verglichenen Merkmalen anzeigt, verglichen. Somit kann beispielsweise dann, wenn die Ausrichtung eines Merkmals beim erzeugten Merkmalsdeskriptor durch einen Vektor A identifiziert ist und die Ausrichtung des Merkmals beim bekannten Merkmalsdeskriptor durch einen Vektor B identifiziert ist, die elektronische Vorrichtung 100 einen Fehlerwert für den Ausrichtungsaspekt der Merkmalsdeskriptoren durch Berechnen der Differenz zwischen den Vektoren A und B identifizieren. Die Fehlerwerte können gemäß einer spezifizierten statistischen Technik kombiniert werden, wie beispielsweise einer Technik kleinster Fehlerquadrate, um einen kombinierten Fehlerwert für jeden bekannten Merkmalsdeskriptor, der verglichen wird, zu identifizieren, und der passende bekannte Merkmalsdeskriptor identifiziert sich als der bekannte Merkmalsdeskriptor mit dem kleinsten kombinierten Fehlerwert.
  • Jeder der bekannten Merkmalsdeskriptoren enthält ein oder mehrere Felder, die die Position (z. B. die Ausrichtung oder Standpunkt bzw. Perspektive) des entsprechenden räumlichen Merkmals identifizieren. Somit kann ein bekannter Merkmalsdeskriptor Positionsinformation enthalten, die den Standort bzw. die Lokalisierung des räumlichen Merkmals innerhalb eines spezifizierten Koordinatensystems (z. B. eines geografischen Koordinatensystems, das die Erde darstellt) innerhalb einer spezifizierten Auflösung (z. B. 1 cm), die Ausrichtung des Standpunkts bzw. der Perspektive des räumlichen Merkmals, den Abstand des Standpunkts bzw. der Perspektive vom Merkmal und ähnliches anzeigt. Die erzeugten Merkmalsdeskriptoren werden mit den bekannten Merkmalsdeskriptoren verglichen, um einen oder mehrere passende bekannte Merkmalsdeskriptoren zu identifizieren. Die passenden bekannten Merkmalsdeskriptoren werden dann zusammen mit nicht-visuellen Positionsdaten als Lokalisierungsdaten gespeichert, die verwendet werden können, um sowohl eine Position der elektronischen Vorrichtung 100 zu identifizieren als auch eine lokale Umgebung für die elektronische Vorrichtung 100 zu kartieren.
  • In einigen Szenarien wird der Anpassungsprozess mehrere bekannte Merkmalsdeskriptoren identifizieren, die mit entsprechenden erzeugten Merkmalsdeskriptoren übereinstimmen bzw. zu diesen passen, um somit anzuzeigen, dass es mehrere Merkmale in der lokalen Umgebung der elektronischen Vorrichtung 100 gibt, die zuvor identifiziert worden sind. Die entsprechenden Positionen der passenden bekannten Merkmalsdeskriptoren können variieren, was anzeigt, dass die elektronische Vorrichtung 100 nicht bei einer bestimmten der Positionen ist, die durch die passenden bekannten Merkmalsdeskriptoren angezeigt sind. Demgemäß kann die elektronische Vorrichtung 100 ihre geschätzte Position durch Interpolieren ihrer Position zwischen den Positionen, die durch die passenden bekannten Merkmalsdeskriptoren angezeigt sind, unter Verwendung von herkömmlichen Interpolationstechniken verfeinern.
  • Bei wenigstens einer Ausführungsform reduziert die elektronische Vorrichtung 100 die Lokalisierungsdaten basierend auf der Qualität von identifizierten Merkmalen, die in den Daten widergespiegelt sind. Wie es hierin weiter beschrieben ist, kann die elektronische Vorrichtung 100 einen Qualitätswert für jedes identifizierte Merkmal basierend auf einer Vielfalt von Faktoren erzeugen, einschließlich einer Anzahl von Beobachtungen des Merkmals über Bilder, einer Konstanz der Merkmalsposition in unterschiedlichen Bildern, eines Abstands des Merkmals von der elektronischen Vorrichtung 100, wenn eines oder mehrere der assoziierten Bilder erfasst wurden, und von ähnlichem oder einer Kombination davon. Die elektronische Vorrichtung 100 identifiziert auch eine Qualitätswertschwelle (QVT). Bei wenigstens einer Ausführungsform ist die QVT ein fester gespeicherter Wert, der durch einen Anwender, einem Entwickler oder einem Hersteller der elektronischen Vorrichtung 100 zugeführt ist. Bei einer weiteren Ausführungsform ist die QVT aus einer Kombination der erzeugten Qualitätswerte für die Merkmale abgeleitet. Beispielsweise kann die QVT ein Durchschnitt der Qualitätswerte sein, ein Halbwert bzw. mittlerer Wert der Qualitätswerte oder ein Wert basierend auf einer Anzahl von Qualitätswerten, die die QVT übersteigen. Die elektronische Vorrichtung 100 reduziert die Lokalisierungsdaten durch Entfernen von Daten, die mit Merkmalen assoziiert sind, die einen Qualitätswert unter der QVT haben. Dies stellt sicher, dass diejenigen Merkmale mit höherer Qualität oder diejenigen Merkmale, für die es wahrscheinlicher ist, eine effektive und genaue Kartierung der lokalen Umgebung zu unterstützen, bewahrt werden, während die Größe der Lokalisierungsdaten reduziert wird.
  • Zusätzlich zu einem Reduzieren der Lokalisierungsdaten basierend auf Merkmalscharakteristiken und assoziierten Qualitätswerten kann die elektronische Vorrichtung 100 die Lokalisierungsdaten durch beispielsweise ein Entfernen von den Lokalisierungsdaten von irgendwelcher nicht-visueller Sensorinformation, wie beispielsweise von Information, für die es nicht wahrscheinlich ist, eine Kartierung der lokalen Umgebung zu unterstützen, reduzieren. Zusätzlich kann die elektronische Vorrichtung 100 die Lokalisierungsdaten durch Identifizieren von Schlüsselbildern und Entfernen von Daten, die mit Rahmen bzw. Einzelbildern assoziiert sind, die andere als die Schlüsselbilder sind, reduzieren. Beispielsweise kann die elektronische Vorrichtung 100 ausgewählte erfasste Bilder als Schlüsselbilder identifizieren, wobei die Schlüsselbilder basierend auf einer identifizierten Qualität des Bilds, einer Anzahl von Merkmalen, die aus dem Bild identifiziert sind, einer Zeit, zu welcher das Bild aufgenommen wurde, gemessener Belichtungsbedingungen, unter welchen das Bild aufgenommen wurde, und ähnlichem ausgewählt werden. Die elektronische Vorrichtung 100 kann dann diese Merkmale identifizieren, und assoziierte Merkmalsdeskriptoren, die aus Bildern identifiziert wurden, die keine Schlüsselbilder sind, und Daten (einschließlich Merkmalsdeskriptoren) entsprechend den identifizierten Merkmalen entfernen.
  • Weiterhin kann die elektronische Vorrichtung 100 bei wenigstens einer Ausführungsform die Lokalisierungsdaten durch geometrisches Komprimieren von Daten eher für eine Gruppe von Merkmalen, die mit einzelnen Punkten einer geometrischen Form assoziiert sind, in eine kleinere Untergruppe von Deskriptoren, die die geometrische Form identifizieren, als alle der einzelnen Punkte reduzieren. Beispielsweise kann die elektronische Vorrichtung 100 eine Gruppe von Merkmalsdeskriptoren identifizieren, die jeweils unterschiedliche Punkte bzw. Stellen in einer gemeinsamen ebenen Oberfläche (z. B. einer Tischoberfläche) darstellen, und kann die Gruppe von Merkmalsdeskriptoren zu einem einzigen Merkmalsdeskriptor komprimieren, der die Grenzen der ebenen Oberfläche identifiziert, um dadurch dasselbe Merkmal der Umgebung mit weniger Daten darzustellen.
  • Nach einem Reduzieren der Lokalisierungsdaten kann die elektronische Vorrichtung 100 die Lokalisierungsdaten verwenden, um die lokale Umgebung zu kartieren bzw. abzubilden. Beispielsweise kann die elektronische Vorrichtung 100 die Lokalisierungsdaten verwenden, um eine Kartierungsdatei zu erzeugen, die die Position von jedem Merkmal anzeigt, das in den Lokalisierungsdaten in einem Referenzrahmen für die elektronische Vorrichtung 100 enthalten ist. Die Kartierungs- bzw. Abbildungsdatei kann verwendet werden, um irgendeinen einer Vielfalt von lokalisierungsbasierten Diensten zu unterstützen. Beispielsweise kann die Kartierungsdatei bei einer Ausführungsform verwendet werden, um eine Umgebung einer virtuellen Realität zu erzeugen, oder einen Teilbereich davon, der die lokale Umgebung die der elektronischen Vorrichtung 100 darstellt.
  • 2 ist ein Blockdiagramm eines Teilbereiches der elektronischen Vorrichtung 100, die gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung Lokalisierungsdaten basierend auf Charakteristiken von Merkmalen reduziert, die aus den Daten identifiziert sind. Der dargestellte Teilbereich enthält ein Merkmals-Identifizierungsmodul 225, einen Datenreduzierer 232 und einen Umgebungskartierer bzw. -abbilder 235. Jedes dieser Module stellt Hardware, Software oder eine Kombination davon dar, die konfiguriert ist, um die Operationen auszuführen, wie sie hierin beschrieben sind. Insbesondere ist das Merkmals-Identifizierungsmodul 225 konfiguriert, um Bilder bzw. eine Aufnahme 220, die Bilder darstellen bzw. darstellt, die durch die Bildgebungssensoren 114, 116, 118 erfasst sind, und die nicht-visuellen Sensordaten 142 zu empfangen. Basierend auf diesen empfangenen Daten identifiziert das Merkmals-Identifizierungsmodul 225 Merkmale in der Aufnahme 220 durch Erzeugen von Merkmalsdeskriptoren und Vergleichen der Merkmalsdeskriptoren mit bekannten Merkmalsdeskriptoren, wie es oben unter Bezugnahme auf 1 beschrieben ist. Das Merkmals-Identifizierungsmodul speichert die Merkmalsdeskriptoren zusammen mit irgendwelchen assoziierten nicht-visuellen Daten als Lokalisierungsdaten 230. Bei wenigstens einer Ausführungsform können die Lokalisierungsdaten 230 durch die elektronische Vorrichtung 100 verwendet werden, um eine oder mehrere Positionen der elektronischen Vorrichtung 100 zu identifizieren, wenn sie durch unterschiedliche Lokalisierungen und Ausrichtungen in ihrer lokalen Umgebung bewegt wird. Diese identifizierten Positionen können in Verbindung mit zuvor erzeugter und gespeicherter Abbildungs- bzw. Kartierungsinformation für die lokale Umgebung verwendet werden, um lokalisierungsbasierte Dienste der elektronischen Vorrichtung 100 zu unterstützen oder zu verbessern.
  • Der Datenreduzierer 232 ist konfiguriert, um die Lokalisierungsdaten 230 basierend auf Charakteristiken der hierin enthaltenen Merkmale zu reduzieren. Bei wenigstens einer Ausführungsform reduziert der Datenreduzierer 232 die Daten durch Identifizieren eines Qualitätswerts für jedes Merkmal basierend auf einer oder mehreren Charakteristiken des Merkmals, das in den entsprechenden Merkmalsdeskriptor angezeigt ist, wie es nachstehend in Bezug auf 4 weiter beschrieben wird. Der Datenreduzierer 232 identifiziert dann eine QVT für die Merkmale und entfernt von den Lokalisierungsdaten 230 die Merkmalsdeskriptoren für Merkmale mit Qualitätswerten, die niedriger als die QVT sind. Der Datenreduzierer 232 reduziert dann die Lokalisierungsdaten 230 weiter durch Entfernern von nicht-visuellen Sensordaten und durch Durchführen einer geometrischen Kompression für die übrigen Merkmalsdeskriptoren. Der Datenreduzierer 232 liefert die reduzierten Lokalisierungsdaten zum Umgebungskartierer bzw. -abbilder 235.
  • Der Umgebungsabbilder 235 ist konfiguriert, um eine Abbildung bzw. Karte der lokalen Umgebung der elektronischen Vorrichtung 100 basierend auf den reduzierenden Lokalisierungsdaten zu erzeugen. Das heißt, dass der Umgebungsabbilder 235 die Merkmalsdeskriptoren in den reduzierten Lokalisierungsdaten analysiert, um die Lokalisierung der Merkmale in einem Referenzrahmen für die elektronische Vorrichtung 100 zu identifizieren. Beispielsweise kann jeder Merkmalsdeskriptor Lokalisierungsdaten enthalten, die eine relative Position des entsprechenden Merkmals von der elektronischen Vorrichtung 100 anzeigen. Der Umgebungsabbilder 235 kann die relativen Positionen der unterschiedlichen Merkmale abgleichen bzw. abstimmen, um die Lokalisierung von jedem Merkmal im Referenzrahmen zu identifizieren, und diese Lokalisierungen in einer oder mehreren Kartierungs- bzw. Abbildungsdateien speichern. Die Abbildungsdateien können durch lokalisierungsbasierte Dienste der elektronischen Vorrichtung 100 verwendet werden, um beispielsweise eine Anzeige einer virtuellen Realität der lokalen Umgebung zu erzeugen.
  • 3 ist ein Blockdiagramm des Datenreduzierers 232 der 2 gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung. Beim darstellten Beispiel enthält der Datenreduzierer 232 ein nicht-visuelles Datenfilter 340, einen Schlüsselbildidentifizierer 342, ein Merkmalsqualitäts-Analysemodul (FQM) 343 und ein Modul für eine geometrische Kompression 344. Das nicht-visuelle Datenfilter 340 ist allgemein konfiguriert, um die Lokalisierungsdaten 230 zu identifizieren und etwas von diesen zu entfernen. Beispielsweise identifiziert bei wenigstens einer Ausführungsform das nicht-visuelle Datenfilter nicht-visuelle Daten bei den Lokalisierungsdaten 230 basierend auf einem Datenidentifiziererwert, basierend auf dem Format der nicht-visuellen Daten, basierend darauf, wo die nicht-visuellen Daten gespeichert sind, oder einem anderen Indikator oder einer Kombination davon, und entfernt dann (z. B. löscht) die identifizierten nicht-visuellen Daten von den Lokalisierungsdaten 230.
  • Nachdem die nicht-visuellen Daten gefiltert worden sind, identifiziert der Schlüsselbildidentifizierer 342 ein Schlüsselbild der Lokalisierungsdaten 230. Beispielsweise kann jeder Merkmalsdeskriptor der Lokalisierungsdaten Information enthalten, die ein oder mehrere Bilder identifiziert, wo das Merkmal identifiziert wurde. Die Lokalisierungsdaten 230 können auch Information enthalten, die die Qualität von jedem der Bilder anzeigt, wie beispielsweise Belichtungsbedingungen. Basierend auf dieser Information kann der Schlüsselbildidentifizierer 342 ausgewählte Bilder als Schlüsselbilder identifizieren, um zur Kartierung bzw. Abbildung der Umgebung verwendet zu werden. Beispielsweise identifiziert der Schlüsselbildidentifizierer 342 bei wenigstens einer Ausführungsform als Schlüsselbilder diejenigen Bilder, die mit einer größeren als einer Schwellenanzahl von Merkmalen assoziiert sind. Nach einem Identifizieren der Schlüsselbilder kann der Schlüsselbildidentifizierer 342 irgendwelche Merkmalsdeskriptoren und assoziierte Daten für Merkmale, die nicht irgendeinem Schlüsselbild entsprechen, von den Lokalisierungsdaten 230 entfernen, um dadurch die Lokalisierungsdaten 230 zu reduzieren.
  • Das FQM 343 analysiert die übrigen Merkmalsdeskriptoren, um einen Qualitätswert für jedes Merkmal basierend auf den Merkmalscharakteristiken zu identifizieren, die im Deskriptor angezeigt sind. Um es darzustellen zeigt der Merkmalsdeskriptor bei wenigstens einer Ausführungsform eine Anzahl von Merkmalscharakteristiken an, wie beispielsweise eine Anzahl von Beobachtungen des Merkmals in unterschiedlichen Bildern, eine Variabilität einer Lokalisierung des Merkmals in unterschiedlichen Bildern, einen dynamischen Wert für das Merkmal und ähnliches. Das FQM 343 kann den Qualitätswert durch beispielsweise Addieren der Werte für jede Charakteristik erzeugen, wobei der Qualitätswert gleich der Summe von allen Charakteristiken ist. Bei wenigstens einer Ausführungsform ist der Qualitätswert eine gewichtete Summe der Werte für die unterschiedlichen Charakteristiken, wobei die Gewichtungen für jede Charakteristik durch das FQM 343 dynamisch oder heuristisch identifiziert werden. Es wird erkannt werden, dass diese Arten zum Identifizieren des Qualitätswerts nur Beispiele sind und dass andere Charakteristiken und Formeln verwendet werden können, um einen Qualitätswert für jedes Merkmal zu identifizieren.
  • Das FQM 343 identifiziert eine QVT für die Lokalisierungsdaten 230 basierend auf einer festen Schwelle, einer Schwelle, die durch den Anwender der elektronischen Vorrichtung 100 eingestellt ist, um eine erwünschte Leistungsfähigkeit zu erreichen, einer dynamischen Schwelle, die von den Lokalisierungsdaten 230 selbst identifiziert ist, und ähnliches. Das FQM 343 vergleicht den Qualitätswert für jedes Merkmal mit der QVT und entfernt von den Lokalisierungsdaten 230 diese Merkmalsdeskriptoren mit einem Qualitätswert unter der QVT.
  • Das Modul für geometrische Kompression 344 analysiert die übrigen Deskriptoren der Lokalisierungsdaten 230, um Gruppen von einzelnen Merkmalen zu identifizieren, die mit derselben geometrischen Form assoziiert sind, wie beispielsweise einer Linie, einer ebenen Oberfläche, einem Polygon, einer dreidimensionalen Form und ähnlichem. Wie es nachstehend unter Bezugnahme auf das Beispiel der 5 beschrieben wird, ersetzt das Modul für geometrische Kompression 344 die Merkmalsdeskriptoren für die einzelnen Merkmale mit einer geringeren Anzahl von Deskriptoren (z. B. einem Merkmalsdeskriptor), die die geometrische Form beschreiben. Dies reduziert die Anzahl von Deskriptoren, die durch die Lokalisierungsdaten 230 gespeichert sind, was somit die Daten weiter reduziert, um sie zur Analyse durch den Umgebungsabbilder 235 vorzubereiten.
  • 4 stellt einen Merkmalsdeskriptor 450 dar, der bei den Lokalisierungsdaten 230 gespeichert sein kann. Der Merkmalsdeskriptor 450 enthält Felder 451458, wobei jedes Feld eine Merkmalscharakteristik für das entsprechende Merkmal anzeigt. Diese Merkmalscharakteristiken können durch das FQM 343 verwendet werden, um einen Qualitätswert für das entsprechende Merkmal zu identifizieren. Um es darzustellen zeigt das Merkmalsnamensfeld 451 einen Namen oder einen anderen Identifizierer für das Merkmal an, der verwendet werden kann, um es von anderen Merkmalen zu unterscheiden. Das Merkmalstypenfeld 452 zeigt einen Typ des Merkmals an, wie beispielsweise einen Typ einer Geometrie für das Objekt. Somit könnte das Merkmalstypenfeld 452 anzeigen, dass das entsprechende Merkmal ein Punkt, eine Ecke, eine ebene Oberfläche, ein Polygon und ähnliches ist.
  • Das Merkmalslokalisierungsfeld 453 zeigt Positionsdaten für das entsprechende Merkmal an, wie beispielsweise Koordinatendaten, die die Lokalisierung des Merkmals in einem Referenzrahmen relativ zu einer Position der elektronischen Vorrichtung 100 anzeigen. Bei wenigstens einer Ausführungsform kann das FQM 343 die Information im Merkmalslokalisierungsfeld 453 verwenden, um den Qualitätswert für das Merkmal zu modifizieren. Beispielsweise kann die elektronische Vorrichtung 100 in einigen Szenarien bestimmen, dass Merkmale bei bestimmten Lokalisierungen oder Bereichen von Lokalisierungen, wie beispielsweise nahe den Rändern eines Blickfelds der elektronischen Vorrichtung 100, wahrscheinlich weniger zuverlässig identifiziert werden. Demgemäß kann das FWM 343 den Qualitätswert für Merkmale bei solchen Lokalisierungen oder innerhalb von solchen Lokalisierungsbereichen erniedrigen.
  • Das Feld 454 für eine Anzahl von Merkmalsbeobachtungen zeigt eine Anzahl von unterschiedlichen Bildern an, aus welchen das Merkmal identifiziert wurde. Beispielsweise kann die elektronische Vorrichtung 100 mehrere Bilder eines gegebenen Merkmals erfassen, wenn die Vorrichtung durch unterschiedliche Positionen bewegt wird. Wenn das Merkmalsidentifizierungsmodul 225 (2) den Merkmalsdeskriptor für das Merkmal erzeugt, kann es die Anzahl von unterschiedlichen Bildern identifizieren, die das Merkmal enthalten, und die Anzahl von unterschiedlichen Winkeln, unter welchen die Bilder des Merkmals aufgenommen wurden. Bei wenigstens einer Ausführungsform erhöht eine höhere Anzahl von Bildern oder eine höhere Anzahl von unterschiedlichen Winkeln, unter welchen ein Merkmal beobachtet wurde, die Wahrscheinlichkeit, dass das Merkmal durch das Merkmalsidentifizierungsmodul 225 richtig identifiziert wurde. Demgemäß erhöht das FQM 343, wenn sich der Wert der Felder 454 für die Anzahl von Merkmalsbeobachtungen erhöht, den Qualitätswert für das entsprechende Merkmal.
  • Das Merkmalsentfernungs-Feld 455 zeigt eine Entfernung des entsprechenden Merkmals von der elektronischen Vorrichtung 100 an, wenn das Merkmal in einem oder mehreren Bildern erfasst wurde. Wenn das Merkmal in mehreren Bildern erfasst wurde, kann das Merkmalentfernungs-Feld 455 einen Durchschnitt der entsprechenden Entfernungen, ein Maximum der entsprechenden Entfernungen, ein Minimum der entsprechenden Entfernungen oder eine andere Auswahl oder Kombination der entsprechenden Entfernungen sein. In einigen Szenarien entspricht eine größere Entfernung zu einem Merkmal einer weniger zuverlässigen Identifizierung des Merkmals. Demgemäß erhöht das FQM 343 für größere Werte des Merkmalsentfernungs-Felds 455 den Qualitätswert für das entsprechende Merkmal.
  • Das Merkmalslokalisierungsvariabilitäts-Feld 456 speichert einen Wert, der ein Ausmaß an Variabilität bezüglich der Lokalisierung des entsprechenden Merkmals über unterschiedliche Bilder anzeigt, aus welchen das Merkmal identifiziert wurde. Beispielsweise kann die elektronische Vorrichtung 100 mehrere Bilder eines gegebenen Merkmals erfassen, wenn die Vorrichtung durch unterschiedliche Positionen bewegt wird. Wenn das Merkmalsidentifizierungsmodul 225 (2) den Merkmalsdeskriptor für das Merkmal erzeugt, kann es für jedes Bild eine Position des Merkmals in einem Referenzrahmen identifizieren und dann eine Variabilität zwischen den identifizierten Positionen identifizieren. Beispielsweise kann die Variabilität durch Identifizieren einer Standardabweichung der identifizierten Positionen angezeigt werden. Bei wenigstens einer Ausführungsform ist es, umso höher die Variabilität ist, umso weniger wahrscheinlich, dass der Merkmalsdeskriptor die Charakteristiken des entsprechenden Merkmals richtig identifiziert. Demgemäß erniedrigt das FQM 343, wenn der Wert des Merkmalslokalisierungsvariabilitäts-Felds 456 sich erhöht, den Qualitätswert für das entsprechende Merkmal.
  • Das Merkmalsdynamikbewertungs-Feld 457 zeigt eine dynamische Charakteristik des entsprechenden Merkmals an. Die dynamische Charakteristik ist ein Anzeichen dafür, für wie lange es erwartet wird, dass das Merkmal bei einer gegebenen Lokalisierung relativ zur elektronischen Vorrichtung 100 bleibt. Ein höherer Wert des Merkmalsdynamikbewertungs-Felds 457 zeigt an, dass das entsprechende Merkmal stark dynamisch ist und es daher hoch wahrscheinlich ist, dass es Positionen ändert. Beispiele für stark dynamische Merkmale können Merkmale enthalten, die Leuten entsprechenden oder mit diesen assoziiert sind, Tieren, sich bewegenden Fahrzeugen und ähnlichem. Bei wenigstens einer Ausführungsform kann die elektronische Vorrichtung 100 die dynamische Bewertung für ein Merkmal basierend auf einer Anzahl von Faktoren identifizieren, einschließlich eines Identifizierens von Änderungen bezüglich einer Position des Merkmals über Bilder, einer Information, die in einem bekannten Merkmalsdeskriptor für das Merkmal zur Verfügung gestellt ist, und ähnliches. Bei wenigstens einer Ausführungsform ist es, umso höher der Wert des Merkmalsdynamikbewertungs-Felds ist, umso weniger wahrscheinlich, dass der Merkmalsdeskriptor beim Abbilden der lokalen Umgebung nützlich sein wird, und zwar aufgrund der höheren Wahrscheinlichkeit, dass das Merkmal eine geänderte Position haben wird oder sogar die lokale Umgebung verließ, wenn die Abbildung der lokalen Umgebung erzeugt wird. Demgemäß erniedrigt das FQM 343, wenn der Wert des Merkmalslokalisierungsvariabilitäts-Felds 456 sich erhöht, den Qualitätswert für das entsprechende Merkmal.
  • Das Merkmalsszenenvariabilitäts-Feld 458 zeigt eine Variabilität von Merkmalen an, die in demselben Bild wie das Merkmal entsprechend dem Merkmalsdeskriptor 450 identifiziert sind. Bei wenigstens einer Ausführungsform kann die elektronische Vorrichtung 100 die Szenenvariabilität durch Identifizieren der Anzahl von unterschiedlichen Merkmalen identifizieren, die aus jedem erfassten Bild identifiziert sind, und durch Bestimmen einer Variation bezüglich dieser Anzahl für die Bilder, in welchen ein gegebenes Merkmal identifiziert ist. Bei wenigstens einer Ausführungsform ist es, umso höher der Wert des Szenenvartabilitäts-Felds 458 ist, umso weniger wahrscheinlich, dass der Merkmalsdeskriptor beim Abbilden der lokalen Umgebung nützlich sein wird, und zwar aufgrund der höheren Wahrscheinlichkeit, dass das Merkmal Teil einer sich schnell änderndem Umgebung ist. Demgemäß erniedrigt das FQM 343, wenn sich der Wert des Merkmalslokalisierungsvariabilitäts-Felds 456 erhöht, den Qualitätswert für das entsprechende Merkmal.
  • 5 ist ein Diagramm, das einen beispielhaften Betrieb des geometrischen Kompressionsmoduls 344 der 3 gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung darstellt. Beim gezeigten Beispiel liegen Merkmale 501, 502, 503, 504 und 506 entlang derselben Linie in einer lokalen Umgebung der elektronischen Vorrichtung 100. Somit können beispielsweise die Merkmale 501506 gemeinsam den Rand eines Tischs, einer Tür oder eines anderen Objekts in der lokalen Umgebung darstellen. Wenn die elektronische Vorrichtung 100 durch und um die lokale Umgebung bewegt wird, erfasst sie ein Bild einschließlich der Merkmale 501506. Basierend auf diesem Bild erzeugt das Merkmalsidentifizierungsmodul 225 Merkmalsdeskriptoren 511, 512, 513, 514 und 516, die jeweils ein anderes entsprechendes Merkmal beschreiben (d. h. der Deskriptor 511 beschreibt das Merkmal 501, der Deskriptor 512 beschreibt das Merkmal 502 und so weiter). Beim gezeigten Beispiel enthält jeder Merkmalsdeskriptoren 501506 die Koordinaten des entsprechenden Merkmals in einem Referenzrahmen der elektronischen Vorrichtung 100. Das Modul für geometrische Kompression 344 analysiert die Merkmalsdeskriptoren 501506, wie sie in den Lokalisierungsdaten 230 gespeichert sind, und bestimmt basierend auf den Koordinaten von jedem Merkmal und der Anzeige, dass jedes der Merkmale ein Punktmerkmal ist, dass die Merkmalsdeskriptoren 501506 eine Gruppe von Punkten entlang einer Linie darstellen. In Reaktion darauf ersetzt das Modul für geometrische Kompression 344 die Merkmalsdeskriptoren 501506 mit einem Merkmalsdeskriptor 520, der eine Linie mit Endpunkten entsprechend den Merkmalen 501 und 506 beschreibt. Das Modul für geometrische Kompression 344 ersetzt somit mehrere Merkmalsdeskriptoren, die gemeinsam unterschiedliche Aspekte einer geometrischen Form beschreiben, mit einem einzigen Merkmalsdeskriptor für die geometrische Form. Bei wenigstens einer Ausführungsform ist der einzige Merkmalsdeskriptor unter dem Gesichtspunkt einer Speicherung kleiner als die mehreren Merkmalsdeskriptoren zusammen. Somit besetzt der Merkmalsdeskriptor 520 weniger Speicherplatz als die Merkmalsdeskriptoren 501506 zusammen. Demgemäß reduziert das Modul für geometrische Kompression durch Ersetzen der Merkmalsdeskriptoren 501506 mit dem Merkmalsdeskriptor 520 die Lokalisierungsdaten 230. Es wird erkannt werden, dass 5 nur ein Beispiel einer geometrischen Kompression zeigt und dass bei einigen Ausführungsformen das Modul für geometrische Kompression Merkmalsdeskriptoren für komplexere Formen identifizieren und komprimieren kann, einschließlich Polygonen und 3-dimensionalen Formen.
  • 6 stellt gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung ein beispielhaftes Verarbeitungssystem 600 dar, das durch die elektronische Vorrichtung 100 implementiert ist. Das Verarbeitungssystem 600 enthält den Weitwinkel-Bildgebungssensor 114, den Engwinkel-Bildgebungssensor 116, den zum Anwender gerichteten Bildgebungssensor 118 und den Tiefensensor 120. Das Verarbeitungssystem 600 enthält weiterhin einen 2D-Prozessor 602, einen Anwendungsprozessor 604, eine Anzeigesteuerung 606, eine Gruppe 610 von nicht-visuellen Sensoren und eine Anwenderschnittstelle 612.
  • Die Anwenderschnittstelle 612 enthält eine oder mehrere Komponenten, die durch den Anwender betätigt werden, um eine Anwendereingabe zur elektronischen Vorrichtung 100 zu liefern, wie beispielsweise einen Berührungsbildschirm 614, eine Maus, eine Tastatur, ein Mikrophon 616, verschiedene Tasten oder Schalter und verschiedene haptische Aktuatoren 618. Die Gruppe 610 von nicht-visuellen Sensoren kann irgendwelche einer Vielfalt von Sensoren enthalten, die verwendet werden, um einen nicht-visuellen Kontext oder Zustand der elektronischen Vorrichtung 100 zu liefern. Beispiele für solche Sensoren enthalten eine IMU 621, einschließlich eines Gyroskops 620, eines Magnetometers 622 und eines Akzelerometers 624 und eines Umgebungslichtsensors 626. Die nicht-visuellen Sensoren können weiterhin verschiedene drahtlose empfangs- oder sendungsbasierte Sensoren enthalten, wie beispielsweise einen GPS-Empfänger 628, eine Schnittstelle 630 eines drahtlosen lokalen Netzes (WLAN), eine zellulare Schnittstelle 632, eine Schnittstelle 634 für drahtloses Peer-zu-Peer (P2P) und eine Schnittstelle 636 für Nahfeldkommunikationen (NFC).
  • Die elektronische Vorrichtung 100 hat weiterhin einen Zugriff auf verschiedene Datenspeicher, die Information oder Metadaten speichern, die in Verbindung mit ihren Bildverarbeitungs-, Lokalisierungsabbildungs- und Lokalisierungsverwendungsprozessen verwendet werden. Diese Datenspeicher können einen 2D-Merkmals-Datenspeicher 638 enthalten, um Metadaten für 2D-Raummerkmale zu speichern, die aus einem Bild identifiziert sind, das durch die Bildgebungssensoren der elektronischen Vorrichtung 100 erfasst sind, und einen 3D-Raummerkmals-Datenspeicher 640, um Metadaten für 3D-Merkmale zu speichern, die aus einer Tiefenerfassung für die 2D-Raummerkmale unter Verwendung einer Analyse oder eines Tiefenerfassens basierend auf moduliertem Licht identifiziert sind. Die für die 2D- und 3D-Merkmale gespeicherten Metadaten können beispielsweise Zeitstempel zu Synchronisierungszwecken, Bildidentifizierer der Bilder, in welchen die räumlichen Merkmale identifiziert wurden, Identifizierer der verwendeten Erfassungsvorrichtung, Kalibrierungsinformation und ähnliches enthalten. Die Metadaten können weiterhin nicht-visuelle Sensordaten enthalten, die zeitgleich mit dem Bild waren, das das identifizierte räumliche Merkmal enthält, wie beispielsweise GPS, Wi-Fi oder andere Funkinformation, Tageszeitinformation, Wetterbedingungsinformation (welches die Beleuchtung bzw. Belichtung beeinflusst), und ähnliches. Die Datenspeicher können weiterhin einen SLAM/AR-Datenspeicher 642 enthalten, der SLAM-basierte Information speichert, wie beispielsweise Abbildungsinformation für Gebiete der lokalen Umgebung 112 (1), die bereits durch die elektronische Vorrichtung 100 erforscht sind, oder AR-Information, wie beispielsweise CAD-basierte Darstellungen der relativen Lokalisierungen von Objekten von Interesse in der lokalen Umgebung 112. Die Datenspeicher 638 und 640 können auch bekannte Merkmalsdeskriptoren und Merkmalsdeskriptoren, die basierend auf einem bei der elektronischen Vorrichtung 100 erfassten Bild erzeugt sind, speichern. Die Datenspeicher können lokal zu der elektronischen Vorrichtung 100 sein, wie beispielsweise auf einer Festplatte, einem Festkörperspeicher oder einem entfernbaren Speichermedium (nicht gezeigt), die Datenspeicher können entfernt angeordnet sein und über beispielsweise eine oder mehrere der drahtlosen Schnittstellen der elektronischen Vorrichtung 100 zugreifbar sein oder die Datenspeicher können als eine Kombination aus lokalem und entferntem Datenspeicher implementiert sein.
  • Bei der gezeigten Implementierung verwendet das Verarbeitungssystem 600 zwei Prozessoren: den 2D-Prozessor 602, der konfiguriert ist, um 2D-Raummerkmale aus der Aufnahme in visuellem Licht und eine Tiefensensoraufnahme, die durch die Bildgebungssensoren der elektronischen Vorrichtung 100 erfasst sind, effizient zu identifizieren; und den Anwendungsprozessor 604, der konfiguriert ist, um 3D-Raummerkmale aus den 2D-Raummerkmalen effizient zu identifizieren und um lokalisierungsbasierte Funktionalität effizient zu liefern, wie beispielsweise eine visuelle Odometrie bzw. Wegmessung oder eine andere SLAM-Funktionalität, eine AR-Funktionalität und ähnliches. Jedoch kann bei anderen Ausführungsformen die beschriebene Funktionalität des 2D-Prozessors 602 und des Anwendungsprozessors 604 in einem einzigen Prozessor implementiert sein, oder mehr als zwei Prozessoren zusammen können die beschriebene Funktionalität implementieren. Der 2D-Prozessor 602 kann beispielsweise als Einzelkern- oder Mehrfachkern-Grafikverarbeitungseinheit (GPU) implementiert sein und der Anwendungsprozessor 604 kann als beispielsweise eine GPU oder eine Einzelkern- oder Mehrfachkern-Zentralverarbeitungseinheit (CPU) implementiert sein.
  • Der 2D-Prozessor 602 ist mit dem Weitwinkel-Bildgebungssensor 114, dem Engwinkel-Bildgebungssensor 116 und dem dem Anwender zugewandten Bildgebungssensor 118 gekoppelt, um Bilddaten, die durch die Bildgebungssensoren erfasst sind, in einem oder mehreren Pixelzeilenpuffern 644 zu empfangen. Bei einer Ausführungsform enthält der 2D-Prozessor 602 eine Schnittstelle und einen Pixelzeilenpuffer 644 für jeden Bildgebungssensor, um dazu fähig zu sein, Bilddaten von jedem Bildgebungssensor parallel zu empfangen. Bei einer weiteren Ausführungsform enthält der 2D-Prozessor 602 eine einzige Schnittstelle und einen Pixelzeilenpuffer 644 und somit multiplext der 2D-Prozessor 602 zwischen den Bildgebungssensoren.
  • Der 2D-Prozessor 602 ist konfiguriert, um die erfassten Bilddaten von den Bildgebungssensoren zu verarbeiten, um 2D-Raummerkmale zu identifizieren, die in den Bilddaten vorhanden sind. Bei einigen Ausführungsformen implementiert der 2D-Prozessor 602 eine Hardwarekonfiguration, die spezifisch für diese Aufgabe entwickelt bzw. gestaltet ist. Bei anderen Ausführungsformen enthält der 2D-Prozessor 602 eine allgemeinere Prozessorarchitektur, die die 2D-Raummerkmalserfassung durch eine Ausführung eines Softwareprogramms zur Verfügung stellt, das konfiguriert ist, um den 2D-Raummerkmals-Erfassungsprozess zu implementieren. Der 2D-Prozessor 602 kann auch eine Kombination aus spezialisierter Hardware und spezialisierter Software zu diesem Zweck implementieren. Wie es oben beschrieben ist, kann irgendeiner einer Vielfalt von wohlbekannten 2D-Raummerkmals-Erfassungs- oder -Extraktionsalgorithmen durch den 2D-Prozessor 602 implementiert sein. Der 2D-Prozessor 602 speichert Metadaten und andere Information, die zu den identifizierten 2D-Raummerkmalen gehört, zum 2D-Merkmals-Datenspeicher 638.
  • Der 2D-Prozessor 602 ist bei einer Ausführungsform konfiguriert, um ein durch den dem Anwender zugewandten Bildgebungssensor 118 erfasstes Bild zu analysieren, um die aktuelle Position (z. B. die aktuelle Lokalisierung) des Kopfs eines Anwenders unter Verwendung von irgendeinem einer Vielfalt von wohlbekannten Kopfverfolgungsalgorithmen zu verfolgen. Beim gezeigten Beispiel stellt der 2D-Prozessor 602 die Kopfverfolgungsinformation der Anzeigesteuerung 606 zur Verfügung, die wiederum konfiguriert ist, um das angezeigte Bild einzustellen, um auf Änderungen in Bezug auf eine Ansichtsperspektive eines Anwenders zu reagieren, wie es bei Änderungen bezüglich einer Position des Kopfs eines Anwenders widergespiegelt wird. Bei einer weiteren Ausführungsform liefert der 2D-Prozessor 602 die Kopfverfolgungsinformation zum Anwendungsprozessor 604, der wiederum die Anzeigedaten modifiziert, um aktualisierte Ansichtsperspektiven zu widerzuspiegeln, bevor die Anzeigedaten zur Anzeigesteuerung 606 geliefert werden.
  • Der 2D-Prozessor 602 agiert auch als eine Steuerung, die den Modulationslichtprojektor 119 bei seiner Verwendung beim Bestimmen von Tiefendaten für räumliche Merkmale betreibt, die im erfassten Bild der lokalen Umgebung 112 identifiziert sind. Unter gewissen Bedingungen, wie beispielsweise bei relativ hellen Einstellungen (wie sie unter Verwendung des Umgebungslichtsensors 626 erfasst werden), kann der 2D-Prozessor 602 eine Bildanalyse eines Bilds verwenden, das gleichzeitig durch den Weitwinkel-Bildgebungssensor 114 und den Engwinkel-Bildsensor 116 erfasst ist, um Tiefendaten für räumliche Merkmale zu bestimmen, die im erfassten Bild vorhanden sind. Bei anderen Bedingungen, wie beispielsweise Bedingungen mit relativ wenig Belichtung kann der 2D-Prozessor 602 zur Verwendung des Tiefensensors 120 (1) schalten, um diese Tiefendaten zu bestimmen. Bei anderen Ausführungsformen implementiert das Verarbeitungssystem 600 eine Steuerung (nicht gezeigt) getrennt vom 2D-Prozessor 602, um den Betrieb des Modulationslichtprojektors 119 zu steuern.
  • Wie es oben beschrieben ist, beruht der Tiefensensor 120 auf der Projektion eines modulierten Lichtmusters durch den Modulationslichtprojektor 119 in die lokale Umgebung und auf der Erfassung der Reflexion des modulierten Lichtmusters davon durch einen oder mehrere der Bildgebungssensoren. Somit kann der 2D-Prozessor 602 einen oder beide der nach vorne gerichteten Bildgebungssensoren 114 und 116 verwenden, um die Reflexion einer Projektion des modulierten Lichtmusters zu erfassen und das resultierende Bild des reflektierten modulierten Lichtmusters zu verarbeiten, um die Tiefen von entsprechenden räumlichen Merkmalen zu bestimmen, die im reflektierten modulierten Lichtmuster dargestellt sind. Um ein Tiefenlesen mit einem entsprechenden 2D-Raummerkmal in Übereinstimmung zu bringen, kann der 2D-Prozessor 602 eine 2D-Raummerkmalsanalyse am Tiefenbild durchführen, um ein 2D-Raummerkmal und seine relative Tiefe zu bestimmen, und dann versuchen, das 2D-Raummerkmal mit einem entsprechenden Raummerkmal in Übereinstimmung zu bringen, das im Bild sichtbaren Lichts identifiziert ist, das bei oder nahe bei derselben Zeit erfasst ist, wie das reflektierte modulierte Lichtbild erfasst wurde. Bei einer weiteren Ausführungsform kann der 2D-Prozessor 602 ein Bild sichtbaren Lichts erfassen und schnell danach den Modulationslichtprojektor 119 steuern, um ein moduliertes Lichtmuster zu projizieren und ein reflektiertes moduliertes Lichtbild zu erfassen. Der 2D-Prozessor 602 kann dann eine Tiefenabbildung für das Bild sichtbaren Lichts aus dem reflektierten modulierten Lichtbild entwickeln, wenn sie aufgrund des gleichzeitigen Erfassens des Bilds sichtbaren Lichts und des reflektierten modulierten Lichtbilds effektiv dieselbe Szene mit denselben räumlichen Merkmalen bei denselben Koordinaten darstellen.
  • Der Anwendungsprozessor 604 ist konfiguriert, um das Merkmalsidentifizierungsmodul 225 (2) zu implementieren, um räumliche Merkmale zu identifizieren, die im erfassten Bild dargestellt sind, unter Verwendung der 2D-Raummerkmale, die in dem 2D-Merkmalsdatenspeicher 638 dargestellt sind, und unter Verwendung von nicht-visueller Sensorinformation von der Gruppe 610 von nicht-visuellen Sensoren. Wie beim 2D-Prozessor 602 kann der Anwendungsprozessor 604 konfiguriert sein, um diesen Prozess durch eine spezialisierte Hardwarekonfiguration, durch Ausführen von Software, die für diesen Prozess konfiguriert ist, oder eine Kombination aus spezialisierter Hardware und Software durchzuführen. Metadaten und andere Information für die identifizierten 3D-Raummerkmale sind im 3D-Merkmals-Datenspeicher 640 gespeichert. Bei wenigstens einer Ausführungsform implementiert der Anwendungsprozessor 604 (z. B. führt Anweisungen aus, die dann, wenn sie ausgeführt werden, den Anwendungsprozessor 604 manipulieren, um die Operationen von etwas durchzuführen) den Datenreduzierer 232 (2). Somit kann der Anwendungsprozessor 604 Charakteristiken der identifizierten Merkmale identifizieren und die Lokalisierungsdaten 230 basierend auf diesen Charakteristiken reduzieren, wie es oben beschrieben ist.
  • Der Anwendungsprozessor 604 ist weiterhin konfiguriert, um SLAM, AR, VR und andere lokalisierungsbasierte Funktionalität unter Verwendung von 3D-Raummerkmalen zu liefern, die im 3D-Merkmals-Datenspeicher 640 dargestellt sind, und unter Verwendung des aktuellen Zusammenhangs der elektronischen Vorrichtung 100, wie es durch nicht-visuelle Sensordaten dargestellt ist. Der aktuelle Kontext kann explizite oder implizite Anwendereingabe enthalten, die von beispielsweise der Anwenderschnittstelle 612 erhalten ist, oder über eine Analyse von Anwenderinteraktionen. Gleichermaßen kann der Anwendungsprozessor 604 eine Vorgeschichte von Positionen/Ausrichtungen der elektronischen Vorrichtung 100 und eine Vorgeschichte von räumlichen Merkmalen, die bei diesen Positionen/Ausrichtungen beobachtet sind, verwenden, um eine Abbildung der lokalen Umgebung 112 basierend auf den reduzierten Lokalisierungsdaten zu erzeugen.
  • Die lokalisierungsbasierte Funktionalität, die durch den Anwendungsprozessor 604 zur Verfügung gestellt wird, kann weiterhin AR-bezogene oder VR-bezogene Funktionalität enthalten, die ein Identifizieren und ein Zugreifen von dem SLAM/AR-Datenspeicher 642 auf grafische Information enthält, um als grafische Überlagerung auf der Anzeige 108 basierend auf der aktuellen Position, die durch den Anwendungsprozessor 604 bestimmt ist, zur Verfügung gestellt zu werden. Diese grafische Überlagerung kann in Verbindung mit einem Bild zur Verfügung gestellt werden, das durch die Bildgebungssensoren bei der aktuellen Position für eine Anzeige bei der Anzeige 108 über die Anzeigesteuerung 606 erfasst ist. Die Anzeigesteuerung 606 arbeitet, um die Anzeige 108 (1) zu steuern, um eine Aufnahme anzuzeigen, die durch Anzeigedaten dargestellt ist, die vom Anwendungsprozessor 604 empfangen sind. Weiterhin kann die Anzeigesteuerung 606 bei einigen Ausführungsformen Kopfverfolgungsinformation vom 2D-Prozessor 602 empfangen und die Ansichtsperspektive des Bildes, das angezeigt wird, basierend auf der Anwenderkopfposition oder der Augenposition, die in der empfangenen Kopfverfolgungsinformation dargestellt ist, einstellen.
  • 7 stellt ein Ablaufdiagramm eines Verfahrens 700 zum Reduzieren einer Lokalisierung bei der elektronischen Vorrichtung 100 gemäß wenigstens einer Ausführungsform der vorliegenden Offenbarung dar. Das Verfahren 700 beginnt bei einem Block 702, wo die elektronische Vorrichtung 100 eine Aufnahme erfasst, und nicht-visuelle Daten, wenn sie durch einen Anwender durch unterschiedliche Positionen in der lokalen Umgebung bewegt wird. Bei einem Block 704 identifiziert das Merkmalsidentifizierungsmodul 225 Merkmale der lokalen Umgebung basierend auf der Aufnahme und den nicht-visuellen Daten und speichert Merkmalsdeskriptoren für die identifizierten Merkmale bei den Lokalisierungsdaten 230. Bei einem Block 706 verwendet die elektronische Vorrichtung 100 die Lokalisierungsdaten 230, um eine oder mehrere Positionen der elektronischen Vorrichtung 100 in der lokalen Umgebung zu identifizieren. Die identifizierten Positionen können verwendet werden, um lokalisierungsbasierte Funktionalität für die elektronische Vorrichtung 100 zu unterstützen. Beispielsweise können die identifizierten Positionen verwendet werden, um einen Anwender der elektronischen Vorrichtung 100 bei einer Anwendung einer virtuellen Realität oder einer erweiterten Realität, die bei der elektronischen Vorrichtung 100 ausgeführt wird, zu orientieren.
  • Bei einem Block 708 initiiert der Datenreduzierer 232 eine Reduzierung der Lokalisierungsdaten 230 durch Verwendung des nicht-visuellen Datenfilters 340, um Daten, die von den nicht-visuellen Sensoren der elektronischen Vorrichtung 100 gesammelt sind, zu entfernen. Bei einem Block 710 identifizieret der Schlüsselbildidentifizierer 342 Schlüsselbilder der Lokalisierungsdaten 230 und bei einem Block 712 entfernt er von den Lokalisierungsdaten 230 die Merkmalsdeskriptoren für Merkmale, die nicht mit einem Schlüsselbild assoziiert sind. Geht man weiter zu einem Block 714, analysiert das Merkmalsqualitätsanalysemodul 343 die übrigen Merkmalsdeskriptoren der Lokalisierungsdaten 230, um einen Qualitätswert für jedes Merkmal zu erzeugen. Bei einem Block 716 entfernt das Merkmalsqualitätsanalysemodul von den Lokalisierungsdaten 230 die Merkmalsdeskriptoren für diejenigen Merkmale, die einen Qualitätswert unter der QVT haben. Geht man weiter zu einem Block 718, analysiert das Modul für geometrische Kompression 344 die übrigen Merkmalsdeskriptoren der Lokalisierungsdaten 230 und komprimiert geometrisch basierend auf der Analyse Gruppen von Merkmalsdeskriptoren, wie es oben beschrieben ist, um dadurch die Lokalisierungsdaten 230 weiter zu reduzieren. Bei einem Block 720 verwendet der Umgebungsabbilder 235 die reduzierten Lokalisierungsdaten 230, um eine Abbildung der lokalen Umgebung der elektronischen Vorrichtung 100 zu erzeugen und zu speichern, und zwar zur Verwendung durch lokalisierungsbasierte Dienste der Vorrichtung.
  • Vieles der erfinderischen Funktionalität und vieles der erfinderischen Prinzipien, die oben beschrieben sind, sind gut geeignet zur Implementierung mit oder in Softwareprogrammen oder Anweisungen und integrierten Schaltungen (ICs), wie beispielsweise anwendungsspezifischen ICs (ASICs). Es wird erwartet, dass ein Fachmann auf dem Gebiet, ungeachtet einer möglichen signifikanten Anstrengung und vieler Gestaltungswahlen, die motiviert sind durch beispielsweise verfügbare Zeit, aktuelle Technologie und ökonomische Betrachtungen, wenn er durch die Konzepte und Prinzipien geführt wird, die hierin offenbart sind, ohne weiteres dazu fähig sein, solche Softwareanweisungen und Programme und ICs mit minimaler Experimentierung zu erzeugen. Daher wird im Interesse einer Kürze und einer Minimierung von irgendeinem Risiko einer Verschleierung der Prinzipien und Konzepte gemäß der vorliegenden Offenbarung eine weitere Diskussion von solcher Software und ICs, wenn es eine gibt, auf die wesentlichen Dinge in Bezug auf die Prinzipien und Konzepte innerhalb der bevorzugten Ausführungsformen beschränkt sein.
  • In diesem Dokument können relationale Ausdrücke, wie beispielsweise erster und zweiter und ähnliches, einzig dazu verwendet werden, eine Einheit oder Aktion von einer anderen Einheit oder Aktion zu unterscheiden, ohne notwendigerweise irgendeine aktuelle solche Beziehung oder Reihenfolge zwischen solchen Einheiten oder Aktionen zu erfordern oder zu implizieren. Die Ausdrücke ”umfasst”, ”umfassend” oder irgendeine andere Variation davon sind dazu beabsichtigt, ein nicht ausschließliches Enthaltensein abzudecken, so dass ein Prozess, ein Verfahren, ein Artikel oder eine Vorrichtung, der, das oder die eine Liste von Elementen umfasst, nicht nur diese Elemente enthält, sondern andere Elemente enthalten kann, die nicht ausdrücklich aufgelistet oder innewohnend zu einem solchen Prozess, einem solchen Verfahren, einem solchen Artikel oder einer solchen Vorrichtung sind. Ein Element, dem ”umfasst ... ein” vorangeht, schließt nicht das Vorhandensein von zusätzlichen identischen Elementen in dem Prozess, dem Verfahren, dem Artikel oder der Vorrichtung aus, und zwar ohne mehr Beschränkungen, der, das, der oder die das Element umfasst. Der Ausdruck ”ein weiterer”, wie er hierin verwendet ist, ist als wenigstens ein zweiter oder mehrere definiert. Die Ausdrücke ”einschließlich” und/oder ”aufweisend” wie sie hierin verwendet sind, sind als umfassend definiert. Der Ausdruck ”gekoppelt”, wie er hierin unter Bezugnahme auf elektrooptische Technologie verwendet ist, ist als verbunden definiert, obwohl nicht notwendigerweise direkt und nicht notwendigerweise mechanisch. Der Ausdruck ”Programm”, wie er hierin verwendet ist, ist als eine Sequenz bzw. Folge von Anweisungen definiert, die zur Ausführung auf einem Computersystem entwickelt sind. Ein ”Programm” oder ”Computerprogramm” kann ein Unterprogramm, eine Funktion, eine Prozedur, ein Objektverfahren, eine Objektimplementierung, eine ausführbare Anwendung, ein kleines Programm, ein Servlet, ein Quellcode, ein Objektcode, eine gemeinsam genutzte Bibliothek/eine dynamische Ladebibliothek und/oder eine andere Sequenz von Anweisungen, die zur Ausführung auf einem Computersystem entwickelt sind, enthalten.
  • Die Beschreibung und die Zeichnungen sollten nur als Beispiele angesehen werden, und der Schutzumfang der Offenbarung soll demgemäß nur durch die folgenden Ansprüche und Äquivalente davon beschränkt sein. Es ist zu beachten, dass nicht alle Aktivitäten oder Elemente, die oben in der allgemeinen Beschreibung beschrieben sind, erforderlich sind, dass ein Teilbereich einer spezifischen Aktivität oder einer Vorrichtung nicht erforderlich sein kann und dass eine oder mehrere weitere Aktivitäten durchgeführt werden können, oder Elemente enthalten sind, zusätzlich zu denjenigen, die beschrieben sind. Noch weiter ist die Reihenfolge, in welcher Aktivitäten aufgelistet sind, nicht notwendigerweise die Reihenfolge, in welcher sie durchgeführt werden. Die Schritte der oben gezeigten Ablaufdiagramme können in irgendeiner Reihenfolge sein, solange nichts anderes spezifiziert ist, und Schritte können eliminiert, wiederholt und/oder hinzugefügt werden, und zwar in Abhängigkeit von der Implementierung. Ebenso sind die Konzepte in Bezug auf spezifische Ausführungsformen beschrieben worden. Jedoch erkennt ein Fachmann auf dem Gebiet, dass verschiedene Modifikationen und Änderungen durchgeführt werden können, ohne vom Schutzumfang der vorliegenden Offenbarung abzuweichen, wie er in den Ansprüchen nachstehend dargelegt ist. Demgemäß sind die Beschreibung und die Figuren eher in einem illustrativen als in einem beschränkenden Sinn anzusehen, und alle solche Modifikationen sollen innerhalb des Schutzumfangs der vorliegenden Offenbarung enthalten sein.
  • Vorzüge, andere Vorteile und Lösungen für Probleme sind oben in Bezug auf spezifische Ausführungsformen beschrieben worden. Jedoch sind die Vorzüge, Vorteile, Lösungen für Probleme und irgendein (irgendwelche) Merkmal(e), die irgendeinen Vorzug, einen Vorteil oder eine Lösung dazu führen können, aufzutreten oder mehr betont zu werden, nicht als ein kritisches, erforderliches oder wesentliches Merkmal von irgendwelchen oder allen der Ansprüche auszulegen.

Claims (20)

  1. Verfahren, umfassend: Erzeugen, bei einer elektronischen Vorrichtung [100], von Lokalisierungsdaten [230] für die elektronische Vorrichtung basierend auf einer Aufnahme [220], die bei der elektronischen Vorrichtung erfasst ist, und basierend auf empfangener nicht-visueller Positionsinformation [142], die von nicht-visuellen Sensoren erhalten ist; Identifizieren einer Vielzahl von Merkmalen [225] einer Umgebung der elektronischen Vorrichtung basierend auf der erfassten Aufnahme; Reduzieren der Lokalisierungsdaten [232] basierend auf Charakteristiken der Vielzahl von Merkmalen; Abbilden bzw. Kartieren der Umgebung [235] der elektronischen Vorrichtung basierend auf den reduzierten Lokalisierungsdaten.
  2. Verfahren nach Anspruch 1, wobei die Charakteristiken der Vielzahl von Merkmalen eine Anzahl von Beobachtungen [454] von jedem der Vielzahl von Merkmalen in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  3. Verfahren nach Anspruch 1, wobei die Charakteristiken der Vielzahl von Merkmalen eine Konstanz einer Position [456] von jedem der Vielzahl von Merkmalen in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  4. Verfahren nach Anspruch 1, wobei die Charakteristiken der Vielzahl von Merkmalen eine Entfernung von der elektronischen Vorrichtung [455] von jedem der Vielzahl von Merkmalen in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  5. Verfahren nach Anspruch 1, wobei die Charakteristiken der Vielzahl von Merkmalen eine Variabilität der Vielzahl von Merkmalen [458] in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  6. Verfahren nach Anspruch 1, wobei das Reduzieren der Lokalisierungsdaten ein Entfernen der nicht-visuellen Positionsinformation [340] von den Daten umfasst.
  7. Verfahren nach Anspruch 1, wobei das Reduzieren der Lokalisierungsdaten ein geometrisches Komprimieren [344] der Lokalisierungsdaten umfasst.
  8. Verfahren nach Anspruch 1, wobei das Reduzieren der Lokalisierungsdaten umfasst: Identifizieren von Schlüsselbildern der Lokalisierungsdaten [342]; und Entfernen von Daten, die nicht einem Schlüsselbild der Lokalisierungsdaten entsprechen.
  9. Verfahren, umfassend: Reduzieren, bei einer elektronischen Vorrichtung, von Lokalisierungsdaten [230] der elektronischen Vorrichtung basierend auf Merkmalen, die von einer Aufnahme [220] identifiziert sind [225], das bei der elektronischen Vorrichtung erfasst ist; und Abbilden bzw. Kartieren der Umgebung [235] der elektronischen Vorrichtung basierend auf den reduzierten Lokalisierungsdaten.
  10. Verfahren nach Anspruch 9, wobei ein Reduzieren der Lokalisierungsdaten umfasst: Identifizieren von Qualitätswerten [343] für eine Vielzahl von Merkmalen, die aus der Aufnahme identifiziert sind; und Reduzieren der Lokalisierungsdaten basierend auf den Qualitätswerten.
  11. Verfahren nach Anspruch 10, wobei ein Identifizieren der Qualitätswerte umfasst: Identifizieren der Qualitätswerte basierend auf einem oder mehreren von einer Konstanz einer Position [456] eines Merkmals über Bilder, einer Anzahl von Beobachtungen eines Merkmals [454], einer Entfernung des Merkmals [455] und einer Anzahl von unterschiedlichen Positionen eines Merkmals [458] über Bilder.
  12. Verfahren nach Anspruch 9, wobei ein Abbilden bzw. Kartieren umfasst: Anpassen eines Merkmals von den reduzierten Lokalisierungsdaten an einen Merkmalsdeskriptor [450] einer Datenbank von Merkmalsdeskriptoren [638, 640]; und Abbilden bzw. Kartieren der lokalen Umgebung basierend auf einem Anpassen des Merkmals.
  13. Elektronische Vorrichtung, umfassend: einen Bildgebungssensor [114, 118], um eine Aufnahme zu erfassen; eine Vielzahl von nicht-visuellen Sensoren; einen Prozessor [602, 604], um: bei einer elektronischen Vorrichtung Lokalisierungsdaten [230] für die elektronische Vorrichtung basierend auf einer Aufnahme [220] zu erzeugen, die bei der elektronischen Vorrichtung erfasst ist, und basierend auf einer nicht-visuellen Positionsinformation [142], die von nicht-visuellen Sensoren erhalten ist; eine Vielzahl von Merkmalen [225] einer Umgebung der elektronischen Vorrichtung basierend auf der erfassten Aufnahme zu identifizieren; die Lokalisierungsdaten [232] basierend auf Charakteristiken der Vielzahl von Merkmalen zu reduzieren; und die Umgebung der elektronischen Vorrichtung [235] basierend auf den reduzierten Lokalisierungsdaten abzubilden bzw. zu kartieren.
  14. Elektronische Vorrichtung nach Anspruch 13, wobei die Charakteristiken der Vielzahl von Merkmalen eine Anzahl von Beobachtungen [454] von jedem der Vielzahl von Merkmalen in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  15. Elektronische Vorrichtung nach Anspruch 13, wobei die Charakteristiken der Vielzahl von Merkmalen eine Konstanz einer Position [456] von jedem der Vielzahl von Merkmalen in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  16. Elektronische Vorrichtung nach Anspruch 13, wobei die Charakteristiken der Vielzahl von Merkmalen eine Entfernung bzw. einen Abstand [455] von der elektronischen Vorrichtung von jedem der Vielzahl von Merkmalen in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  17. Elektronische Vorrichtung nach Anspruch 13, wobei die Charakteristiken der Vielzahl von Merkmalen eine Variabilität der Vielzahl von Merkmalen [458] in unterschiedlichen Bildern der erfassten Aufnahme umfassen.
  18. Elektronische Vorrichtung nach Anspruch 13, wobei der Prozessor zum Reduzieren der Lokalisierungsdaten durch Folgendes dient: Entfernen der nicht-visuellen Positionsinformation [340] von den Daten.
  19. Elektronische Vorrichtung nach Anspruch 13, wobei der Prozessor zum Reduzieren der Lokalisierungsdaten weiterhin durch geometrisches Komprimieren der Lokalisierungsdaten [344] dient.
  20. Elektronische Vorrichtung nach Anspruch 13, wobei der Prozessor zum Reduzieren der Lokalisierungsdaten durch Folgendes dient: Identifizieren von Schlüsselbildern der Lokalisierungsdaten [342]; und Entfernen von Daten, die nicht einem Schlüsselbild entsprechen, von den Lokalisierungsdaten.
DE112016002022.8T 2015-08-11 2016-08-10 Managen von merkmalsdaten zur umgebungsabbildung auf einer elektronischen vorrichtung Ceased DE112016002022T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/823,283 US9940542B2 (en) 2015-08-11 2015-08-11 Managing feature data for environment mapping on an electronic device
US14/823,283 2015-08-11
PCT/US2016/046294 WO2017027562A1 (en) 2015-08-11 2016-08-10 Managing feature data for environment mapping on an electronic device

Publications (1)

Publication Number Publication Date
DE112016002022T5 true DE112016002022T5 (de) 2018-01-18

Family

ID=56801795

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112016002022.8T Ceased DE112016002022T5 (de) 2015-08-11 2016-08-10 Managen von merkmalsdaten zur umgebungsabbildung auf einer elektronischen vorrichtung

Country Status (8)

Country Link
US (1) US9940542B2 (de)
EP (1) EP3335153B1 (de)
JP (1) JP6609640B2 (de)
KR (1) KR102398478B1 (de)
CN (1) CN107646109B (de)
DE (1) DE112016002022T5 (de)
GB (1) GB2553965B (de)
WO (1) WO2017027562A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10572441B2 (en) * 2015-08-19 2020-02-25 Global Engineering Research and Technologies, LLC Applications of peridynamic differential operator
US11017610B2 (en) 2016-05-18 2021-05-25 Google Llc System and method for fault detection and recovery for concurrent odometry and mapping
US10802147B2 (en) 2016-05-18 2020-10-13 Google Llc System and method for concurrent odometry and mapping
US10890600B2 (en) 2016-05-18 2021-01-12 Google Llc Real-time visual-inertial motion tracking fault detection
US10339708B2 (en) 2016-11-01 2019-07-02 Google Inc. Map summarization and localization
US10375374B2 (en) * 2017-03-29 2019-08-06 Plethron Inc. Dimension extractable object comprising spatial metadata for a captured image or video
US11189054B2 (en) * 2018-09-28 2021-11-30 Apple Inc. Localization and mapping using images from multiple devices
US11533368B2 (en) * 2019-03-22 2022-12-20 Htc Corporation Augmented reality information transmission system and method
US11769258B2 (en) * 2021-02-03 2023-09-26 Qualcomm Incorporated Feature processing in extended reality systems

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2260195C (en) 1996-06-28 2003-09-23 T. Eric Hopkins Image acquisition system
US7135992B2 (en) * 2002-12-17 2006-11-14 Evolution Robotics, Inc. Systems and methods for using multiple hypotheses in a visual simultaneous localization and mapping system
US6871409B2 (en) 2002-12-18 2005-03-29 Snap-On Incorporated Gradient calculating camera board
AU2003304127A1 (en) 2003-05-19 2004-12-03 Itzhak Baruch Optical coordinate input device comprising few elements
KR100843085B1 (ko) * 2006-06-20 2008-07-02 삼성전자주식회사 이동 로봇의 격자지도 작성 방법 및 장치와 이를 이용한영역 분리 방법 및 장치
KR100816269B1 (ko) * 2006-09-22 2008-03-25 학교법인 포항공과대학교 언센티드 필터를 적용한 강인한 동시 위치 추정 및 지도작성 방법
JP5324240B2 (ja) * 2009-01-29 2013-10-23 株式会社ゼンリン 路面標示地図生成方法及び路面標示地図生成装置
JP2011043419A (ja) * 2009-08-21 2011-03-03 Sony Corp 情報処理装置、および情報処理方法、並びにプログラム
US8849036B2 (en) * 2009-10-30 2014-09-30 Yujin Robot Co., Ltd. Map generating and updating method for mobile robot position recognition
KR20120070291A (ko) * 2010-12-21 2012-06-29 삼성전자주식회사 보행 로봇 및 그의 동시 위치 인식 및 지도 작성 방법
US8798840B2 (en) * 2011-09-30 2014-08-05 Irobot Corporation Adaptive mapping with spatial summaries of sensor data
CN103247225B (zh) * 2012-02-13 2015-04-29 联想(北京)有限公司 即时定位与地图构建方法和设备
CN113974689A (zh) 2012-03-07 2022-01-28 齐特奥股份有限公司 空间对准设备
US9177404B2 (en) * 2012-10-31 2015-11-03 Qualcomm Incorporated Systems and methods of merging multiple maps for computer vision based tracking
US20140341465A1 (en) 2013-05-16 2014-11-20 The Regents Of The University Of California Real-time pose estimation system using inertial and feature measurements
AU2014306813A1 (en) 2013-08-12 2016-03-31 Flyby Media, Inc. Visual-based inertial navigation
US9384402B1 (en) * 2014-04-10 2016-07-05 Google Inc. Image and video compression for remote vehicle assistance
CN103926927A (zh) * 2014-05-05 2014-07-16 重庆大学 一种室内移动机器人双目视觉定位与三维建图方法
US9483879B2 (en) * 2014-09-18 2016-11-01 Microsoft Technology Licensing, Llc Using free-form deformations in surface reconstruction

Also Published As

Publication number Publication date
JP2018524657A (ja) 2018-08-30
US20170046594A1 (en) 2017-02-16
EP3335153A1 (de) 2018-06-20
KR102398478B1 (ko) 2022-05-13
WO2017027562A1 (en) 2017-02-16
GB2553965B (en) 2021-11-24
US9940542B2 (en) 2018-04-10
EP3335153B1 (de) 2022-10-05
KR20180039013A (ko) 2018-04-17
GB201716681D0 (en) 2017-11-29
GB2553965A (en) 2018-03-21
JP6609640B2 (ja) 2019-11-20
CN107646109A (zh) 2018-01-30
CN107646109B (zh) 2021-10-01

Similar Documents

Publication Publication Date Title
DE112016002022T5 (de) Managen von merkmalsdaten zur umgebungsabbildung auf einer elektronischen vorrichtung
EP3550516B1 (de) Umgebungsparameterabhängige auswahl eines datenmodells zur erkennung eines objekts einer realen umgebung
DE102018207088A1 (de) Bildanalyse ohne marker für augmented reality
DE112020003794T5 (de) Tiefenbewusste Fotobearbeitung
US20160179830A1 (en) Scalable 3d mapping system
DE202014010969U1 (de) Kamerafähiges Mobilgerät
DE112011103221T5 (de) Erweitern von Bilddaten basierend auf zugehörigen 3D-Punktwolkendaten
DE112016004216T5 (de) Allgemeine Sphärische Erfassungsverfahren
DE202017104054U1 (de) 2D-Video mit der Option für projiziertes Betrachten in einem modellierten 3D-Raum
DE202010018498U1 (de) Abgleich eines ungefähr lokalisierten Anfragebildes mit einem Referenzbildsatz
DE202017105899U1 (de) Kameraeinstellungsanpassung basierend auf vorhergesagten Umgebungsfaktoren und Nachverfolgungssysteme, die diese einsetzen
DE202010018459U1 (de) System zur Darstellung von Übergängen zwischen Strassenansichten
DE202014010935U1 (de) Aktualisierungen von 3D-Modellen mithilfe von Crowd-Sourcing-basiertem Videomaterial
DE102021118479A1 (de) Einbetten von komplexen 3d-objekten in eine erweiterte realitätsszene unter verwendung einer bildsegmentierung
DE202014010922U1 (de) Erzeugung von Tiefenkarten
DE102020124815A1 (de) System und vorrichtung für benutzergesteuerte virtuelle kamera für volumetrisches video
CN112207821B (zh) 视觉机器人的目标搜寻方法及机器人
DE112016003134T5 (de) Anzeigen von Objekten basierend auf einer Vielzahl von Modellen
DE202016006008U1 (de) Automatische Erkennung von Panoramagesten
DE202016006110U1 (de) Erweiterung des Sichtfeldes von Fotografie
CN111833457A (zh) 图像处理方法、设备及存储介质
DE112013003541B4 (de) Verfahren, Programm und System zur Merkmalextraktion
EP3539085B1 (de) 3d-referenzierung
WO2020196520A1 (en) Method, system and computer readable media for object detection coverage estimation
EP2831839B1 (de) Verfahren zum automatischen betreiben einer überwachungsanlage

Legal Events

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

Representative=s name: MAIKOWSKI & NINNEMANN PATENTANWAELTE PARTNERSC, DE

Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE

R082 Change of representative

Representative=s name: MAIKOWSKI & NINNEMANN PATENTANWAELTE PARTNERSC, DE

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06K0009460000

Ipc: G06V0030180000

R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final