DE202016008004U1 - Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen - Google Patents
Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen Download PDFInfo
- Publication number
- DE202016008004U1 DE202016008004U1 DE202016008004.1U DE202016008004U DE202016008004U1 DE 202016008004 U1 DE202016008004 U1 DE 202016008004U1 DE 202016008004 U DE202016008004 U DE 202016008004U DE 202016008004 U1 DE202016008004 U1 DE 202016008004U1
- Authority
- DE
- Germany
- Prior art keywords
- location
- image
- visual features
- frame
- matching
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/38—Registration of image sequences
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/98—Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/12—Classification; Matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Processing Or Creating Images (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
System, das Folgendes umfasst:
Speicher, der ein erstes von einem ersten Standort aufgenommenes Bild und ein zweites von einem zweiten Standort aufgenommenes Bild speichert;
ein oder mehrere Computergeräte mit einem oder mehreren Prozessoren zum:
Ermitteln einer Position des ersten Standortes in Relation zu dem zweiten Standort;
Auswählen eines ersten Frames auf dem ersten Bild und eines zweiten Frames auf dem zweiten Bild basierend auf der Position;
Identifizieren einer ersten Gruppe visueller Merkmale des ersten Bildes in dem ersten Frame und einer zweiten Gruppe visueller Merkmale des zweiten Bildes in dem zweiten Frame;
Ermitteln einer Anzahl übereinstimmender visueller Merkmale zwischen der ersten Gruppe visueller Merkmale und der zweiten Gruppe visueller Merkmale;
Ermitteln einer Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Bild und dem zweiten Bild durch Auswerten einer oder mehrerer Positionen der übereinstimmenden visuellen Merkmale; und
Erzeugen eines Navigationspfades von dem ersten Bild zu dem zweiten Bild basierend auf zumindest der Sicherheitswahrscheinlichkeit.
Speicher, der ein erstes von einem ersten Standort aufgenommenes Bild und ein zweites von einem zweiten Standort aufgenommenes Bild speichert;
ein oder mehrere Computergeräte mit einem oder mehreren Prozessoren zum:
Ermitteln einer Position des ersten Standortes in Relation zu dem zweiten Standort;
Auswählen eines ersten Frames auf dem ersten Bild und eines zweiten Frames auf dem zweiten Bild basierend auf der Position;
Identifizieren einer ersten Gruppe visueller Merkmale des ersten Bildes in dem ersten Frame und einer zweiten Gruppe visueller Merkmale des zweiten Bildes in dem zweiten Frame;
Ermitteln einer Anzahl übereinstimmender visueller Merkmale zwischen der ersten Gruppe visueller Merkmale und der zweiten Gruppe visueller Merkmale;
Ermitteln einer Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Bild und dem zweiten Bild durch Auswerten einer oder mehrerer Positionen der übereinstimmenden visuellen Merkmale; und
Erzeugen eines Navigationspfades von dem ersten Bild zu dem zweiten Bild basierend auf zumindest der Sicherheitswahrscheinlichkeit.
Description
- Unter Schutz gestellt werden und Gegenstand des Gebrauchsmusters sind, entsprechend den Vorschriften des Gebrauchsmustergesetzes, lediglich Vorrichtungen wie in den beigefügten Schutzansprüchen definiert, jedoch keine Verfahren. Soweit nachfolgend in der Beschreibung gegebenenfalls auf Verfahren Bezug genommen wird, dienen diese Bezugnahmen lediglich der beispielhaften Erläuterung der in den beigefügten Schutzansprüchen unter Schutz gestellten Vorrichtung oder Vorrichtungen.
- HINTERGRUND DER ERFINDUNG
- Inzwischen gibt es weltweit bereits eine riesige Menge sphärischer Panoramabilder. Da die bildlichen Darstellungen zwischen den verschiedenen Panoramabildern aufeinander abgestimmt sind, sofern die Panoramabilder selbst realistisch in Relation zur Erde gestellt werden, ermöglichen nahegelegene miteinander verbundene Panoramabilder den Benutzern, wie in einem echten dreidimensionalen Raum durch diese hindurch zu navigieren. Die Bestimmung der Konnektivität zwischen Panoramabildern basierend auf Distanz und Diagrammtopologie ist, insbesondere ohne Kenntnis der Geometrie der Panoramabilder, jedoch nicht unerheblich. Eine zusätzliche Herausforderung besteht für Panoramabilder, die nicht entlang von Straßen oder anderen Bereichen aufgenommen werden, in denen Panoramabilder im Allgemeinen eine Sichtlinie aufweisen.
- KURZDARSTELLUNG DER ERFINDUNG
- Aspekte der Offenbarung stellen ein Verfahren bereit. Das Verfahren beinhaltet das Auswahlen durch einen oder mehrere Prozessoren eines ersten Bildes, das von einem ersten Standort aufgenommen wurde, und eines zweiten Bildes, das von einem zweiten Standort aufgenommen wurde; das Ermitteln durch einen oder mehrere Prozessoren einer Position des ersten Standortes in Relation zu dem zweiten Standort; das Auswählen durch einen oder mehrere Prozessoren eines ersten Frames auf dem ersten Bild und eines zweiten Frames auf dem zweiten Bild basierend auf der Position; das Identifizieren durch einen oder mehrere Prozessoren einer ersten Gruppe visueller Merkmalen des ersten Bildes in dem ersten Frame und einer zweiten Gruppe visueller Merkmale des zweiten Bildes in dem zweiten Frame; das Ermitteln, durch den einen oder die mehreren Prozessoren, einer Anzahl von übereinstimmenden visuellen Merkmalen zwischen dem ersten Satz visueller Merkmale und dem zweiten Satz visueller Merkmale; das Ermitteln einer Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Bild und dem zweiten Bild durch Auswertung einer oder mehrerer Positionen der übereinstimmenden visuellen Merkmale durch einen oder mehrere Prozessoren; sowie das Erzeugen eines Navigationspfades von dem ersten Bild zu dem zweiten Bild durch einen oder mehrere Prozessoren basierend auf zumindest der Sicherheitswahrscheinlichkeit.
- In einer exemplarischen Ausführungsform ist der erste Frame in eine Richtung der ersten Position ausgerichtet, und der zweite Frame in die Richtung aus der zweiten Position ausgerichtet, und der erste und der zweite Frame sind um einen geradlinigen Pfad zwischen dem ersten Standort und dem zweiten Standort zentriert. In einer weiteren exemplarischen Ausführungsform beinhaltet das Ermitteln der Position des ersten Standortes in Relation zu dem zweiten Standort außerdem das Ermitteln von Stellungswinkeldaten des ersten Bildes und des zweiten Bildes, wobei die Stellungswinkeldaten die Orientierungsdaten des ersten Bildes und des zweiten Bildes in Bezug auf die Himmelsrichtungen beinhalten.
- In einer weiteren exemplarischen Ausführungsform beinhaltet das Verfahren zudem für ein spezifisches Paar übereinstimmender erster und zweiter visueller Merkmale das Auswerten der Positionen der ersten und der zweiten übereinstimmenden visuellen Merkmale, das Werfen eines ersten Strahls von dem ersten Standort zu dem ersten übereinstimmenden visuellen Merkmal in dem ersten Panoramabild; das Werfen eines zweiten Strahls von dem zweiten Standort zu dem zweiten übereinstimmenden visuellen Merkmal in dem zweiten Panoramabild; sowie das Ermitteln ob der erste Strahl und der zweite Strahl in einem Bereich zwischen dem ersten Panoramabild und dem zweiten Panoramabild am nächsten zueinander liegen, wobei die Sicherheitswahrscheinlichkeit des Weiteren basierend auf der Feststellung, ob der erste Strahl und der zweite Strahl in dem Bereich zwischen dem ersten Panoramabild und dem zweiten Panoramabild am nächsten zueinander liegen, ermittelt wird.
- In einer weiteren exemplarischen Ausführungsform beinhaltet das Ermitteln der Sicherheitswahrscheinlichkeit für eine Sichtlinie außerdem das Zuordnen eines Stellenwerts für jedes Paar übereinstimmender visueller Merkmale, wobei der Stellenwert mindestens einem (1) Reprojektionsfehler der spezifischen übereinstimmenden visuellen Merkmale entspricht; (2) Winkelabstände der jeweiligen spezifischen übereinstimmenden visuellen Merkmale von einem geradlinigen Pfad zwischen dem ersten Standort und dem zweiten Standort; sowie (3) visuelle Ähnlichkeiten zwischen den spezifischen übereinstimmenden visuellen Merkmalen. In dieser exemplarischen Ausführungsform kann die Sicherheitswahrscheinlichkeit gemäß zumindest einer der folgenden Bedingungen ermittelt werden: (1) ein Prozentsatz der identifizierten visuellen Merkmale, bei denen es sich um übereinstimmende visuelle Merkmale handelt; (2) der Stellenwert, der jedem Paar übereinstimmender visueller Merkmale zugeordnet ist; (3) ein Abstand zwischen dem ersten Bild und dem zweiten Bild; oder (4) ein Restfehler der eingeschätzten Standorte der übereinstimmenden visuellen Merkmale,
- Alternativ dazu oder darüber hinaus kann in dieser exemplarischen Ausführungsform der eingeschätzte Standort der übereinstimmenden visuellen Merkmale ermittelt werden, indem ein erster Strahl von dem ersten Standort zu einem ersten Merkmal in der ersten Gruppe visueller Merkmale; und ein zweiter Strahl von dem zweiten Standort zu einem zweiten Merkmal in der zweiten Gruppe visueller Merkmale geworfen wird, wobei das erste Merkmal und das zweite Merkmal ein Paar übereinstimmender visueller Merkmale ist; und wenn der erste Strahl und der zweite Strahl innerhalb eines vorbestimmten Abstandes voneinander liegen, indem ein Punkt festgelegt wird, der der Stelle am nächstgelegensten ist, an der der erste Strahl und der zweite Strahl als der eingeschätzte Standort des ersten Merkmals und des zweiten Merkmals am nächsten aneinander liegen. In dieser alternativen bzw. zusätzlichen exemplarischen Ausführungsform kann das Verfahren, wenn der erste Strahl und der zweite Strahl nicht innerhalb der vorbestimmten Distanz liegen oder divergieren, zudem das Entfernen des Paars übereinstimmender visueller Merkmale von der Reihe übereinstimmender visueller Merkmale beinhalten.
- In einer weiteren exemplarischen Ausführungsform wird der Navigationspfad zudem gemäß einer oder mehrerer Einschränkungen erzeugt. In dieser exemplarischen Ausführungsform kann eine bzw. können mehrere Einschränkungen mindestens eine der minimal umfassenden Baumeinschränkungen, Delaunay-Triangulationseinschränkungen, das Festlegen der Kantenanzahl pro Scheitelpunkt, das Festlegen eines maximalen Kantenabstandes, der nur eine Redundanzschicht zulässt, sowie das Minimieren eines Abstandes zwischen einem Paar von Scheitelpunkten beinhalten.
- Ein weiterer Aspekt der Offenbarung sieht ein anderes Verfahren vor. Dieses Verfahren beinhaltet das Auswählen durch einen oder mehrere Prozessoren einer Vielzahl von Bildern; das Ermitteln durch einen oder mehrere Prozessoren einer Sicherheitswahrscheinlichkeit für die Konnektivität zwischen jedem Paar von Bildern für jedes Paar von Bildern in der Vielzahl von Bildern durch (1) das Ermitteln durch einen oder mehrere Prozessoren einer Position eines ersten Bildes des Paares, das an einem ersten Standort aufgenommen wurde, in Relation zu einem zweiten Bild des Paares, das an einem zweiten Standort aufgenommen wurde, (2) das Projizieren durch einen oder mehrere Prozessoren eines Frames von dem ersten Standort entlang eines geradlinigen Pfades zwischen dem ersten Standort und dem zweiten Standort und auf dem ersten Bild und dem zweiten Bild, (3) das Identifizieren durch einen oder mehrere Prozessoren einer ersten Gruppe visueller Merkmale des ersten Bildes innerhalb der Projektion des Frames auf dem ersten Bild, (4) das Identifizieren durch einen oder mehrere Prozessoren einer zweiten Gruppe visueller Merkmale des zweiten Bildes innerhalb der Projektion des Frames auf dem zweiten Bild und (5) das Ermitteln durch einen oder mehrere Prozessoren eines übereinstimmenden visuellen Merkmals zwischen der ersten Gruppe visueller Merkmale und der zweiten Gruppe visueller Merkmale; das Ermitteln einer Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Bild und dem zweiten Bild basierend auf mindestens den übereinstimmenden visuellen Merkmalen; sowie das Erzeugen durch einen oder mehrere Prozessoren von Navigationspfaden zwischen einem oder mehreren Paaren von Bildern gemäß der Sicherheitswahrscheinlichkeit für jedes Paar von Bildern.
- In einer exemplarischen Ausführungsform beinhaltet das Verfahren zudem das Erzeugen durch einen oder mehrere Prozessoren eines Verbindungsdiagramms, wobei jedes Bild einem Scheitelpunkt in dem Verbindungsdiagramm und jeder Navigationspfad einer Kante in dem Verbindungsdiagramm entspricht. In dieser exemplarischen Ausführungsform kann das Erzeugen des Verbindungsdiagramms zudem das Entfernen mindestens einer Kante durch Anwenden einer oder mehrerer Einschränkungen beinhalten. Eine oder mehrere Einschränkungen beinhalten mindestens eine der minimal umfassenden Baumeinschränkungen, Delaunay-Triangulation-Einschränkungen, das Festlegen der Kantenanzahl pro Scheitelpunkt, das Festlegen eines maximalen Kantenabstandes, der nur eine Redundanzschicht zulässt, sowie das Minimieren des Abstandes zwischen einem Paar von Scheitelpunkten.
- Ein weiterer Aspekt der Offenbarung sieht ein System vor. Das System beinhaltet einen Speicher, der ein erstes Bild speichert, das von einem ersten Standort aufgenommen wurde, und ein zweites Bild, das von einem zweiten Standort aufgenommen wurde; ein oder mehrere Computergeräte mit einem oder mehreren Prozessoren, die dafür konfiguriert sind, eine Position des ersten Standortes in Relation zu dem zweiten Standort zu ermitteln, das Auswählen eines ersten Frames auf dem ersten Bild und eines zweiten Frames auf dem zweiten Bild basierend auf der Position, das Identifizieren einer ersten Gruppe visueller Merkmale des ersten Bildes in dem ersten Frame und einer zweiten Gruppe visueller Merkmale des zweiten Bildes in dem zweiten Frame, das Ermitteln einer Reihe übereinstimmender visueller Merkmale zwischen der ersten Gruppe visueller Merkmale und der zweiten Gruppe visueller Merkmale, das Ermitteln einer Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Bild und dem zweiten Bild durch Auswerten einer oder mehrerer Positionen der übereinstimmenden visuellen Merkmale, sowie das Erzeugen eines Navigationspfades von dem ersten Bild zu dem zweiten Bild basierend auf zumindest der Sicherheitswahrscheinlichkeit.
- In einer exemplarischen Ausführungsform ist der erste Frame in eine Richtung der ersten Position, und der zweite Frame in die Richtung der zweiten Position ausgerichtet, während der erste Frame und der zweite Frame um einen geradlinigen Pfad herum zwischen dem ersten Standort und dem zweiten Standort zentriert sind. In einer weiteren exemplarischen Ausführungsform sind ein oder mehrere Prozessoren ebenfalls dafür konfiguriert, die Position zu bestimmen, indem des Weiteren die Stellungswinkeldaten des ersten Bildes und des zweiten Bildes ermittelt werden, wobei die Stellungswinkeldaten die Orientierungsdaten des ersten Bildes und des zweiten Bildes mit Bezug auf die Himmelsrichtungen beinhalten.
- In einer weiteren exemplarischen Ausführungsform werden ein oder mehrere Prozessoren so konfiguriert, dass sie für ein spezifisches Paar übereinstimmender erster und zweiter visueller Merkmalen die Positionen des ersten und zweiten übereinstimmenden visuellen Merkmals auswerten, indem sie einen ersten Strahl von dem ersten Standort zu dem ersten übereinstimmenden visuellen Merkmal in dem ersten Panoramabild werfen, einen zweiten Strahl von dem zweiten Standort zu dem zweiten übereinstimmenden visuellen Merkmal in dem zweiten Panoramabild werfen, ermitteln, ob der erste Strahl und der zweite Strahl in einem Bereich zwischen dem ersten Panoramabild und dem zweiten Panoramabild am nächsten aneinander liegen und des Weiteren die Sicherheitswahrscheinlichkeit basierend auf der Feststellung ermitteln, ob der erste Strahl und der zweite Strahl in dem Bereich zwischen dem ersten Panoramabild und dem zweiten Panoramabild am nächsten aneinander liegen.
- In noch einer weiteren exemplarischen Ausführungsform sind ein oder mehrere Prozessoren zudem dafür konfiguriert, die Sicherheitswahrscheinlichkeit zu ermitteln, indem des Weiteren jedem Paar übereinstimmender visueller Merkmale ein Stellenwert zugeordnet wird, wobei der Stellenwert mindestens einer der folgenden Bedingungen entsprechen muss: (1) Reprojektionsfehler der spezifischen übereinstimmenden visuellen Merkmale; (2) Winkelabstände jedes der spezifischen übereinstimmenden visuellen Merkmale von einem geradlinigen Pfad zwischen dem ersten Standort und dem zweiten Standort; sowie (3) visuelle Ähnlichkeiten zwischen den spezifischen übereinstimmenden visuellen Merkmalen. In dieser exemplarischen Ausführungsform können ein oder mehrere Prozessoren zudem dafür konfiguriert sein, die eingeschätzte Standort der übereinstimmenden visuellen Merkmale zu ermitteln, indem ein erster Strahl von dem ersten Standort zu einem ersten Merkmal in der ersten Reihe von visuellen Merkmalen geworfen wird, ein zweiter Strahl von dem zweiten Standort zu einem zweiten Merkmal in der zweiten Reihe von visuellen Merkmalen geworfen wird, wobei das erste Merkmal und das zweite Merkmal ein Paar übereinstimmender visueller Merkmale sind und sobald der erste Strahl und der zweite Strahl innerhalb eines vorbestimmten Abstandes voneinander liegen, einen Punkt festzulegen, der der Stelle am nächstgelegensten ist, an der der erste Strahl und der zweite Strahl als der eingeschätzte Standort des ersten Merkmals und des zweiten Merkmals am nächsten aneinander liegen.
- KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Funktionsdiagramm eines exemplarischen Systems gemäß Aspekten der Offenbarung. -
2 ist ein Bilddiagramm des exemplarischen Systems von1 . -
3 ist eine Darstellung von Beziehungen zwischen zwei Bildern gemäß Aspekten der Offenbarung. -
4 ist eine Darstellung der Beziehungen zwischen zwei Bildern und Frame gemäß Aspekten der Offenbarung. -
5A ist eine Darstellung von Bildern und Daten gemäß Aspekten der Offenbarung. -
5B ist eine weitere Darstellung von Bildern und Daten gemäß Aspekten der Offenbarung. -
5C ist eine weitere Darstellung von Bildern und Daten gemäß Aspekten der Offenbarung. -
5D eine Darstellung eines Bildes und von Daten gemäß Aspekten der Offenbarung. -
6 ist eine Darstellung einer Sammlung von Panoramabildern und Beziehungen gemäß Aspekten der Offenbarung. -
7 ist eine Darstellung einer weiteren exemplarischen Sammlung von Panoramabildern und Beziehungen gemäß Aspekten der Offenbarung. -
8 ist ein exemplarisches Ablaufdiagramm gemäß Aspekten der Offenbarung. -
9 ist ein weiteres exemplarisches Ablaufdiagramm gemäß weiteren Aspekten der Offenbarung. - AUSFÜHRLICHE BESCHREIBUNGS
- ÜBERSICHT
- Die Technologie bezieht sich auf die automatische Erzeugung von Verbindungen zwischen Bildern für eine realistische Navigation von einem Bild zum anderen. Ein Bild kann ein Panoramabild sein, das ein weites Sichtfeld von einem spezifischen Standort erfasst. Unter Verwendung der bekannten Standorte und Stellungswinkel von Panoramabildern kann ein Panoramabild mit nahegelegenen Panoramabildern verbunden werden, damit die Eigenschaften zwischen verschiedenen Panoramabildern realistisch angeordnet sind. Um realistische Verbindungen zu erzeugen, sollten Hindernisse, wie z. B. Wände oder Büsche, berücksichtigt werden. Hierzu sollten nur Panoramabilder verbunden werden, zwischen denen eine Sichtverbindung besteht. Benutzer können dann durch die Panoramabilder navigieren, als ob sie einen echten dreidimensionalen Raum navigieren würden und dabei sämtliche vorhandenen Hindernisse vermeiden.
- Für Panoramabilder entlang von Straßen kann die Konnektivität größtenteils basierend auf der Position und dem Winkel des Bildes ermittelt werden. Es können zum Beispiel Bilder von einem Fahrzeug aus aufgenommen werden, während das Fahrzeug eine Straße entlang fährt. Bilder können aufeinanderfolgend oder in regelmäßigen Intervallen aufgenommen werden, während das Fahrzeug eine bestimmte Strecke fährt. Unter Verwendung von Gerätesensoren können jedem Bild Stellungswinkel- und Standortdaten zugeordnet werden, sobald das Bild aufgenommen wird. Bilder, die auf diese Weise entlang der Straße aufgenommen werden, können im Allgemeinen einem klaren Pfad folgen. Daher können aneinander angrenzende Bilder unter Verwendung der Stellungswinkel- und Standortdaten der Bilder automatisch räumlich verbunden werden, ohne visuelle Merkmale zu berücksichtigen. Mit anderen Worten, Panoramabilder, die entlang einer Straße aneinander angrenzen, können verbunden werden. Panoramabilder an einer Kreuzung von zwei Straßen können ebenfalls räumlich verbunden werden. Alternativ dazu kann die Reihenfolge, in der die Bilder aufgenommen wurden, verwendet werden, um Bilder automatisch räumlich zu verbinden. Jedoch können für Sammlungen von Panoramabildern ohne Straßen, an denen sich das Verfahren orientieren kann, Informationen, wie z. B. Entfernung, Stellungswinkel, gemeinsame Merkmale, gemeinsame Sichtlinie, Geometrie usw. verwendet werden, um die Konnektivität zwischen Panoramabildern präzise und schnell zu ermitteln.
- Um die Konnektivität zwischen zwei Panoramabildern zu ermitteln, können ein erstes Panoramabild und ein zweites Panoramabild ausgewählt werden. Das erste Panoramabild kann von einem ersten Standort, und ein zweites Panoramabild von einem zweiten Standort aus aufgenommen worden sein, der sich beispielsweise wenige Meter entfernt vom ersten Standort oder ungefähr in der Nähe desselben befindet. Dem ersten und das zweiten Panoramabild können Standort- und Stellungsdaten zugeordnet sein. Die Standort- und Stellungswinkeldaten können dazu verwendet werden, die Positionen des ersten und des zweiten Panoramabildes in Relation zueinander zu ermitteln.
- Sobald die Positionen der Panoramabilder ausgewählt sind, können die Frame des ersten Panoramabildes und des zweiten Panoramabildes identifiziert werden. Die identifizierten Frame können um einen geradlinigen Pfad zwischen dem ersten Standort und dem zweiten Standort zentriert sein und in einer Richtung relativ zu einem Aufnahmestandort des jeweiligen Panoramabildes positioniert sein, auf dem die Frame liegen. Hierzu können sich Frame zwischen zwei Panoramabildern in einer gleichen Position relativ zu ihrem jeweiligen Panoramabild befinden. ein Frame kann zum Beispiel, gemessen von dem jeweiligen Aufnahmestandort, einen Winkelabstand zwischen Null und 180 Grad erfassen.
- Es können Gruppen visueller Merkmalen des ersten Panoramabildes und des zweiten Panoramabildes innerhalb jedes Frames identifiziert werden. Der Standort der identifizierten visuellen Merkmale innerhalb des Frames und in Relation zueinander kann ebenfalls identifiziert werden. Visuelle Merkmale können mithilfe einer beliebigen Anzahl von Objekterkennungsmethoden identifiziert werden.
- In einem Frame auf dem ersten Panoramabild identifizierte visuelle Merkmale können mit identifizierten visuellen Merkmalen in einem Frame auf dem zweiten Panoramabild verglichen werden, um alle übereinstimmenden Merkmale zu identifizieren. Eine Übereinstimmung zwischen zwei visuellen Merkmalen kann darauf hindeuten, dass die visuellen Merkmale dasselbe Objekt bzw. einen Teil desselben Objekts darstellen.
- Die Konnektivität kann darauf basieren, ob es eine Sichtlinie zwischen dem ersten Panoramabild und dem zweiten Panoramabild gibt. Mit anderen Worten, ist eine Sichtlinie zwischen dem ersten Panoramabild und dem zweiten Panoramabild vorhanden, können das erste und das zweite Panoramabild verbunden werden.
- Um eine Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Panoramabild und dem zweiten Panoramabild zu ermitteln, können die Positionen der übereinstimmenden visuellen Merkmale ausgewertet werden. Es kann eine Sichtlinie zwischen dem ersten Panoramabild und dem zweiten Panoramabild vorhanden sein, wo entsprechende visuelle Merkmale in derselben oder in einer ähnlichen Richtung relativ zu dem ersten Panoramabild und dem zweiten Panoramabild positioniert sind. Dementsprechend kann basierend darauf, ob die Strahlen, die von einem Standort ausgehen, an dem zwei Bilder aufgenommen wurden, und sich zu einem spezifischen Paar übereinstimmender visueller Merkmale erstrecken, die in dieselbe oder eine ähnliche Richtung zeigen, eine Sicherheitswahrscheinlichkeit für die Konnektivität ermittelt werden. Zeigen die Strahlen für das spezifische Paar übereinstimmender visueller Merkmale in dieselbe oder eine ähnliche Richtung, ist die Sicherheitswahrscheinlichkeit ggf. höher, als wenn die Strahlen in entgegengesetzte oder nahezu entgegengesetzte Richtungen zeigen.
- Die Sicherheitswahrscheinlichkeit kann des Weiteren auf einem Stellenwert basieren, das jedem Paar übereinstimmender visueller Merkmale beigemessen wird. In einer exemplarischen Ausführungsform kann ein spezifisches Paar übereinstimmender visueller Merkmale basierend darauf gewichtet werden, wie nahe sich die eingeschätzten Standorte von Merkmalen an deren tatsächlichen Standorten befinden. Übereinstimmende Paare von visuellen Merkmalen mit genauer eingeschätzten Abständen können einen größeren Stellenwert aufweisen als jene mit ungenauer eingeschätzten Abständen. Sollten sich andererseits ein oder beide eingeschätzten Abstände um mehr als einen akzeptablen Grad von den tatsächlichen Differenzen unterscheiden, kann ein übereinstimmendes Paar visueller Merkmale als eine falsche Übereinstimmung betrachtet und vernachlässigt werden.
- Ein weiteres Beispiel für die Gewichtung eines spezifischen Paares übereinstimmender visueller Merkmale basiert auf dem Winkelabstand der visuellen Merkmale von dem geradlinigen Pfad aus. Übereinstimmende visuelle Merkmale mit geringen Winkelabständen können höher gewichtet werden als jene mit größeren Winkelabständen. Eine weitere Grundlage zur Gewichtung eines spezifischen Paares übereinstimmender visueller Merkmale kann ein Prozentsatz der identifizierten Merkmale sein, bei denen es sich um übereinstimmende visuelle Merkmale zwischen zwei Frames von zwei Panoramabildern handelt.
- Erreicht die Sicherheitswahrscheinlichkeit einen Sicherheitswahrscheinlichkeits-Schwellenwert, wird ggf. festgestellt, dass eine Sichtlinie zwischen dem ersten Panoramabild und dem zweiten Panoramabild vorhanden ist. Infolgedessen kann eine Verbindung von dem ersten Panoramabild zu dem zweiten Panoramabild entlang dem geradlinigen Pfad zwischen dem ersten Standort und dem zweiten Standort erstellt werden. Wenn die Sicherheitswahrscheinlichkeit jedoch nicht den Schwellenwert erreicht, wird ggf. festgestellt, dass keine Sichtverbindung existiert, oder dass es ein Hindernis zwischen den Standorten des ersten Panoramabildes und dem zweiten Panoramabild gibt, die eine Person daran hindern würden, sich direkt zwischen den Standorten zu bewegen. In dieser exemplarischen Ausführungsform kann keine Verbindung zwischen dem ersten und dem zweiten Panoramabild erzeugt werden. Eine Verbindung kann Informationen beinhalten, die eine dreidimensionale (3D) Beziehung zwischen den zwei Bildern oder 3D-Übergängen identifiziert, die das Navigieren durch den Raum von dem ersten Standort zu dem zweiten Standort entlang des geradlinigen Pfades simulieren.
- Für eine gesamte Sammlung von Panoramabildern kann ein Verbindungsdiagramm unter Verwendung des oben erwähnten Verfahrens erzeugt werden. In dem Verbindungsdiagramm kann jeder Standort eines Panoramabildes ein Scheitelpunkt und jede Verbindung zwischen zwei Panoramabildern eine Kante sein. Ein Panoramabild kann eine Verbindung mit mehr als einem anderen Panoramabild haben. Die Anzahl der Verbindungen in einer Verbindungsgrafik kann durch das Anwenden einer Anzahl von Einschränkungen reduziert werden. Einschränkungen können diejenigen beinhalten, die in minimal umfassenden Bäumen und/oder der Delaunay-Triangulation verwendet werden. Erzeugt das Anwenden der Einschränkungen zwei getrennte Gruppen von Panoramabildern, die nicht verbunden sind, kann mindestens eine bestehende Verbindung in dem Verbindungsdiagramm zwischen den zwei Gruppen von Panoramabildern nicht entfernt werden.
- EXEMPLARISCHE SYSTEME
-
1 und2 beinhalten ein exemplarisches System100 , in welchem die hier beschriebenen Funktionen implementiert werden können. Dies sollte jedoch nicht als Einschränkung des Umfangs der Offenbarung oder der Nützlichkeit der hierin beschriebenen Funktionen betrachtet werden. In dieser exemplarischen Ausführungsform kann das System100 eine oder mehrere Computergeräte110 ,120 ,130 und140 , sowie das Speichersystem150 beinhalten. Ein oder mehrere Computergeräte110 können einen oder mehrere Prozessoren112 , einen Speicher114 und andere Komponenten enthalten, die in der Regel in Universalcomputergeräten vorkommen. Der Speicher114 des einen oder der mehreren Computergeräte110 kann Informationen speichern, die durch einen oder mehrere Prozessoren112 zugänglich sein können, einschließlich der Anweisungen116 , die von einem oder mehreren Prozessoren112 ausgeführt werden können. - Der Speicher kann zudem Daten
118 beinhalten, die durch den Prozessor abgerufen, manipuliert oder gespeichert werden können. Bei dem Speicher kann es sich um einen beliebigen nicht-transitorischen Typ handeln, der in der Lage ist, Informationen, wie z. B. eine Festplatte, Speicherkarte, ROM, RAM, DVD, CD-ROM, beschreibbare und schreibgeschützte Speicher, zu speichern, auf die vom Prozessor zugegriffen werden kann. - Bei den Anweisungen
116 kann es sich um eine beliebige Reihe von Anweisungen handeln, die direkt, wie Maschinencode, oder indirekt, wie Skripte, durch den Prozessor ausgeführt werden können. in diesem Zusammenhang können die Begriffe „Anweisungen”, „Schritte” und „Programme” hierin austauschbar verwendet werden. Die Anweisungen können in Objektcodeformat zur direkten Verarbeitung durch den Prozessor oder in einer anderen Computergerätesprache, einschließlich Skripten oder Sammlungen unabhängiger Quellcode-Module, die auf Anforderung interpretiert oder vorab kompiliert werden, gespeichert werden. Funktionen, Verfahren und Routinen der Anweisungen werden im Folgenden näher erklärt. - Daten
118 können gemäß den Anweisungen116 durch den Prozessor112 abgerufen, gespeichert oder modifiziert werden. Die Daten können beispielsweise, obwohl der hierin beschriebene Gegenstand nicht durch eine beliebige bestimmte Datenstruktur einschränkt ist, in Computerregistern als Tabelle mit vielen verschiedenen Feldern und Datensätzen oder strukturiert (z. B. als XML-Dokumente) gespeichert werden. Die Daten können außerdem in einem beliebigen für Computergeräte lesbaren Format mitunter auch als Binärwerte, ASCII oder Unicode formatiert sein. Des Weiteren können die Daten jegliche Informationen umfassen, die dazu ausreichen, die relevanten Informationen, wie z. B. Zahlen, beschreibenden Text, proprietäre Codes, Zeiger, Datenverweise, die in anderen Speichern, wie z. B. anderen Netzwerkstandorten gespeichert sind, oder Informationen, die von einer Funktion zur Berechnung relevanter Daten verwendet werden, zu identifizieren. - Der eine oder die mehreren Prozessoren
112 können jeden herkömmlichen Prozessor, wie z. B. einen im Handel erhältlichen CPU, beinhalten. Alternativ dazu kann es sich bei dem Prozessor um eine fest zugeordnete Komponente, wie z. B. eine ASIC oder einen anderen hardwarebasierten Prozessor handeln. Obwohl es nicht notwendig ist, können ein oder mehrere Computergeräte110 spezielle Hardwarekomponenten beinhalten, um bestimmte Rechenvorgänge, wie beispielsweise Videodekodierungen, Anpassungen von Videoframes mit Bildern, Verzerrungen von Videos, Kodierungen von verzerrten Videos, usw. schneller bzw. effizienter auszuführen. - Obwohl
1 den Prozessor, den Speicher und andere Elemente des Computergeräts110 innerhalb des gleichen Blocks funktional illustriert, können der Prozessor, Computer, das Computergerät oder der Speicher tatsächlich mehrere Prozessoren, Computer, Computergeräte oder Speicher umfassen, die sich innerhalb des gleichen physischen Gehäuses befinden können oder auch nicht. Bei dem Speicher kann es sich beispielsweise um eine Festplatte oder ein anderes Speichermedium handeln, das sich in einem oder in mehreren Gehäusen befindet, der bzw. die sich von den Gehäusen des einen oder der mehreren Computergeräte110 unterscheiden. Dementsprechend werden Verweise auf einen Prozessor, Computer, ein Computergerät oder einen Speicher so verstanden, dass sie Verweise auf eine Sammlung von Prozessoren, Computern, Computergeräten oder Speichern beinhalten, die parallel arbeiten können oder nicht. Die Computergeräte110 können beispielsweise Server-Computergeräte beinhalten, die als eine lastverteilende Serverfarm arbeiten. Obwohl des Weiteren einige Funktionen, die nachfolgend beschrieben sind, als auf einem einzigen Computergerät mit einem einzelnen Prozessor angegeben werden, können verschiedene Aspekte des hierin beschriebenen Gegenstands durch eine Vielzahl von Computergeräten implementiert werden, zum Beispiel, um Informationen über das Netzwerk180 zu übertragen. - Das eine Computergerät oder die mehreren Computergeräte
110 können sich an verschiedenen Netzwerkknoten180 befinden und in der Lage sein, direkt oder indirekt mit anderen Netzwerkknoten des180 zu kommunizieren. Obwohl nur einige Computergeräte in den1 –2 dargestellt sind, sollte darauf hingewiesen werden, dass ein typisches System eine große Anzahl von verbundenen Computergeräten beinhalten kann, wobei sich die jeweiligen unterschiedlichen Computergeräte (sowie Sammelgeräte) an einem anderen Netzwerkknoten180 befinden. Das Netzwerk180 und die hierin beschriebenen dazwischen intervenierenden Knoten können unter Verwendung verschiedener Protokolle und Systeme miteinander verbunden werden, sodass das Netzwerk ein Teil des Internets, des World Wide Webs, des spezifischen Intranets, der Großraumnetzwerke oder lokalen Netzwerke sein kann. Das Netzwerk kann Standardkommunikationsprotokolle, wie z. B. Ethernet, WLAN und HTTP, Protokolle, die proprietär für ein oder mehrere Unternehmen sind und verschiedene Kombinationen derselben verwenden. Obwohl bestimmte Vorteile erzielt werden, wenn Informationen wie oben beschrieben übertragen oder empfangen werden, sind andere Aspekte des hierin beschriebenen Gegenstands nicht auf eine spezielle Art der Übertragung von Informationen beschränkt. - Ein oder mehrere Computergeräte können beispielsweise
110 einen oder mehrere Webserver beinhalten, die in der Lage sind, mit dem Speichersystem150 , sowie mit den Computergeräten120 ,130 und140 über das Netzwerk zu kommunizieren. Beispielsweise können eine oder mehrere Server-Computergeräte110 das Netzwerk verwenden,180 , um einem Benutzer, wie z. B. einem Benutzer220 ,230 oder240 , Informationen auf einem Display, wie den Displays122 ,132 oder142 der Computergeräte120 ,130 oder140 zu übertragen und zu präsentieren. Hierzu können die Computergeräte120 ,130 und140 als Client-Computergeräte angesehen werden, die alle oder einige der nachfolgend beschriebenen Funktionen ausführen. - Alle Client-Computergeräte können, wie vorstehend beschrieben, auf ähnliche Weise wie die Server-Computergeräte
110 mit einem oder mehreren Prozessoren, einem Speicher und Anweisungen konfiguriert werden. Bei jedem Client-Computergerät120 ,130 oder140 kann es sich um einen Personalcomputer handeln, der für die Verwendung seitens eines Benutzers220 ,230 ,240 bestimmt ist, der sämtliche Komponenten enthält, die normalerweise in Verbindung mit einem Personalcomputer verwendet werden, wie z. B. eine zentrale Verarbeitungseinheit (CPU), einen Speicher (z. B. RAM und interne Festplatten) zum Speichern von Daten und Anweisungen, ein Display, wie z. B. die Displays122 ,132 oder142 (z. B. einen Monitor mit einem Bildschirm, einem Touchscreen, einem Projektor, einem Fernsehgerät oder einem anderen Gerät zum Anzeigen von Informationen), sowie ein Benutzereingabegerät124 (z. B. eine Maus, Tastatur, einen Touchscreen oder ein Mikrofon). Das Client-Computergerät kann außerdem eine Kamera zum Aufnehmen von Videostreams, Lautsprecher, ein Netzwerkschnittstellengerät und sämtliche Komponenten beinhalten, die zum Verbinden dieser Elemente miteinander verwendet werden. - Obwohl es sich bei den Client-Computergeräten
120 ,130 und140 jeweils um einen Personalcomputer in voller Größe handeln kann, kann es sich bei diesen alternativ dazu auch um mobile Computergeräte handeln, die in der Lage sind, Daten über ein Netzwerk, wie z. B. das Internet, drahtlos mit einem Server auszutauschen. Bei dem Clientcomputergerät120 kann es sich beispielsweise um ein Mobiltelefon oder ein Gerät, wie z. B. einen drahtlosen PDA, einen Tablet-PC oder ein Netbook handeln, das in der Lage ist, Informationen über das Internet abzurufen. In einer weiteren exemplarischen Ausführungsform kann das Client-Computergerät130 ein am Kopf befestigtes Computersystem sein. Der Benutzer kann beispielsweise mithilfe einer kleinen Tastatur, eines Tastenfeldes, Mikrofons, unter Verwendung visueller Signale mit einer Kamera oder eines Touchscreens Informationen eingeben. - Das Datenspeichersystem
150 kann verschiedene Arten von Informationen speichern. Wie nachfolgend näher beschrieben, kann das Datenspeichersystem150 verschiedene Formate visueller Medien, wie z. B. Bildern oder Videos, speichern. Einige Bilder und/oder Videos können Teil einer Sequenz in einer Navigationserfahrung sein, die ebenfalls auf dem Datenspeichersystem150 gespeichert sein können. Diese Bilder oder Videos können Teil davon Bilddateien sein, die anderen Informationen, wie z. B. einer Bildkennung, zugeordnet sind, die verwendet werden kann, um das Bild, die Zeit, zu der das Bild erstellt wurde, den Winkel, aus welchem das Bild betrachtet wird, sowie das Bildformat (JPEG, TIFF usw.) abzurufen. Die Bilddatei kann einen Zeitstempel mit Informationen, wie z. B. einem Datum und der Uhrzeit, enthalten, zu der das Bild aufgenommen wurde. Die Bilddatei kann zudem Stellungswinkeldaten, einschließlich geografischer Standortinformationen beinhalten, die den Standort (wie z. B. den Breiten- und Längengrad oder andere Standortkoordinaten), sowie die Orientierungsdaten (Stellungswinkel) anzeigen, an denen das Bild aufgenommen wurde. - Das Datenspeichersystem
150 kann Bilder, Bildstandortdaten, Bildstellungswinkeldaten, 3D-Geometriedaten und Algorithmen zum Analysieren und Manipulieren von Bildern oder Videos speichern. Die Standortinformationen können beispielsweise Breiten- und Längengradkoordinaten beinhalten. Der Stellungswinkel eines Bildes kann ermittelt werden oder bereits bekannt sein, sodass das Bild relativ zur Erde realistisch gestellt (oder orientiert) werden kann. Zumindest einige der gespeicherten Bilder, einschließlich der Panoramabilder können ein Sichtfeld von mehr als 180 Grad aufweisen. Bei einigen der gespeicherten Bilder kann es sich um sphärische Panoramabilder mit einem Sichtfeld von 360 Grad handeln. Bei sphärischen Panoramabildern können Stellungswinkeldaten anzeigen, welche Teile des Panoramabildes nach oben, unten, Nord, Süd, Ost bzw. West zeigen. Die 3D-Geometriedaten können dreidimensionale Gitter und/oder Punkte beinhalten, die physische Merkmale an Standorten identifizieren, die in zumindest einigen von den Bildern dargestellt sind. Die Bilder können als Sammlungen organisiert und gespeichert werden, sofern diese an einem ähnlichen Standort oder mit ähnlichen Merkmalen aufgenommen wurden. Die Verbindungen zwischen den Bildern können ebenfalls auf dem Datenspeichersystem150 gespeichert werden. - Bei dem Datenspeichersystem
150 kann es sich, wie auch bei Datenspeicher114 , um eine beliebige Art von rechnergestützten Datenspeicher handeln, wie z. B. eine Festplatte, Speicherkarte, ein ROM, RAM, DVD, CD-ROM, einen beschreibbaren und schreibgeschützten Speicher, handeln, der in der Lage ist, Informationen zu speichern, die von Server110 abgerufen werden können. Darüber hinaus kann das Datenspeichersystem150 ein verteiltes Datenspeichersystem beinhalten, in welchem Daten auf einer Vielzahl von verschiedenen Speichergeräten gespeichert werden, die physisch an den gleichen oder verschiedenen geografischen Standorten angeordnet sein können. Das Datenspeichersystem150 kann, wie in1 dargestellt, über das Netzwerk180 an die Computergeräte angeschlossen werden bzw. mit jedem der Computergeräte110 –140 (nicht dargestellt) direkt verbunden oder in dieselben integriert werden. - EXEMPLARISCHES VERFAHREN
- Zusätzlich zu den oben ausführlich beschriebenen und in den Figuren dargestellten Verfahrensweisen werden nunmehr verschiedene andere Verfahrensweisen beschrieben. Die folgenden Verfahrensweisen müssen nicht in der nachfolgend beschriebenen Reihenfolge durchgeführt werden. Vielmehr können verschiedene Schritte in einer anderen Reihenfolge oder gleichzeitig vorgenommen oder auch hinzugefügt oder weggelassen werden.
- Wie in
3 dargestellt, kann ein erstes Panoramabild310 , das von einem Standort A aufgenommen wurde, ausgewählt werden, um die Konnektivität zu den angrenzenden Panoramabildern zu ermitteln. Ein nahe gelegenes zweites Panoramabild320 , das von einem Standort B322 aufgenommen wurde, kann ausgewählt werden. Dem ersten und das zweiten Panoramabild können Standort- und Stellungswinkeldaten zugeordnet sein. Bei dem ersten und zweiten Panoramabild kann es sich um sphärische Panoramabilder mit einem vollständigen Sichtfeld von 360° von dem ersten bzw. zweiten Standort handeln. Die 3D-Geometrie des durch das erste und das zweite Panoramabild aufgenommenen Raumes kann bereits bekannt sein. Alternativ dazu kann die 3D-Geometrie des Raumes auch unbekannt sein. Die Positionen der ersten und der zweiten Panoramabilder in Relation zueinander können unter Verwendung der dem Panoramabild zugeordneten Standort- und Stellungswinkeldaten ermittelt werden. - Sobald die Positionen der Panoramabilder ausgewählt sind, können die Frame des ersten Panoramabildes und des zweiten Panoramabildes identifiziert werden. Dementsprechend kann unter Bezugnahme auf
3 mithilfe der bestimmten Positionen ein erster Frame330 auf dem ersten Panoramabild310 ausgewählt werden. Der ausgewählte erste Frame330 kann sich in einer Halbkugel neben dem zweiten Panoramabild320 befinden und um einen geraden Pfad340 zwischen dem Standort A und dem Standort B zentriert sein. Ein zweiter Frame350 auf dem zweiten Panoramabild320 kann ebenfalls ausgewählt werden. Der zweite Frame350 kann um den geraden Pfad340 herum zentriert sein. Der zweite Frame350 kann einen Teil des zweiten Panoramabildes320 in einer Halbkugel gegenüber von Position A einschließen. - Wie in
4 dargestellt, kann auch ein dritter Frame430 auf dem ersten Panoramabild310 ausgewählt werden. Der dritte Frame430 kann um den geradlinigen Pfad440 in einer Halbkugel gegenüber dem Standort B zentriert sein. Zusätzlich kann ein vierter Frame450 auf dem zweiten Panoramabild320 ausgewählt werden. Der vierte Frame450 kann um den geradlinigen Pfad440 in einer an dem ersten Panoramabild310 angrenzenden Halbkugel herum zentriert sein. Die ersten330 , zweiten350 , dritten430 und vierten450 Frame können von der jeweiligen Aufnahmeposition gemessen einen Winkelabstand zwischen null und 180 Grad, wie z. B. 45 Grad oder 90 Grad, umfassen. - Gruppen visueller Merkmale des ersten Panoramabildes und des zweiten Panoramabildes innerhalb jedes Frames können identifiziert werden. Eine erste Gruppe visueller Merkmale des ersten Panoramabildes
310 innerhalb des ersten Frames330 kann identifiziert werden. Eine zweite Gruppe visueller Merkmale des zweiten Panoramabildes320 innerhalb des zweiten Frames350 kann ebenfalls identifiziert werden. Eine dritte und vierte Gruppe visueller Merkmale kann in dem dritten430 und vierten450 Frame identifiziert werden. Visuelle Merkmale können Linien, Ecken, Texturen usw. beinhalten. Der Standort der identifizierten visuellen Merkmale innerhalb des Frames und in Relation zueinander kann ebenfalls ermittelt werden. Visuelle Merkmale können mithilfe einer beliebigen Anzahl von Objekterkennungsmethoden identifiziert werden. - Identifizierte visuelle Merkmale in einem Frame auf dem ersten Panoramabild können mit identifizierten visuellen Merkmalen in einem Frame auf dem zweiten Panoramabild verglichen werden, um alle übereinstimmenden Merkmale zu identifizieren. Hierzu kann die erste Gruppe visueller Merkmale mit dem zweiten Satz visueller Merkmale und die dritte Gruppe visueller Merkmale mit der vierten Gruppe visueller Merkmale verglichen werden. Zusätzlich kann die zweite Gruppe visueller Merkmale mit der dritten Gruppe visueller Merkmale verglichen werden, um alle übereinstimmenden Merkmale zu identifizieren. Eine Übereinstimmung zwischen zwei visuellen Merkmalen kann darauf hindeuten, dass die visuellen Merkmale das gleiche Objekt oder einen Teil eines Objekts darstellen. Zu den übereinstimmenden visuellen Merkmalen können beispielsweise übereinstimmende oder entsprechende Objekte, Muster, Texturen, Farben, Formen usw. an entsprechenden Positionen oder irgendwelche anderen bekannten visuellen Merkmalsanpassungsalgorithmen zählen.
- Eine Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Panoramabild und dem zweiten Panoramabild kann ermittelt werden, indem die Positionen der übereinstimmenden visuellen Merkmale, wie in den
5A –5D dargestellt, ausgewertet werden. Eine Sicherheitswahrscheinlichkeit für eine Sichtlinie kann basierend darauf bestimmt werden, ob Strahlen, die von einem Aufnahmestandort des Panoramabildes zu einem spezifischen Paar übereinstimmender visueller Merkmale geworfen werden, sich in einem Bereich zwischen dem ersten Panoramabild und dem zweiten Panoramabild überschneiden. Wenn sich die Strahlen für das spezifische Paar übereinstimmender visueller Merkmale, wie in5A dargestellt, außerhalb des Bereichs zwischen dem ersten Panoramabild und dem zweiten Panoramabild überschneiden, kann die Sicherheitswahrscheinlichkeit höher sein, als wenn sich die Strahlen, wie in5B dargestellt, im Bereich zwischen dem Panorama überschneiden. - Wie in
5A dargestellt, kann ein Strahl von dem Standort A zu einem visuellen Merkmal510 in dem ersten Panoramabild310 und von dem Standort B zu einem visuellen Merkmal520 in dem zweiten Panoramabild geworfen werden320 . Da die Strahlen in5A in die gleiche Richtung zeigen, kann die Sicherheitswahrscheinlichkeit für eine Sichtlinie vergrößert werden. Andererseits kann, wie in5B dargestellt, ein Strahl von Standort A zu einem anderen visuellen Merkmal512 in dem ersten Panoramabild310 und von Standort B zu einem anderen visuellen Merkmal522 in dem zweiten Panoramabild320 geworfen werden. Da die Strahlen in5B in nahezu entgegengesetzte Richtungen zeigen, kann sich die Sicherheitswahrscheinlichkeit für eine Sichtlinie verringern. - Die spezifische Sicherheitswahrscheinlichkeit kann des Weiteren auf einem Stellenwert, der jedem Paar übereinstimmender visueller Merkmale zugeordnet wird, basieren. Eine Möglichkeit, ein spezifisches Paar übereinstimmender visueller Merkmale zu gewichten, basiert auf dem Grad der Ähnlichkeit zwischen dem spezifischen Paar. Je mehr Ähnlichkeiten zwischen dem spezifischen Paar übereinstimmender visueller Merkmale bestehen, desto wahrscheinlicher ist eine passende Übereinstimmung.
- Eine andere Möglichkeit, ein spezifisches Paar übereinstimmender visueller Merkmale zu gewichten, beruht auf dem Reprojektionsfehler oder darauf, inwiefern die geschätzten Abstände der Merkmale den tatsächlichen Abständen entsprechen. Wie in
5C dargestellt, kann, um den geschätzten Standort zu ermitteln, ein Strahl von Standort A zu einem Merkmal in der ersten Gruppe visueller Merkmale geworfen werden. Ein weiterer Strahl kann von Standort B zu dem übereinstimmenden Merkmal in der zweiten Gruppe visueller Merkmale geworfen werden. Bei dem Schnittpunkt der Strahlen530 oder in den meisten exemplarischen Ausführungsformen dem Punkt zwischen den Strahlen, an welchem sich dieselben am nächsten sind und an welchem sich die Strahlen nicht tatsächlich überschneiden, kann es sich um den eingeschätzten Standort des Merkmals handeln. Der tatsächliche Abstand des Merkmals in Relation zu dem Standort A und dem Standort B kann bekannt sein oder basierend auf den bekannten 3D-Geometriedaten für die ersten und zweiten Panoramabilder bzw. die Standorte dieser Bilder ermittelt werden. Daher kann der geschätzte Abstand540 zwischen dem Standort A und dem Schnittpunkt (oder Punkt zwischen den Strahlen) ermittelt und mit dem tatsächlichen Abstand zwischen dem Standort A und dem Merkmal verglichen werden. Das gleiche kann für den geschätzten Abstand542 von Standort B durchgeführt werden. Das spezifische Paar übereinstimmender visueller Merkmale kann dann basierend darauf gewichtet werden, inwiefern die geschätzten Abstände540 ,542 den tatsächlichen Abständen entsprechen. Die übereinstimmenden visuellen Merkmale mit genauer geschätzten Abständen können höher gewichtet werden als diejenigen mit ungenauer geschätzten Abständen. Wenn die Strahlen jedoch nicht innerhalb eines Mindestschwellenwertabstandes voneinander liegen (z. B. zu weit voneinander entfernt sind) oder sich eine oder beide geschätzte Abstände um mehr als einen akzeptablen Grad von den tatsächlichen Differenzen unterscheiden, kann die Übereinstimmung als falsch betrachtet und außer Acht gelassen werden. - Die Gewichtung eines spezifischen Paares übereinstimmender visueller Merkmale kann zudem auf der Winkeldifferenz an dem engsten Punkt zwischen zwei Strahlen basieren, die in die Richtung des spezifischen Paares übereinstimmender visueller Merkmale geworfen werden. Wenn sich die beiden Strahlen tatsächlich überschneiden, ist die Winkeldifferenz gleich Null. Je weiter zwei Strahlen davon entfernt sind, sich zu überschneiden, desto schlechter ist die Übereinstimmung zwischen den entsprechenden visuellen Merkmalen. Daher kann Paaren übereinstimmender visueller Merkmale, bei denen die entsprechenden Strahlen eine größere Winkeldifferenz aufweisen, ein geringerer Stellenwert zugeordnet werden.
- Ein weiteres Beispiel für die Gewichtung eines spezifischen Paares übereinstimmender visueller Merkmale basiert auf dem Winkelabstand der visuellen Merkmale von dem geradlinigen Pfad. Wie in
5D dargestellt, kann der Winkelabstand eines übereinstimmenden Merkmals ermittelt werden, indem ein Strahl von dem Standort A zu übereinstimmenden Merkmalen geworfen550 ,552 ,554 und der Winkel zwischen dem Strahl und dem geradlinigen Pfad340 gemessen wird. Übereinstimmende visuelle Merkmale mit geringen Winkelabständen können höher gewichtet werden als diejenigen mit größeren Winkelabständen. - Die Sicherheitswahrscheinlichkeit kann des Weiteren basierend darauf ermittelt werden, welcher Prozentsatz der identifizierten Merkmale übereinstimmende visuelle Merkmale aufweist. Die Beziehung zwischen dem Prozentsatz an übereinstimmenden visuellen Merkmalen und der Sicherheitswahrscheinlichkeit kann auf anderen Faktoren, wie etwa dem Stellenwert eines spezifischen Paares übereinstimmender visueller Merkmale, einer absoluten Anzahl übereinstimmender visueller Merkmale, einem Abstand zwischen dem ersten und dem zweiten Panoramabild, sowie einem Restfehler der geschätzten Merkmalstandorte, basieren. Falls der Prozentsatz gering ist, jedoch ein hoher Prozentsatz übereinstimmender visueller Merkmale in einem geringen Winkelabstand von dem geradlinigen Pfad vorhanden ist, ist die Sicherheitswahrscheinlichkeit ggf. hoch. In gleicher Weise kann die Sicherheitswahrscheinlichkeit, sofern die absolute Anzahl der übereinstimmenden visuellen Merkmale hoch ist, ungeachtet des geringen Prozentsatzes übereinstimmender visueller Merkmale trotzdem hoch sein. Das gleiche gilt, wenn der Abstand zwischen den Panoramabildern lang ist oder der Restfehler der eingeschätzten Merkmalstandorte niedrig ausfällt.
- Die endgültige Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen zwei Bildern kann auf einer beliebigen Kombination der oben genannten Faktoren basieren. Hierzu können die Stellenwerte zusammen als eine Summe, gewichtete Summe oder mithilfe einer anderen bekannten Methode zum Kombinieren gewichteter Werte kombiniert werden.
- Falls die letzte Sicherheitswahrscheinlichkeit einen Schwellenwert erfüllt, wird ggf. ermittelt, dass eine Sichtlinie zwischen dem ersten Panoramabild
310 und dem zweiten Panoramabild320 besteht, woraufhin eine Verbindung von dem ersten Panoramabild310 zu dem zweiten Panoramabild320 entlang des geradlinigen Pfades340 zwischen dem ersten Standort und dem zweiten Standort erzeugt werden kann. Wenn die endgültige Sicherheitswahrscheinlichkeit den Schwellenwert e jedoch nicht erfüllt, wird ggf. ermittelt, dass keine Sichtlinie besteht, oder dass es ein Hindernis zwischen den Standorten des ersten Panoramabildes und des zweiten Panoramabildes vorliegt, welches eine Person daran hindern würde, sich direkt zwischen den Standorten zu bewegen. Eine Verbindung kann Informationen beinhalten, die eine dreidimensionale (3D) Beziehung, sowie 3D-Übergänge zwischen den beiden Bildern identifizieren, die das Navigieren durch den Raum von dem ersten Standort zu dem zweiten Standort entlang des geradlinigen Pfades simulieren. In diesem Zusammenhang kann jede Verbindung einen Navigationspfad zwischen zwei Bildern darstellen. - Wenn die oben erwähnten Merkmale für eine gesamte Sammlung von Panoramabildern durchgeführt werden, kann ein Verbindungsdiagramm erzeugt werden. Wie in
6 dargestellt, kann in dem Verbindungsdiagramm600 jeder Standort A, B, C, D, E, F, der dem Standort entspricht, ein Panoramabild als Scheitelpunkt zugeordnet werden, während es sich bei jeder Verbindung610 ,620 ,630 ,640 ,650 ,660 ,670 ,680 zwischen zwei Panoramabildern um eine Kante handeln kann. Ein Panoramabild kann eine Verbindung mit mehr als einem anderen Panoramabild haben, solange eine Sichtlinie zwischen den Bildern besteht, wie sie unter Verwendung der obigen Merkmale bestimmt wurde. Ein Diagramm kann überkoppelt werden, wenn Panoramabilder in einer Sammlung dicht verbunden wurden und sämtliche Panoramabilder eine große Anzahl visueller Merkmale teilen. Die Herausforderung besteht darin, Verbindungen zu erzeugen, die realistische Navigationspfade ergeben, die, wie in7 dargestellt, in einer sequentiellen Weise durch die Sammlung von Panoramabildern führen. - Um die Anzahl von Verbindungen in einem Verbindungsdiagramm zu reduzieren, kann eine Reihe von Einschränkungen verwendet werden. Unter Einschränkungen zählen mitunter diejenigen, die in minimal umfassenden Bäumen und/oder Delaunay-Triangulation verwendet werden. Zusätzlich oder alternativ dazu können Einschränkungen das Erzeugen einer lediglich vorbestimmten Anzahl von Verbindungen pro Panoramabild beinhalten, wodurch Verbindungen erzeugt werden, die geringer als ein vorbestimmter Abstand sind und nur eine Redundanzschicht zulassen und/oder den Abstand zwischen einem spezifischen Paar von Knoten minimiert. Einschränkungen können in einer Reihe von zunehmend restriktiven Iterationen angewendet werden. Alternativ dazu können die Einschränkungen, die verwendet werden, um die Anzahl von Verbindungen zu reduzieren, als Einschränkungen für die Bildung einer Verbindung am Anfang des oben beschriebenen Verfahrens konfiguriert werden. Dadurch können, wie in
7 dargestellt, Verbindungen620 und650 entfernt werden, um die Anzahl von Verbindungen in dem Verbindungsdiagramm600 zu reduzieren, um ein neues, weniger dicht verbundenes Verbindungsdiagramm700 zu erzeugen. - Falls das Anwenden der Einschränkungen zwei getrennte Gruppen von Panoramabildern erzeugt, die nicht verbunden sind, kann mindestens eine bestehende Verbindung in dem Verbindungsdiagramm zwischen den zwei Gruppen von Panoramabildern nicht entfernt werden. Alternativ dazu können weniger restriktive Einschränkungen angewendet werden, um sicherzustellen, dass sämtliche Panoramabilder in der Sammlung mit mindestens einem anderen Panoramabild in der Sammlung verbunden sind. Wenn zum Beispiel die Verbindung
680 aus dem Verbindungsdiagramm700 entfernt werden würde, hätte Standort F keine Verbindungen zu irgendeinem anderen Standort. Sollte daher eine Einschränkung angewendet werden, um die Verbindung680 zu entfernen, kann eine Ausnahme für die Verbindung680 gemacht werden, um mindestens eine Verbindung mit Standort F zu bewahren. -
8 ist ein exemplarisches Ablaufdiagramm800 gemäß einigen der oben beschriebenen Aspekte, das durch eine oder mehrere Computergeräte, wie z. B. das Server-Computergerät110 , ausgeführt werden kann. In diesem Beispiel kann ein erstes Bild, das von einem ersten Standort aufgenommen wurde, und ein zweites Bild, das von einem zweiten Standort aufgenommen wurde, in Block802 ausgewählt werden. Anschließend kann eine Position des ersten Standortes in Relation zu dem zweiten Standort in Block804 ermittelt werden. Ein erster Frame auf dem ersten Bild und ein zweiter Frame auf dem zweiten Bild können bei Block806 ausgewählt werden, wobei der erste Frame und der zweite Frame in die gleiche Richtung relativ zu der ersten Position bzw. der zweiten Position ausgerichtet sind. Eine erste Gruppe visueller Merkmale und eine zweite Gruppe visueller Merkmale können in dem ersten Frame und dem zweiten Frame jeweils in Block808 identifiziert werden. Gleichermaßen können ein dritter Frame auf dem ersten Bild und ein vierter auf dem zweiten Bild in Block810 ausgewählt werden, während eine dritte und eine vierte Gruppe visueller Merkmale in dem dritten bzw. vierten Frame in Block812 identifiziert werden können. Eine Reihe übereinstimmender visueller Merkmale zwischen dem ersten und zweiten Frame und zwischen dem dritten und vierten Frame kann in Block814 ermittelt werden. Basierend auf den übereinstimmenden visuellen Merkmalen kann eine Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Bild und dem zweiten Bild in Block816 ermittelt werden. Gemäß der Sicherheitswahrscheinlichkeit kann in Block818 ein Navigationspfad von dem ersten Bild zu dem zweiten Bild erzeugt werden. -
9 ist ein weiteres exemplarisches Ablaufdiagramm900 gemäß einigen der oben beschriebenen Aspekte, das durch ein oder mehrere Computergeräte, wie z. B. das Server-Computergerät110 , ausgeführt werden kann. In diesem Beispiel kann eine Vielzahl von Bildern in Block902 ausgewählt werden. Für jedes Paar von Bildern in der Vielzahl von Bildern kann eine Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen jedem Paar von Bildern in Block904 ermittelt werden. Entsprechend der Sicherheitswahrscheinlichkeit für jedes Paar von Bildern können zwischen einem oder mehreren Paaren von Bildern Navigationspfade in Block906 erzeugt werden. Ein Verbindungsdiagramm kann daher in Block908 erzeugt werden, wobei jedes Bild einem Scheitelpunkt in dem Verbindungsdiagramm und jeder Navigationspfad einer Kante in dem Verbindungsdiagramm entspricht. - Ein Benutzer, wie z. B. der Benutzer
220 , kann die Panoramen bzw. die Sammlung von Panoramas dazu verwenden, die durch die Panoramen dargestellten Bereiche wie eine durch die Welt wandelnde Person virtuell zu erkunden. Der Benutzer220 kann sich zwischen Panoramastandorten hin und her bewegen, in denen eine klare Sichtlinie besteht, und Pfade vermeiden, die durch ein Objekt, wie beispielsweise eine Wand, behindert werden. Die zwischen den Panoramas gebildeten Verbindungen beinhalten eine dreidimensionale (3D-)Beziehung zwischen den beiden Bildern, sowie 3D-Übergänge, die das Navigieren durch den Raum von dem ersten Standort zu dem zweiten Standort entlang des geradlinigen Pfades simulieren. Daher startet der Benutzer220 am ersten Panorama310 und navigiert zu dem zweiten Panorama320 , sofern eine Sichtlinie zwischen dem ersten und dem zweiten Panorama besteht. Sollte keine Sichtlinie zwischen dem ersten Panorama310 und dem zweiten Panorama320 bestehen, gibt es keine Verbindung, weshalb der Benutzer220 nicht in der Lage ist, von dem ersten Panorama zu dem zweiten Panorama zu navigieren, genauso wie eine Person nicht in der Lage sein würde, von dem ersten Standort zu dem zweiten Standort zu navigieren, wenn eine Behinderung den Weg versperrt. - Die oben beschriebenen Merkmale können dazu verwendet werden, Verbindungen zwischen Bildern schnell und präzise zu erzeugen, wodurch wiederum für eine realistischere Benutzererfahrung gesorgt wird. Diese Verbindungen können die Navigation zwischen den beiden Standorten, die durch zwei Panoramabilder dargestellt werden, für die Benutzer besser modellieren. Durch die Verwendung übereinstimmender visueller Merkmale in Panoramabildern mit Standort- und Stellungswinkeldaten werden Panoramabilder mit einer gemeinsamen Sichtlinie verbunden. Andererseits sind Panoramabilder, zwischen denen ein oder mehrere Hindernisse, wie z. B. Wände oder Büsche, liegen und durch die Menschen nicht hindurchgehen, nicht miteinander verbunden. Das resultierende Diagramm, das durch die Erzeugung dieser Verbindungen in einer Sammlung von Panoramabildern erstellt wird, kann dazu verwendet werden, die durch die Panoramabilder dargestellten Standorte virtuell so zu erforschen, als ob man tatsächlich durch den Raum gegangen wäre, der in den Panoramabildern dargestellt ist. Zusätzlich minimieren die beschriebenen Merkmale die Anzahl der Verbindungen zwischen den Panoramabildern, um es dem Benutzer zu ermöglichen, in einer sequentielleren Weise durch die Panoramabilder zu navigieren. Diese Merkmale bieten daher eine schnelle und automatische Möglichkeit, Gruppen von geografisch nahegelegenen Panoramabildern zu verbinden, so dass Benutzer virtuell besser navigieren können.
- Obwohl die Erfindung hierin mit Bezug auf bestimmte Ausführungsformen beschrieben wurde, versteht sich, dass diese Ausführungsformen lediglich die Grundsätze und Anwendungen der vorliegenden Erfindung darstellen. Es versteht sich daher, dass zahlreiche Modifizierungen an den veranschaulichenden Ausführungsformen vorgenommen und dass andere Anordnungen konzipiert werden können, ohne vom durch die angefügten Ansprüche definierten Erfindungsgedanken und Umfang der vorliegenden Erfindung abzuweichen.
Claims (6)
- System, das Folgendes umfasst: Speicher, der ein erstes von einem ersten Standort aufgenommenes Bild und ein zweites von einem zweiten Standort aufgenommenes Bild speichert; ein oder mehrere Computergeräte mit einem oder mehreren Prozessoren zum: Ermitteln einer Position des ersten Standortes in Relation zu dem zweiten Standort; Auswählen eines ersten Frames auf dem ersten Bild und eines zweiten Frames auf dem zweiten Bild basierend auf der Position; Identifizieren einer ersten Gruppe visueller Merkmale des ersten Bildes in dem ersten Frame und einer zweiten Gruppe visueller Merkmale des zweiten Bildes in dem zweiten Frame; Ermitteln einer Anzahl übereinstimmender visueller Merkmale zwischen der ersten Gruppe visueller Merkmale und der zweiten Gruppe visueller Merkmale; Ermitteln einer Sicherheitswahrscheinlichkeit für eine Sichtlinie zwischen dem ersten Bild und dem zweiten Bild durch Auswerten einer oder mehrerer Positionen der übereinstimmenden visuellen Merkmale; und Erzeugen eines Navigationspfades von dem ersten Bild zu dem zweiten Bild basierend auf zumindest der Sicherheitswahrscheinlichkeit.
- System nach Anspruch 1, worin der erste Frame in eine Richtung des ersten Standortes und der zweite Frame in die Richtung des zweiten Standortes ausgerichtet sind und der erste und der zweite Frame um einen geradlinigen Pfad zwischen dem ersten Standort und dem zweiten Standort zentriert sind.
- System nach Anspruch 1, worin ein oder mehrere Prozessoren des Weiteren dafür konfiguriert sind, die Position zu ermitteln, indem sie außerdem die Stellungswinkeldaten des ersten Bildes und des zweiten Bildes ermitteln, wobei die Stellungswinkeldaten Orientierungsdaten des ersten Bildes und des zweiten Bildes in Bezug auf die Himmelsrichtungen beinhalten.
- System nach Anspruch 1, worin ein oder mehrere Prozessoren des Weiteren dafür konfiguriert sind, für ein spezifisches Paar übereinstimmender erster und zweiter visueller Merkmale Positionen des ersten und des zweiten übereinstimmenden visuellen Merkmals wie folgt auszuwerten: Werfen eines ersten Strahls von dem ersten Standort zu dem ersten übereinstimmenden visuellen Merkmal in dem ersten Panoramabild; Werfen eines zweiten Strahls von dem zweiten Standort zu dem zweiten übereinstimmenden visuellen Merkmal in dem zweiten Panoramabild; Ermitteln, ob der erste Strahl und der zweite Strahl in einem Bereich zwischen dem ersten Panoramabild und dem zweiten Panoramabild am nächsten zueinander liegen, und Ermitteln der Sicherheitswahrscheinlichkeit des Weiteren basierend auf der Feststellung, ob der erste Strahl und der zweite Strahl in dem Bereich zwischen dem ersten Panoramabild und dem zweiten Panoramabild am nächsten zueinander liegen.
- System nach Anspruch 1, worin ein oder mehrere Prozessoren weiter dafür konfiguriert sind, die Sicherheitswahrscheinlichkeit zu ermitteln, indem jedem Paar übereinstimmender visueller Merkmale ein Stellenwert zugeordnet wird, wobei der Stellenwert mindestens einem der folgenden Faktoren entspricht: (1) Reprojektionsfehler der spezifischen übereinstimmenden visuellen Merkmale; (2) Winkelabstände der jeweiligen spezifischen übereinstimmenden visuellen Merkmale von einem geradlinigen Pfad zwischen dem ersten Standort und dem zweiten Standort; und (3) visuelle Ähnlichkeiten zwischen den spezifischen übereinstimmenden visuellen Merkmalen.
- System nach Anspruch 5, worin ein oder mehrere Prozessoren des Weiteren dafür konfiguriert sind, den eingeschätzten Standort der übereinstimmenden visuellen Merkmale wie folgt zu ermitteln: Werfen eines ersten Strahls von dem ersten Standort zu einem ersten Merkmal in die erste Gruppe visueller Merkmale; Werfen eines zweiten Strahls von dem zweiten Standort zu einem zweiten Merkmal in der zweiten Gruppe visueller Merkmale, wobei es sich bei dem ersten Merkmal und dem zweiten Merkmal um ein Paar übereinstimmender visueller Merkmale handelt; und Wenn der erste Strahl und der zweite Strahl innerhalb eines vorbestimmten Abstandes voneinander liegen, das Festlegen eines Punktes, der der Stelle am nächstgelegensten ist, an der der erste Strahl und der zweite Strahl als der eingeschätzte Standort des ersten Merkmals und des zweiten Merkmals am nächsten aneinander liegen.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/821,118 US9551579B1 (en) | 2015-08-07 | 2015-08-07 | Automatic connection of images using visual features |
US14/821,118 | 2015-08-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE202016008004U1 true DE202016008004U1 (de) | 2017-02-08 |
Family
ID=56799551
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE202016008004.1U Active DE202016008004U1 (de) | 2015-08-07 | 2016-08-04 | Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen |
DE112016001829.0T Ceased DE112016001829T5 (de) | 2015-08-07 | 2016-08-04 | Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112016001829.0T Ceased DE112016001829T5 (de) | 2015-08-07 | 2016-08-04 | Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen |
Country Status (8)
Country | Link |
---|---|
US (1) | US9551579B1 (de) |
EP (1) | EP3274964B1 (de) |
JP (1) | JP6353175B1 (de) |
KR (1) | KR101965878B1 (de) |
CN (1) | CN107683498B (de) |
DE (2) | DE202016008004U1 (de) |
GB (1) | GB2554224A (de) |
WO (1) | WO2017027322A1 (de) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USD780777S1 (en) | 2014-04-22 | 2017-03-07 | Google Inc. | Display screen with graphical user interface or portion thereof |
US9934222B2 (en) | 2014-04-22 | 2018-04-03 | Google Llc | Providing a thumbnail image that follows a main image |
USD781317S1 (en) | 2014-04-22 | 2017-03-14 | Google Inc. | Display screen with graphical user interface or portion thereof |
US9972121B2 (en) * | 2014-04-22 | 2018-05-15 | Google Llc | Selecting time-distributed panoramic images for display |
EP3698269A4 (de) * | 2017-11-22 | 2020-12-09 | Zhejiang Dahua Technology Co., Ltd. | Bildverarbeitungsverfahren und -system |
WO2019164498A1 (en) * | 2018-02-23 | 2019-08-29 | Sony Mobile Communications Inc. | Methods, devices and computer program products for global bundle adjustment of 3d images |
KR102321998B1 (ko) * | 2019-09-17 | 2021-11-04 | 네이버랩스 주식회사 | 환경 변화에 강인한 이미지의 위치 및 방향 추정 방법 및 시스템 |
CN112987764B (zh) * | 2021-02-01 | 2024-02-20 | 鹏城实验室 | 降落方法、装置、无人机以及计算机可读存储介质 |
CN113008252B (zh) * | 2021-04-15 | 2023-08-22 | 东莞市异领电子有限公司 | 基于全景照片的高精度导航装置及导航方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5583795A (en) * | 1995-03-17 | 1996-12-10 | The United States Of America As Represented By The Secretary Of The Army | Apparatus for measuring eye gaze and fixation duration, and method therefor |
US6956967B2 (en) | 2002-05-20 | 2005-10-18 | Eastman Kodak Company | Color transformation for processing digital images |
KR101503624B1 (ko) * | 2006-03-16 | 2015-03-17 | 엠.브루베이커 커티스 | 이동 객체에 하이퍼-관련 광고의 표시를 통한 수익 획득 시스템 및 방법 |
JP4926822B2 (ja) * | 2006-05-24 | 2012-05-09 | 株式会社岩根研究所 | 湧きだし点基準cv領域画像前置装置 |
US7990394B2 (en) * | 2007-05-25 | 2011-08-02 | Google Inc. | Viewing and navigating within panoramic images, and applications thereof |
JP5030890B2 (ja) * | 2008-08-14 | 2012-09-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 複数画像間の関係付けおよび切り替え表示をするための方法、プログラム、および装置 |
US8471858B2 (en) * | 2009-06-02 | 2013-06-25 | Qualcomm Incorporated | Displaying a visual representation of performance metrics for rendered graphics elements |
US9635251B2 (en) * | 2010-05-21 | 2017-04-25 | Qualcomm Incorporated | Visual tracking using panoramas on mobile devices |
WO2013100779A1 (en) * | 2011-12-29 | 2013-07-04 | Intel Corporation | Generalized robust multichannel feature detector |
CN102663957B (zh) * | 2012-03-08 | 2016-01-13 | 北京师范大学 | 一种交互式三维城市全景地图的自动生成方法 |
CN102682448B (zh) * | 2012-03-14 | 2015-03-04 | 浙江大学 | 一种基于双三视张量的立体视觉快速导航定位方法 |
CN103134499A (zh) * | 2013-02-06 | 2013-06-05 | 腾讯科技(深圳)有限公司 | 导航方法及导航装置 |
CN103398717B (zh) * | 2013-08-22 | 2016-04-20 | 成都理想境界科技有限公司 | 全景地图数据库采集系统及基于视觉的定位、导航方法 |
US9651784B2 (en) * | 2014-01-21 | 2017-05-16 | Osterhout Group, Inc. | See-through computer display systems |
-
2015
- 2015-08-07 US US14/821,118 patent/US9551579B1/en active Active
-
2016
- 2016-08-04 GB GB1716739.6A patent/GB2554224A/en not_active Withdrawn
- 2016-08-04 WO PCT/US2016/045569 patent/WO2017027322A1/en active Application Filing
- 2016-08-04 DE DE202016008004.1U patent/DE202016008004U1/de active Active
- 2016-08-04 DE DE112016001829.0T patent/DE112016001829T5/de not_active Ceased
- 2016-08-04 CN CN201680030440.9A patent/CN107683498B/zh active Active
- 2016-08-04 EP EP16756845.0A patent/EP3274964B1/de active Active
- 2016-08-04 JP JP2017563984A patent/JP6353175B1/ja active Active
- 2016-08-04 KR KR1020177031227A patent/KR101965878B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR20170131662A (ko) | 2017-11-29 |
GB2554224A (en) | 2018-03-28 |
EP3274964A1 (de) | 2018-01-31 |
CN107683498A (zh) | 2018-02-09 |
WO2017027322A1 (en) | 2017-02-16 |
JP2018520430A (ja) | 2018-07-26 |
GB201716739D0 (en) | 2017-11-29 |
EP3274964B1 (de) | 2019-04-17 |
JP6353175B1 (ja) | 2018-07-04 |
CN107683498B (zh) | 2019-07-23 |
DE112016001829T5 (de) | 2018-01-04 |
KR101965878B1 (ko) | 2019-04-05 |
US20170038212A1 (en) | 2017-02-09 |
US9551579B1 (en) | 2017-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE202016008004U1 (de) | Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen | |
DE112012001984B4 (de) | Integrieren von Video-Metadaten in 3D-Modelle | |
DE202015009198U1 (de) | Auswahl der zeitlich verteilten Panoramabilder für die Anzeige | |
DE202014010843U1 (de) | Ausrichten von bodenbasierten Bildern mit Luftbildern | |
DE112016001830T5 (de) | Das Entdecken von Unternehmen aus Bildern | |
DE112018001050T5 (de) | System und verfahren zur virtuell erweiterten visuellen gleichzeitigen lokalisierung und kartographierung | |
DE202014010922U1 (de) | Erzeugung von Tiefenkarten | |
DE112018000332T5 (de) | Dichtes visuelles slam mit probabilistic-surfel-map | |
DE202014010927U1 (de) | Referenzpunktidentifizierung aus Punktwolken, die aus geografischen Bilddaten erstellt werden | |
DE202015009182U1 (de) | Ausrichten von Panoramaaufnahmen und Luftaufnahmen | |
DE202014010895U1 (de) | Techniken für die Navigation zwischen mehreren Bildern | |
DE202009019124U1 (de) | Bildinhalte zur einfacheren Navigation in Panorama-Bilddaten | |
DE112019000687T5 (de) | Fotorealistische dreidimensionale texturierung unter verwendung kanonischer ansichten und eines zweistufigen ansatzes | |
EP2923333B1 (de) | Verfahren zum automatischen erstellen von zwei- oder dreidimensionalen gebäudemodellen | |
DE202009019126U1 (de) | Dreidimensionale Beschriftungen für Strassenansichtsdaten | |
DE202015009137U1 (de) | Verwenden von Bildmerkmalen zur Extraktion von Ansichtsfenstern aus Bildern | |
DE202015009181U1 (de) | Überblendung zwischen Straßenansicht und Erdansicht | |
DE202015009139U1 (de) | Bildmodifikation | |
DE202016006110U1 (de) | Erweiterung des Sichtfeldes von Fotografie | |
DE112016002022T5 (de) | Managen von merkmalsdaten zur umgebungsabbildung auf einer elektronischen vorrichtung | |
DE202016006008U1 (de) | Automatische Erkennung von Panoramagesten | |
DE202011110874U1 (de) | System zur Bestimmung von Gebäudenummern | |
DE112020000590T5 (de) | Karte und verfahren zum erstellen einer karte | |
DE102017012116A1 (de) | Vorschauerzeugung aus panoramischen Bildern | |
DE112016003134T5 (de) | Anzeigen von Objekten basierend auf einer Vielzahl von Modellen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R207 | Utility model specification | ||
R081 | Change of applicant/patentee |
Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US |
|
R082 | Change of representative |
Representative=s name: BETTEN & RESCH PATENT- UND RECHTSANWAELTE PART, DE |
|
R150 | Utility model maintained after payment of first maintenance fee after three years | ||
R151 | Utility model maintained after payment of second maintenance fee after six years |