DE202014010849U1 - System for determining compass alignment of images - Google Patents

System for determining compass alignment of images Download PDF

Info

Publication number
DE202014010849U1
DE202014010849U1 DE202014010849.8U DE202014010849U DE202014010849U1 DE 202014010849 U1 DE202014010849 U1 DE 202014010849U1 DE 202014010849 U DE202014010849 U DE 202014010849U DE 202014010849 U1 DE202014010849 U1 DE 202014010849U1
Authority
DE
Germany
Prior art keywords
image
feature
sun
azimuth
determining
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
Application number
DE202014010849.8U
Other languages
German (de)
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
Priority to DE202014010849.8U priority Critical patent/DE202014010849U1/en
Publication of DE202014010849U1 publication Critical patent/DE202014010849U1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C1/00Measuring angles
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C17/00Compasses; Devices for ascertaining true or magnetic north for navigation or surveying purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30181Earth observation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Abstract

System, das Folgendes umfasst: einen oder mehrere Prozessor(en); und Speicher, der Anweisungen speichert, wobei die Anweisungen durch den Prozessor ausführbar sind, worin die Anweisungen Folgendes umfassen: Identifizieren einer Position eines Merkmals in einem Bild basierend auf der visuellen Ähnlichkeit des Merkmals mit einem Schatten; Bestimmen einer Kompasspeilung basierend auf der Position des Merkmals in dem Bild; und Assoziieren eines Teils des Bildes mit der bestimmten Kompasspeilung.A system comprising: one or more processors; and memory storing instructions, the instructions being executable by the processor, the instructions comprising: identifying a position of a feature in an image based on the visual similarity of the feature to a shadow; Determining a compass bearing based on the position of the feature in the image; and associating a portion of the image with the determined compass bearing.

Description

HINTERGRUNDBACKGROUND

Fotosphären beinhalten Bilder, die die gesamte oder einen Teil einer von einer Kamera aufgenommenen Sichtsphäre abdecken. Eine Fotosphäre kann beispielsweise ein Sichtfeld aufweisen, das 360° der für die Kamera sichtbaren Merkmale sowohl in horizontaler als auch vertikaler Richtung erfasst. Jeder Teil des Bildes kann mit einem relativen Winkelwert assoziiert sein. Beispielshalber können vertikale Richtungen relativ zu einem Gravitationsvektor referenziert sein, wobei 0° in der vertikalen Richtung dem Horizont entsprechen kann, –90° in der vertikalen Richtung die Sicht genau nach unten schauend darstellen kann, und 90° in der vertikalen Richtung die Sicht genau nach oben schauend darstellen kann. Horizontale Richtungen können Kompasspeilungen entsprechen. Zum Beispiel kann 0° in der horizontalen Richtung genau Norden entsprechen und 90°, 180° und 270° in der horizontalen Richtung können jeweils genau Osten, Süden oder Westen entsprechen. Die horizontale Koordinate der Fotosphäre entspricht einem Azimutwinkel, und die vertikale Koordinate entspricht einem Elevationswinkel.Photo spheres include images that cover all or part of a viewing sphere captured by a camera. For example, a photosphere may have a field of view that captures 360 ° of the camera visible features in both the horizontal and vertical directions. Each part of the image may be associated with a relative angle value. For example, vertical directions may be referenced relative to a gravitational vector, where 0 ° in the vertical direction may correspond to the horizon, -90 ° in the vertical direction may represent the viewpoint exactly downwards, and 90 ° in the vertical direction the viewpoint exactly after looking up. Horizontal directions can correspond to compass bearings. For example, 0 ° in the horizontal direction may correspond exactly to the north and 90 °, 180 ° and 270 ° in the horizontal direction may respectively correspond to the east, south or west. The horizontal coordinate of the photosphere corresponds to an azimuth angle, and the vertical coordinate corresponds to an elevation angle.

Die Ausrichtung der Sphäre relativ zu Kompasspeilungen kann basierend auf Messwerten eines Magnetkompasses gemessen und gespeichert werden. So kann beispielsweise die Vorrichtung, zu der Zeit, zu der der Benutzer einer mobilen Vorrichtung (wie einem Telefon) beginnt, eine Szene mit der Kamera der Vorrichtung zum Zwecke einer Erstellung einer Fotosphäre aufzunehmen, die Ausrichtung basierend auf dem internen Kompass der Vorrichtung und den Gravitationsvektor basierend auf dem internen Beschleunigungssensor der Vorrichtung identifizieren. Die Ausrichtung kann mit Bezug auf einen Vektor, der orthogonal zu dem Gravitationsvektor ist und nach Norden zeigt, definiert werden. Die Ausrichtung kann außerdem unter Verwendung eines Gyroskops der Vorrichtung zum Messen von Veränderungen in der Gierung der Vorrichtung relativ zu einer anfänglichen Kompasspeilung identifiziert werden. Die Vorrichtung kann außerdem auch das Datum, Zeit und geografischen Standort zur Zeit der Aufnahme speichern.The orientation of the sphere relative to compass bearings can be measured and stored based on measurements of a magnetic compass. For example, at the time that the user of a mobile device (such as a phone) begins to take a scene with the camera of the device for the purpose of creating a photosphere, the device may adjust the orientation based on the device's internal compass and Identify gravity vector based on the device's internal accelerometer. The orientation may be defined with reference to a vector that is orthogonal to the gravitational vector and pointing north. Alignment may also be identified using a gyroscope of the apparatus for measuring changes in the yaw of the apparatus relative to an initial compass bearing. The device may also store the date, time and geographic location at the time of recording.

In einigen Fällen kann die Kompassrichtung, in der ein Foto aufgenommen wurde, durch Abgleichen des Fotoinhalts mit einer existierenden Datenbank geografischer Merkmale mit bekannten geografischen Standorten bestimmt werden. So können beispielsweise Flächen oder markante Punkte in einem ersten Bild verwendet werden, um eine Datenbank mit Flächen und markanten Punkten, die geografische Standorte aufweisen, abzufragen, wie unter Verwendung von Structure-from-Motion(SfM)-Verfahren.In some cases, the compass direction in which a photo was taken can be determined by matching the photo content with an existing geographic feature database with known geographic locations. For example, areas or prominent points in a first image can be used to query a database of areas and landmarks that have geographic locations, such as using structure-from-motion (SfM) techniques.

Die Ausrichtung einer Fotosphäre kann verwendet werden, wenn Benutzern die Fotosphäre angezeigt wird. Ein Betrachter kann beispielsweise anfordern, eine bestimmte Richtung einer Fotosphäre zu sehen (z. B. entweder durch Interagieren mit der Fotosphäre selbst, durch eine kartenbasierte Steuerung, programmtechnisch usw.).The orientation of a photosphere can be used when users see the photosphere. For example, a viewer may request to see a particular direction of a photosphere (eg, either by interacting with the photosphere itself, by card-based control, programmatically, etc.).

KURZE ZUSAMMENFASSUNGSHORT SUMMARY

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.Under protection and subject to the utility model are, according to the provisions of the utility model law, only devices as defined in the appended claims, but no method. Wherever in the description, if appropriate, reference is made to methods, these references are merely illustrative of the device or devices set forth in the appended claims.

Ein Aspekt der Offenbarung stellt ein System bereit, dass einen oder mehrere Prozessoren und einen Speicher, der Anweisungen speichert, beinhaltet. Die Anweisungen sind durch den Prozessor ausführbar und beinhalten: Identifizieren einer Position eines Merkmals in einem Bild basierend auf der visuellen Ähnlichkeit des Merkmals mit einem Schatten; Bestimmen einer Kompasspeilung basierend auf der Position des Merkmals in dem Bild; und Assoziieren eines Teils des Bildes mit der bestimmten Kompasspeilung.One aspect of the disclosure provides a system that includes one or more processors and memory storing instructions. The instructions are executable by the processor and include: identifying a position of a feature in an image based on the visual similarity of the feature to a shadow; Determining a compass bearing based on the position of the feature in the image; and associating a portion of the image with the determined compass bearing.

Noch ein anderer Aspekt der Offenbarung stellt ein System bereit, das einen oder mehrere Prozessoren und einen Speicher, der Anweisungen, die durch den Prozessor ausführbar sind, speichert. Die Anweisungen beinhalten: Identifizieren einer ersten Position eines ersten Merkmals in einem Bild basierend auf der visuellen Ähnlichkeit des ersten Merkmals mit einem Himmelskörper; Identifizieren einer zweiten Position eines zweiten Merkmals in dem Bild basierend auf der visuellen Ähnlichkeit des Merkmals mit einem Objekt, das mit einem geografischen Standort assoziiert ist; Bestimmen, basierend auf der Position der ersten Position relativ zu der zweiten Position, eines Azimutwinkels; und Assoziieren eines Teils des Bildes mit dem bestimmten Azimutwinkel.Yet another aspect of the disclosure provides a system that stores one or more processors and a memory that stores instructions executable by the processor. The instructions include: identifying a first position of a first feature in an image based on the visual similarity of the first feature to a celestial body; Identifying a second position of a second feature in the image based on the visual similarity of the feature to an object associated with a geographic location; Determining, based on the position of the first position relative to the second position, an azimuth angle; and associating a portion of the image with the determined azimuth angle.

KURZE BESCHREIBUNG DER ZEICHNUNGENBRIEF DESCRIPTION OF THE DRAWINGS

1 ist ein Funktionsdiagramm von eines Systems gemäß einem Aspekt von dem System und Verfahren. 1 FIG. 12 is a functional diagram of a system according to one aspect of the system and method. FIG.

2 ist ein Beispiel der Ausrichtung eines Beispielbildes. 2 is an example of the orientation of a sample image.

3 ist ein Beispiel eines Lokalisierens visueller Merkmale in einem Beispielbild. 3 is an example of locating visual features in a sample image.

4 ist ein Beispiel eines Bestimmens der Ausrichtung eines Beispielbildes. 4 is an example of determining the orientation of a sample image.

5 ist eine grafische Darstellung des Azimuts der Sonne relativ zu einer Elevation während eines Tages an einem beispielhaften geografischen Standort. 5 FIG. 12 is a graphical representation of the azimuth of the sun relative to elevation during a day at an exemplary geographic location. FIG.

6 ist eine grafische Darstellung des Azimuts der Sonne relativ zu einer Elevation während eines Jahres an einem beispielhaften geografischen Standort. 6 FIG. 12 is a graphical representation of the azimuth of the sun relative to elevation during a year at an exemplary geographic location. FIG.

7 ist eine grafische Darstellung der Wahrscheinlichkeit, dass sich die Sonne an einem bestimmten Azimut an einem beispielhaften geografischen Standort befindet. 7 is a graphical representation of the likelihood that the sun is at a particular azimuth at an exemplary geographic location.

8 ist ein Beispiel eines Bestimmens der Ausrichtung eines Beispielbildes. 8th is an example of determining the orientation of a sample image.

9 ist ein Beispiel eines Bestimmens der Ausrichtung eines Beispielbildes. 9 is an example of determining the orientation of a sample image.

10 ist ein Beispiel eines Bestimmens der Ausrichtung eines Beispielbildes. 10 is an example of determining the orientation of a sample image.

11 ist ein Beispielflussdiagramm gemäß Aspekten der Offenbarung. 11 FIG. 10 is an example flowchart according to aspects of the disclosure. FIG.

12 ist ein Beispielflussdiagramm gemäß Aspekten der Offenbarung. 12 FIG. 10 is an example flowchart according to aspects of the disclosure. FIG.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

Überblickoverview

Die Technik betrifft ein Bestimmen der Kompassausrichtung eines Bildes. Ein Benutzer kann zum Beispiel ein oder mehrere Computergeräte verwenden, um eine Fotosphäre aufzunehmen und hochzuladen, und ein oder mehrere Computergeräte verwenden, um den Teil der Fotosphäre, der nach Norden zeigt, durch Erfassen der Position eines Himmelskörpers innerhalb des Bildes zu bestimmen.The technique relates to determining the compass orientation of an image. For example, a user may use one or more computing devices to capture and upload a photosphere and use one or more computing devices to determine the portion of the photosphere pointing north by detecting the position of a celestial body within the image.

Beispielhaft ist 2 ein Beispiel einer Fotosphäre, die durch Projizieren der Fotosphäre auf eine flache Oberfläche zu Darstellungszwecken geebnet wurde. Die Fotosphäre kann mit einer Kompasspeilung assoziiert sein. So kann beispielsweise zu der Zeit, zu der eine Vorrichtung verwendet wurde, um ein Bild aufzunehmen, der Magnetkompass der Vorrichtung verwendet worden sein, um den Teil des Fotos zu identifizieren, der nach Norden zeigt. Die Vorrichtung kann ferner das Datum, Zeit und geografischen Standort, an dem das Bild aufgenommen wurde, erfasst haben.Exemplary 2 an example of a photosphere that has been planarized by projecting the photosphere onto a flat surface for purposes of illustration. The photosphere may be associated with a compass bearing. For example, at the time a device was used to capture an image, the magnetic compass of the device may have been used to identify the portion of the photo pointing north. The device may also have captured the date, time and geographic location where the image was taken.

Die Informationen, die von der Vorrichtung erfasst wurden und mit der Fotosphäre assoziiert sind, können verwendet werden, um den erwarteten Standort der Sonne innerhalb der Fotosphäre zu bestimmen. So können beispielsweise und wie in 5 gezeigt, die Elevation und Azimut der Sonne, als die Fotosphäre aufgenommen wurde, basierend auf dem geografischen Standort, Datum und Zeit, die mit der Fotosphäre assoziiert sind, berechnet werden. Wie in 3 gezeigt, kann die berechnete Elevation (y-Koordinate) verwendet werden, um einen Bereich von Elevationen zu identifizieren, innerhalb derer eine Suche nach einem Merkmal innerhalb der Fotosphäre, das die visuellen Eigenschaften der Sonne aufweist, durchgeführt werden soll.The information acquired by the device and associated with the photosphere can be used to determine the expected location of the sun within the photosphere. For example, and as in 5 The elevation and azimuth of the sun when the photosphere was captured are calculated based on the geographic location, date and time associated with the photosphere. As in 3 As shown, the calculated elevation (y-coordinate) may be used to identify a range of elevations within which a search for a feature within the photosphere having the visual properties of the sun is to be performed.

Sobald die Sonne lokalisiert wurde, kann ihre Position innerhalb der Fotosphäre verwendet werden, um die Ausrichtung, die mit der Fotosphäre assoziiert ist, anzupassen. So kann beispielsweise und wie in 4 gezeigt, die horizontale Position (x-Koordinate) der Sonne innerhalb der Fotosphäre mit einer Kompasspeilung assoziiert sein, die gleich dem berechneten Azimut der Sonne ist. Die horizontale Position von genau Norden der Fotosphäre kann dann basierend auf der horizontalen Position der Sonne und dem berechneten Azimut der Sonne bestimmt werden. Soweit es einen Unterschied zwischen der zuvor gespeicherten relativen Ausrichtung von genau Norden und der berechneten relativen Ausrichtung von genau Norden gibt, kann die Ausrichtung von genau Norden mit der Fotosphäre basierend auf dem Unterschied modifiziert werden.Once the sun has been located, its position within the photosphere can be used to adjust the orientation associated with the photosphere. For example, and as in 4 shown, the horizontal position (x-coordinate) of the sun within the photosphere is associated with a compass bearing equal to the calculated azimuth of the sun. The horizontal position from the very north of the photosphere can then be determined based on the horizontal position of the sun and the calculated azimuth of the sun. As far as there is a difference between the previously stored relative orientation of the exact north and the calculated relative orientation of exactly north, the orientation of exactly north can be modified with the photosphere based on the difference.

Die Ausrichtung der Fotosphäre kann außerdem von der Position der Sonne geschätzt werden, wenn das Datum und Zeit der Aufnahme der Fotosphäre unbekannt sind. 6 stellt die Position der Sonne zu jeder Stunde über jeden Tag eines gesamten Jahres hinweg an einem bestimmten geografischen Standort grafisch dar. Es gibt 24 Markierungen, eine für jede Stunde des Tags, und jede Markierung ist eine Sammlung von 365 Punkten, die zeigen, wo sich die Sonne zu dieser Stunde während des Jahres befindet. Wie durch die grafische Darstellung dargestellt, gibt es eine beschränkte Auswahl möglicher Azimute, wenn die Sonne in einer gegebenen Elevation ist. Zum Beispiel, wenn die Sonne am Horizont (Elevation 0°) ist, geht die Sonne entweder im Osten auf (z. B. an oder nahe 90°) oder im Westen unter (z. B. an oder nahe 270°); der Azimut der Sonne wird nicht genau im Süden (Azimut 180°) sein. Wenn die Sonne jedoch an ihrem höchsten Punkt im Himmel ist, dann ist auf der nördlichen Hemisphäre die Sonne direkt über Kopf oder genau südlich von direkt über Kopf. 7 ist ein Beispiel der Wahrscheinlichkeit, dass die Sonne an unterschiedlichen Azimuten ist, wenn die Sonne auf einer bestimmten Elevation an einem bestimmten geografischen Standort ist.The orientation of the photosphere can also be estimated from the position of the sun, if the date and time of taking the photosphere are unknown. 6 Graphs the position of the sun at any hour over any day of the year at a particular geographic location. There are 24 markers, one for each hour of the day, and each mark is a collection of 365 points that show where the sun is at this hour during the year. As shown by the graph, there is a limited choice of possible azimuths when the sun is in a given elevation. For example, when the sun is on the horizon (elevation 0 °), the sun is either in the east (eg at or near 90 °) or in the west below (eg at or near 270 °); the azimuth of the sun will not be exactly in the south (azimuth 180 °). However, when the sun is at its highest point in the sky, in the northern hemisphere the sun is directly overhead or just south of head over heels. 7 is an example of the probability that the sun is at different azimuths is when the sun is at a certain elevation at a particular geographic location.

Die berechnete Elevation einer Fotosphäre kann auf der berechneten Ausrichtung einer anderen Fotosphäre basieren, einschließlich, beispielhaft, wenn mehrere Fotosphären in Nähe zueinander aufgenommen wurden. Wie in 8 gezeigt kann die berechnete Ausrichtung jeder Fotosphäre beispielsweise auf übereinstimmenden visuellen Merkmalen und Ausrichtungen, die für die anderen Fotosphären berechnet wurden, basieren.The calculated elevation of a photosphere may be based on the calculated orientation of another photosphere, including, for example, when multiple photo spheres were taken in close proximity. As in 8th For example, the calculated orientation of each photosphere may be based on consistent visual features and orientations calculated for the other photo spheres.

Die Ausrichtung einer Fotosphäre kann außerdem basierend auf Schatten abgeschätzt werden. Beispielhaft und wie in 9 gezeigt, kann die Position der Sonne schwer zu bestimmen sein, wenn das Bild der Fotosphäre sich nicht hoch genug erstreckt, um die Sonne zu erfassen oder, wenn die Sonne selbst in der Sicht der Aufnahmevorrichtung verdeckt ist. In dem Fall, dass die Vorrichtung Schwierigkeiten hat, die Sonne innerhalb des Bildes zu lokalisieren, kann die Vorrichtung bestimmen, ob es visuelle Merkmale innerhalb des Bildes gibt, die mit dem Schatten eines Fotografen, der ein Bild aufnimmt, visuell ähnlich sind. Falls ja, kann die Vorrichtung bestimmen, dass die Azimut-Koordinate der Sonne 180° von dem Azimut des Vektors, der von dem Fußpunkt der Fotosphäre (dem Punkt bei –90 Grad der Elevation) durch die Mitte des Schattens des Fotografen gerichtet ist, versetzt ist.The orientation of a photosphere can also be estimated based on shadows. Exemplary and as in 9 As shown, the position of the sun may be difficult to determine if the image of the photosphere does not extend high enough to capture the sun, or if the sun itself is obscured in the view of the cradle. In the event that the device has difficulty locating the sun within the image, the device may determine if there are any visual features within the image that are visually similar to the shadow of a photographer taking an image. If so, the apparatus may determine that the azimuth coordinate of the sun is offset 180 ° from the azimuth of the vector that is directed from the foot of the photosphere (the point at -90 degrees of elevation) through the center of the shadow of the photographer is.

Die Position der Sonne kann auch verwendet werden, um Ausrichtungsuneindeutigkeiten in Bezug auf Merkmale mit bekannten geografischen Standorten aufzulösen. Wie in 10 gezeigt kann ein Bild an einem bestimmten geografischen Standort ohne Ausrichtungsinformationen aufgenommen worden sein. Die Computergeräte können bestimmen, ob der Standort des Bildes in nahe einem Merkmal mit einem bekannten geografischen Standort, wie einer Straße, ist. Wenn ja, können die Computergeräte die Position der Sonne relativ zu dem Merkmal bestimmen, wie Bestimmen, ob ein bestimmter Teil einer Straße nach Osten oder nach Westen führt. BeispielsystemeThe position of the sun can also be used to resolve alignment ambiguities related to features with known geographic locations. As in 10 As shown, an image may have been taken at a particular geographic location without orientation information. The computing devices may determine if the location of the image is near a feature having a known geographic location, such as a road. If so, the computing devices may determine the position of the sun relative to the feature, such as determining whether a particular portion of a road is leading east or west. example systems

1 stellt ein mögliches System 100 dar, in welchem die hierin offenbarten Aspekte implementiert sein können. In diesem Beispiel kann System 100 Computergeräte 110 und 120 beinhalten. Computergeräte 110 können einen oder mehrere Prozessoren 112, Speicher 114 und andere Komponenten, die typischerweise in Universal-Computergeräten vorliegen, enthalten. Obwohl 1 jeden der Prozessoren 112 und Speicher 114 funktional als einen einzelnen Block innerhalb Vorrichtung 110 darstellt, die ebenfalls als ein einzelner Block dargestellt ist, kann das System und können die hierin beschriebenen Verfahren mehrere Prozessoren, Speicher und Vorrichtungen beinhalten, die innerhalb dieses physischen Gehäuses aufgenommen sein können oder nicht sein können. Zum Beispiel können verschiedene Verfahren, die nachstehend als eine einzige Komponente (z. B. Prozessor 112) umfassend beschrieben sind, mehrere Komponenten (z. B. mehrere Prozessoren in einer lastverteilenden Serverfarm) umfassen. In gleicher Weise können verschiedene Verfahren, die nachstehen als verschiedene Komponenten (z. B. Vorrichtung 110 und Vorrichtung 120) umfassend beschrieben sind, eine einzige Komponente umfassen (z. B. an Stelle von Vorrichtung 120, die eine nachstehen beschriebene Bestimmung durchführt, kann Vorrichtung 120 die relevanten Daten zur Verarbeitung an Vorrichtung 110 senden und die Ergebnisse der Bestimmung zur weiteren Verarbeitung oder Anzeige empfangen). 1 represents a possible system 100 in which the aspects disclosed herein may be implemented. In this example, system 100 computer equipment 110 and 120 include. computer equipment 110 can have one or more processors 112 , Storage 114 and other components typically found in general purpose computer devices. Even though 1 each of the processors 112 and memory 114 functional as a single block within device 110 Also shown as a single block, the system and methods described herein may include a plurality of processors, memory and devices that may or may not be housed within that physical enclosure. For example, various methods, hereinafter referred to as a single component (eg, processor 112 ) comprising a plurality of components (eg, multiple processors in a load-sharing server farm). Likewise, various methods may be used which are different than various components (eg, apparatus 110 and device 120 ), comprise a single component (eg, in place of device 120 , which performs a determination described below, may device 120 the relevant data for processing on device 110 send and receive the results of the determination for further processing or display).

Speicher 114 von Computergerät 110 kann Informationen speichern, die von Prozessor 112 abgerufen werden können, einschließlich Anweisungen 116, die durch den Prozessor 112 ausgeführt werden können. Speicher 114 kann außerdem Daten 118 beinhalten, die durch Prozessor 112 abgerufen, manipuliert oder gespeichert werden können. Speicher 114 und die anderen hierin beschriebenen Speicher können jede Art von Speicher sein, der fähig ist, Informationen, die durch den relevanten Prozessor abgerufen werden können, zu speichern, wie ein Festplattenlaufwerk, ein Solid-State-Drive, eine Speicherkarte, RAM, DVD, beschreibbarer Speicher oder ausschließlich lesbarer Speicher. Darüber hinaus kann der Speicher ein verteiltes Speichersystem beinhalten, wobei Daten, wie Daten 150, auf mehreren verschiedenen Speichervorrichtungen gespeichert werden, die sich physisch an demselben oder unterschiedlichen geografischen Standorten befinden können.Storage 114 from computer device 110 can store information by processor 112 can be obtained, including instructions 116 that through the processor 112 can be executed. Storage 114 can also data 118 involve, by processor 112 can be retrieved, manipulated or stored. Storage 114 and the other memories described herein may be any type of memory capable of storing information retrievable by the relevant processor, such as a hard disk drive, a solid state drive, a memory card, RAM, DVD, writable Memory or read only memory. In addition, the memory may include a distributed memory system, where data, such as data 150 , stored on several different storage devices that may physically reside at the same or different geographical locations.

Die Anweisungen 116 können ein Satz von Anweisungen sein, die durch Prozessor 112 oder ein anderes Computergerät ausgeführt werden sollen. Diesbezüglich können die Begriffe „Anweisungen”, „Anwendung”, „Schritte” und „Programme” hierin austauschbar verwendet sein. Die Anweisungen können in Objektcodeformat zur sofortigen Verarbeitung durch den Prozessor oder in einer anderen Computergerätsprache, die Skripte oder Sammlungen von unabhängigen Quellcode-Modulen beinhaltet, die auf Anforderung interpretiert oder vorab kompiliert werden. Funktionen, Verfahren und Routinen der Anweisungen werden unten ausführlicher erklärt. Prozessor 112 kann jeder herkömmliche Prozessor sein, wie eine im Handel erhältliche CPU. Alternativ kann der Prozessor eine dedizierte Komponente wie ein ASIC oder ein anderer hardwarebasierter Prozessor sein.The instructions 116 can be a set of instructions by processor 112 or another computer device. In this regard, the terms "instructions", "application", "steps" and "programs" may be used interchangeably herein. The instructions may be in object code format for immediate processing by the processor or other computing device language including scripts or collections of independent source code modules that are interpreted upon request or compiled in advance. Functions, procedures and routines of the instructions are explained in more detail below. processor 112 can be any conventional processor, such as a commercially available CPU. Alternatively, the processor may be a dedicated component such as an ASIC or other hardware-based processor.

Daten 118 können gemäß den Anweisungen 116 durch Computergerät 110 abgerufen, gespeichert oder modifiziert werden. So können beispielsweise, obwohl der hierin beschriebene Gegenstand nicht durch eine beliebige bestimmte Datenstruktur beschränkt ist, die Daten in Computerregistern, in einer relationalen Datenbank als Tabelle, die viele verschiedene Felder und Datensätze aufweist, oder XML-Dokumenten gespeichert werden. Die Daten können außerdem in einem beliebigen computergerätlesbaren Format wie, aber nicht beschränkt auf, Binärwerten, ASCII oder Unicode formatiert sein. Des Weiteren können die Daten beliebige Informationen umfassen, die ausreichend sind, um die relevanten Informationen zu identifizieren, wie Zahlen, beschreibenden Text, proprietäre Codes, Zeiger, Referenzen auf Daten, die in anderen Speichern wie anderen Netzwerkstandorten gespeichert sind, oder Informationen, die von einer Funktion verwendet werden, um die relevanten Daten zu berechnen, umfassen.dates 118 can according to the instructions 116 through computer device 110 be retrieved, saved or modified. So can For example, although the subject matter described herein is not limited by any particular data structure, the data is stored in computer registers, in a relational database as a table having many different fields and records, or XML documents. The data may also be formatted in any computer-readable format such as, but not limited to, binary, ASCII, or Unicode. Furthermore, the data may include any information sufficient to identify the relevant information, such as numbers, descriptive text, proprietary codes, pointers, references to data stored in other memory such as other network locations, or information obtained from a function can be used to calculate the relevant data include.

Das Computergerät 110 kann an einem Knoten eines Netzwerks 160 sein und imstande sein, direkt und indirekt mit anderen Knoten des Netzwerks 160 zu kommunizieren. Obwohl nur einige Computergeräte in 1 dargestellt sind, kann ein typisches System eine große Anzahl verbundener Computergeräte beinhalten, wobei sich jedes unterschiedliche Computergerät an einem unterschiedlichen Knoten des Netzwerks 160 befindet. Das Netzwerk 160 und dazwischenliegende Knoten, die hierin beschrieben sind, können unter Verwendung verschiedener Protokolle und Systeme vernetzt sein, sodass das Netzwerk Teil des Internets, Word Wide Web, spezifischer Intranets, Langstreckennetze oder lokaler Netzwerke sein kann. Das Netzwerk kann Standardkommunikationsprotokolle, wie Ethernet, WLAN und HTTP, Protokolle, die proprietär für ein oder mehrere Unternehmen sind, und verschiedene Kombinationen der vorstehenden nutzen. Als ein Beispiel kann Computergerät 110 ein Webserver sein, der imstande ist, mit Computergeräte 120 über das Netzwerk 160 zu kommunizieren. Computergerät 120 kann ein Client-Computergerät sein, und Server 110 kann Informationen unter Verwendung eines Netzwerks 160 anzeigen und einem Benutzer 125 von Vorrichtung 120 über ein Display 122 Informationen bereitstellen. Obwohl bestimmte Vorteile erzielt werden, wenn Informationen wie oben beschrieben übertragen oder empfangen werden, sind andere Aspekte des hierin beschriebenen Gegenstands nicht auf eine bestimmte Art der Übertragung von Informationen beschränkt.The computer device 110 can be at a node of a network 160 be and be able to communicate directly and indirectly with other nodes of the network 160 to communicate. Although only a few computer devices in 1 For example, a typical system may include a large number of connected computing devices, each different computing device at a different node of the network 160 located. The network 160 and intervening nodes described herein may be networked using various protocols and systems, such that the network may be part of the Internet, Word Wide Web, specific intranets, long distance networks, or local area networks. The network may utilize standard communication protocols such as Ethernet, WLAN and HTTP, protocols that are proprietary to one or more companies, and various combinations of the foregoing. As an example, computing device 110 a web server that is capable of using computer devices 120 over the network 160 to communicate. computing device 120 can be a client computing device, and server 110 can get information using a network 160 Show and a user 125 of device 120 via a display 122 Provide information. Although certain advantages are achieved when transmitting or receiving information as described above, other aspects of the subject matter described herein are not limited to any particular type of information transfer.

Computergerät 120 kann ähnlich dem Server 110 mit einem Prozessor, Speichern und Anweisungen wie oben beschrieben, konfiguriert sein. Computergerät 120 kann ein persönliches Computergerät sein, das zur Verwendung durch einen Benutzer vorgesehen ist, und alle Komponenten aufweisen, die normalerweise in Verbindung mit einem persönlichen Computergerät verwendet werden, wie eine zentrale Verarbeitungseinheit (CPU), Speicher, der Daten und Anweisungen speichert, eine Anzeige wie Anzeige 122 (z. B. ein Monitor, der einen Bildschirm aufweist, ein berührungsempfindliches Display, ein Projektor, ein Fernseher oder eine andere Vorrichtung, die betriebsfähig ist, Informationen anzuzeigen), Benutzereingabevorrichtung 124 (z. B. eine Maus, Tastatur, Berührungsbildschirm, Mikrofon usw.) und Kamera 125.computing device 120 can be similar to the server 110 with a processor, memory and instructions as described above. computing device 120 may be a personal computing device intended for use by a user and having all the components normally used in conjunction with a personal computing device, such as a central processing unit (CPU), memory storing data and instructions, an indication such as display 122 (eg, a monitor having a screen, a touch-sensitive display, a projector, a television or other device operable to display information), user input device 124 (eg, a mouse, keyboard, touch screen, microphone, etc.) and camera 125 ,

Computergerät 120 kann außerdem ein mobiles Computergerät sein, das imstande ist, Daten drahtlos über ein Netzwerk wie dem Internet mit einem Server auszutauschen. Nur beispielhaft kann Computergerät 120 ein Mobiltelefon oder eine Vorrichtung wie ein funkfähiger PDA, ein Tablet-PC, ein tragbares Computergerät oder ein Netbook sein, die in der Lage sind, Informationen über das Internet abzurufen. Die Vorrichtung kann konfiguriert sein, mit einem Betriebssystem wie Googles Betriebssystem Android, Microsoft Windows oder Apple iOS zu funktionieren. Diesbezüglich können einige der Anweisungen, die während der hierin beschriebenen Operationen ausgeführt werden, durch das Betriebssystem bereitgestellt sein, wohingegen andere Anweisungen durch eine Anwendung, die auf der Vorrichtung installiert ist, bereitgestellt sein können. Computergeräte gemäß den hierin beschriebenen Systemen und Verfahren können andere Vorrichtungen beinhalten, die imstande sind, Instruktionen zu verarbeiten und Daten an und von Menschen und/oder anderen Computern, einschließlich Netzwerkcomputern, denen eine lokale Speichermöglichkeit fehlt, und Set-Top-Boxen für Fernseher, zu übertragen.computing device 120 may also be a mobile computing device capable of wirelessly exchanging data with a server over a network such as the Internet. Only by way of example can computing device 120 a mobile phone or a device such as a wireless PDA, a tablet PC, a portable computing device or a netbook that are able to retrieve information over the Internet. The device may be configured to operate with an operating system such as Google's Android operating system, Microsoft Windows or Apple iOS. In this regard, some of the instructions that are executed during the operations described herein may be provided by the operating system, whereas other instructions may be provided by an application installed on the device. Computer devices according to the systems and methods described herein may include other devices capable of processing instructions and data to and from humans and / or other computers, including network computers lacking local storage capability and TV set-top boxes. transferred to.

Computergerät 120 kann eine Komponente 130, wie Schaltungen, beinhalten, um den geografischen Standort und Ausrichtung der Vorrichtung zu bestimmen. Client-Computergerät 120 kann beispielsweise einen GPS-Empfänger 131 beinhalten, um die Breiten-, Längen- und Höhenposition der Vorrichtung zu bestimmen. Die Komponente kann außerdem Software zum Bestimmen der Position der Vorrichtung basierend auf anderen Signalen, die an einer Client-Vorrichtung 120 empfangen werden, wie Signale, die an einer Antenne eines Mobiltelefons von einem oder mehreren Mobilfunkmasten empfangen werden, wenn die Client-Vorrichtung ein Mobiltelefon ist, umfassen. Sie kann außerdem einen Magnetkompass 132, einen Beschleunigungssensor 133 und Gyroskop 134 beinhalten, um die Richtung, in der die Vorrichtung ausgerichtet ist, zu bestimmen. Nur beispielhaft kann die Vorrichtung ihre Neigung, Gierung oder Drehung (oder Veränderungen daran) relativ zu der Richtung der Gravitation oder einer dazu parallelen Ebene bestimmen.computing device 120 can be a component 130 such as circuits, to determine the geographic location and orientation of the device. Client computing device 120 for example, a GPS receiver 131 to determine the width, length and height position of the device. The component may also include software for determining the position of the device based on other signals sent to a client device 120 such as signals received at an antenna of a mobile phone from one or more mobile masts when the client device is a mobile phone. It also has a magnetic compass 132 , an acceleration sensor 133 and gyroscope 134 to determine the direction in which the device is aligned. For example only, the device may determine its inclination, yaw, or rotation (or changes thereto) relative to the direction of gravity or a plane parallel thereto.

Server 110 kann kartenbezogene Informationen speichern, von denen mindestens ein Teil an eine Client-Vorrichtung übertragen werden kann. Die Karteninformationen beschränken sich nicht auf ein bestimmtes Format. So können die Kartendaten beispielsweise Bitmap-Bilder geografischer Standorte beinhalten, wie Aufnahmen, die von einem Satelliten oder Luftfahrzeugen aufgenommen wurden. Die Kartendaten können außerdem Informationen beinhalten, die im Voraus oder bei Bedarf als Bilder gerendert werden können, wie etwa Speichern von Straßenstandorten und Fußgängerwegen als breiten-/längen-/höhenbasierte Vektoren und Straßen und Wegnamen als Text.server 110 may store card-related information, at least a portion of which may be transmitted to a client device. The map information is not limited to one specific format. For example, the map data may include bitmap images of geographic locations, such as images taken by a satellite or aircraft. The map data may also include information that can be rendered in advance or on demand as images, such as storing street locations and pedestrian paths as latitude / longitude / altitude based vectors and street and path names as text.

Server 110 kann außerdem Bilder wie, nur beispielhaft, eine flache Fotografie, eine Fotosphäre oder ein Video einer Szenerie speichern. Das Bild kann aufgenommen und von Endbenutzern mit dem Zweck hochgeladen werden, das Foto für späteren Zugriff oder für jeden, der nach Informationen im Zusammenhang mit dem Merkmal sucht, abrufbar zu machen. Zusätzlich zu den Bilddaten, die von der Kamera aufgenommen wurden, können individuelle Punkte eines Bildes mit zusätzlichen Daten assoziiert sein, wie etwa Aufnahmedatum, Tageszeit der Aufnahme und dem geografischen Standort der Aufnahme (z. B. Breitengrad, Längengrad und Höhe) oder den geografischen Standorten von Merkmalen, die in dem Bild aufgenommen wurden. Teile des Bildes können mit zusätzlichen Informationen assoziiert sein, die Tiefeninformationen (z. B. die Distanz zwischen einem Teil des Bildes, das ein Merkmal aufnimmt, und der Kamera) und, wie vorstehend beschrieben, relative Ausrichtungswinkel beinhalten.server 110 It can also store images such as, for example only, a flat photograph, a photosphere, or a video of a scene. The image may be captured and uploaded by end users for the purpose of retrieving the photo for later access or for anyone searching for information related to the feature. In addition to the image data captured by the camera, individual points of an image may be associated with additional data, such as shooting date, time of day of the photograph, and location of the photograph (eg, latitude, longitude, and altitude) or geographical location Locations of features that have been included in the image. Portions of the image may be associated with additional information including depth information (eg, the distance between a portion of the image that captures a feature and the camera) and, as described above, relative orientation angles.

Server 110 kann außerdem Merkmale speichern, die mit geografischen Standorten assoziiert sind. Merkmale, die beispielsweise eine Landmarke, ein Geschäft, einen See, eine Sehenswürdigkeit oder jedes andere visuelle Objekt oder Sammlung von Objekten an einem gegebenen Standort beinhalten.server 110 can also store features associated with geographic locations. Features that include, for example, a landmark, a shop, a lake, a landmark, or any other visual object or collection of objects at a given location.

Standorte können auf verschiedene Weise zum Ausdruck gebracht werden, darunter, nur beispielhaft, Breitengrad/Längengrad/Höhe, eine Straßenadresse, x-y-Koordinaten relativ zu den Rändern einer Karte (wie etwa eine Pixelposition relativ zum Rand einer Straßenkarte) und andere Referenzsysteme, die imstande sind, geografische Standorte zu identifizieren (z. B. Grundstück- und Straßennummern auf Übersichtskarten). Darüber hinaus kann ein Standort eine Reihe der vorstehenden definieren. Ein Satellitenbild kann beispielsweise mit einem Satz von Eckpunkten assoziiert sein, die Begrenzungen eines Bereichs definieren, wie etwa Speichern der Breitengrad/Längengrad jedes Standortes, der an einer Ecke des Bildes aufgenommen ist. Das System und Verfahren kann Standorte ferner von einem Referenzsystem auf ein anderes verschieben. Zum Beispiel kann der Server 110 auf einen Geocoder zugreifen, um einen Standort, der gemäß einem Referenzsystem identifiziert ist (z. B. eine Straße und Hausnummer wie etwa „1600 Amphitheatre Parkway, Mountain View, CA”) in einen Standort, der gemäß einem anderen Referenzsystem identifiziert ist (z. B. eine Breiten-/Längenkoordinate wie (37,423021°, –122,083939°)) umzuwandeln. Diesbezüglich können Standorte, die in einem Referenzsystem empfangen oder verarbeitet wurden, auch von anderen Referenzsystemen empfangen oder verarbeitet werden. BeispielverfahrenLocations can be expressed in a variety of ways, including, by way of example only, latitude / longitude / altitude, a street address, xy coordinates relative to the edges of a map (such as a pixel location relative to the edge of a road map), and other reference systems that are capable are to identify geographic locations (eg, property and street numbers on outline maps). In addition, a site may define a number of the above. For example, a satellite image may be associated with a set of vertices defining boundaries of a region, such as storing the latitude / longitude of each location taken at a corner of the image. The system and method may also move locations from one reference system to another. For example, the server 110 access a geocoder to locate a location identified according to a reference system (eg, a street and house number such as "1600 Amphitheater Parkway, Mountain View, CA") in a location identified according to another reference system (e.g. B. to convert a latitude / longitude coordinate such as (37.423021 °, -122.083939 °)). In this regard, sites that have been received or processed in a reference system may also be received or processed by other reference systems. example process

Operationen gemäß einer Vielzahl von Aspekten der vorliegenden Erfindung werden nun beschrieben. Es sollte sich verstehen, dass die folgenden Operationen nicht in der nachstehend beschriebenen genauen Reihenfolge durchgeführt werden müssen. Vielmehr können verschiedene Schritte in unterschiedlicher Reihenfolge oder gleichzeitig erledigt werden.Operations in accordance with a variety of aspects of the present invention will now be described. It should be understood that the following operations need not be performed in the exact order described below. Rather, different steps can be done in different order or simultaneously.

Ein Benutzer 135 einer mobilen Vorrichtung 120 kann eine Kamera 125 verwenden, um eine Fotosphäre einer Szenerie aufzunehmen. Beispielhaft, wenn der Benutzer die Neigung, Gierung oder Drehung der Kamera verändert, kann die Vorrichtung die Bilder, die von der Kamera aufgenommen werden, speichern. Während das Bild aufgenommen wird, kann die Vorrichtung die Ausgabe von Beschleunigungssensor 133 und Gyroskop 134 mit den relevanten Teilen des Bildes assoziieren. Die Vorrichtung kann zum Beispiel den Beschleunigungssensor 133 verwenden, um Teile des Bildes relativ zu einem Vektor, der der Gravitation entspricht (z. B. direkt nach unten), zu kartieren. Die Vorrichtung kann außerdem das Gyroskop 134 verwenden, um Teile des Bildes relativ zu einem Anfangsgierwert zu kartieren. Weiterhin kann die Vorrichtung Gierwerte mit der dann aktuellen Kompasspeilung basierend auf der Ausgabe von Kompass 132 assoziieren. Basierend auf den Gierwerten und der Nordrichtung, wie durch Kompass 132 angezeigt, kann die Vorrichtung ferner Kartenteile des Bildes relativ zu einem Vektor, der genau nach Norden entspricht, kartieren.A user 135 a mobile device 120 can a camera 125 use to capture a photosphere of a scene. By way of example, if the user changes the tilt, yaw, or rotation of the camera, the device may store the images taken by the camera. While the image is being captured, the device may output the accelerometer 133 and gyroscope 134 associate with the relevant parts of the image. The device may, for example, the acceleration sensor 133 use to map parts of the image relative to a vector that corresponds to gravity (eg, directly down). The device can also use the gyroscope 134 to map parts of the image relative to an initial yaw value. Furthermore, the device can yaw values with the then current compass bearing based on the output of compass 132 associate. Based on the yaw values and the north direction, as by compass 132 2, the device may further map map portions of the image relative to a vector that corresponds exactly to the north.

2 ist ein Beispiel einer Fotosphäre, die zu Darstellungszwecken geebnet wurde. Die Unterseite von Bild 210 entspricht einer Elevation von –90° (z. B. direkt nach unten), die Oberseite von Bild 210 entspricht einer Elevation von 90° (z. B. direkt nach oben) und die vertikale Mitte von Bild 210 entspricht einer Elevation von 0° (z. B. dem Horizont). Die horizontale Länge von Bild 210 umspannt eine Gierung von 360° und stimmt mit einer Azimutrichtung überein. Ein bestimmter Teil des Bildes kann basierend auf der Ausgabe von Kompass 132 mit genau Norden assoziiert sein. Referenzlinie 220 zum Beispiel identifiziert die horizontale Position von genau Norden relativ zu dem Bild 210. Referenzlinien 221 entsprechen jeweils genau Osten und genau Süden. Die linke und rechte Kante des Bildes 210 entsprechen genau Osten. 2 is an example of a photosphere that has been flattened for illustration purposes. The bottom of picture 210 corresponds to an elevation of -90 ° (eg, straight down), the top of image 210 corresponds to an elevation of 90 ° (eg, straight up) and the vertical center of image 210 corresponds to an elevation of 0 ° (eg the horizon). The horizontal length of image 210 covers a yaw of 360 ° and agrees with an azimuth direction. A specific part of the image may be based on the output of compass 132 to be associated with exactly north. reference line 220 for example, identifies the horizontal position of exactly north relative to the image 210 , reference lines 221 each correspond exactly to the east and exactly south. The left and right edges of the image 210 correspond exactly east.

Verschiedene Faktoren können die Genauigkeit der von dem Kompass empfangenen Informationen beeinträchtigen. Viele Magnetkompasse benötigen beispielsweise eine periodische Kalibrierung, um die Genauigkeit aufrechtzuerhalten und zunehmende Magnetwirkung zu reduzieren. Darüber hinaus können in der Nähe befindliche Strukturen oder Mineralvorkommen das Magnetfeld an dem Aufnahmestandort verzerren. Various factors can affect the accuracy of the information received from the compass. For example, many magnetic compasses require periodic calibration to maintain accuracy and reduce increasing magnetization. In addition, nearby structures or mineral deposits may distort the magnetic field at the capture site.

Die Vorrichtung kann außerdem das Datum und Uhrzeit, zu der das Bild aufgenommen wurde, mit dem Bild assoziieren. Die Vorrichtung kann ferner einen geografischen Standort nahe der Kamera mit dem Bild assoziieren, z. B. die Breiten-, Längen- und Höhenausgabe durch GPS-Komponente 131. Die Bilddaten, Datum, Zeit, Standort und Kompassrichtung können beispielsweise in einer Datei gespeichert und durch den Benutzer auf Server 110 hochgeladen werden.The device may also associate the date and time the image was taken with the image. The device may also associate a geographic location near the camera with the image, e.g. B. the latitude, longitude and altitude output by GPS component 131 , The image data, date, time, location and compass direction can be stored, for example, in a file and by the user on server 110 be uploaded.

Die Informationen, die von der Vorrichtung erfasst wurden und mit dem Bild assoziiert sind, können verwendet werden, um den erwarteten Standort der Sonne innerhalb des Bildes zu bestimmen. Prozessor 112 von Server 110 kann beispielsweise verschiedene Algorithmen ausführen, um die Elevation der Sonne an einem bestimmten Datum zu einer bestimmten Zeit und an einem bestimmten geografischen Standort zu berechnen (z. B. http://aa.usno.navy.mil/data/docs/AltAz.php ).The information acquired by the device and associated with the image may be used to determine the expected location of the sun within the image. processor 112 from server 110 For example, you can run various algorithms to calculate the elevation of the sun on a particular date at a particular time and geographic location (eg. http://aa.usno.navy.mil/data/docs/AltAz.php ).

5 ist eine beispielhafte grafische Darstellung der Position der Sonne während eines Tages, an dem das Bild 210 aufgenommen wurde. Bei Sonnenaufgang ist die Elevation der Sonne 0° (z. B. der Horizont) und der Azimut ist 95° (z. B. einige Grad südlich von genau Osten). Im Verlauf des Tages vergrößern sich sowohl die Elevation als auch der Azimut bis zum solaren Mittag), an welchem Punkt die Sonne an ihrer höchsten Position ist und, in der nördlichen Hemisphäre, südlich des geografischen Standorts ist. Im Verlauf des Tages nach solarem Mittag nimmt der Azimut weiterhin zu, während die Sonne in den Westen wandert, doch die Elevation nimmt ab, während die Sonne beginnt zu sinken. Schließlich, bei Sonnenuntergang, ist die Elevation der Sonne erneut bei 0° (z. B. der Horizont) und der Azimut ist 265° (z. B. einige Grad südlich von genau Westen). Zu Darstellungszwecken wird angenommen, dass Bild 210 kurz vor Mittag aufgenommen wurde, in welchem Fall Server 100 berechnen kann, dass die Elevation der Sonne 32° ist und ihr Azimut 161° ist. 5 is an exemplary graphical representation of the position of the sun during a day on which the picture is taken 210 has been recorded. At sunrise, the elevation of the sun is 0 ° (eg, the horizon) and the azimuth is 95 ° (eg, a few degrees south of the exact east). During the day, both the elevation and the azimuth increase until solar noon), at which point the sun is at its highest position and, in the northern hemisphere, south of the geographical location. During the day after solar noon, the azimuth continues to increase as the sun moves to the west, but the elevation decreases as the sun begins to decline. Finally, at sunset, the elevation of the sun is again at 0 ° (eg the horizon) and the azimuth is 265 ° (eg a few degrees south of the exact west). For illustration purposes, it is assumed that image 210 was taken just before noon, in which case server 100 can calculate that the elevation of the sun is 32 ° and its azimuth is 161 °.

Die berechnete Elevation kann verwendet werden, um einen Bereich von Elevationen zu identifizieren, innerhalb dessen das Bild nach einem Merkmal, das die visuellen Eigenschaften der Sonne aufweist, durchsucht werden soll. So kann, wie in 3 gezeigt, der Prozessor beispielsweise Bilderkennungstechniken verwenden, um den Teil 310 von Bild 210, der einer Elevation von 32° +/– 10° entspricht, zu durchsuchen. Der Prozessor kann Teil 310 auf visuelle Eigenschaften wie Helligkeitsintensität, Helligkeitsintensität verglichen mit dem Umgebungsbereich, Teil des Bildes mit einer Farbe, die einem blauen Himmel ähnlich ist, Rundheit des Bereichs mit einer Intensität, die höher als ein Schwellenwert ist, und Kompaktheit eines Bereichs mit einer Intensität, die größer als ein Schwellenwert ist, durchsuchen. Diesbezüglich kann der Prozessor visuelles Merkmal 320 von Bild 210 als die Sonne identifizieren.The calculated elevation may be used to identify a range of elevations within which the image is to be searched for a feature having the visual properties of the sun. So can, as in 3 For example, the processor may use image recognition techniques to identify the part 310 from picture 210 which corresponds to an elevation of 32 ° +/- 10 °. The processor can part 310 visual properties such as brightness intensity, brightness intensity compared to the surrounding area, part of the image having a color similar to a blue sky, roundness of the area having an intensity higher than a threshold, and compactness of a region having an intensity larger as a threshold. In this regard, the processor may be a visual feature 320 from picture 210 identify as the sun.

In einigen Aspekten kann ein Benutzer aufgefordert werden, das Bild anzuschauen und die Position der Sonne innerhalb des Bildes zu identifizieren, wie etwa durch Anklicken.In some aspects, a user may be prompted to view the image and identify the position of the sun within the image, such as by clicking.

Sobald die Sonne lokalisiert wurde, kann ihre Position innerhalb der Fotosphäre verwendet werden, um eine Ausrichtung, die mit dem Bild assoziiert ist, zu berechnen. So kann, wie in 4 gezeigt, der Server beispielsweise die horizontale Mitte 410 der Sonne 320 identifizieren. Basierend auf der vorherigen Berechnung bestimmt der Prozessor anschließend, dass die horizontale Koordinate 410 einem Azimut von 161° entspricht. Demnach ist der Unterschied 430 zwischen der Sonne und genau Norden 161°, z. B. der Teil des Bildes an Referenzlinie 420 ist mit genau Norden assoziiert. Der Azimut, der mit anderen Teilen des Bildes assoziiert ist, kann gleichermaßen berechnet werden, wie durch die Gradzahl auf der als „Kompass (berechnet)” betitelten Linie gezeigt.Once the sun has been located, its position within the photosphere can be used to calculate an orientation associated with the image. So can, as in 4 For example, the server shows the horizontal center 410 the sun 320 identify. Based on the previous calculation, the processor then determines that the horizontal coordinate 410 corresponding to an azimuth of 161 °. So the difference is 430 between the sun and exactly north 161 °, z. For example, the part of the image is at reference line 420 is associated with exactly north. The azimuth associated with other parts of the image can be calculated equally as shown by the number of degrees on the line titled "Compass (calculated)".

Soweit es einen Unterschied zwischen der zuvor gespeicherten Ausrichtung und der berechneten Ausrichtung gibt, kann die Ausrichtung basierend auf dem Unterschied modifiziert werden. Das System kann beispielsweise das Bild mit einer genau nördlichen Position assoziieren, die das Mittel der von dem Magnetkompass der Vorrichtung bestimmten Position und der basierend auf der Position der Sonne bestimmten Position ist.As far as there is a difference between the previously stored orientation and the calculated orientation, the orientation may be modified based on the difference. For example, the system may associate the image with a precisely north position which is the average of the position determined by the magnetic compass of the device and the position determined based on the position of the sun.

Die Position kann außerdem basierend auf einem Zuverlässigkeitswert bestimmt werden, der die erwartete Genauigkeit von der gemessenen Ausrichtung und berechneten Ausrichtung anzeigt. Beispielhaft können die Metadaten, die mit dem Bild assoziiert sind, anzeigen, dass der Magnetkompass zur Zeit, als das Bild aufgenommen wurde, kalibriert werden musste, in welchem Fall Zuverlässigkeit bei der Genauigkeit der gemessenen Ausrichtung niedrig sein kann. In ähnlicher Weise können die Metadaten, die mit dem Bild assoziiert sind, eine Modellnummer der Vorrichtung anzeigen, und der Server kann Historieninformationen bezüglich der Qualität des Kompasses in diesem Modell aufweisen.The position may also be determined based on a confidence value that indicates the expected accuracy of the measured orientation and calculated orientation. By way of example, the metadata associated with the image may indicate that the magnetic compass had to be calibrated at the time the image was taken, in which case reliability in the accuracy of the measured orientation may be low. Similarly, the metadata associated with the image may indicate a model number of the device, and the server may have history information regarding the quality of the compass in that model.

Wenn die visuellen Eigenschaften von Merkmalen in dem Bild es schwierig machen, die genaue Mitte der Sonne zu bestimmen, kann die Zuverlässigkeit bei der Genauigkeit der berechneten Ausrichtung ebenfalls relativ niedrig sein. Ein Zuverlässigkeitswert, der mit der berechneten Ausrichtung assoziiert ist, kann beispielsweise basierend auf Helligkeitsintensität, Helligkeitsintensität verglichen mit dem Umgebungsbereich, Teil des Bildes mit einer Farbe, die einem blauen Himmel ähnlich ist, Rundheit des Bereichs mit einer Intensität, die höher als ein Schwellenwert ist, Kompaktheit eines Bereichs mit einer Intensität, die größer als ein Schwellenwert ist, bestimmt werden. Darüber hinaus können zusätzliche Merkmale verwendet werden, wie etwa eine Bewertung von einem Innen-/Außendetektor, der die Pixel eines Bildes analysiert und eine Zuverlässigkeitsbewertung, dass das Bild ein Außenbild ist, produziert (z. B. ein Innen-/Außendetektor wie beschrieben in M. Szummer and R. W. Picard, „Indoor-Outdoor Image Classification”, in Proc. IEEE International Workshop on Content-based Access of Image and Video Databases, 1998. S. 42–51 , wobei die Offenbarung davon hierin unter Bezugnahme einbezogen ist). Diese Merkmale können als Eingabe für ein Maschinenlernsystem wie eine Support Vector Machine (SVM) verwendet werden, um eine Zuverlässigkeitsbewertung, dass eine vermeintlich erkannte Sonne in einem Bild tatsächlich der Sonne entspricht, zu produzieren. Die SVM kann beispielsweise eine Zuverlässigkeitsbewertung von 0,98 für das visuelle Merkmal 320 des Bildes in 4 produzieren, die anzeigt, dass es, basierend auf dem Algorithmus, 98% wahrscheinlich ist, dass das visuelle Merkmal 320 tatsächlich die Sonne ist. When the visual characteristics of features in the image make it difficult to determine the exact center of the sun, the reliability in the accuracy of the calculated orientation can also be relatively low. For example, a reliability value associated with the calculated orientation may be roundness of the region having an intensity higher than a threshold based on brightness intensity, intensity intensity compared to the surrounding region, part of the image having a color similar to a blue sky Compactness of a region having an intensity greater than a threshold. In addition, additional features may be used, such as an indoor / outdoor detector score that analyzes the pixels of an image and produces a reliability score that the image is an outdoor image (e.g. M. Szummer and RW Picard, "Indoor-Outdoor Image Classification", in Proc. IEEE International Workshop on Content-based Access to Image and Video Databases, 1998. pp. 42-51 the disclosure of which is incorporated herein by reference). These features may be used as input to a machine learning system, such as a Support Vector Machine (SVM), to produce a reliability rating that a supposedly detected sun in an image actually corresponds to the sun. For example, the SVM may have a reliability score of 0.98 for the visual feature 320 of the picture in 4 Produce that indicates that, based on the algorithm, it is 98% likely that the visual feature 320 in fact the sun is.

Die Ausrichtung, die mit dem Bild assoziiert ist, kann basierend auf den Zuverlässigkeitswerten der gemessenen und berechneten Ausrichtung bestimmt werden. Beispielhaft, wenn der Zuverlässigkeitswert der berechneten Ausrichtung größer als der Zuverlässigkeitswert der gemessenen Ausrichtung, oder größer als ein Schwellenwert, ist, dann kann das System die gemessene Ausrichtung vernachlässigen. Die Ausrichtung, die mit dem Bild assoziiert ist, kann außerdem basierend auf dem Relativwert der Zuverlässigkeitswerte bestimmt werden, z. B., festgelegt zwischen der gemessenen und berechneten Ausrichtung in jeweils einer Distanz, die umgekehrt proportional zu den Zuverlässigkeitswerten der zwei Ausrichtungen ist. In noch einem anderen Beispiel kann die berechnete Ausrichtung vollständig vernachlässigt werden, wenn ihr Zuverlässigkeitswert einen Schwellenwert, z. B. 0,9, ohne Berücksichtigung der gemessenen Ausrichtung (wenn vorhanden) nicht übersteigt.The orientation associated with the image may be determined based on the reliability values of the measured and calculated orientation. By way of example, if the reliability value of the calculated orientation is greater than the reliability value of the measured orientation, or greater than a threshold, then the system may neglect the measured orientation. The orientation associated with the image may also be determined based on the relative value of the reliability values, e.g. Example, set between the measured and calculated orientation in each case a distance which is inversely proportional to the reliability values of the two orientations. In yet another example, the calculated orientation may be completely neglected if its reliability value exceeds a threshold, e.g. 0.9, without considering the measured orientation (if any).

Die Ausrichtung der Fotosphäre kann außerdem von der Position der Sonne geschätzt werden, wenn das Datum und Zeit der Fotosphäre unbekannt sind. 6 stellt die Position der Sonne an einem bestimmten Breitengrad zu jeder Stunde über jeden Tag eines gesamten Jahres hinweg grafisch dar. Es gibt 24 Markierungen, wie Markierung 650, wobei jede Markierung eine Sammlung von 365 Punkten ist, die zeigen, wo sich die Sonne zu dieser Stunde über im Verlauf des Jahres befindet. Wie durch die grafische Darstellung dargestellt, gibt es eine beschränkte Auswahl möglicher Azimute, wenn die Sonne in einer gegebenen Elevation ist. So geht beispielsweise für eine Fotosphäre, die im Yosemite National Park, Kalifornien aufgenommen wurde, wenn sich die Sonne am Horizont befindet (Elevation 0°), die Sonne entweder im Osten auf (z. B. mit oder nahe einem Azimut von 90°) oder geht im Westen unter (z. B. mit oder nahe einem Azimut von 270°); der Azimut der Sonne wird nicht bei genau Süden (Azimut 180°) sein. Wenn die Sonne jedoch an ihrem höchsten Punkt im Himmel ist, dann wird, im Yosemite National Park, Kalifornien, die Sonne entweder direkt über Kopf oder genau südlich von direkt über Kopf sein. Demnach ist jede Elevation mit einem Bereich möglicher Azimute für einen gegebenen geografischen Standort assoziiert. So sind beispielsweise und wie in 6 gezeigt, sind, wenn die Sonne bei einer Elevation von 32° ist, die einzigen möglichen Azimutbereiche Bereiche 610 und 611. Wenn das Datum der Aufnahme unbekannt ist, kann das System den Azimut basierend auf den möglichen Azimutbereichen bei einer bestimmten Elevation schätzen, wie etwa durch Auswählen eines Wertes innerhalb der Bereiche.The orientation of the photosphere may also be estimated from the position of the sun when the date and time of the photosphere are unknown. 6 Graphs the sun's position at a given latitude at any hour over any day of an entire year. There are 24 markers, such as Mark 650 Each mark is a collection of 365 points showing where the sun is at that hour over the year. As shown by the graph, there is a limited choice of possible azimuths when the sun is in a given elevation. For example, for a photosphere taken in Yosemite National Park, California, when the sun is on the horizon (elevation 0 °), the sun is either in the east (eg, with or near an azimuth of 90 °). or sinking to the west (eg, with or near an azimuth of 270 °); the azimuth of the sun will not be at exactly south (azimuth 180 °). However, when the sun is at its highest point in the sky, in Yosemite National Park, California, the sun will be either directly overhead or just south of head over head. Thus, each elevation is associated with a range of possible azimuths for a given geographic location. For example, and as in 6 As shown, when the sun is at an elevation of 32 °, the only possible azimuth areas are areas 610 and 611 , If the date of the exposure is unknown, the system may estimate the azimuth based on the possible azimuth ranges at a given elevation, such as by selecting a value within the ranges.

Der Azimut kann außerdem basierend auf der Wahrscheinlichkeit, dass die Sonne bei einer bestimmten Elevation ist, geschätzt werden. So müssen beispielsweise nicht alle der möglichen Azimute für eine gegebene Elevation gleich wahrscheinlich sein. 7 ist ein Beispiel der Wahrscheinlichkeit, dass die Sonne an unterschiedlichen Azimuten ist, wenn die Sonne bei einer bestimmten Elevation an einem bestimmen Breitengrad und Längengrad im Verlauf eines Jahres ist. Die Wahrscheinlichkeit eines bestimmten Azimutwerts basierend auf einer bestimmten Elevation der Sonne und Breitengrad und Längengrad kann durch Schätzen der Dauer, die die Sonne nahe der bestimmten Elevation im gesamten Verlauf des Jahres positioniert ist, und Normalisieren der Schätzung anhand der Länge eines Jahres bestimmt werden, sodass die Summe der Wahrscheinlichkeiten, die allen möglichen Azimutwerten zugewiesen ist, im Ergebnis 1,0 ist. Basierend auf der grafischen Darstellung ist der Azimut am wahrscheinlichsten bei ungefähr 175° oder 185°, wie durch Referenzlinien 710 und 711 angezeigt. Diesbezüglich kann das System, wenn das System die Elevation der Sonne und den Breitengrad bestimmt, entweder den wahrscheinlichsten Azimut oder einen der wahrscheinlichsten Azimute oder einen Azimutwert, der einen maximal möglichen Fehler minimiert, auswählen.The azimuth may also be estimated based on the probability that the sun is at a given elevation. For example, not all of the possible azimuths for a given elevation must be equally probable. 7 is an example of the probability that the sun is at different azimuths when the sun is at a certain elevation at a certain latitude and longitude over a year. The probability of a particular azimuth based on a particular elevation of the sun and latitude and longitude may be determined by estimating the duration the sun is positioned near the determined elevation throughout the year and normalizing the estimate based on the length of a year the sum of the probabilities assigned to all possible azimuths is 1.0 in the result. Based on the graph, the azimuth is most likely at about 175 ° or 185 °, as by reference lines 710 and 711 displayed. In this regard, when the system determines the elevation of the sun and latitude, the system may select either the most likely azimuth or one of the most likely azimuth or azimuth that minimizes a maximum possible error.

Verschiedene Kombinationen aus Datums- und Zeitangaben können verwendet werden, um die Genauigkeit der Schätzung zu erhöhen. Beispielhaft, wenn das Datum nicht bekannt ist, aber die Zeit oder Zeitbereiche bekannt sind, kann die Anzahl möglicher Azimute durch Ausschließen von Azimuten, die für diesen Standort zu dieser Zeit oder Zeitbereichen nicht möglich sind, eingegrenzt werden. In gleicher Weise, wenn das Datum oder die Datumsbereiche bekannt sind, aber die Zeit nicht bekannt ist, kann die Anzahl möglicher Azimute durch Ausschließen von Azimuten, die für diesen Standort zu diesem Datum oder während der Datumsbereiche nicht möglich sind, eingegrenzt werden. In beiden Fällen kann die Wahrscheinlichkeit der verbleibenden, möglichen Azimute erhöht werden, und somit die Wahrscheinlichkeit, einen Azimut nahe des korrekten Azimuts auszuwählen, erhöht werden. Various combinations of dates and times can be used to increase the accuracy of the estimate. By way of example, if the date is not known but the time or time ranges are known, the number of possible azimuths can be limited by excluding azimuths that are not possible for that location at that time or time ranges. Likewise, if the date or the date ranges are known but the time is not known, the number of possible azimuths can be limited by excluding azimuths that are not possible for that location on that date or during the date ranges. In either case, the probability of the remaining possible azimuths can be increased, thus increasing the probability of selecting an azimuth near the correct azimuth.

Das System kann zusätzliche Informationen in den Bilddaten verwenden, um die Genauigkeit der Schätzung zu erhöhen. Der Prozessor kann beispielsweise die Bilddaten auf Informationen analysieren, die auf die Jahreszeit schließen lassen, wie etwa Schnee oder kahle Bäume, die das Spätjahr anzeigen, mehrfarbige Blätter, die Herbst anzeigen, oder grüne Blätter, die Frühling oder Sommer anzeigen. Ein Datumsbereich kann dann basierend auf der Jahreszeit ausgewählt werden, und somit die Genauigkeit einer Wahrscheinlichkeitsfunktion wie der, die in 7 gezeigt ist, erhöht werden.The system may use additional information in the image data to increase the accuracy of the estimate. The processor may, for example, analyze the image data for information indicative of the season, such as snow or bare trees indicating the late year, multicolored autumn leaves, or green leaves indicating spring or summer. A date range can then be selected based on the season, and thus the accuracy of a probabilistic function such as that in 7 is shown to be increased.

Die Genauigkeit der Azimutschätzung in einer Fotosphäre kann basierend auf Informationen, die von anderen Fotosphären abgerufen werden, erhöht werden. 8 stellt zwei unterschiedliche Beispielfotosphären 810 und 811 dar, wobei das Aufnahmedatum unbekannt ist, die Standorte jedoch bekannt sind und beieinanderliegen. Wie vorstehend beschrieben, kann das System (jeweils) einen Bereich wahrscheinlicher Azimute 820, 821 basierend auf der erfassten Sonnenelevation 830, 831 und horizontalen Position 840, 841 in jedem Bild 810, 811 bestimmen. Das System kann unter Verwendung einer Merkmalvergleichsfunktion einer gewöhnlichen Bilderkennung, außerdem bestimmen, dass dasselbe geografische Merkmal 850 in beiden Bildern, jedoch an unterschiedlichen horizontalen Positionen 860, 861 erscheint. Das System kann die unterschiedlichen Positionen des Merkmals in jedem Bild als einen gemeinsamen Referenzpunkt verwenden, z. B., um die horizontale Position aus dem Wahrscheinlichkeitsbereich relativ zu dem Merkmal zu bestimmen. In dieser Hinsicht und wie in Bild 810a gezeigt, kann das System den Bereich von Wahrscheinlichkeiten 821 in Bild 811 anwenden, um den Bereich von Wahrscheinlichkeiten 820 in Bild 810 einzugrenzen. Ein neuer Bereich von Wahrscheinlichkeiten 870 kann zum Beispiel basierend auf der Überschneidung von Bereichen 820 und 821 bestimmt werden, und genau Norden kann als sich innerhalb des eingegrenzten Bereichs von Möglichkeiten befindend berechnet werden.The accuracy of azimuth estimation in a photosphere can be increased based on information retrieved from other photo spheres. 8th presents two different sample photo spheres 810 and 811 where the date of taking is unknown, but the locations are known and located together. As described above, the system may each have a range of probable azimuths 820 . 821 based on the recorded sun elevation 830 . 831 and horizontal position 840 . 841 in every picture 810 . 811 determine. The system may also determine that the same geographic feature using a feature comparison function of a common image recognition 850 in both pictures, but in different horizontal positions 860 . 861 appears. The system may use the different positions of the feature in each image as a common reference point, e.g. B. to determine the horizontal position from the probability range relative to the feature. In this regard and as in picture 810a The system can show the range of probabilities 821 in picture 811 Apply to the range of probabilities 820 in picture 810 narrow. A new range of probabilities 870 For example, based on the overlapping of areas 820 and 821 and north can be calculated as being within the limited range of possibilities.

In anderen Aspekten kann das System die Wahrscheinlichkeitsfunktion (wie die in 7 gezeigten) für jedes Bild 810 und 820 bestimmen und eine neue Wahrscheinlichkeitsfunktion für jedes Bild basierend auf dem Ergebnis der zwei Funktionen bestimmen.In other aspects, the system may use the probability function (such as in 7 shown) for each picture 810 and 820 and determine a new probability function for each image based on the result of the two functions.

Die Ausrichtung einer Fotosphäre kann außerdem basierend auf Schatten abgeschätzt werden. Beispielhaft und wie in 9 gezeigt, kann die Position der Sonne schwer zu bestimmen sein, wenn das Bild der Fotosphäre sich nicht hoch genug erstreckt, um die Sonne zu erfassen oder, wenn die Sonne selbst in der Sicht der Aufnahmevorrichtung verdeckt ist. In dem Fall, dass die Vorrichtung Schwierigkeiten hat, die Sonne innerhalb des Bildes zu lokalisieren, kann die Vorrichtung bestimmen, ob es visuelle Merkmale innerhalb des Bildes gibt, die mit Schatten übereinstimmen, die nützlich zum Bestimmen der Position der Sonne sein können. Das System kann Bild 910 beispielsweise nach einem Schatten 920 durchsuchen, der sich von der Unterseite der Fotosphäre aus vertikal nach oben erstreckt und annähernd die erwartete Form oder Abmessungen einer das Foto aufnehmenden Person aufweist. Wir ein derartiges visuelles Merkmal gefunden, kann die Vorrichtung die Position von Schatten 920 verwenden, um zu schätzen, dass die horizontale Position 940, die dem Azimut der Sonne entspricht, 180° von der Mitte des Schattens 920 versetzt ist. Dementsprechend wird die horizontale Koordinate, die genau Norden entspricht, durch Berechnen der Position der Sonne entsprechend der Aufnahmezeit, Breitengrad und Längengrad des Bildes bestimmt.The orientation of a photosphere can also be estimated based on shadows. Exemplary and as in 9 As shown, the position of the sun may be difficult to determine if the image of the photosphere does not extend high enough to capture the sun, or if the sun itself is obscured in the view of the cradle. In the event that the device has difficulty locating the sun within the image, the device may determine if there are visual features within the image that match shadows that may be useful for determining the position of the sun. The system can image 910 for example, for a shadow 920 which extends vertically upward from the bottom of the photosphere and has approximately the expected shape or dimensions of a person receiving the photograph. Having found such a visual feature, the device can change the position of shadow 920 use to estimate that the horizontal position 940 that corresponds to the azimuth of the sun, 180 ° from the center of the shadow 920 is offset. Accordingly, the horizontal coordinate corresponding to the north is determined by calculating the position of the sun according to the recording time, latitude and longitude of the image.

Das System kann ferner die Tageszeit basierend auf der Länge der Schatten bestimmen. Das System kann beispielsweise die Länge des Schattens einer Person auf dem Boden basierend auf dem Elevationswinkel an der Spitze des Schattens schätzen. Das System kann anschließend das Verhältnis der Grundlänge des Schattens zu einer angenommenen durchschnittlichen Körpergröße einer Person, z. B. einer Person von 1,75 m, bestimmen. Wenn der Schatten sehr viel kürzer ist als die Durchschnittshöhe, dann kann die Zeit als nahe Mittag geschätzt werden. Wenn der Schatten sehr viel länger ist als die Durchschnittshöhe, dann kann die Zeit als nahe des Sonnenaufgangs oder Sonnenuntergangs geschätzt werden. Unter Verwendung dieser geschätzten Zeit kann das System eine verbesserte Schätzungen des Azimuts, der genau Norden entspricht, selbst dann produzieren, wenn die Bildaufnahmezeit von vornherein nicht bekannt war.The system may also determine the time of day based on the length of the shadows. For example, the system may estimate the length of a person's shadow on the ground based on the elevation angle at the top of the shadow. The system may then determine the ratio of the basic length of the shadow to an assumed average height of a person, e.g. B. a person of 1.75 m, determine. If the shadow is much shorter than the average height, then the time can be estimated as near noon. If the shade is much longer than the average height, then the time can be estimated as near the sunrise or sunset. Using this estimated time, the system can produce improved estimates of the azimuth that is exactly north, even if the image acquisition time was not known in advance.

Die Position der Sonne kann auch verwendet werden, um Ausrichtungsuneindeutigkeiten in Bezug auf Merkmale mit bekannten geografischen Standorten aufzulösen. 10 stellt eine Fotosphäre 1110 dar. Das System kann das Bild auf Merkmale analysieren, die bekannte geografische Standorte aufweisen können. Das System kann beispielsweise bestimmen, dass das Bild eine Straße 1120 aufgenommen hat, die sich in zwei Richtungen 1121 und 1122 erstreckt. Das System kann die Kartendaten abrufen, um zu bestimmen, ob Straßen bekannt sind, die nahe des Standorts, an dem das Bild aufgenommen wurde, sind, und eine Straße 1130 auf Karte 1140 identifizieren, die sich von West nach Ost erstreckt. Das System kann demnach bestimmen, dass Richtungen 1121 und 1122 Osten oder Westen entsprechen, aber, wie als „Möglichkeit #1” und „Möglichkeit #2” in Bild 1110 gezeigt, können Informationen unzureichend sein, um zu bestimmen, ob Richtungen 1121 und 1222 jeweils Osten oder Westen oder umgekehrt entsprechen. Wie vorstehen beschrieben, kann das System Bild 1110 nach der Position 1150 der Sonne durchsuchen und diese in dem Bild identifizieren. Wenn erfasst, kann das System einen Bereich oder Satz von Bereichen von Azimutstandorten, die dem Aufnahmedatum und -zeit (wenn bekannt) und geografischem Standort (wenn bekannt) des Bildes entsprechen, bestimmen, wie vorstehend mit Bezug auf 57 beschrieben, und kombiniert diese Bereiche ferner mit den Möglichkeiten, um eine mögliche Lösung für die Ausrichtung des Bildes zu bestimmen. Wenn der Standort der Aufnahme beispielsweise in der nördlichen Hemisphäre ist und die Sonne nicht direkt über Kopf ist, muss die Sonne mindestens zum Teil in einer südlichen Richtung sein. Daher kann das System alle Möglichkeiten ausschließen, die darin resultieren würden, dass die Sonne in einer nördlichen Richtung ist, d. h. das System kann bestimmen, dass „Möglichkeit #2” die wahrscheinlichste Möglichkeit ist (da die Sonne innerhalb des Bereichs von 90° und 180° sein würde) und bestimmen, dass genau Norden der Referenzlinie 1120 entspricht. Obwohl das vorhergehende Beispiel unter Verwendung einer Straße als das geografische Merkmal, das verwendet wird, um die Möglichkeiten zu erzeugen, beschrieben wurde, können auch andere geografische Merkmale, wie etwa Bürgersteige, Wege, Strukturen, Gewässer, Wälder oder Felder, verwendet werden, um den Satz von Möglichkeiten zu erzeugen. The position of the sun can also be used to resolve alignment ambiguities related to features with known geographic locations. 10 makes a photo sphere 1110 The system may analyze the image for features that may have known geographic locations. For example, the system may determine that the image is a street 1120 has taken up, which is in two directions 1121 and 1122 extends. The system may retrieve the map data to determine whether roads are known, which are near the location where the image was taken, and a road 1130 on card 1140 identify that extends from west to east. The system can therefore determine that directions 1121 and 1122 East or West correspond, but as in Picture # 1 and Option # 2 1110 Information shown may be insufficient to determine if directions 1121 and 1222 each east or west or vice versa. As described above, the system can image 1110 after the position 1150 search the sun and identify it in the picture. When detected, the system may determine an area or set of areas of azimuth locations corresponding to the date and time of the photograph (if known) and geographical location (if known) of the image, as described above with reference to FIG 5 - 7 and further combines these areas with the possibilities to determine a possible solution for the orientation of the image. For example, if the location of the photograph is in the northern hemisphere and the sun is not directly overhead, the sun must be at least partially in a southern direction. Therefore, the system can exclude any possibility that would result in the sun being in a northerly direction, ie the system may determine that "possibility # 2" is the most likely possibility (since the sun is within the range of 90 ° and 180 ° ° would be) and determine that exactly north of the reference line 1120 equivalent. Although the preceding example has been described using a road as the geographic feature used to generate the opportunities, other geographic features such as sidewalks, paths, structures, waters, forests or fields may also be used to to generate the set of possibilities.

Die Ausrichtung des Bildes kann ferner basierend auf Kombinationen von Schätzungen bestimmt werden. Die Ausrichtung einer Fotosphäre kann beispielsweise wie vorstehend beschrieben in Verbindung mit zwei oder mehreren von 4, 8, 9 und 10 geschätzt werden, wobei die geschätzte Ausrichtung auf einem Durchschnitt, Ergebnis oder Übereinstimmung von allen der Schätzungen basieren kann. Darüber hinaus können Schätzungen ausgeschlossen werden oder ihr Beitrag basierend auf der Zuverlässigkeit, die mit jeder Schätzung assoziiert ist, vergrößert oder verringert werden.The orientation of the image may also be determined based on combinations of estimates. The alignment of a photosphere, for example, as described above in conjunction with two or more of 4 . 8th . 9 and 10 Estimated Alignment may be based on an average, score, or match of all of the estimates. In addition, estimates may be excluded or their contribution may be increased or decreased based on the reliability associated with each estimate.

Zusätzlich zu oder anstelle von der Sonne können andere Himmelskörper verwendet werden. Zum Beispiel können Azimut und Elevation des Mondes basierend auf dem Standort und Zeit der Aufnahme des Bildes berechnet, und seine Position in dem Bild identifiziert werden. Sterne, Planeten, Kometen und Konstellationen können in ähnlicher Weise verwendet werden.In addition to or instead of the sun, other celestial bodies may be used. For example, the azimuth and elevation of the moon may be calculated based on the location and time of the image's capture, and its position in the image identified. Stars, planets, comets and constellations can be used in a similar way.

11 ist ein Flussdiagramm gemäß einigen der vorstehend beschriebenen Aspekte. In Block 1101 wird eine Fotosphäre, die mit einem geografischen Standort assoziiert ist, ausgewählt. Die Fotosphäre wird analysiert, um visuelle Merkmale, die dem Aussehen der Sonne ähnlich sind, zu identifizieren (Block 1102), und die Elevation der Sonne wird basierend auf der Position des Merkmals innerhalb des Bildes bestimmt (Block 1103). In Block 1104 wird basierend auf der Elevation der Sonne und dem geografischen Standort die Wahrscheinlichkeit bestimmt, dass die Aufnahme an einem bestimmten Datum erfolgte. Wenn zusätzliche Fotosphären zu evaluieren sind (Block 1105), werden sie ausgewählt und in gleicher Weise analysiert. Wenn zusätzliche Fotosphären evaluiert wurden, kann ein Zuverlässigkeitswert der erste Fotosphäre basierend auf den Zuverlässigkeitswerten, die für die anderen Fotosphären bestimmt wurden, angepasst werden. In Block 1106, wenn der Zuverlässigkeitswert einen Schwellenwert übersteigt, kann die Ausrichtung der Fotosphäre basierend auf der Position der Sonne innerhalb der Fotosphäre festgelegt werden (Block 1107). Anderenfalls wird die Ausrichtung nicht festgelegt, wie in Block 1108 gezeigt. 11 FIG. 10 is a flowchart according to some of the aspects described above. FIG. In block 1101 A photosphere associated with a geographic location is selected. The photosphere is analyzed to identify visual features similar to the sun's appearance (Block 1102 ), and the elevation of the sun is determined based on the position of the feature within the image (block 1103 ). In block 1104 Based on the elevation of the sun and the geographic location, the likelihood that the shot was taken on a particular date is determined. If additional photo spheres are to be evaluated (Block 1105 ), they are selected and analyzed in the same way. When additional photo spheres have been evaluated, a reliability value of the first photosphere can be adjusted based on the reliability values determined for the other photo spheres. In block 1106 if the reliability value exceeds a threshold, the orientation of the photosphere may be determined based on the position of the sun within the photosphere (Block 1107 ). Otherwise, the alignment will not be set as in block 1108 shown.

12 ist ein weiteres Flussdiagramm gemäß einigen der vorstehend beschriebenen Aspekte. In Block 1201 wird die Position eines Merkmals in einem Bild basierend auf der visuellen Ähnlichkeit des Merkmals mit einem Himmelskörper identifiziert. In Block 1202 wird ein Elevationswert, der mit dem Elevationswinkel des Himmelskörpers assoziiert ist, basierend auf der Position des Merkmals innerhalb des Bildes bestimmt. In Block 1203 wird ein Azimutwert basierend auf der Wahrscheinlichkeit, dass der Himmelskörper bei einem bestimmten Azimut an dem Elevationswinkel ist, über mehrere Tage bestimmt. In Block 1204 wird eine Kompasspeilungsausrichtung des Bildes basierend auf dem Azimutwert bestimmt. 12 FIG. 11 is another flowchart according to some of the aspects described above. FIG. In block 1201 For example, the position of a feature in an image is identified based on the visual similarity of the feature to a celestial body. In block 1202 For example, an elevation value associated with the elevation angle of the celestial body is determined based on the position of the feature within the image. In block 1203 For example, an azimuth value based on the likelihood that the celestial body is at a certain azimuth at the elevation angle is determined over several days. In block 1204 a compass bearing orientation of the image is determined based on the azimuth value.

Da diese und andere Varianten und Kombinationen der vorstehend besprochenen Merkmale genutzt werden können, ohne von der Erfindung, wie durch die Ansprüche definiert, abzuweichen, soll die vorstehende Beschreibung der Ausführungsformen nur als Mittel zur Darstellung und nicht als Mittel zur Einschränkung der Erfindung, wie durch die Ansprüche definiert, aufgefasst werden. Es versteht sich von selbst, dass das Bereitstellen von Beispielen der Erfindung (sowie auch Klauseln, die mit Begriffen, wie „wie etwa”, „z. B.”, „einschließlich” und dergleichen, formuliert sind) nicht als Begrenzung der Erfindung auf diese spezifischen Beispiele interpretiert werden sollte, da die Beispiele eher dazu dienen, einige der vielen möglichen Aspekte zu illustrieren.Since these and other variants and combinations of the features discussed above may be utilized without departing from the invention as defined by the claims, the foregoing description of the embodiments is intended only as a means of illustration and not as a means of limiting the invention as by the Claims defined, be construed. It goes without saying that providing examples of the invention (as well as terms formulated with terms such as "such as,""forexample,""including," and the like) are not intended to limit the invention these specific examples should be interpreted as the examples are more to illustrate some of the many possible aspects.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte Nicht-PatentliteraturCited non-patent literature

  • http://aa.usno.navy.mil/data/docs/AltAz.php [0045] http://aa.usno.navy.mil/data/docs/AltAz.php [0045]
  • M. Szummer and R. W. Picard, „Indoor-Outdoor Image Classification”, in Proc. IEEE International Workshop on Content-based Access of Image and Video Databases, 1998. S. 42–51 [0052] M. Szummer and RW Picard, "Indoor-Outdoor Image Classification", in Proc. IEEE International Workshop on Content-based Access of Image and Video Databases, 1998. pp. 42-51 [0052]

Claims (10)

System, das Folgendes umfasst: einen oder mehrere Prozessor(en); und Speicher, der Anweisungen speichert, wobei die Anweisungen durch den Prozessor ausführbar sind, worin die Anweisungen Folgendes umfassen: Identifizieren einer Position eines Merkmals in einem Bild basierend auf der visuellen Ähnlichkeit des Merkmals mit einem Schatten; Bestimmen einer Kompasspeilung basierend auf der Position des Merkmals in dem Bild; und Assoziieren eines Teils des Bildes mit der bestimmten Kompasspeilung.A system comprising: one or more processors; and A memory storing instructions, the instructions being executable by the processor, wherein the instructions include: Identifying a position of a feature in an image based on the visual similarity of the feature with a shadow; Determining a compass bearing based on the position of the feature in the image; and Associate a portion of the image with the particular compass bearing. System nach Anspruch 1, worin das Bild mit einer Kamera aufgenommen wurde und sich das Merkmal zum Zeitpunkt der Aufnahme von einer Position unterhalb der Kamera erstreckt.The system of claim 1, wherein the image was taken with a camera and the feature extends from a position below the camera at the time of shooting. System nach Anspruch 1, worin die Anweisungen ferner Bestimmen der Länge des Merkmals und Bestimmen einer Schätzung der Zeit, zu der das Bild aufgenommen wurde, basierend auf der Länge umfassen.The system of claim 1, wherein the instructions further comprise determining the length of the feature and determining an estimate of the time the image was taken based on the length. System nach Anspruch 3, worin Bestimmen einer Schätzung der Zeit, zu der das Bild aufgenommen wurde, Vergleichen der Länge des Merkmals mit der erwarteten Schattenlänge einer Person umfasst.The system of claim 3, wherein determining an estimate of the time at which the image was taken comprises comparing the length of the feature with the expected shadow length of a person. System nach Anspruch 1, worin das Bild eine Fotosphäre ist und Assoziieren eines Teils des Bildes mit der bestimmten Kompasspeilung Bestimmen eines Sonnenazimuts umfasst, der mit einer Position assoziiert ist, die ungefähr 180° von der Position des Merkmals ist.The system of claim 1, wherein the image is a photosphere, and associating a portion of the image with the determined compass bearing comprises determining a solar azimuth associated with a position that is approximately 180 ° from the position of the feature. System, das Folgendes umfasst: einen oder mehrere Prozessor(en); und Speicher, der Anweisungen speichert, wobei die Anweisungen durch den Prozessor ausführbar sind, worin die Anweisungen Folgendes umfassen: Identifizieren einer ersten Position eines ersten Merkmals in einem Bild basierend auf der visuellen Ähnlichkeit des ersten Merkmals mit einem Himmelskörper; Identifizieren einer zweiten Position eines zweiten Merkmals in einem Bild basierend auf der visuellen Ähnlichkeit des Merkmals mit einem Objekt, dass mit einem geografischen Standort assoziiert ist; Bestimmen eines Azimutwinkels basierend auf der Position der ersten Position relativ zu der zweiten Position; und Assoziieren eines Teils des Bildes mit dem bestimmten Azimutwinkel.A system comprising: one or more processors; and A memory storing instructions, the instructions being executable by the processor, wherein the instructions include: Identifying a first position of a first feature in an image based on the visual similarity of the first feature to a celestial body; Identifying a second position of a second feature in an image based on the visual similarity of the feature to an object associated with a geographic location; Determining an azimuth angle based on the position of the first position relative to the second position; and Associate a portion of the image with the particular azimuth angle. System nach Anspruch 6, worin Identifizieren einer zweiten Position eines zweiten Merkmals Bestimmen der visuellen Ähnlichkeit des zweiten Merkmals mit einer Straße umfasst.The system of claim 6, wherein identifying a second position of a second feature comprises determining the visual similarity of the second feature to a road. System nach Anspruch 7, worin Bestimmen eines Azimutwinkels Bestimmen eines Satzes möglicher Azimutstandorte des Himmelskörpers umfasst.The system of claim 7, wherein determining an azimuth angle comprises determining a set of possible azimuth locations of the celestial body. System nach Anspruch 6, worin Bestimmen eines Azimutwinkels Bestimmen potenzieller Azimutwinkel, die mir der zweiten Position assoziiert sind, und Vergleichen des potenziellen Azimutwinkels mit der ersten Position umfasst.The system of claim 6, wherein determining an azimuth angle comprises determining potential azimuth angles associated with the second position and comparing the potential azimuthal angle with the first position. System nach Anspruch 6, worin das Bild eine Fotosphäre ist und der Himmelskörper die Sonne ist.The system of claim 6, wherein the image is a photosphere and the celestial body is the sun.
DE202014010849.8U 2014-08-18 2014-08-18 System for determining compass alignment of images Active DE202014010849U1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE202014010849.8U DE202014010849U1 (en) 2014-08-18 2014-08-18 System for determining compass alignment of images

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE202014010849.8U DE202014010849U1 (en) 2014-08-18 2014-08-18 System for determining compass alignment of images

Publications (1)

Publication Number Publication Date
DE202014010849U1 true DE202014010849U1 (en) 2016-11-23

Family

ID=57536718

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202014010849.8U Active DE202014010849U1 (en) 2014-08-18 2014-08-18 System for determining compass alignment of images

Country Status (1)

Country Link
DE (1) DE202014010849U1 (en)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M. Szummer and R. W. Picard, „Indoor-Outdoor Image Classification", in Proc. IEEE International Workshop on Content-based Access of Image and Video Databases, 1998. S. 42–51

Similar Documents

Publication Publication Date Title
EP3017275B1 (en) Positioning method for a surveying instrument and said surveying instrument
DE202010018498U1 (en) Matching an approximately localized request image with a reference image sentence
US20210042552A1 (en) Determining Compass Orientation Of Imagery
Li et al. Quick image-processing method of UAV without control points data in earthquake disaster area
US9625612B2 (en) Landmark identification from point cloud generated from geographic imagery data
DE202014010843U1 (en) Align ground based images with aerial images
DE202015009198U1 (en) Selection of temporally distributed panoramic images for display
DE112015005191T5 (en) Aligning panoramic and aerial photography
DE202010018512U1 (en) System for displaying images based on environmental conditions
Ning et al. Exploring the vertical dimension of street view image based on deep learning: a case study on lowest floor elevation estimation
He et al. High spatial resolution remote sensing: data, analysis, and applications
US9396584B2 (en) Obtaining geographic-location related information based on shadow characteristics
Michel et al. Spatial analysis of oblique photo‐point images for quantifying spatio‐temporal changes in plant communities
Bayr Quantifying historical landscape change with repeat photography: an accuracy assessment of geospatial data obtained through monoplotting
Zhang et al. UAV‐derived imagery for vegetation structure estimation in rangelands: validation and application
Faraji et al. Computer vision–based orthorectification and georeferencing of aerial image sets
Wickramasinghe et al. Satellite remote-sensing monitoring of a railway construction project
Vlachopoulos et al. Delineation of bare soil field areas from unmanned aircraft system imagery with the mean shift unsupervised clustering and the random forest supervised classification
Attorre et al. Analysing the relationship between land units and plant communities: the case of Socotra Island (Yemen)
DE202014010849U1 (en) System for determining compass alignment of images
DE202018100752U1 (en) Bayesian methodology for geospatial object / feature recognition
US10198633B2 (en) Solar photovoltaic measurement
US20230029573A1 (en) Mapping Objects Using Unmanned Aerial Vehicle Data in GPS-Denied Environments
Li et al. Algorithm for automatic image dodging of unmanned aerial vehicle images using two-dimensional radiometric spatial attributes
US20150379040A1 (en) Generating automated tours of geographic-location related features

Legal Events

Date Code Title Description
R207 Utility model specification
R150 Utility model maintained after payment of first maintenance fee after three years
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

R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUNTAIN VIEW, CALIF., US

R082 Change of representative

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

R151 Utility model maintained after payment of second maintenance fee after six years
R152 Utility model maintained after payment of third maintenance fee after eight years