DE202009019138U1 - Architekturen zur Erstellung und Darstellung von zeitabhängigen Bildern - Google Patents

Architekturen zur Erstellung und Darstellung von zeitabhängigen Bildern Download PDF

Info

Publication number
DE202009019138U1
DE202009019138U1 DE202009019138.9U DE202009019138U DE202009019138U1 DE 202009019138 U1 DE202009019138 U1 DE 202009019138U1 DE 202009019138 U DE202009019138 U DE 202009019138U DE 202009019138 U1 DE202009019138 U1 DE 202009019138U1
Authority
DE
Germany
Prior art keywords
image
tile
time
tiles
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE202009019138.9U
Other languages
English (en)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE202009019138U1 publication Critical patent/DE202009019138U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0085Time domain based watermarking, e.g. watermarks spread over several images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/42Document-oriented image-based pattern recognition based on the type of document
    • G06V30/422Technical drawings; Geographical maps
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • G09G5/377Details of the operation on graphic patterns for mixing or overlaying two or more graphic patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Verarbeitungssystem zum Verarbeiten von geografischem Bildmaterial, umfassend: mindestens einen Prozessor; und Speicher zum Speichern von Bilddaten, wobei der Speicher mit dem mindestens einen Prozessor verbunden ist; worin der mindestens eine Prozessor dazu konfiguriert ist, die überlappenden Teile der Bilddaten basierend auf entsprechenden Bezugszeitpunkten der Bilddaten zu verbinden, um eine oder mehrere Bildkacheln zu erzeugen, die jedem Bezugszeitpunkt zugehörig sind und die eine oder mehrere Bildkacheln im Speicher zu speichern.

Description

  • VERWEIS
  • Unter Schutz gestellt werden und Gegenstand des Gebrauchsmusters sind, entsprechend den Vorschriften des Gebrauchsmustergesetzes, lediglich Vorrichtungen wie in den beigefügten Schutzansprüchen definiert, jedoch keine Verfahren. Soweit nachfolgend in der Beschreibung gegebenenfalls auf Verfahren Bezug genommen wird, dienen diese Bezugnahmen lediglich der beispielhaften Erläuterung der in den beigefügten Schutzansprüchen unter Schutz gestellten Vorrichtung oder Vorrichtungen.
  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung beschäftigt sich im Allgemeinen mit Systemen und Verfahren zur Abbildung von Bildern. Im Speziellen beschäftigt sich die vorliegende Erfindung mit der Verbindung von Bildern in einer geografischen Zuordnungsumgebung.
  • 2. Beschreibung des Stands der Technik
  • Bilder, die von Satelliten, Flugzeugen und anderen Quellen aufgenommen werden, werden schon lange genutzt, um visuelle Informationen über die Erde bereitzustellen. In jüngster Zeit haben Verbesserungen von Computerverarbeitungsleistung und Breitbandstreaming zur Entwicklung interaktiver Systeme für Navigationsbilder wie der Zuordnung von Bildern geführt. Einige Navigationssysteme mit interaktiver Karte bieten eine Benutzeroberfläche („User Interface”, „UI”) mit Navigationstasten für die dynamische Navigation in Städten, Stadtteilen und anderen Geländekategorien in drei Dimensionen. Über die Navigationstasten können die Nutzer Gelände und Gebäude innerhalb bestimmter Bereiche kippen, schwenken, drehen, zoomen und aktivieren, um unterschiedliche Perspektiven von für sie interessanten Orten zu erhalten. Ein Beispiel eines interaktiven 3D-Kartensystems für die Navigation innerhalb von Bildern der Erde ist Google EarthTM, entwickelt von Google Inc. (Mountain View, California).
  • Die Produktion von Bildern, die von interaktiven Kartennavigationssystemen genutzt werden, wird typischerweise durch die Verarbeitung großer Mengen von geografisch festgelegten Bildern oder „Assets” erreicht. Solche Assets können von einem einzelnen Überflug eines Satelliten, Flugzeugs oder einer anderen Flugplattform aufgenommen werden oder sie können aus mehreren Luftaufnahmen zusammengeheftet werden. Sobald die Assets verarbeitet sind, können sie in Rechenzentren verlagert werden, von wo aus sie an Clientgeräte verteilt werden können.
  • Verschiedene Assets können verschiedene Auflösungen haben und/oder können zu verschiedenen Zeitpunkten aufgenommen worden sein. Große Mengen neuer Assets werden auf andauernder Basis gesammelt. Leider kann die Verarbeitung dieser Assets ein komplexer und zeitintensiver Prozess sein. Des Weiteren kann das Speichern der Bilder und die Wartung der Datenbanken aufgrund einer immer größer werdenden Menge an Assets problematisch sein. Aspekte der vorliegenden Erfindung beschäftigen sich mit diesen und anderen Problemen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Architekturen und Verfahren, die zeitabhängige Assets verarbeiten und an Benutzer verteilen, werden hierin beschrieben.
  • In Übereinstimmung mit einer Ausführungsform der vorliegenden Erfindung umfasst ein Verfahren die Bereitstellung einer Identifikation verfügbarer Zeitpunkte, für die Bilder für einen geografischen Standort verfügbar sind, wobei die Identifikation durch einen Prozessor oder Computer durchgeführt wird; den Erhalt einer Anfrage für ein Bild, das einem geografischen Standort für einen der verfügbaren Zeitpunkte im Computer zugewiesen ist; und als Reaktion auf die Anfrage die Bereitstellung des Bildes, das dem angeforderten geografischen Standort zugewiesen ist, durch den Computer. Teile des bereitgestellten Bildes umfassen verschiedene Bilder des geografischen Standortes, die zu verschiedenen Zeitpunkten aufgenommen wurden. Die verschiedenen Bilder werden aus einer Vielzahl von Bildern ausgewählt, die Bilder umfasst, die vor und nach dem angefragten Zeitpunkt aufgenommen wurden. Des Weiteren wurden die im bereitgestellten Bild enthaltenen verschiedenen Bilder vor dem angefragten Zeitpunkt aufgenommen.
  • In einer Alternative kann das Verfahren weiterhin die Ableitung der Vielzahl von verschiedenen Bildern von einer Bildquelle erhaltenen Assets umfassen; und die Identifizierung des Zeitpunktes, der jedem der Vielzahl von Bildern zugewiesen ist, wobei jeder Zeitpunkt einem Bezugsdatum eines betreffenden Assets entspricht.
  • In diesem Fall kann das Verfahren weiterhin die Generierung eines verbundenen Bildes für den angefragten Zeitpunkt umfassen. Dabei enthält das verbundene Bild mindestens ein sekundäres Bild von einem früheren als dem angefragten Zeitpunkt und ein primäres Bild vom angefragten Zeitpunkt. In diesem Fall überlappt das primäre Bild das sekundäre Bild.
  • In einem anderen Fall enthält die Generierung des verbundenen Bildes für den angefragten Zeitpunkt die Generierung mehrerer verbundener Bilder mit jeweils einer verschiedenen Detailstufe. In diesem Fall kann die Anfrage für ein Bild, das dem geografischen Standort zugewiesen ist, weiterhin eine Anfrage für eine minimale Detailstufe enthalten und worin das bereitgestellte Bild eines der verbundenen Bilder ist, das die minimale Detailstufe besitzt.
  • In Übereinstimmung mit einer anderen Ausführungsform der vorliegenden Erfindung umfasst ein Verfahren zur Verarbeitung geografischer Bilder den Bezug von Bildern aus einer Bildquelle; die Identifikation des Bezugsdatums für mindestens einige der von der Bildquelle bezogenen Bildern; die Verbindung von sich überschneidenden Teilen der Bilder mithilfe eines Computerprozessors basierend auf entsprechenden Bezugsdaten, um ein oder mehrere jedem Bezugsdatum zugewiesene Bildkacheln zu erzeugen die Speicherung der ein oder mehreren Kacheln in dem Computer zugewiesenen Speicher; und die Bereitstellung mindestens einer der Bildkacheln, die ein ausgewähltes Bezugsdatum besitzt, aus dem Speicher an einen Benutzer, auf Anfrage nach einem Bild, das dem geografischen Standort für das ausgewählte Bezugsdatum zugewiesen ist.
  • In einer Alternative erzeugt die Verbindung sich überschneidender Teile der Bilder basierend auf den zugehörigen Bezugsdaten mehrere Kacheln für ein vorgegebenes Bezugsdatum. Hierbei sind die sich überlappenden Teile von Bildern chronologisch nach Bezugsdatum gestapelt. In einem Beispiel überlagert der Teil eines Bildes mit dem neuesten Bezugsdatum die anderen Teile eines Bildes mit früheren Bezugsdaten. In einem anderen Beispiel beinhalten mindestens einige der mehreren Bildkacheln mit verschiedenen Detailstufen dieselben sich überschneidenden Teile eines Bildes.
  • In Übereinstimmung mit einer weiteren Ausführungsform der vorliegenden Erfindung umfasst ein Verarbeitungssystem zur Verarbeitung geografischer Bilddaten mindestens einen Prozessor und Speicher zur Speicherung von Daten. Der Speicher ist mit dem mindestens einen Prozessor elektrisch verbunden. Der mindestens eine Prozessor kann gesteuert werden für den Bezug von Bildern aus einer Bildquelle, die Identifikation des Bezugsdatums für mindestens einige der von der Bildquelle bezogenen Bildern, die Verbindung von sich überschneidenden Teilen der Bilder basierend auf entsprechenden Bezugsdaten, um die ein oder mehrere jedem Bezugsdatum zugewiesene Bildkacheln zu erzeugen, die Speicherung der ein oder mehreren Kacheln im Speicher und die Bereitstellung mindestens einer Bildkachel, die ein ausgewähltes Bezugsdatum besitzt, aus dem Speicher an einen Benutzer, auf Anfrage nach einem Bild, das dem geografischen Standort für das ausgewählte Bezugsdatum zugewiesen ist.
  • In einem Beispiel kann der mindestens eine Prozessor so gesteuert werden, dass er die Teile von Bildern basierend auf dem zugehörigen Bezugsdatum verbindet, um mehrere Bildkacheln für jedes Bezugsdatum zu erzeugen. Hierbei sind die sich überlappenden Teile von Bildern chronologisch nach Bezugsdatum gestapelt. In einer Alternative überlagert der Teil eines Bildes mit dem neuesten Bezugsdatum die anderen Teile eines Bildes mit früheren Bezugsdaten. In einer anderen Alternative beinhalten mindestens einige der mehreren Bildkacheln mit verschiedenen Detailstufen dieselben sich überschneidenden Teile eines Bildes.
  • In Übereinstimmung mit noch einer anderen Ausführungsform der vorliegenden Erfindung steht ein computerlesbares Medium mit darauf gespeicherten Instruktionen zur Verfügung. Die Instruktionen, wenn von einem Prozessor ausgeführt, bewirken, dass der Prozessor Operationen für den Bezug von Bildern aus einer Bildquelle ausführt; die Identifikation des Bezugsdatums für mindestens einige der von der Bildquelle bezogenen Bildern ausführt; die Verbindung von sich überschneidenden Teilen der Bilder ausführt, basierend auf entsprechenden Bezugsdaten, um die ein oder mehrere jedem Bezugsdatum zugewiesene Bildkacheln zu erzeugen; die ein oder mehrere Kacheln im Speicher speichert; und mindestens eine Bildkachel bereitstellt, die ein ausgewähltes Bezugsdatum besitzt, aus dem Speicher an einen Benutzer, auf Anfrage nach einem Bild, das dem geografischen Standort für das ausgewählte Bezugsdatum zugewiesen ist.
  • In Übereinstimmung mit einer weiteren Ausführungsform der vorliegenden Erfindung umfasst ein Verfahren zur Verarbeitung von Bilddaten die Verbindung einer Mehrzahl von geografische Standorte repräsentierenden Kacheln mithilfe eines Prozessors, wobei mindestens einige der Kacheln zeitbasierte Kacheln sind, die Bilddaten von geografischen Standorten zu verschiedenen Bezugszeiten zugewiesen sind; die Vorbereitung einer Kacheltabelle zur Organisierung der Vielzahl von Kacheln, wobei die Kacheltabelle nach Ort und Detailstufe für jede aus der Vielzahl von Kacheln indiziert ist; die Erstellung von Signaturen, die Kachelerstellungsinformationen für jede aus der Vielzahl von Kacheln enthalten; die Erzeugung einer Vielzahl von Packdateien durch den Prozessor, wobei jede Packdatei mindestens einer aus der Vielzahl von Kacheln zugewiesen ist; und die Verteilung der Vielzahl von Packdateien an mindestens ein Rechenzentrum; worin die Kacheltabelle die zeitbasierten Kacheln weiterhin nach Bezugsdatum indiziert.
  • In einem Beispiel enthält die Verbindung der zeitbasierten Kacheln die Verbindung von sich überschneidenden Teilen von Bildern, basierend aus den zugehörigen Bezugsdaten. In einem anderen Beispiel enthält eine gegebene Packdatei mindestens eine gegebene Kachel, einen Hinweis darauf, dass die gegebene Kachel mit einer Datenbank geteilt wird oder eine Löschmarkierung, die anzeigt, dass der Kacheleintrag gelöscht werden soll.
  • In einer Alternative umfasst das Verfahren weiterhin die Aktualisierung eine betreffenden der Signaturen, nachdem die der betreffenden Signatur zugewiesenen Kachelinformationen in eine Packdatei aufgenommen wurden. In diesem Fall kann das Verfahren ebenfalls die Aktualisierung der Kacheltabelle basierend auf der aktualisierten Signatur umfassen.
  • In noch einer weiteren Alternative kann das Verfahren weiterhin die Indizierung der verteilten Packdateien umfassen; die Aktualisierung einer Bilddatentabelle basierend auf den verteilten Packdateien; und die Aktualisierung einer Quadtree-Pakettabelle basierend auf den indizierten Packdateien; worin jede verteilte Packdatei zeitbasierte Informationen besitzt, die weiterhin basierend auf den zeitbasierten Informationen indiziert werden. In einem Beispiel umfasst das Verfahren weiterhin das Speichern der Bilddatentabelle und der Quadtree-Pakettabelle in einer Datenbank auf einem Bildserver.
  • In Übereinstimmung mit einer weiteren Ausführungsform der vorliegenden Erfindung ist ein System für die Verwaltung von Bilddaten bereitgestellt. Das System einhält Mittel zur Indizierung zeitbasierter Packdateien und nicht zeitbasierter Packdateien. Jede Packdatei enthält mindestens eine Bildkachel, einen Hinweis darauf, dass die mindestens eine Bildkachel mit einer Datenbank geteilt wird oder eine Löschmarkierung, die anzeigt, dass der Bildkacheleintrag in der Datenbank gelöscht werden soll. Das System enthält ebenfalls Mittel zur Aktualisierung mindestens einer Bilddatentabelle basierend auf den zeitbasierten und den nicht zeitbasierten Packdateien. Die mindestens eine Bilddatentabelle enthält Bilddaten für generierte Bildkacheln. Das System enthält ebenfalls Mittel zur Aktualisierung mindestens einer Quadtree-Pakettabelle basierend auf den indizierten Packdateien sowie Mittel zur Verteilung der Quadtree-Pakete der Quadtree-Pakettabelle und der Bilddaten der mindestens einen Bilddatentabelle auf Anfrage an ein Clientgerät.
  • In einem Beispiel indizieren die Mittel zur Indizierung von Packdateien die zeitbasierten Packdateien in eine zeitbasierte Indextabelle und sie indizieren die nicht zeitbasierten Packdateien in eine nicht zeitbasierte Indextabelle. Jede Indextabelle enthält eine Versionskennung und eine Ortskennung, während die zeitbasierte Indextabelle weiterhin eine Datumskennung enthält.
  • In einem anderen Beispiel enthält die mindestens eine Quadtree-Pakettabelle eine erste Quadtree-Pakettabelle zur Verwaltung zeitbasierter Quadtree-Pakete und eine zweite Quadtree-Pakettabelle zur Verwaltung nicht zeitbasierter Quadtree-Pakete.
  • In einer Alternative umfasst das System weiterhin Mittel zur Erstellung von Signaturen. Jede der Signaturen enthält Informationen zur Kachelherstellung für eine betreffende der Bildkacheln.
  • In einer weiteren Alternative umfasst das System weiterhin Mittel zur Verarbeitung ausgewählter Bildkacheln basierend auf den Signaturen. In diesem Fall können die Mittel zur Verarbeitung fähig sein, eine existierende Bildkachel mit einer neuen Bildkachel, der zeitbezogene Informationen zugewiesen sind, zu verbinden. Hierbei wird die Verbindung auf Basis eines Vergleichs der Signatur der existierenden Bildkachel mit der Signatur der neuen zeitbasierten Bildkachel durchgeführt.
  • In Übereinstimmung mit einer weiteren Ausführungsform der vorliegenden Erfindung umfasst ein Verfahren zur Bildverarbeitung einen Prozessor, der Quadtree-Pakete für einen geografischen Standort anfordert, wobei die Quadtree-Pakete Kachelinformationen für den geografischen Standort enthalten und mindestens einige der Quadtree-Pakete datumsbezogene Informationen für entsprechende, ihnen zugewiesene Kacheln enthalten; die Anforderung einer oder mehrerer Kacheln mit einem spezifischen Datum für den geografischen Standort durch den Prozessor; und die Präsentation mindestens einer der angeforderten Kacheln auf einem Bildschirm durch den Prozessor, worin Teile der mindestens einen angeforderten Kachel verschiedene Bilder des geografischen Standortes, aufgenommen zu verschiedenen Zeitpunkten, enthalten, wobei die verschiedenen Bilder aus einer Vielzahl von Bildern ausgewählt werden, die vor und nach dem spezifischen Datum aufgenommene Bilder umfassen und worin die in der präsentierten Kachel enthaltenen verschiedenen Bilder vor dem spezifischen Datum aufgenommen wurden.
  • In einer Alternative sind die Teile chronologisch verbunden. In einer anderen Alternative enthalten die Quadtree-Pakete weiterhin Informationen zur Detailstufe der entsprechenden Kacheln. Hierbei enthält die Anforderung der ein oder mehreren Kacheln weiterhin die Identifizierung einer spezifischen Detailstufe, die auf dem Bildschirm dargestellt werden soll.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Flussdiagramm in Übereinstimmung mit den Aspekten der vorliegenden Erfindung.
  • 2A–G stellen Beispiele von Assets und Kacheln für eine Region von Interesse dar.
  • 3A–B stellen ein Computersystem zur Nutzung in Übereinstimmung mit Ausführungsformen der vorliegenden Erfindung dar.
  • 4A–C stellen den Gebrauch von Assets in Übereinstimmung mit Aspekten der vorliegenden Erfindung dar.
  • 5A–C stellen die Erzeugung von Kacheln in Übereinstimmung mit Aspekten der vorliegenden Erfindung dar.
  • 6 stellt die Erzeugung von Kacheln in Übereinstimmung mit Aspekten der vorliegenden Erfindung dar.
  • 7A–C stellen Assets und die Erzeugung von Bildkacheln sowie deren Indexierung in Übereinstimmung mit Aspekten der vorliegenden Erfindung dar.
  • 8A–B stellen eine hierarchische räumliche Datenstruktur eines Quadtrees sowie die Erzeugung von Kacheln in Übereinstimmung mit Aspekten der vorliegenden Erfindung dar.
  • 9A–B stellen eine Indextabelle und eine Quadtreetabelle zur Nutzung mit Aspekten der vorliegenden Erfindung dar.
  • 10 stellt eine GUI zur Nutzung in Übereinstimmung mit den Aspekten der vorliegenden Erfindung dar.
  • 11 ist ein Flussdiagramm, dass die Verarbeitung einer zeitbasierten Bilderanfrage in Übereinstimmung mit Aspekten der vorliegenden Erfindung darstellt.
  • 12A–C stellen eine verteile Bilderarchitektur in Übereinstimmung mit Aspekten der vorliegenden Erfindung dar.
  • 13 präsentiert eine Prozedur zur Verarbeitung von Bildern in Übereinstimmung mit Aspekten der vorliegenden Erfindung dar.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Die Aspekte, Merkmale und Vorteile der vorliegenden Erfindung werden offensichtlich, wenn sie unter Bezugnahme auf die folgende Beschreibung der bevorzugten Ausführungsformen und begleitenden Figuren betrachtet werden. Dieselben Referenznummern in unterschiedlichen Zeichnungen können dieselben oder ähnliche Elemente identifizieren. Des Weiteren schränkt die folgende Beschreibung die vorliegende Erfindung nicht ein; der Umfang der Erfindung wird durch die angehängten Ansprüche und Äquivalente definiert.
  • In Übereinstimmung mit Aspekten der vorliegenden Erfindung können Assets mit verschiedenen Auflösungen und/oder Aufnahmezeitpunkten verarbeitet werden, z. B. durch das „Verbinden” von Teilen mehrerer Assets, um Bilder eines bestimmten Ortes oder einer bestimmten Region zu bestimmten Zeitpunkten bereitzustellen. 1 stellt einen beispielhaften Prozess 100 dar, der ein oder mehrere verbundene Bilder für einen bestimmten Zeitpunkt produziert, z. B. als Reaktion auf die Anfrage eines Benutzers.
  • Der Prozess 100 enthält den Block 102, wo die Assets (z. B. Luftaufnahmen) erhalten werden. Die Luftaufklärung reicht beispielsweise zurück bis zum 1. Weltkrieg, wenn nicht sogar weiter. Regierungen haben seit den 1960ern Satelliten genutzt, um Bilder der Erde aufzunehmen. In jüngerer Zeit haben auch kommerzielle Satelliten Bilder der Erde generiert. Assets aus verschiedenen Quellen können gesammelt und in einer Bilddatenbank gespeichert werden. Da solche Assets aus verschiedenen Zeiten stammen können, wird das Bezugsdatum für jedes Asset wie in Block 104 gezeigt identifiziert.
  • Verschiedene Assets können aus einer oder mehreren Quellen empfangen werden und können eine Vielzahl von Orientierungen beinhalten. Solche Assets können neu in ein passendes Koordinatensystem für das Kartensystem (z. B. ein weltraumbasiertes Koordinatensystem) projiziert und in einer oder mehreren Datenstrukturen (z. B. Datenbanktabellen) gespeichert werden. Die neu projizierten Assets können dann in Kacheln aufgeteilt werden, die unabhängig voneinander verarbeitet werden, z. B. in einer parallelen Verarbeitungsinfrastruktur. Die Kacheln können gespeichert werden, sodass Kacheln, die Bilddaten für nahe beieinanderliegende geografische Standorte beinhalten, mit hoher Wahrscheinlichkeit auf demselben Gerätecluster gespeichert werden, um den Overhead zu reduzieren, der mit dem Zugriff auf Informationen auf mehreren Geräten mit einhergeht. In diesem Fall kann die Kachelgröße so bestimmt werden, dass sie den Speicherbeschränkungen eines Gerätes oder eines Clusters von Geräten entsprechen. Die Assets können in jede gewünschte Form aufgeteilt werden. Eine Kachelform benötigt allerdings typischerweise weniger rechnerischen und/oder repräsentativen Overhead während der Verarbeitung. Eine Diskussion solcher Kachelmanipulation einschließlich Deckmasken, Höhenlinienauflockerung und „Minification” (z. B. Upsampling und Downsampling der Auflösung) wird im U.S.-Patentantrag Nr. 11/437,553 („der Antrag 553”) mit Titel „Large-Scale Image Processing Using Mass Parallelization Techniques”, eingereicht am 19. Mai 2006, bereitgestellt, dessen gesamte Offenbarung hiermit ausdrücklich durch Referenzierung inkorporiert wird.
  • Wie in Block 106 gezeigt, können eine oder mehrere „Kacheln” aus den Assets generiert werden. Kacheln repräsentieren einen Bereich von Bilddaten mit einer bestimmten Auslösung und an einem bestimmten Ort. Ein gegebenes Asset kann z. B. eine bestimmte Region der Erde abbilden. Die 2A2C illustrieren ein Beispiel von drei verschiedenen, sich überschneidenden Assets, die zu verschiedenen Zeitpunkten für eine bestimmte Region 200 aufgenommen wurden. In diesem Beispiel zeigt 2A ein erstes Asset 202 mit einem Paar von Randkoordinaten X2, Y10 und X5, Y5; 2B zeigt ein zweites Asset 204 mit einem Paar von Randkoordinaten X4, Y6 und X10, Y3; und 2C zeigt ein drittes Asset 206 mit einem Paar von Randkoordinaten X0, Y8 und X8, Y0. Die Koordinaten können Breitengrade und Längengrade, kartesische Koordinaten oder ein anderes geografisches Koordinatensystem darstellen. In diesem Beispiel stammt Asset 202 von einem Zeitpunkt T1, Asset 204 von einem Zeitpunkt T2 und Asset 206 von einem Zeitpunkt T3. Ein Benutzer kann eine Kachel anfragen, die Teil einer Region ist, für die mehrere Assets existieren. Eine erste Kachel 208 kann z. B. Teil der beiden Assets 202 und 206 sein, während eine zweite Kachel 210 die Assets 204 und 206 überlappen kann, wie in 2D dargestellt.
  • Kacheln, die dieselbe Region abdecken, müssen nicht dieselbe Größe oder dieselbe Auflösung besitzen. Die 2E–F illustrieren Eine Region 200', die von verschiedenen Kachelsets abgedeckt werden kann. Wie in 2E dargestellt, kann die Region 200' von einer einzelnen Kachel 220 mit einer ersten Auflösung abgedeckt werden. Wie in 2F dargestellt, kann die Region 200' von einem Quartett von Kacheln 222 abgedeckt werden. Jede Kachel 222 kann eine zweite Auflösung haben, z. B. eine höhere Auflösung als die erste Auflösung. Und wie in 2G dargestellt, kann die Region 200' von einem Kachelset 224 abgedeckt werden, z. B. von 16 Kacheln, die alle eine dritte Auflösung besitzen. Die dritte Auflösung kann größer sein als die zweite Auflösung. Daher kann sich in diesem Beispiel die Größe verringern, während sich die Auflösung oder Detailstufe („Level of Detail”, „LOD”) erhöht. Alternativ können die Kacheln 220, 222 und 224 dieselbe Auflösung haben, z. B. 256 × 256. Daher können die vier Kacheln 222 kombinierte 512 × 512 Pixel beinhalten und die 16 Kacheln 224 können kombinierte 1024 × 1024 Pixel beinhalten. Interpolation kann genutzt werden, um die Kacheln 222 aus den Kacheln 220 zu generieren. Gleichermaßen kann Interpolation genutzt werden, um die Kacheln 224 aus den Kacheln 220 und/oder den Kacheln 222 zu generieren. Dies ist als Bildvergrößerung („Magnification”) bekannt. Entgegengesetzt können feinere Auflösungen durch Resampling in gröbere Auflösungen mithilfe bekannter Bildbearbeitungstechniken umgewandelt werden. Während nur drei Auflösungen in diesem Beispiel genannt werden, ist es selbstverständlich, dass jede Anzahl an Auslösungsstufen bereitgestellt werden kann.
  • Zurückblickend auf 1 kann bei Block 108 das LOD für jedes Asset genutzt werden, um ein oder mehrere Bilder für jede Kachel zu generieren. Asset 202 kann z. B. eine Auflösung von 20 cm haben, Asset 204 kann eine Auflösung von 50 cm haben und Asset 206 kann eine Auflösung von 2 m haben. In einem typischen System können verschiedene Parameter wie etwa die Auflösung, die Bildqualität und der Bildumfang genutzt werden, um zu ermitteln, wie eine gegebene Kachel generiert wird.
  • Dennoch können, während mehr und mehr Assets gesammelt werden, ältere Assets von neueren Bilddaten überdeckt werden. Asset 206 kann z. B. Asset 202 komplett verdecken und es kann Asset 204 teilweise verdecken. Es kann erstrebenswert sein, die älteren Bilddaten verfügbar zu machen, sodass Benutzer sehen können, wie sich die Oberfläche der Erde im Laufe der Zeit geändert hat. Daher und in Übereinstimmung mit einem Aspekt der Erfindung können überlappende Assets miteinander verbunden werden, basierend auf dem Bezugszeitpunkt, wie in Block 110 gezeigt. Das Verbinden resultiert in Kacheln wie den Kacheln 208 und 210 in 2D.
  • Und wie in Block 112 von 1 gezeigt, kann eine Bilderserie für jede Kachel produziert werden, z. B. durch Generierung eines Kachelbildes für jeden einzigartigen Zeitpunkt, an dem Bild-Assets, die sich mit der Kachel kreuzen, ursprünglich bezogen worden sind. Solche Kachelbilder können in einer Bilderdatenbank gespeichert und/oder einer Datenstruktur zugewiesen werden, wie weiter unten ausführlicher diskutiert werden wird. Wenn die Kachelbilder erstellt worden sind, können sie einem Benutzergerät zur Verfügung gestellt werden, z. B. als Antwort auf eine Benutzeranfrage, wie in Block 114 gezeigt.
  • Verschiedene Architekturen können eingesetzt werden, um solche Ergebnisse zu erzielen. 3A zeigt z. B. ein schematisches Diagramm eines Computersystems und bilden verschiedene Computergeräte ab, die allein oder in einer Netzwerkkonfiguration gemäß Aspekten der vorliegenden Erfindung verwendet werden können. Diese Figur illustriert z. B. ein Computernetzwerk 300, das eine Vielzahl von Computern 302, 304, 306 und 308 sowie andere Arten von Geräten wie tragbare elektronische Geräte umfassen kann, zum Beispiel ein Mobiltelefon 310 und einen PDA 312. Das Computerverarbeitungssystem kann über eine lokalen oder eine direkte Verbindung 314 miteinander verbunden sein und/oder über ein Kommunikationsnetzwerk 316 wie ein LAN, WAN, das Internet usw. gekoppelt sein, das fest verdrahtet oder drahtlos sein kann.
  • Jedes Computerverarbeitungssystem kann zum Beispiel ein oder mehrere Benutzereingabegeräte wie eine Tastatur 318 und eine Maus 320 und/oder verschiedene andere Arten von Eingabegeräten wie Eingabestifte, Joysticks, Tasten, Touchscreens usw. sowie ein Anzeigegerät 322 beinhalten, das zum Beispiel eine CRT, LCD, einen Plasmabildschirm-Monitor, ein TV-Gerät, einen Projektor usw. beinhalten könnte. Jeder Computer 302, 304, 206 und 308 kann ein PC, ein Server usw. sein. Nur als Beispiel können die Computer 302 und 306 PCs sein, während Computer 304 ein Server und Computer 308 ein Laptop sein kann. Wie in 3B dargestellt, enthält jeder Computer wie die Computer 302 und 304 einen Prozessor 324, einen Speicher 326 und weitere normalerweise in einem Computer vorhandene Komponenten.
  • Der Speicher 326 speichert z. B. Informationen, die für den Prozessor 324 zugänglich sind, darunter Anweisungen 328, die von dem Prozessor 324 ausgeführt und Daten 330, die die von dem Prozessor abgerufen, manipuliert oder gespeichert werden können. Bei dem Speicher kann es sich um jede beliebige Art von Speicher handeln, wie z. B. ein Festplattenlaufwerk, eine Speicherkarte, ROM, RAM, DVD, CD-ROM, beschreibbaren und nichtbeschreibbaren Speicher, der bzw. das vom Prozessor zugängliche Informationen speichern kann. Der Prozessor 324 kann jede beliebige Anzahl bekannter Prozessoren enthalten, wie z. B. Prozessoren von Intel Corporation. Alternativ dazu kann es sich bei dem Prozessor um einen speziell zur Ausführung von Operationen vorgesehenen Controller, wie z. B. eine ASIC, handeln.
  • Die Anweisungen 328 können einen beliebigen Satz von Anweisungen umfassen, die direkt (z. B. Maschinencode) oder indirekt (z. B. Skripte) vom Prozessor ausgeführt werden. In dieser Hinsicht können die Begriffe „Anweisungen”, „Instruktionen”, „Schritte” und „Programme” hierin austauschbar verwendet werden. Die Anweisungen können in einer beliebigen Computersprache oder einem beliebigen Format gespeichert sein, zum Beispiel in Objektcode oder Modulen von Quellcode. Die Funktionen, Verfahren und Routinen der erfindungsgemäßen Anweisungen werden nachstehend eingehender erläutert.
  • Die Daten 330 können von dem Prozessor 324 gemäß den Anweisungen 328 abgerufen, gespeichert oder bearbeitet werden. Die Daten können als Datensammlung gespeichert sein. Obwohl die Erfindung beispielsweise nicht von einer bestimmten Datenstruktur begrenzt ist, können die Daten in Computerregistern in einer relationalen Datenbank als eine Tabelle gespeichert werden, die über eine Vielzahl von unterschiedlichen Feldern und Datensätzen, XML-Dokumenten oder unstrukturierten Dateien verfügt. Wie weiter unten in mehr Details beschrieben werden wird, können bestimmte bildbezogene Daten in unstrukturierten Dateien, wie z. B. „Keyhole Flat Files” („KFF”) gespeichert werden.
  • Die Daten können auch in jedem beliebigen computerlesbaren Format formatiert sein, wie z. B. unter anderem binäre Werte, ASCII oder EBCDIC (Extended Binary-Coded Decimal Interchange Code). Gleichermaßen können die Daten Bilder enthalten, gespeichert in einer Vielzahl von Formaten, wie z. B. vektorbasierte Bilder oder Bitmap-Bilder mit verlustfreier (z. B. BMP) oder verlustbehafteter (z. B. JPEG) Kodierung. Darüber hinaus können die Daten alle Informationen zur Kennzeichnung der relevanten Informationen umfassen, wie beschreibende Texte, proprietäre Codes, Zeiger, Verweise zu in anderen Speichern abgelegten Daten (einschließlich anderer Netzstandorte) oder Informationen, die von einer Funktion zur Berechnung der relevanten Daten genutzt werden.
  • Obwohl in 3B der Prozessor 324 und Speicher 326 funktional als in zum gleichen Block gehörend dargestellt werden, versteht es sich, dass Prozessor und Speicher in der Praxis mehrere Prozessoren und Speicher umfassen können, die in dem gleichen physischen Gehäuse untergebracht werden können oder nicht. Beispielsweise können einige oder alle der Anweisungen und Daten auf entfernbare CD-ROM und andere in einem Nur-Lese-Computer-Chip gespeichert werden. Einige oder alle Anweisungen und Daten können an einem Standort gespeichert werden, der physisch vom Prozessor entfernt ist, zu dem der Prozessor aber trotzdem Zugang hat. Desgleichen kann der Prozessor eine Reihe von Prozessoren umfassen, die parallel betrieben werden können oder nicht. Daten können über mehrere Speicher 326 wie Festplatten oder dergleichen verteilt gespeichert sein.
  • In einem Aspekt kann der Server 304 mit einem oder mehreren Clientcomputern 302, 306 und/oder 308 und anderen Geräten wie Mobiltelefon 310 und PDA 312 kommunizieren. Client-Computer oder sonstige Clientgeräte können wie der Server 304 mit einem Prozessor, Speicher und Anweisungen sowie einem oder mehreren Benutzereingabegeräten 318, 320 und einem Benutzerausgabegerät wie der Anzeigevorrichtung 322 konfiguriert sein. Jeder Clientcomputer kann ein Allzweckcomputer zur Verwendung durch eine Person sein, der all die normalerweise in einem Personalcomputer vorhandenen Komponenten aufweist, wie eine Zentraleinheit (CPU), Anzeigevorrichtung, CD-ROM- oder DVD-Laufwerk, Festplatte, Maus, Tastatur, Berührungsbildschirm, Lautsprecher, Mikrofon, Modem und/oder Router (Telefon, Kabel oder sonstiges) sowie all die Komponenten die zur Verbindung dieser Elemente untereinander verwendet werden.
  • Der Server 304, Clientcomputer und andere Geräte sind zur direkten und indirekten Kommunikation mit anderen Computern fähig, z. B. über das Netzwerk 316. Obwohl nur einige Computergeräte in den 3A und 3B dargestellt sind, sollte verstanden werden, dass ein typisches System eine große Anzahl verbundener Server und Clients beinhalten kann, wobei sich jedes Computergerät an einem anderen Knoten des Netzwerks befindet. Das Netzwerk 316 und die dazwischenliegenden Knoten können verschiedene Konfigurationen und Protokolle, wie z. B. Internet, Intranet, virtuelle private Netzwerke, Großraumnetzwerke, lokale Netzwerke, private Netzwerke, die die von einem oder mehreren Unternehmen urheberrechtlich geschützten Kommunikationsprotokolle verwenden, Ethernet, WLAN, Bluetooth und HTTP umfassen.
  • Eine Kommunikation über das Netzwerk einschließlich der dazwischenliegenden Knoten kann von jedem Gerät ermöglicht werden, das in der Lage ist, Daten von einem zum anderen Computer zu übertragen, wie Modems (z. B. Dial-up oder Kabel), Netzwerkschnittstellen und drahtlose Schnittstellen. Der Server 304 kann ein Webserver sein. Obgleich gewisse Vorteile erzielt werden, wenn Informationen wie oben angegeben übertragen oder empfangen werden, sind andere Aspekte der Erfindung nicht auf eine besondere Art und Weise der Informationsübertragung eingeschränkt. Gemäß manchen Aspekten können Informationen zum Beispiel über ein Medium wie eine Platte, ein Band, CD-ROM oder direkt zwischen zwei Computersystemen über ein Wählmodem gesendet werden. Gemäß anderen Aspekten können die Informationen in einem nichtelektronischen Format übertragen und manuell in das System eingegeben werden.
  • Des Weiteren können Computer und Clientgeräte in Übereinstimmung mit den hierin beschriebenen Systemen und Verfahren jedes Gerät umfassen, das in der Lage ist, Instruktionen auszuführen und Daten an und von Menschen und anderen Computern zu übermitteln, einschließlich Netzwerkcomputer ohne lokale Speichermöglichkeit, PDAs, einschließlich moderner wie PDA 312 und internetfähige kabellose Telefone wie das Mobiltelefon 310.
  • Wie in 3A dargestellt, kann das Netzwerk 300 auch eine Bilddatenbank 332 und/oder einen Karteninformationsanbieter 334 enthalten. Die Bilddatenbank 332 und der Karteninformationsanbieter 334 können direkt oder indirekt mit dem Server 304 verbunden sein. In einer Alternative können die Bilddatenbank 332 und der Karteninformationsanbieter 334 Teil des Servers 304 oder anderweitig logisch mit ihm verbunden sein. Die Bilddatenbank 332 kann Daten 330 in einer oder mehreren KFFs speichern. Der Karteninformationsanbieter 334 kann Assets und andere Informationen, einschließlich Satellitendaten, Luftfotografien, digitalen Karten, Höhenprofilen, GPS-Koordinaten usw., aus einer oder mehreren Quellen (nicht dargestellt) erhalten. Beispiele einer Bilddatenbank und eines Karteninformationsanbieters werden im co-anhängigen und gemeinsam besessenen U.S.-Patentantrag Nr. 11/762,049 („der Antrag 049”) mit dem Titel „Markup Language for Interactive geografic Information System”, eingereicht am 12. Juni 2007 und veröffentlicht als US.-Patentveröffentlichung Nr. 2008/0016472 am 17. Januar 2008, zur Verfügung gestellt, dessen gesamte Offenbarung hiermit ausdrücklich durch Referenzierung inkorporiert wird. Des Weiteren kann jedes Clientgerät (z. B. die Computer 302, 306 und 308 sowie das Mobiltelefon 310 und der PDA 312) Anwendungssoftware wie etwa einen weltraumbasierten Browser enthalten und ausführen, die ein Kartenmodul enthalten kann, wie offenbart im „Antrag 049”.
  • Wie bereits in Hinblick auf die 2A2D besprochen können verschiedene überlappende Assets in Bilder von verschiedenen Zeitpunkten einer bestimmten Region von Interesse umgewandelt werden. Daher stehen bei der Vorbereitung einer gegebenen Kachel, die von mehreren Assets erfasst wird, verschiedene Optionen zur Verfügung. Die Assets können z. B. basierend auf ihrer Auflösung klassifiziert werden. Hierbei können die Assets mit der höchsten Auflösung auf einer obersten Ebene platziert werden, während die Assets mit der nächsthöheren Auflösung in der nächstniedrigeren Ebene platziert werden können und so weiter in der Folge absteigender Auflösungen. Die Ebenen können auf diese Weise verbunden werden, um eine „beste” Auflösung basierend auf den verfügbaren Assets bereitzustellen.
  • Das obige Beispiel in 2D zeigt ein solches Szenario. Hierbei werden die Kacheln 208 und 210 unter Nutzung der besten verfügbaren Asset-Auflösung erzeugt. Daher kann, wie in der Figur gezeigt, die Kachel 208 einzig einen Teil des Assets 202 umfassen, während die Kachel 210 einen Teil des Assets 204 (dargestellt als untere Hälfte der Kachel) und einen Teil des Assets 206 (dargestellt als obere Hälfte der Kachel) umfassen kann.
  • Kacheln können allerdings auch auf Basis von anderen Kriterien als der Auflösung erzeugt werden. Ein besonders passendes Kriterium ist das Datum des Bezugs des bzw. der Assets. In vielen Situationen kann sich ein Benutzer z. B. dazu entscheiden, eine Region von Interesse so anzusehen, wie sie an einem oder mehreren Zeitpunkten ausgesehen hat. Die Auswertung der Landschaftsentwicklung ist oft relevant für urbane Planung (z. B. wie sich eine Stadt mit der Zeit ausgebreitet hat), Ökologie (z. B.: Hat die Größe der Feuchtbiotope auf Grund von Baumaßnahmen abgenommen?) und Hauskäufer (z. B.: Wie viele Hauser in der Nachbarschaft wurden in den letzten Jahren renoviert?), um nur einige zu nennen. Daher können Assets entsprechend einem Aspekt der vorliegenden Erfindung verbunden werden, um mehrere Ausgaben für einen bestimmten Ort zu erzeugen (z. B. Kacheln), wobei jede Ausgabe das Aussehen dieses Ortes zu einem bestimmten Zeitpunkt repräsentiert.
  • Im Beispiel in den 2A–C stammt das Asset 202 vom Zeitpunkt T1, das Asset 204 vom Zeitpunkt T2 und das Asset 206 vom Zeitpunkt T3. Es sei angenommen, dass T1 der früheste Zeitpunkt und T3 der neueste Zeitpunkt ist. In diesem Fall könnten mindestens drei verbundene Ansichten erstellt werden. Beispiele solcher Ansichten werden in den 4A–C gezeigt. Wie in 4A gezeigt, enthält die Ansicht 400 zum Zeitpunkt T1 nur das Asset 202. Die Ansicht 402 zum Zeitpunkt T2, dargestellt in 4B, enthält beide Assets 202 und 204. Hierbei überlagert in einer Kombination der zwei Assets Asset 204 Asset 202, obwohl Asset 202 die höhere Bildauflösung besitzen kann. Und wie in 4C dargestellt, enthält die Ansicht 404 alle drei Assets 202, 204 und 206, wobei das neueste Asset 206 beide Assets 204 und 202 überlagert.
  • Wenn ein Benutzer eine Ansicht anfordert, die von einer Kachel vergleichbar mit Kachel 208 in 2D abgedeckt wird, wird die resultierende und bereitgestellte Kachel vom Zeitpunkt des Interesses abhängen. Wie z. B. in 5A gezeigt, wird zum Zeitpunkt T1 die Kachel 500 ausgeliefert, wobei diese Kachel äquivalent ist zu Kachel 208 in 2D, da beide vom Asset 202 abgeleitet sind. Wie in 5B gezeigt, wird zum Zeitpunkt T2 die Kachel 500 ebenfalls ausgeliefert, da das Asset 204 diese Region nicht umfasst. Im Kontrast dazu, wie in 5C gezeigt, wird zum Zeitpunkt T3 die Kachel 500' ausgeliefert, wobei diese Kachel Bilddaten vom Asset 206 umfasst, aber vorzugsweise nicht vom Asset 202.
  • Gleichermaßen wird, wenn ein Benutzer eine Ansicht anfordert, die von einer mit Kachel 210 aus 2D vergleichbaren Kachel abgedeckt wird, die resultierende und bereitgestellte Kachel vom Zeitpunkt des Interesses abhängen. Hierbei wird Kachel 210 zur Referenz in gestrichelten Linien dargestellt. In diesem Fall wird zum Zeitpunkt T1 (siehe 5A) keine Kachel ausgeliefert werden, da das Asset 202 diese Region von Interesse nicht abdeckt. Wie in 5B gezeigt, wird zum Zeitpunkt T2 die Kachel 502 ausgeliefert. In diesem Beispiel ist auf Grund der Abdeckung von Asset 204 nur ein Teil der Kachel 210, nämlich Kachel 502, verfügbar. In diesem Fall könnte der Bildschirm kein Bild für den nicht verfügbaren Teil von Kachel 210 liefern, könnte den Benutzer darauf hinweisen, dass keine Daten für diesen Teil der Region von Interesse verfügbar sind oder könnte ein Standardbild anzeigen, dem ein Zeitpunkt zugewiesen ist oder auch nicht. Im Kontrast dazu, wie in 5C gezeigt, wird zum Zeitpunkt T3 die Kachel 502' ausgeliefert. Diese Kachel umfasst Bilddaten von Asset 206, aber vorzugsweise nicht von Asset 204.
  • 6 illustriert einen weiteren Fall mit den Assets 202, 204 und 206. Wie beim vorherigen Beispiel ist Asset 202 das älteste Asset, Asset 204 ist das nächstälteste Asset und Asset 206 ist das neueste Asset. Zur Vereinfachung der Darstellung werden die drei Assets so präsentiert, dass Asset 204 Asset 202 überlagert und Asset 204 teilweise transparent ist, um das frühere Asset zu zeigen. Gleichermaßen überlagert Asset 206 die Assets 202 und 204 und ist teilweise transparent, um die beiden früheren Assets zu zeigen.
  • Im vorliegenden Fall wird eine neue Region von Interesse 600 gezeigt. Hierbei wird die Region 600 von allen drei Assets 202, 204 und 206 abgedeckt. Daher, wie vom gestrichelten Pfeil angezeigt, würde zum Zeitpunkt T1 eine erste Kachel vom überlappenden Teil von Asset 202 erzeugt werden. Wie vom gestrichelten Pfeil angezeigt, würde zum Zeitpunkt T2 eine zweite Kachel vom überlappenden Teil von Asset 204 erzeugt werden. Und wie vom gestrichelten Pfeil angezeigt, würde zum Zeitpunkt T3 eine dritte Kachel vom überlappenden Teil von Asset 206 erzeugt werden.
  • In einer Alternative ist es möglich, die Bilddaten eines überlappten Assets zu nutzen, um irgendwelche Lücken im überlappenden Asset zum gewünschten Zeitpunkt zu füllen bzw. Fehler darin zu korrigieren. Dies wird jedoch vorzugsweise nur an den Kanten des überlappenden Assets gemacht. Dies ist so, weil räumliche oder farbliche Unterschiede zwischen den Assets vergrößert werden können, was in einer schlechten Qualität des Bildes oder der Kachel resultiert. Auflockerung der Kanten der Bilddaten des benachbarten Assets macht die Kanten weniger prominent und ablenkend.
  • In Übereinstimmung mit einem Aspekt der vorliegenden Erfindung wird die Verbindung von benachbarten und/oder überlappenden Kacheln mithilfe von Asset-Bezugsdaten als primäres Kriterium für die Verbindung durchgeführt. 7A zeigt ein Beispiel, in dem sechs Assets (A–F) zu sechs verschiedenen Zeitpunkten bezogen werden (T1, ..., T6). Jedem Asset ist eine Detailstufe, LOD, zwischen 1 (z. B. geringste Auslösung) und 6 (z. B. höchste Auflösung) zugewiesen. Im vorliegenden Fall deckt keines der Assets A–F die Kachel von Interesse komplett ab.
  • 7B illustriert, wie mehrere Kachelbilder für die Kachel von Interesse erzeugt werden, wenn mehrere Assets mit verschiedenen Bezugsdaten vorhanden sind. Daher, wie in der ganz rechten Spalte dieser Figur gezeigt, können sechs verschiedene Kachelbilder erzeugt werden. Wie in der Figur dargestellt, meint das Symbol „+”, dass das Asset zur Rechten des „+” das Asset zur Linken des „+” überlagert, wenn sie verbunden werden. Während z. B. zum Zeitpunkt T1 nur Asset B genutzt wird, um ein bestimmtes Kachelbild zu erstellen, werden zum Zeitpunkt T2 die Assets B und C verbunden, um ein weiteres Kachelbild zu erzeugen. In diesem Fall, da Asset B zum Zeitpunkt T1 bezogen wurde und Asset C zum Zeitpunkt T2 bezogen wurde, überlagert Asset C Asset B im verbundenen Kachelbild. Gleichermaßen werden für den Zeitpunkt T3 die drei Assets B, C und E genutzt, wobei Asset E C überlagert und C B überlagert. Zusätzliche Kachelbilder für die Zeitpunkte T4, T5 und T6 werden gleichermaßen erzeugt.
  • Ein Benutzer, der interessiert daran ist, diese bestimmte Kachel von Interesse anzusehen, hat die Option, die Kachel zu sechs verschiedenen Zeitpunkten anzusehen. Die Benutzeroberfläche eines Clientgeräts (z. B. die Computer 302, 306 oder 308, das Mobiltelefon 310 oder der PDA 312 aus 3A) kann dem Benutzer eine Leiste, Auswahlknöpfe oder andere Werkzeuge zur Verfügung stellen, um einen bestimmten Zeitpunkt auszuwählen. Wenn der Benutzer also den Zeitpunkt T1 auswählt, wird das Kachelbild, das rein auf Asset B basiert, angezeigt. Wenn der Benutzer den Zeitpunkt T4 auswählt, dann wird das Kachelbild basierend auf einer Kombination der Assets B, C, E und D (verbunden auf die in der ersten Zeile gezeigte Art und Weise) dargestellt. Und wenn der Benutzer den Zeitpunkt T6 auswählt, dann wird das Kachelbild basierend auf einer Kombination der Assets B, C, E, D, A und F (verbunden auf die in der ersten Zeile gezeigte Art und Weise) dargestellt.
  • Falls die Bezugszeit der Assets das einzige Kriterium wäre, dann würde die erste Zeile in 7B alle nötigen Kachelbilder für die Kachel von Interesse zur Verfügung stellen. In Übereinstimmung mit einem anderen Aspekt der vorliegenden Erfindung können jedoch weitere Kachelbilder basierend auf dem LOD und/oder anderen Kriterien erzeugt werden. In der vorliegenden Figur werden zusätzliche Kachelbilder bezüglich des LOD erzeugt. Wie in der zweiten Zeile (LOD = 2) gezeigt, können auf Grund der Auslassung von Asset A, das einen LOD von 1 besitzt, weniger Kachelbilder erzeugt werden. Die mit LOD 2 erzeugten Kacheln können von verschiedener Größe und/oder Auflösung als die mit LOD 1 erzeugten Kacheln sein. Während z. B. die Kachelbilder für den Zeitpunkt T4, die einen LOD von 2 haben, mithilfe derselben Assets (B + C + E + D) erzeugt werden können wie die Kachelbilder für den Zeitpunkt T4, die einen LOD von 1 haben, können mehr Kacheln (z. B. Unterkacheln) mit höherer Auflösung verwendet werden.
  • Im Beispiel von 7B müssen in diesem Fall keine neuen Kachelbilder für den Zeitpunkt Ts erzeugt werden, da das Asset A das einzige Asset für diesen Zeitpunkt ist. Daher kann bei einer Benutzeranfrage nach einer Kachel von Interesse zum Zeitpunkt Ts, die eine minimale Auflösung von 2 besitzt, das für den Zeitpunkt T4 erzeugte Kachelbild oder ein anderer Zeitpunkt angezeigt werden oder das Clientgerät kann die Daten vergrößern. Des Weiterem werden für den Zeitpunkt T6 in einem Beispiel nur die Assets B, C, E, D und F auf dieser Auflösungsstufe genutzt. In einem anderen Beispiel kann eine Verbindung von Bildern mit höherer Auflösung ein Asset mit gröberer Auflösung einschließen, wie etwa Asset A. Daher kann eine Kachel von Interesse für den Zeitpunkt T6 vergrößerte Daten von der Originalauflösung von Asset A enthalten. In einer Variation werden nur gröbere Stufen von älteren Assets genutzt. Verschiedene Kombinationen von Assets können für verschiedene Auflösungsstufen erzeugt werden, wie in 7B dargestellt.
  • In einer weiteren Variation kann das älteste oder früheste verfügbare Asset dazu bestimmt werden, leere Stellen oder auf andere Weise mangelhafte Stellen in Kacheln auszufüllen. Dieses früheste oder „baseline” Asset (Basisasset) kann als Hintergrundebene für die gesamte Kachel genutzt werden. Dieses Basisasset (z. B. Asset 0 vom Zeitpunkt T0) kann vergrößert werden (worin ein vergrößertes Asset von MX repräsentiert wird), wie es in einer bestimmten Verbindung benötigt wird. Im folgenden Beispiel wird angenommen, dass die Vergrößerung um ein oder zwei Stufen ausreichend ist, um ein Asset eine Kachel komplett abdecken zu lassen. Daher kann eine modifizierte Version der Tabelle in 7B wie folgt aussehen:
    LOD Zeitbasierte Kachel(n)
    1 T1 = M0 + B; T2 = M0 + B + C; T3 = M0 + B + C + E; T4 = M0 + B + C + E + D; T5 = M0 + B + C + E + D + A; T6 = MA + B + C + E + D + F
    2 T1 = M0 + B; T2 = M0 + B + C; T3 = M0 + B + C + E; T4 = M0 + B + C + E + D; T6 = M0 + MA + B + C + E + D + F
    3 T2 = MB + C; T3 = MB + MC + E; T4 = MB + MC + E + D; T6 = MB + MC + E + D + F
    4 T2 = MB + C; T3 = MB + MC + E; T4 = MB + MC + E + D; T6 = MB + MC + E + D + F
    5 T3 = MB + MC + E; T4 = MB + MC + E + D; T6 = MB + MC + E + D + F
    6 T6 = MC + ME + MD + F
  • In der obenstehenden Tabelle, für einen LOD von 3, falls die Vergrößerung von Asset B nicht ausreichend ist, um die Kachel abzudecken, dann würden die zeitbasierten Kacheln von den folgenden Verbindungen abgeleitet:
    T2 = M0 + MB + C; T3 = M0 + MB + MC + E; T4 = M0 + MB + MC + E + D; T6 = M0 + MB + MC + E + D + F.
    Wie dargestellt, werden ebenfalls keine zusätzlichen Zeitpunkte durch die vergrößerten Assets, größer als ihre native Auflösung, abgerufen. Daher gilt für die LOD von 5 nicht T1 = MB.
  • Wie oben mit Bezug auf 1 besprochen, können ein oder mehrere Bilder für jede Kachel erzeugt werden, indem verfügbare Assets verbunden werden (siehe Block 112). Für eine große Sammlung von sich überlappenden Assets gibt es möglicherweise viele mögliche Verbindungen. In einem Fall mit drei Assets (z. B. A, B und C) sind z. B. 15 Verbindungskombinationen möglich (z. B. A, B, C, AB, AC, BA, BC, CA, CB, ABC, ACB, BAC, BCA, CAB und CBA). Jede Verbindung kann ein anderes Ausgabebild erzeugen. Die potentiell große Anzahl an Verbindungen kann Anzeige und Navigation schwierig gestalten. Daher wird, in Übereinstimmung mit einem Aspekt der vorliegenden Erfindung, ein Kriterium genutzt, das sich monoton von verbundenem Bild zu verbundenem Bild ändert, um die Anzahl der verbundenen Bilder zu ordnen und zu reduzieren.
  • Ein solches Kriterium ist Zeit. Die Kachelbilder können primär oder einzig auf dem Bezugsdatum jedes Assets basieren. Optional können andere Kriterien wie etwa LOS genutzt werden, um Kachelbilder zu erzeugen. Die Generierung der Kachelbilder mit Fokus auf der Bezugszeit erlaubt der Architektur, einen Benutzer mit der Option auszustatten, eine Region von Interesse zu verschiedenen Zeitpunkten anzusehen. Daher kann der Benutzer Bilder sehen, die zeigen, wie sich die Region von Interesse im Laufe der Zeit geändert hat.
  • In Übereinstimmung mit einem weiteren Aspekt der Erfindung kann die Eliminierung von Bildteilen mit schlechter Qualität unnötig sein, da LOD keine primär bestimmende Rolle in der Verbindungsordnung der Assets innehat. Wie zuvor besprochen, während es möglich ist, Bilddaten eines untenliegenden Assets zu nutzen, um Lücken zu füllen oder Fehler im überlagernden Asset zu korrigieren, können räumliche und/oder farbliche Unterschiede zwischen den Assets vergrößert werden. Daher wird es in diesem Fall bevorzugt, die Teile eines Bildes eines Assets mit schlechter Qualität nicht zu eliminieren, außer es gibt eine direkte Kollision von Bezugszeitpunkten (z. B. zwei Assets haben exakt denselben Bezugszeitpunkt). Alternativ kann im Fall solcher direkten Kollisionen ein hybrides Verbindungsschema unter Einbeziehung von LOD oder anderen Kriterien genutzt werden.
  • Ein weiteres mögliches Problem beim Bezug von Assets ist, dass verschiedene Assets von mehreren Verkäufern erhalten werden können, z. B. vom Karteninformationsanbieter 334. Jeder Verkäufer kann einen anderen Weg haben, Assetbezugsdaten festzulegen. Einige Assets können überhaupt keine Zeitangaben beinhalten. Andere können aus Bildern zusammengesetzt worden sein, die über eine Periode von mehreren Tagen, Monaten oder Jahren bezogen wurden. Einige Assets können Daten haben, die nur das Jahr oder den Monat und das Jahr beinhalten. Und einige Assets können eine Bezugszeit beinhalten, die auf die Sekunde genau ist. In einer Ausführungsform werden alle Bezugsunschärfen akzeptiert und entsprechend sortiert. In einer anderen Ausführungsform kann der Bezug von Daten auf ein Zeitintervall begrenzt sein. In diesem Fall kann das Ende des Zeitintervalls als die Bezugszeit genutzt werden. Falls ein Asset z. B. aus Bildern zusammengestellt ist, die über den Zeitraum vom 1. Juni 2008 bis zum 30. Juni 2008 aufgenommen wurden, dann wäre der 30. Juni 2008 die Bezugszeit, die dem Asset zugewiesen ist.
  • In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung können Assets in Übereinstimmung mit der Bezugszeit indiziert werden und/oder Bildkacheln können auf Basis der jüngsten Bezugszeit resultierend aus der Verbindungsoperation indiziert werden. Bei Vorliegen der verfügbaren Bezugsinformationen für Kachelbilder ist es erstrebenswert, solchen Informationen ein gemeinsames Datumsformat zuzuordnen. Das Datum kann z. B. im folgenden Format dargestellt werden: YYYYMMMDDHHMMSS. In einem Beispiel kann jedes Asset mit der Bezugszeit (z. B. im Format YYYYMMMDDHHMMSS), dem Ort (z. B. X, Y-Paare, im Format von Längen- und Breitengraden usw.) und dem LOD indiziert werden, wie dargestellt in 7C. Jede verbundene Bildkachel, die für eine bestimmte Kachel/Region von Interesse erzeugt wurde, kann auch in Übereinstimmung mit solchen Parametern gespeichert werden.
  • Wenn Kacheln erzeugt und/oder für verschiedene Zeitpunkte von Interesse verbunden wurden, sollten die Kacheln gespeichert und in einer Weise indiziert werden, die einfachen Zugriff und/oder Veränderungen erlaubt. Wie zuvor besprochen, können mehrere Bildkacheln für eine bestimmte Region von Interesse einer resultierenden Bezugszeit, einer Verbindungsdetailstufe oder einem Ort zugewiesen werden.
  • In einem Beispiel werden Bildkacheln und ihnen zugewiesene Daten in einer „Quadtree”-Struktur (auch: „Quaternärbaum-Struktur”) gespeichert. 8A und 8E zeigen eine beispielhafte, hierarchische, räumliche Datenstruktur 800 und ihre Anwendung auf eine Kachel 802 aus Bilddaten. In dem in 8A gezeigten Beispiel ist die hierarchische räumliche Datenstruktur 800 ein Quadtree. Ein Quadtree ist eine verwurzelte Baumstruktur, in der jeder interne Knoten vier Kindknoten enthält. Im dargestellten Beispiel enthält ein Wurzelknoten R die Kindknoten A, B, C und D. Jeder der internen Kindknoten A und C hat vier Kindknoten. Der interne Kindknoten A hat z. B. vier Kindknoten: A1, A2 A3 und A4. Genauso hat der interne Kindknoten C vier Kindknoten: C1, C2, C3 und C4. Diesem Muster folgend hat der interne Kindknoten A4 vier Kindknoten: A4,1, A4,2, A4,3 und A4,4. Während nur zwei Stufen der Quadtree-Datenstruktur 800 dargestellt sind, kann die Quadtree-Datenstruktur 800 jede beliebige Anzahl an Stufen haben, abhängig von der Anwendung. Die Quadtree-Datenstruktur 800 ist eine gut bekannte hierarchische Datenstruktur, die eine Vielfalt an nützlichen Eigenschaften aufweist. Quadtree-Datenstrukturen sind beschrieben in Foley et al., „Computer Graphics: Principals and Practice Second Edition in C": Addison-Wesley (1996) (siehe Kapitel 12 und 15), welches hiermit in seiner Gesamtheit durch Referenzierung inkorporiert wird.
  • Die Quadtree-Datenstruktur 800 eignet sich besonders gut zum Speichern von Bilddaten und ihnen zugewiesenen Metadaten. Im gezeigten Beispiel kann die Wurzel R der Quadtree-Datenstruktur 800 der Kachel 802 zugewiesen werden, was in 8B gezeigt wird. Die Kachel 802 kann wie hier an anderer Stelle beschrieben erzeugt werden und sie kann auch erzeugt werden wie beschrieben im U.S.-Patentantrag Nr. 11/473,461 („der Antrag 461”) mit dem Titel „Hierarchical Spatial Data Structure and 3D Index Data Versioning for Generating Packet Data”, eingereicht am 22. Juni 2006, dessen vollständige Offenbarung hiermit ausdrücklich durch Referenzierung inkorporiert wird. Die Kachel 802 kann weiter unterteilt werden in die vier Quadranten A, B, C, D, von denen jeder auf Kindknoten A, B, C und D der Quadtree-Datenstruktur 800 abgebildet werden kann. Jeder der vier Quadranten A, B, C und D kann weiter in vier Quadranten unterteilt werden usw. Daher ist eine direkte Abbildung zwischen Knoten in der Quadtree-Datenstruktur 800 und Quadranten in der Kachel 802 möglich. Im gezeigten Beispiel verweisen die Quadranten A4,1, A4,2, A4,3 und A4,4 in der Kachel 802 auf die jeweiligen Knoten A4,1, A4,2, A4,3 und A4,4 in der Quadtree-Datenstruktur 800. Die Knoten der Quadtree-Datenstruktur 800 werden hierbei als „Quadnodes” bezeichnet.
  • Eine Quadnode plus ein oder mehrere Stufen von Nachkommen werden im Folgenden als „Quadsets” bezeichnet. Daten in Bezug auf Quadtrees, Quadnodes und Quadsets können in einer Datenbank wie z. B. einer KFF-Datenbank gespeichert werden. Eine Diskussion einer KFF-Datenbankstruktur kann gefunden werden im U.S.-Patent Nr. 7,225,207 mit dem Titel „Server for Geospatially Organized Flat File Data”, dessen gesamte Offenbarung hiermit ausdrücklich durch Referenzierung inkorporiert wird. Während die obenstehenden Beschreibungen sich auf Quadtree-Datenstrukturen beziehen, können auch andere hierarchische, räumliche Datenstrukturen in jeder der offenbarten Implementationen genutzt werden, wie z. B. Octrees, K-D-Trees, B-Trees, BV-Trees und BSP-Trees.
  • Kachelbilddaten und Metadaten können Quadnodes einer Quadtree-Datenstruktur zugewiesen werden. Die Speicherorte der Dateien, die die Daten für jede Quadnode speichern, können in einer Indextabelle 900 gespeichert werden, wie in 9A dargestellt. In manchen Implementationen kann die Spalte „Datenort” in der Indextabelle 900 Nummern statt Dateinamen enthalten, um den benötigten Speicher zu reduzieren. Die Nummern können als Index einer Tabelle von Dateien in einem Rechenzentrum genutzt werden. Im gezeigten Beispiel kann die Indextabelle 900 eine Zeile für jede der N Quadnodes in der Quadtree-Datenstruktur oder der Quadtree-Tabelle 902 aus 9B genutzt werden. Die Indextabelle 900 kann ebenfalls einen separaten Datumsindikator für die Erstellungszeit (z. B. Bezugszeit) enthalten, der den Bilddaten zugewiesen ist. Ein Zeilenschlüssel kann z. B. von nur einer Ortskennung zu einer Orts- plus Datumskennung erweitert werden.
  • Die Inhalte jeder Zeile in der Indextabelle 900 können eine Datenversionsnummer und einen Dateiort (z. B. ein Dateipfad plus ein Dateiname) enthalten, wo die Quadnode-Daten gespeichert sind. Quadnode-Daten können beliebige Daten enthalten, einschließlich, aber nicht beschränkt auf, Bilddaten, Gelände- und Vektordaten sowie Bezugsdaten. Vektordaten können auf den Bilddaten an bestimmten Orten für verschiedene Detailstufen oder Detailebenen überlagert werden. Einige Beispiele von Vektordaten sind Informationen zu Tankstellen, Restaurants, Sehenswürdigkeiten usw. Die Dateien können Teil eines globalen Dateisystems sein, wie etwa einer KFF-Dateistruktur.
  • Jede Zeile der Indextabelle 900 kann von einem Abbildungs- und Datenreduktionsprozess gelesen werden und in die Quadtree-Tabelle 902 geschrieben werden. In manchen Implementationen ist jede Zeile der Quadtree-Tabelle 902 ein Quadset und enthält dem Quadset zugewiesene Daten (z. B. Quadtree-Daten für ein Set von Quadnodes). Der Name der Zeile kann der Wurzelknoten des Quadsets sein. Die erste Zeile der Quadtree-Tabelle 902 könnte z. B. dem Quadset 1 zugewiesene Daten enthalten, die zweite Zeile könnte dem Quadset 2 zugewiesene Daten enthalten usw. Die Indextabelle 900 und die Quadtree-Tabelle 902 können auf jedem passenden computerlesbaren Medium (z. B. Festplatte, Speicher, optische Platte usw.) gespeichert werden.
  • Aufgrund der Speicherung, der Verarbeitung und anderen Faktoren kann die Erstellung und Verwaltung neuer Datenbanken ressourcen- und kostenintensiv sein. In manchen Situationen kann eine Bilddatenbank bereits existieren mit einer einzelnen Kachel für jede Region von Interesse. Eine bestimmte Kachel kann z. B. einzig basierend auf dem LOD verbunden worden und in der Bilddatenbank gespeichert worden sein. Es ist möglich, dass diese bestimmte Kachel dieselbe Ansicht beinhaltet wie eine Bildkachel, die von der hierin beschriebenen bezugszeitbasierten Verarbeitung erzeugt worden wäre. In diesem Fall ist es erstrebenswert, die existierende Datenbank zu nutzen, um duplizierte Speicherung solcher Kacheln zu vermeiden. Während daher eine neue Datenbank ein Set von neuen Assets und/oder Kacheln mit vorermittelten Bezugszeiten enthalten kann, können die existierende Datenbank und die neue Datenbank verlinkt werden (z. B. durch einen Zeiger, der zur Indextabelle hinzugefügt wird), um anzuzeigen, welche Datenbank eine bestimmte Bildkachel speichert. Zusätzliche Daten können mit der bereits existierenden Kachel aus der existierenden Datenbank verlinkt werden, um der bestimmten Kachel eine Bezugszeit zuzuordnen. Solche verlinkten Datenbanken wären hilfreich bei der Nutzung jeglicher existierenden Bilddatenbanken.
  • In Übereinstimmung mit einem Aspekt der vorliegenden Erfindung können ein oder mehrere Rechenzentren Bilddaten speichern und verwalten, die auf Anfrage an Clientgeräte ausgeliefert wird. Ein primäres Rechenzentrum und ein oder mehrere verteilte Rechenzentren können z. B. zur Verfügung stehen. 12A illustriert eine solche verteilte Architektur 1200 inklusive eines primären Rechenzentrums 1202 und verteilten Rechenzentren 1204, verbunden mit einem Netzwerk 1206, was wiederum mit einem oder mehreren Benutzergeräten verbunden sein kann, z. B. die Geräte 308, 310 und 312 aus 3A. Wie dargestellt enthält das Rechenzentrum 1202 eine Datenbank 1208, die Bilddaten und/oder Packdateien verwalten kann, wie unten ausführlicher beschrieben werden wird. Das verteilte Rechenzentrum 1204 kann eine oder mehrere Datenbanken wie die Datenbanken 1210 und 1212 enthalten. Diese Datenbanken können bildbezogene Daten abhängig von verschiedenen Kriterien speichern, wie unten ausführlicher erklärt werden wird.
  • 12B illustriert ein Verbindungs- und Aktualisierungsszenario 1220, welches Assets 1222 und eine Kacheltabelle 1224 für die Verwaltung/Organisierung von Kacheln beinhaltet. Die Assets und die Kacheltabelle können gespeichert oder anderweitig unterhalten sein in der Datenbank 1208 des primären Rechenzentrums 1202. Beim Verbindungs-Block 1226 werden die Assets und/oder Kacheltabelle wir hierin beschrieben verbunden. Die Kacheltabelle kann oder kann nicht zeitbasierte Informationen enthalten. Die Kacheltabelle kann aus Basis von Ort und Detailstufe indiziert werden. Im Fall, dass einige oder alle der Kacheln zeitbasierte Informationen enthalten, kann die Kacheltabelle auch nach Datum indiziert werden.
  • In einem Beispiel geschieht die Verbindung per Block 1226 im primären Rechenzentrum 1202. In diesem Beispiel produziert jede Ausführung des Verbindungsprozesses, egal, ob zeitbasierte Informationen angewendet werden, eine Version oder „Epoche”. Die resultierenden Verbindungen können in Packdateien 1228 für diese Version/Epoche platziert werden. Bei der Erstellung der Packdateien 1228 können den Kacheln zugewiesene Signaturen per Block 1230 aktualisiert werden. Wie hierin gebraucht ist eine Signatur ein Hash-Wert der Informationen, die genutzt werden, um eine Kachel zu erstellen. Der Hash-Wert bzw. die Signatur kann genutzt werden, um festzustellen, ob die mit den aktuellen Assets und anderen Parametern erzeugte Kachel dieselbe ist wie die, die bereits zuvor erzeugt wurde.
  • Gegeben sei ein Beispiel für einen einzelnen Ort und ein LOD während des Verbindungsprozesses. In dieses Beispiel können zeitbasierte Assets zusammen mit existierenden, nicht zeitbasierten Bilddaten verwendet werden. In Übereinstimmung mit einem Aspekt der Erfindung werden Assets, die eine bestimmte Kachel kreuzen, nach Datum sortiert und in Reihenfolge vom ältesten zum neuesten verbunden. Wenn jede datierte Kachel verarbeitet wurde, können mehrere Signaturen geprüft werden (falls sie existieren). Eine nicht zeitbasierte Signatur aus der Kacheltabelle kann z. B. eine veröffentlichte nicht zeitbasierte Kachel repräsentieren. Eine zeitbasierte Signatur aus der Kacheltabelle kann eine veröffentlichte und datierte Kachel repräsentieren. Und eine neu generierte zeitbasierte Signatur kann der verarbeiteten datierten Kachel zugewiesen sein. Wenn eine neue Signatur für eine datierte Kachel, die gerade verarbeitet wird, generiert wird und mit einer existierenden Kacheltabellensignatur verglichen wird, können einige Möglichkeiten auftreten, wie in der folgenden Tabelle dargestellt.
    Nicht zeitbasierte Signatur Zeitbasierte Signatur Aktion
    Ungleich Ungleich Verbinden
    Ungleich Gleich Überspringen (1)
    Gleich Ungleich Teilen
    Gleich Gleich Teilen
    Gleich Bereits gelöscht oder geteilt Überspringen (2)
    Ungleich Bereits gelöscht oder geteilt Verbinden (3)
    Bereits veröffentlicht und gelöscht Bereits gelöscht oder geteilt Verbinden (4)
    Bereits veröffentlicht und gelöscht Gleich Überspringen (1)
    Bereits veröffentlicht und gelöscht Ungleich Verbinden
    Existiert nicht Verbinden
  • Notiz „(1)” in der Tabelle zeigt an, dass die Kachel bereits in einer früheren zeitbasierten Version existiert, nicht mit einer nicht zeitbasierten Kacheldatenbank geteilt werden kann und nicht erneut verbunden werden muss. Notiz „(2)” in der Tabelle zeigt an, dass die Kachel bereits früher geteilt wurde, aber keine Änderungen an einem nicht zeitbasierten Asset gemacht wurden, die Kachel also übersprungen oder erneut geteilt werden kann. Notiz „(3)” in der Tabelle zeigt an, dass die Kachel bereits früher mit der nicht zeitbasierten Kacheldatenbank geteilt wurde, aber die nicht zeitbasierte Kachel aktualisiert wurde und nicht mehr länger geteilt werden kann und daher neu verbunden werden muss. Und Notiz „(4)” in der Tabelle zeigt an, dass eine Kachel bereits aus der Kacheldatenbank gelöscht wurde. In diesem Fall, wenn eine in Verarbeitung befindliche datierte Kachel (z. B. eine zeitbasierte Kachel, die gerade erzeugt wird) ihr zugewiesene Assets hat, dann sollte sie verbunden werden. Wie in 12B gezeigt, können nach der Aktualisierung einer Signatur per Block 1230 Informationen betreffend die aktualisierte Signatur der Kacheltabelle 1224 zur Verfügung gestellt werden.
  • Die Packdateien 1228, erzeugt als Resultat der Verbindung per Block 1226, können eine oder mehrere Einträge beinhalten. Ein bestimmter Eintrag in einer Packdatei 1228 kann eine Kachel enthalten oder eine Information, dass eine Kachel mit einer Datenbank wie etwa der nicht zeitbasierten Datenbank geteilt wird oder eine Löschmarkierung, die anzeigt, dass der Eintrag gelöscht werden soll. Jeder Eintrag in einer Packdatei 1228 kann datiert sein, wenn die Packdatei 1228 zeitbasierte Daten enthält. Jeder Eintrag in einer spezifischen Packdatei 1228, der eine Kachel ist, kann ebenfalls eine neue/aktuelle Signatur für diese Kachel enthalten.
  • Die Packdateien 1228 können zur weiteren Verarbeitung an andere Rechenzentren gesendet werden, wie z. B. an das verteilte Rechenzentrum 1204. Dies kann erfolgen, indem die Packdateien auf eine Disk oder ein anderes beschreibbares Medium gespeichert werden oder indem die Packdateien auf andere Weise an das verteilte Rechenzentrum 1204 übermittelt werden. Alternativ kann das primäre Rechenzentrum 1202 Kacheln und/oder andere bildbezogene Daten auf die untergeordneten Rechenzentren 1204 schreibt, ohne Packdateien auszusenden. 12C illustriert ein Indizierungs- und Quadtree-Generierungsszenario 1240, das auftreten kann, wenn Packdateien 1228 an die verteilten Rechenzentren 1204 gesendet werden. Im vorliegenden Beispiel können die Prozesse der Indizierung und der Quadtree-Generierung in den Rechenzentren durchgeführt werden, die die Daten an die Clientgeräte ausliefern werden. Alternativ können diese Operationen im primären Rechenzentrum 1202 durchgeführt werden. In diesem Fall werden die Index- und Quadtree-Tabellen vom primären Rechenzentrum 1202 an die verteilten Rechenzentren 1204 verteilt. Wie in der Figur dargestellt, können Packdateien 1228 verteilt oder isoliert werden, abhängig davon, ob sie zeitbasierte Daten enthalten oder nicht. Zeitbasierte Packdateien 1228a können z. B. separat von nicht zeitbasierten Packdateien 1228b verwaltet werden.
  • Nachdem Packdateien 1228 zu einem bestimmten verteilten Rechenzentrum 1204 kopiert wurden, scannt der Indizierungsprozess die Packdateien und aktualisiert die Indextabelle (z. B. die Tabelle 900) mit einem Eintrag pro Kachel. In Block 1242 wird z. B. der Indizierungsprozess für zeitbasierte Packdateien 1228a ausgeführt, während der Indizierungsprozess für nicht zeitbasierte Packdateien 1228b in Block 1244 ausgeführt wird. Der Schlüssel der Indextabelle für die zeitbasierte Indextabelle 1246 enthält das Datum der Kachel, während der Schlüssel der Indextabelle für die nicht zeitbasierte Indextabelle 1248 keine Datumsinformationen enthält.
  • Nach der Indizierung, wie von den Blocks 1250 und 1252 gezeigt, sammelt ein Quadtree-Generierungsprozess Informationen von nahen Orten und LODs auf hierarchische Weise, um Aktualisierungen für die entsprechenden Quadtree-Tabellen zu erzeugen. Wie von der gepunkteten Linie 1254 angezeigt, kann für die zeitbasierte Verarbeitung auch die nicht zeitbasierte Indextabelle 1248 referenziert werden, um die aktuelle Versionsnummer geteilter Kacheln zu erhalten, welche im Quadtree-Knoten enthalten ist, wenn es eine geteilte Kachel gibt. Für jeden Ort und jede Stufe wird nur eine datierte Kachel aus der nicht zeitbasierten Bilddatenbank geteilt. Das Resultat oder Quadtree-Generierungsblocks 1250 und 1252 sind jeweils die Quadtree-Pakettabellen (Quadtree-Paket = „QTP”) 1256 und 1258.
  • Die Packdateien 1228a und 1228b können auch verarbeitet werden, um Datentabellen im verteilten Rechenzentrum 1204 zu aktualisieren, wie jeweils dargestellt in den Blöcken 1260 und 1262. Die Datentabellen 1264 und 1266 enthalten tatsächliche Bilddaten für jede Kachel, geschlüsselt über Ort und LOD. Für zeitbasierte Daten enthält die zeitbasierte Datentabelle 1264 auch die den jeweiligen Bilddaten zugewiesenen Datumsangaben. Untergeordnete Tabellen (z. B. die Daten- und QTP-Tabellen) können einem oder mehreren Servern bereitgestellt werden. Es kann z. B. einen zeitbasierten Bilddaten-Server 1268 und einen nicht zeitbasierten Bilddaten-Server 1270 geben, die mit Clientgeräten über das Netzwerk 1272 kommunizieren. Während zwei Bilddatenserver dargestellt werden, ist es selbstverständlich, dass ein einzelner Bilddatenserver sowohl zeitbasierte als auch nicht zeitbasierte Bilddaten verwalten kann. Alternativ können mehrere Server genutzt werden, um beide Arten von Bilddaten zu verwalten.
  • Da die untergeordneten Tabellen (z. B. Daten- und QTP-Tabellen) mehrere Versionen enthalten können, könnten existierende Clients nichts über den Aktualisierungsprozess für diese Tabellen wissen, da die Aktualisierungen für eine neue Version sein können. Clients, die zeitbasierte Daten mit Referenz zu geteilten, nicht zeitbasierten Kacheln anfordern, können immer noch solche Kacheln von einem Server erhalten, der die nicht zeitbasierten Kacheln während und nach einem nicht zeitbasierten Datenpush verwaltet.
  • Nachdem eine Version „live geht” oder aktiv und verfügbar ist, können die Signaturen in den Packdateien für diese Version zurück in die Kacheltabellen kopiert werden. Die aktualisierten Signaturen für diese Version repräsentieren den aktiven, veröffentlichten Status der Kacheln.
  • Ein Beispiel eines Verfahrens, das diese Verarbeitung beinhaltet, ist dargestellt im Flussdiagramm 1300 in 13. Im Block 1302 wird eine neue nicht zeitbasierte Version der Bilddaten verbunden. Im Block 1304 werden Packdateien nicht zeitbasierter Versionen verteilt, z. B. an ein oder mehrere verteilte Rechenzentren 1204. Die alte Version kann weiterhin verfügbar gemacht sein für Clients, die zeitbasierte Bilddaten anfordern. Die Packdateien mit nicht zeitbasierten Versionen werden in Block 1306 indiziert und die nicht zeitbasierten Daten und Quadtree-Pakettabellen werden in Block 1308 aktualisiert. Die neue nicht zeitbasierte Version geht in Block 1310 live. Die nicht zeitbasierten Signaturen werden in den Kacheltabellen per Block 1312 aktualisiert.
  • Im Block 1314 wird eine neue, nicht zeitbasierte Version der Bilddaten verbunden. Aktuelle nicht zeitbasierte Signaturen können genutzt werden, um die Teilung von Kacheln festzustellen. Im Block 1316 werden Packdateien zeitbasierter Versionen verteilt, z. B. an ein oder mehrere verteilte Rechenzentren 1204. Die Packdateien mit zeitbasierten Versionen werden in Block 1318 indiziert und die zeitbasierten Daten und Quadtree-Pakettabellen werden in Block 1320 aktualisiert. Die neue zeitbasierte Version geht in Block 1322 live. Die zeitbasierten Signaturen werden in der Kacheltabelle per Block 1324 aktualisiert.
  • Bei Block 1326 kann ein Speicherbereinigungsprozess ältere Versionen von nicht zeitbasierten Kacheln entfernen, die nicht mehr länger referenziert werden. Bei Block 1328 können ältere Versionen zeitbasierter Kacheln, die aktualisiert wurden, entfernt werden. Dios kann z. B. getan werden, wenn sich Farbparameter geändert haben. Wenn keine Speicherbereinigung durchgeführt wird, ist es möglich, zeitbasierte oder nicht zeitbasierte Bilddaten jeweils in eine zeitbasierte Bilddaten-Datenbank oder eine nicht zeitbasierte Bilddaten-Datenbank zu verschieben, mehr als einmal, ohne die andere Datenbank ebenfalls zu pushen.
  • Es ist selbstverständlich, dass, während das Flussdiagramm 1300 die Blöcke in einer bestimmten Reihenfolge präsentiert, die Prozeduren/Operationen, die nicht von den Resultaten anderer Prozeduren/Operationen abhängen, in einer anderen Reihenfolge und/oder parallel mit anderen Blöcken ausgeführt werden können. Die Blöcke 13141322 können z. B. vor oder gleichzeitig mit den Blöcken 13021312 ausgeführt werden.
  • Ein weiterer Aspekt der Erfindung betrifft die Kommunikation zwischen Clientgeräten und dem Server oder anderen Geräten, die Bilddaten bereitstellen. Wie zuvor erwähnt, kann ein bestimmtes Clientgerät Anwendungssoftware enthalten oder ausführen, wie z. B. eine GUI, die einen weltraumgestützten Browser implementiert, die ein Abbildungsmodul enthalten kann.
  • 10 stellt eine bestimmte Ausführungsform einer weltraumgestützten Browser-GUI 1000 zur Nutzung in Übereinstimmung mit den Aspekten der vorliegenden Erfindung dar. Die GUI eines weltraumgestützten Browsers 1000 beinhaltet ein Anzeigefenster 1002 für die Anzeige von 2D- und 3D-Karten sowie ein Texteingabefeld 1004 für die Eingabe von Ortsinformationen wie Breiten- und Längengrad, eine Adresse und/oder eine Postleitzahl oder den Namen einer bekannten Sehenswürdigkeit (z. B. „Lincoln Memorial” oder „Area 51”). Die GUI 1000 kann eine Reihe von Modi enthalten, in welchen sie arbeiten kann, einschließlich Fly-To-Modus, lokaler Suchmodus und Wegbeschreibungs-Modus (wie gezeigt durch die Modusauswahl-Schaltflächen 1006), die Teil des Hauptmenüs 1008 des weltraumbasierten Browsers sind. Eine Besprechung des „Fly To”-Modus, des lokalen Suchmodus und des Navigationsmodus kann im Antrag 049 gefunden werden.
  • Die GUI 1000 kann auch eine Zoom-Kontrolle 1010 zur Anpassung der Ansichtshöhe, eine Neigungskontrolle 1012 zur Anpassung des Ansichtswinkels, eine Rotationskontrolle 1014 zur Rotation der Ansicht nach links oder nach rechts und/oder ein Set von Kamerakontrollen 1016 zur Ansicht von Bereichen der 2D- oder 3D-Karte links, rechts, oben oder unten im Bildschirmfenster enthalten.
  • Die GUI 1000 kann auch eine Ortssteuerung 1018 enthalten, die es dem Nutzer ermöglicht, gespeicherte Daten in einem Bedienfeld für Orte zu organisieren, ähnlich wie ein Nutzer Dateien und Ordner auf einer Computerfestplatte organisieren würde. Die Ortssteuerung 1018 erlaubt dem Benutzer z. B., Ordner zu erstellen, Ortsmarken oder Ordner neu zu sortieren, Ortsmarken oder Ordner umzubenennen, Ortsmarken oder Ordner zu löschen und den Inhalt eines Ordners zu leeren. Der Benutzer kann verschiedene Plätze in der Ortssteuerung 1018 auswählen (z. B. Checkbox oder andere GUI-Kontrollmechanismen) und dann einen „Play”-Funktionsbutton auswählen (rechts unten vom Ortssteuerungspanel 1020), so dass eine virtuelle Tour dieser Orte dann im Fenster 1002 angezeigt werden kann. Stopp- und Pause-Funktionen können auch bereitgestellt werden, um dem Benutzer mehr Kontrolle über eine virtuelle Tour zu geben.
  • Die GUI 1000 kann auch die Schichtsteuerung 1020 enthalten, die eine Vielzahl von Datenpunkten von geografischem Interesse bietet (z. B. interessante Orte sowie Karten-, Straßen-, Gelände- und Gebäudedaten), sodass ein Benutzer den Anzeigebereich über das Sichtfeld auswählen kann. Im Beispiel in 10 sind beispielhafte, gebräuchliche Ebenen auf dem Navigationspanel verfügbar (z. B. Hotels, Restaurants, Straßen, Grenzen, Gelände und 3D-Gebäude) und eine komplette Liste der Ebenen ist im Ebenenpanel verfügbar (z. B. Artikel des National Geographic, die für eine bestimmte Region relevant sind, Golfkurse, Coffee Shops, Erdbeben-Epizentren usw.).
  • Die GUI 1000 in diesem Beispiel kann auch Bilddaten 1022 im unteren Bereich des Bildschirmfensters 1002 darstellen, einschließlich Pointer/Cursor-Koordinaten (z. B. Längengrad/Breitengrad/Höhe), den prozentualen Streamingfortschritt und die Augenhöhe (z. B. Füße). Die GUI 1000 kann weiterhin Druck- und E-Mail-Kontrollen 1024 enthalten (damit Orte und/oder Bilder gedruckt und per E-Mail verschickt werden können). Die GUI 1000 enthält optional auch eine Kontrolle zum Hinzufügen von Ortsmarken/Ordnern/Netzwerklinks 1026, die es dem Benutzer erlaubt, neue Ortsmarken, Ordner und/oder Netzwerklinks zu erstellen oder sonst hinzuzufügen.
  • Die Hauptmenüs 1008 des weltraumgestützten Browsers enthalten das Datei-Menü (z. B. Funktionen wie Öffnen, Speichern, Speichern unter, E-Mail/E-Mail-Ansicht, mit der Online-Community teilen, Drucken, Ausloggen), Editieren (enthält z. B. Funktionen wie In Orten finden, Nächsten finden, Vorherigen finden, Kopieren, Snapshot-Ansicht, Einfügen, Löschen, Umbenennen, Aktualisieren, Style-Template anwenden, Inhalt löschen, in Meine Orte speichern, Suchverlauf löschen und Eigenschaften), Ansicht (enthält z. B. Funktionen und auswählbare Ansichtsfeatures wie Vollbild, Größe der Ansicht, Kompass, Statusleiste, Lat/Lon-Grid, Übersichtskarte und Tour starten), Hinzufügen (enthält z. B. Funktionen zum Hinzufügen von Ortsmarken, Ordnern Bild-Überlagerungen und Netzwerklinks), Tools (enthält z. B. auswählbare Tools wie Navigationspanel, Ortspanel, Ebenenpanel, Messtool und Websuche-Panel) und Hilfe (enthält z. B. Zugriff auf das Online-Hilfezentrum und andere informative Quellen). Die Kontrolle zum Hinzufügen von Ortsmarken/Ordnern/Netzwerklinks 1026 kann dazu konfiguriert werden, Menüoptionen bereitzustellen, die den Optionen im Hinzufügen-Menü der Hauptmenüs 1008 des weltraumgestützten Browsers entsprechen. Weiterhin können verschiedene Orte und Ebenen des Ortspanels und des Ebenenpanels erweitert (oder komprimiert) werden, um zusätzliche (oder weniger) Unterorte und Unterebenen anzuzeigen.
  • In Übereinstimmung mit Aspekten der vorliegenden Erfindung enthält die GUI 1000 auch datumsbezogene Optionen. Ein oder mehrere Schalter/Selektoren 1028 können es z. B. dem Benutzer erlauben, zeitbasierte Bilddatenanzeige auszuwählen oder abzuwählen. Falls ausgewählt, kann der Benutzer einen Schalter wie etwa einen Slider 1030 einsetzen, um ein Datum von Interesse für die Karte festzulegen. Ein weiterer Schalter 1032 kann es dem Benutzer erlauben, auszuwählen, mehrere Karten Seite an Seite oder in Kachelansicht anzusehen, worin die verschiedenen Karten dieselbe Region von Interesse zu verschiedenen Zeitpunkten darstellen. In diesem Fall kann der Benutzer Schalter 1034 nutzen, um bestimmte Daten für die Karten auszuwählen oder er kann das Texteingabefeld 1004 nutzen, um Daten oder Zeiträume einzugeben. In einer Alternative kann die Zoom-Kontrolle 1010 oder eine andere Kontrolle es dem Benutzer erlauben, zwischen Karten für verschiedene Zeiträume zu „zoomen” oder zu „schwenken”, abhängig davon, ob zeitbasierte Bilddatenansicht mittels des Schalters 1028 aktiviert wurde.
  • Zahlreiche GUI-Konfigurationen und zugrundeliegenden Funktionalitäten werden im Zusammenhang mit dieser Offenbarung offensichtlich und die vorliegende Erfindung soll nicht auf eine bestimmte Konfiguration beschränkt sein. Die angezeigten 2D- oder 3D-Karten können über die GUI 1000 bearbeitet werden. Die grafische Benutzeroberfläche 1000 kann verwendet werden, um die aktuelle Kartenansicht neu zu positionieren, zum Beispiel durch Klicken und Ziehen im Anzeigefenster 1002. Ein Nutzer kann auch einen geografischen Standort oder eine Zeit auswählen, indem er im Anzeigefenster 1002 doppelt auf den Ort klickt.
  • Wenn ein Benutzer mit der GUI 1000 eine zeitbasierte Karte auswählt, können dem Benutzer Informationen betreffend die Daten oder Zeiträume bereitgestellt werden, für die Bilddaten verfügbar sind. Der Benutzer kann z. B. eine Region von Interesse (z. B. San Francisco) auswählen und es kann eine Anfrage im Bildschirmfenster 1002 generiert werden, die den Benutzer darüber informiert, dass Karten für die folgenden Daten verfügbar sind: 1980, 1990, 2000, 2007 und 2008. Dem Benutzer wird dann die Möglichkeit gegeben, eine oder mehrere Karten basierend auf Daten auszuwählen wie hierin besprochen. Alternativ kann der Benutzer sich entscheiden, eine Karte ohne Referenz zu einem bestimmten Datum anzusehen, z. B. nur die Anzeige mit der höchsten verfügbaren Auflösung.
  • In dem Fall, dass der Benutzer eine zeitbasierte Karte ansehen will, können Daten an das Clientgerät weitergegeben werden, die anzeigen, welche Bildkacheln für spezifische Zeiten verfügbar sind. Das Clientgerät wird dann in der Lage sein, Bildkacheln in Zusammenhang mit den vom Benutzer ausgewählten Zeiten anzufordern. Kacheln können auf Basis der vom Benutzer ausgewählten Auflösung bereitgestellt werden (falls er eine gewählt hat).
  • Auf Anfrage stellt ein Bilddatenserver in einem verteilten Rechenzentrum einem Clientgerät hierarchische „Inhaltsverzeichnis”-Daten, Quadtree-Pakete, zur Verfügung. Beim Ansehen einer Region der Erde fordert das Clientgerät die Quadtree-Pakete für diese Region an. Für jede Kachel in der Ansicht zeigt das Quadtree-Paket an, welche Kacheln Bilddaten verfügbar haben sowie andere Ebenen wie Gelände- und Vektordaten. Die erlaubt dem Clientgerät, genau zu wissen, welche Anfragen für Bilddaten es senden soll. Jedes Paket kann auch die Inhaltsverzeichnis-Daten für mehrere hundert Kacheln enthalten. Dies reduziert die Anzahl der benötigten Round Trips, um die Inhaltsverzeichnis-Daten zu erhalten. Der Eintrag für jede Kachel in einem Quadtree-Paket wird als Quadnode bezeichnet, da es sich im eine Node (einen Knoten) im Quadtree handelt.
  • In der zeitbasierten Bilddaten-Datenbank können die Daten in jeder Quadnode eine Liste der Zeiten erhalten, für die verbundene Bilder für diese Kachel verfügbar sind. Dies erlaubt es dem Clientgerät, seine Anfragen nach Bilddaten zu minimieren. Wenn daher der Benutzer des Clientgeräts einen neuen Zeitpunkt in der Benutzeroberfläche auswählt, muss das Clientgerät nur Bilder anfordern, bei denen der neue Zeitpunkt einem Bild entspricht, das sich vom aktuell angezeigten unterscheidet.
  • Ein Clientgerät, das mit zeitbasierten Bilddaten operieren kann, kann Quadtree-Pakete für den aktuellen Ort und die Stufe vom Server anfordern, wie etwa vom Server 1268 in 12C basierend auf der aktuellen Ansicht der Erde. Unter Nutzung der Datumsinformationen in den Quadtree-Knoten kann das Clientgerät dann die entsprechend datierten Kacheln für den Ort und die Stufe vom Server anfordern. Falls eine benötigte Kachel geteilt wird, kann das Clientgerät die Anfrage stattdessen an einen nicht zeitbasierten Server umleiten, wie etwa den Server 1270 in 12C. Kacheln können im Clientgerät auf einer per-Server-Basis zwischengespeichert werden, sodass Anfragen für geteilte Kacheln vom Zwischenspeicher für den nicht zeitbasierten Server erfüllt werden können. Der Zwischenspeicher im Client kann auch nach Datum für zeitbasierte Kacheln indiziert werden, sodass Anfragen für datierte Kacheln an demselben Ort und derselben Stufe vom Zwischenspeicher für den zeitbasierten Server erfüllt werden können.
  • Ein beispielhafter Kartengenerierungsprozess 1100 ist unten mit Hinblick auf 11 beschrieben. Zuerst, wie in Block 1102 gezeigt, erhält das Clientgerät (oder der Server) eine Anfrage von einem Benutzer für ein Bild, das einem geografischen Standort zu einem Zeitpunkt früher als dem Zeitpunkt der Anfrage zugewiesen ist. Wie in Block 1104 gezeigt, werden eine oder mehrere Bildkacheln beschafft, die der zeitbasierten Anfrage entsprechen. Die Bildkacheln, die beschafft werden, werden auf einer Anzahl von Bildkacheln ausgewählt, die Bildkacheln enthalten, die Bildern, aufgenommen vor und nach dem angefragten Zeitpunkt, entsprechen. Dann, wie in Block 1106 gezeigt, stellt das Clientgerät (oder der Server) als Antwort auf die Anfrage ein Bild (z. B. abgeleitet von anwendbaren Bildkacheln) zur Verfügung, das dem angefragten geografischen Standort zugewiesen ist. In diesem Fall sind die verschiedenen Bildkacheln mit dem für den Benutzer zur Verfügung gestellten Bild limitiert auf Bilder (z. B. Assets), die vor dem angefragten Zeitpunkt aufgenommen wurden.
  • Um die Verarbeitung zu beschleunigen und den Netzwerktraffic sowie die Serverlast zu minimieren, kann das Clientgerät einen lokalen Zwischenspeicher von Bildkacheln vorhalten. Der Zwischenspeicher kann das Kacheldatum als Teil eines Schlüssels enthalten, um mehrere verschiedene Bilder für denselben Ort und dieselbe Auflösung zu ermöglichen.
  • Während der Client einen Bildzwischenspeicher vorhalten kann, der über das Kacheldatum zugänglich ist, wird das Verbinden in Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung vorzugsweise auf einem Server durchgeführt, z. B. Server 304. Hierbei können die Bildkacheln für eine Region von Interesse in einer Bilddaten-Datenbank wie der Datenbank 332 in 3A gespeichert werden. Während es möglich ist, einen Teil der oder die gesamte Bilddaten-Datenbank an ein Clientgerät zu senden und das Clientgerät die bezugszeitbasierte Verbindung durchführen zu lassen, sind solche Vorgänge rechenintensiv und bessere Leistung kann aus der Beteiligung eines Servers oder mehrerer Verarbeitungsgeräte (z. B. Ausführung durch parallele Verarbeitung) an einer solchen Verarbeitung resultieren, einschließlich der Verbindung und/oder Kompression und dem Transfer der resultierenden Bildkacheln basierend auf einer angefragten Region von Interesse.
  • Obwohl die Erfindung hierin mit Bezug auf bestimmte Ausführungsformen beschrieben wurde, versteht sich, dass diese Ausführungsformen lediglich die Grundsätze und Anwendungen der vorliegenden Erfindung darstellen. Es versteht sich daher, dass zahlreiche Modifizierungen an den darstellenden Ausführungsformen vorgenommen werden können und dass andere Anordnungen konzipiert werden können, ohne vom Erfindungsgedanken und Umfang der vorliegenden Erfindung, wie durch die hinzugefügten Ansprüche definiert, abzuweichen. Des Weiteren, während bestimmte Prozesse in den angehängten Zeichnungen in einer spezifischen Reihenfolge gezeigt werden, sind diese Prozesse nicht limitiert auf eine bestimmte Reihenfolge, außer eine solche Reihenfolge wird hierin ausdrücklich festgelegt.
  • INDUSTRIELLE ANWENDBARKEIT
  • Die vorliegende Erfindung kommt in weiten industriellen Bereichen zur Anwendung, einschließlich unter anderem in Bildmappingsystemen und -geräten sowie der Verarbeitung und Verteilung zeitabhängiger Bilddaten an Benutzer.
  • KLAUSELN
  • Die Spezifikation beinhaltet die folgenden Klauseln:
    • 1. Ein Verfahren, welches das Folgende umfasst: die Bereitstellung einer Identifikation von verfügbaren Zeitpunkten, für die Bilder für einen geografischen Standort verfügbar sind, wobei die Identifikation von einem Prozessor oder Computer durchgeführt wird; den Erhalt einer Anfrage nach einem Bild, das für einen der verfügbaren Zeiträume dem geografischen Standort im Computer zugewiesen ist; und als Antwort auf die Anfrage, die Bereitstellung des Bildes, das dem angefragten geografischen Standort zugewiesen ist, durch den Computer, worin Teile des bereitgestellten Bildes verschiedene Bilder des geografischen Standortes zu verschiedenen Zeitpunkten umfassen, wobei die verschiedenen Bilder aus einer Vielzahl von Bildern ausgewählt werden, umfassend Bilder, die vor und nach dem angefragten Zeitpunkt aufgenommen wurden und worin die verschiedenen Bilder im bereitgestellten Bild vor dem angefragten Zeitpunkt aufgenommen wurden.
    • 2. Verfahren nach Klausel 1, weiterhin umfassend: die Ableitung der Vielzahl von verschiedenen Bildern von Assets aus einer Bilddatenquelle; und die Identifikation des Zeitpunktes, der jedem in der Vielzahl von verschiedenen Bildern zugewiesen ist, wobei jeder Zeitpunkt einem Bezugsdatum eines zugehörigen Assets entspricht.
    • 3. Verfahren nach Klausel 2, weiterhin umfassend die Generierung eines verbundenen Bildes für den angefragten Zeitpunkt, wobei das verbundene Bild mindestens ein sekundäres Bild von einem Zeitpunkt vor dem angefragten Zeitpunkt und ein primäres Bild von dem angefragten Zeitpunkt enthält und das primäre Bild das sekundäre Bild überlagert.
    • 4. Verfahren nach Klausel 2, worin die Generierung des verbundenen Bildes für den angefragten Zeitpunkt die Generierung mehrerer verbundener Bilder mit jeweils einer verschiedenen Detailstufe enthält.
    • 5. Verfahren nach Klausel 4, worin die Anfrage für ein Bild, das dem geografischen Standort zugewiesen ist, weiterhin eine Anfrage für eine minimale Detailstufe enthält und worin das bereitgestellte Bild eines der verbundenen Bilder ist, das die minimale Detailstufe besitzt.
    • 6. Verfahren zur Verarbeitung von geografischem Bildmaterial, umfassend: den Bezug von Bildmaterial von einer oder mehreren Bildmaterialquellen; die Identifizierung eines Bezugszeitpunkts für mindestens einiges des Bildmaterials, das von der Bildermaterialquelle erlangt wurde; die Verbindung von sich überlappenden Teilen von Bildern mit einem Computerprozessor basierend auf dem entsprechenden Bezugsdatum, um eine oder mehrere Bildkacheln zu erzeugen, denen ein Bezugsdatum zugewiesen ist; die Speicherung der ein oder mehreren Kacheln im dem Computer zugewiesenen Speicher; und das Bereitstellen von mindestens einer der Bildkacheln, die einen ausgewählten Bezugszeitpunkt aufweisen, auf Anforderung eines dem geografischen Standort zugewiesenen Bildes für den ausgewählten Bezugszeitpunkt.
    • 7. Verfahren nach Klausel 6, worin die Verbindung von sich überlappenden Teilen von Bildern basierend auf dem entsprechenden Bezugsdatum mehrere Bildkacheln für ein gegebenes Bezugsdatum erzeugt, wobei die sich überlappenden Teile von Bildern chronologisch nach dem Bezugsdatum aufgeschichtet sind.
    • 8. Verfahren nach Klausel 7, worin der Teil eines Bildes mit dem neuesten Bezugsdatum die anderen Teile eines Bildes mit früheren Bezugsdaten überlagert.
    • 9. Verfahren nach Klausel 7, worin mindestens einige der mehreren Bildkacheln dieselben sich überschneidenden Teile eines Bildes mit verschiedenen Detailstufen beinhalten.
    • 10. Verarbeitungssystem zum Verarbeiten von geografischem Bildmaterial, umfassend: mindestens einen Prozessor; und Speicher zum Speichern von Daten, wobei der Speicher mit dem mindestens einen Prozessor elektrisch verbunden ist; worin der mindestens eine Prozessor für den Bezug von Bildern aus einer Bildquelle gesteuert werden kann, die Identifikation des Bezugsdatums für mindestens einige der von der Bildquelle bezogenen Bildern, die Verbindung von sich überschneidenden Teilen der Bilder basierend auf entsprechenden Bezugsdaten, um ein oder mehrere Bildkacheln im Speicher zu erzeugen und die Bereitstellung mindestens einer Bildkachel, die ein ausgewähltes Bezugsdatum besitzt, aus dem Speicher an einen Benutzer, auf Anfrage nach einem Bild, das dem geografischen Standort für das ausgewählte Bezugsdatum zugewiesen ist.
    • 11. Verarbeitungssystem nach Klausel 10, worin der mindestens eine Computerprozessor die Verbindung von sich überlappenden Teilen von Bildern basierend auf dem entsprechenden Bezugsdatum durchführen kann, um mehrere Bildkacheln für jedes Bezugsdatum zu erzeugen, wobei die sich überlappenden Teile der Bilder chronologisch nach dem Bezugsdatum aufgeschichtet sind.
    • 12. Das Verarbeitungssystem von Klausel 11, worin der Teil eines Bildes mit dem neuesten Bezugsdatum die anderen Teile eines Bildes mit früheren Bezugsdaten überlagert.
    • 13. Das Verarbeitungssystem von Klausel 11, worin mindestens einige der mehreren Bildkacheln mit verschiedenen Detailstufen dieselben sich überschneidenden Teile eines Bildes überschneiden.
    • 14. Computerlesbares Medium, auf dem Befehle gespeichert sind, wobei die Befehle bei Ausführung durch einen Prozessor den Prozessor veranlassen, die folgenden Operationen auszuführen: den Bezug von Bildmaterial von einer oder mehreren Bildmaterialquellen; die Identifizierung eines Bezugszeitpunkts für mindestens einiges des Bildmaterials, das von der Bildermaterialquelle erlangt wurde; die Verbindung sich überlappender Teile von Bildern basierend auf dem entsprechenden Bezugsdatum, um eine oder mehrere Bildkacheln zu erzeugen, die jedem Bezugsdatum zugeordnet sind; das Speichern von einem oder mehreren Bildkacheln im Speicher; und die Bereitstellung mindestens einer Bildkachel, die einen ausgewählten Bezugszeitpunkt aufweist vom Speicher an einen Benutzer, bei Anforderung eines dem geografischen Standort zugewiesenen Bildes für den ausgewählten Bezugszeitpunkt.
    • 15. Verfahren zum Verarbeiten von Bilddaten, umfassend: die Verbindung einer Vielzahl von Kacheln, die geografische Standorte repräsentieren, mithilfe eines Prozessors, wobei mindestens einige der Kacheln zeitbasierte Kacheln sind, denen Bilddaten des geografischen Standortes von verschiedenen Bezugszeiten zugewiesen sind; das Vorbereiten einer Kacheltabelle für die Organisierung der Vielzahl von Kacheln, wobei die Kacheltabelle nach Ort und Detailstufe für jede der Vielzahl von Kacheln indiziert ist; die Erstellung von Signaturen, die Erzeugungsinformationen für jede der Vielzahl von Kacheln enthalten; die Generierung einer Vielzahl von Packdateien durch einen Prozessor, wobei jeder Packdatei mindestens eine der Vielzahl von Kacheln zugewiesen ist; und die Verteilung der Vielzahl von Packdateien an mindestens ein Rechenzentrum; worin die Kacheltabelle weiterhin die zeitbasierten Kacheln nach Bezugszeitpunkt indiziert.
    • 16. Verfahren nach Klausel 15, worin die Verbindung der zeitbasierten Kacheln die Verbindung von sich überschneidenden Teilen von Bildern, basierend aus den zugehörigen Bezugsdaten, enthält.
    • 17. Verfahren nach Klausel 15, worin eine gegebene Packdatei mindestens eine gegebene Kachel enthält, einen Hinweis darauf, dass die gegebene Kachel mit einer Datenbank geteilt wird oder eine Löschmarkierung, die anzeigt, dass der Kacheleintrag gelöscht werden soll.
    • 18. Verfahren nach Klausel 15, weiterhin umfassend die Aktualisierung einer betreffenden der Signaturen, nachdem die der betreffenden Signatur zugewiesenen Kachelinformationen in eine Packdatei aufgenommen wurden.
    • 19. Verfahren nach Klausel 18, weiterhin umfassend die Aktualisierung der Kacheltabelle basierend auf der aktualisierten Signatur.
    • 20. Verfahren nach Klausel 15, weiterhin umfassend: die Indizierung der verteilten Packdateien; die Aktualisierung einer Bilddatentabelle basierend auf den verteilten Packdateien; und die Aktualisierung einer Quadtree-Pakettabelle basierend auf den indizierten Packdateien; worin jede verteilte Packdatei zeitbasierte Informationen enthält und weiterhin basierend auf den zeitbasierten Informationen indiziert wird.
    • 21. Verfahren nach Klausel 20, weiterhin umfassend das Speichern der Bilddatentabelle und der Quadtree-Pakettabelle in einer Datenbank auf einem Bildserver.
    • 22. System für die Verwaltung von Bildern, umfassend: Mittel für die Indizierung zeitbasierter Packdateien und nicht zeitbasierter Packdateien, wobei jede Packdatei mindestens eine Bildkachel enthält, einen Hinweis darauf, dass die mindestens eine Bildkachel mit einer Datenbank geteilt wird oder eine Löschmarkierung, die anzeigt, dass der Bildkacheleintrag in der Datenbank gelöscht werden soll; Mittel für die Aktualisierung mindestens einer Bilddatentabelle basierend auf den zeitbasierten und den nicht zeitbasierten Packdateien, wobei die mindestens eine Bilddatentabelle Bilddaten für die Erzeugung von Bildkacheln enthält; Mittel für die Aktualisierung mindestens einer Quadtree-Pakettabelle basierend auf den indizierten Packdateien; und Mittel zur Verteilung der Quadtree-Pakete der Quadtree-Pakettabelle und der Bilddaten der mindestens einen Bilddatentabelle auf Anfrage an ein Clientgerät.
    • 23. System nach Klausel 22, worin die Mittel für die Indizierung der Packdateien die zeitbasierten Packdateien in einer zeitbasierten Indextabelle indizieren und die nicht zeitbasierten Packdateien in einer nicht zeitbasierten Indextabelle indizieren, wobei jede Indextabelle einen Versionsindikator und einen Ortsindikator enthält, während die zeitbasierte Indextabelle weiterhin einen Datumsindikator enthält.
    • 24. System nach Klausel 22, worin die mindestens eine Quadtree-Pakettabelle eine erste Quadtree-Pakettabelle zur Verwaltung zeitbasierter Quadtree-Pakete und eine zweite Quadtree-Pakettabelle zur Verwaltung nicht zeitbasierter Quadtree-Pakete enthält.
    • 25. System nach Klausel 22, weiterhin umfassend die Mittel zur Erzeugung von Signaturen, wobei jede der Signaturen Kachelerzeugungsinformationen für eine entsprechende der Bildkacheln enthält.
    • 26. System nach Klausel 22, weiterhin umfassend die Mittel zur Verarbeitung ausgewählter Bildkacheln basierend auf den Signaturen.
    • 27. System nach Klausel 26, worin die Mittel für die Verarbeitung fähig sind, eine existierende Bildkachel mit einer neuen Bildkachel zu verbinden, der zeitbasierte Informationen zugewiesen sind und auch, dass die Verbindung basierend auf einem Vergleich zwischen der Signatur der existierenden Bildkachel und der Signatur der neuen zeitbasierten Bildkachel durchgeführt wird.
    • 28. Ein Verfahren zur Verarbeitung von Bildern, umfassend: einen Prozessor, der Quadtree-Pakete für einen geografischen Standort anfordert, wobei die Quadtree-Pakete Kachelinformationen für den geografischen Standort enthalten und mindestens einige der Quadtree-Pakete zeitbasierte Informationen für entsprechende, ihnen zugeordnete Kacheln enthalten; die Anfrage des Prozessors nach einer oder mehrerer Kacheln mit einem spezifischen Datum für den geografischen Standort; und die Präsentation des Prozessors mindestens einer der angefragten Kacheln auf einem Bildschirm, worin Teile der mindestens einen der angefragten Kacheln verschiedene Bilder des geografischen Standortes umfassen, die zu verschiedenen Zeitpunkten aufgenommen wurden, wobei die verschiedenen Bilder aus einer Vielzahl von Bildern ausgewählt werden, die Bilder, aufgenommen vor und nach dem spezifischen Datum, umfassen und worin die verschiedenen Bilder innerhalb der präsentierten Kachel vor dem spezifischen Datum aufgenommen wurden.
    • 29. Bildverarbeitungsverfahren nach Klausel 28, worin die Teile chronologisch verbunden werden.
    • 30. Bildverarbeitungsverfahren nach Klausel 28, worin Quadtree-Pakete weiterhin Detailstufen-Informationen für die entsprechenden Kacheln enthalten und die Anfrage der ein oder mehreren Kacheln weiterhin die Identifikation einer spezifischen Detailstufe enthält, die auf dem Bildschirm angezeigt werden soll.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 11/437553 [0043]
    • US 11/762049 [0060]
    • US 2008/0016472 [0060]
    • US 11/473461 [0084]
    • US 7225207 [0085]
  • Zitierte Nicht-Patentliteratur
    • Foley et al., „Computer Graphics: Principals and Practice Second Edition in C”: Addison-Wesley (1996) (siehe Kapitel 12 und 15) [0083]

Claims (8)

  1. Verarbeitungssystem zum Verarbeiten von geografischem Bildmaterial, umfassend: mindestens einen Prozessor; und Speicher zum Speichern von Bilddaten, wobei der Speicher mit dem mindestens einen Prozessor verbunden ist; worin der mindestens eine Prozessor dazu konfiguriert ist, die überlappenden Teile der Bilddaten basierend auf entsprechenden Bezugszeitpunkten der Bilddaten zu verbinden, um eine oder mehrere Bildkacheln zu erzeugen, die jedem Bezugszeitpunkt zugehörig sind und die eine oder mehrere Bildkacheln im Speicher zu speichern.
  2. Verarbeitungssystem nach Anspruch 1, worin der mindestens eine Prozessor dazu konfiguriert ist, die überlappenden Teile der Bilddaten basieren auf verschiedenen Detailstufen in jedem Teil der Bilddaten zu verbinden.
  3. Verarbeitungssystem nach Anspruch 1, worin, in einer gegebenen der ein oder mehreren Bildkacheln, der Teil eines Bildes mit dem neuesten Bezugsdatum die ein oder mehreren anderen Teile eines Bildes mit früheren Bezugsdaten überlagert.
  4. Verarbeitungssystem nach Anspruch 3, worin Teile der Bilddaten mit höheren Detailstufen andere Teile der Bilddaten mit niedrigeren Detailstufen überlagern.
  5. Verarbeitungssystem nach Anspruch 3, worin ein Teil eines gegebenen der ein oder mehreren Teile des Bildmaterials, das einen früheren Bezugszeitpunkt aufweist, vom Prozessor dazu genutzt wird, eine Lücke oder einen Fehler in einem anderen Teil des Bildmaterials zu korrigieren, der einen neueren Bezugszeitpunkt aufweist.
  6. Verarbeitungssystem nach Anspruch 5, worin der mindestens eine Prozessor weiterhin dazu konfiguriert ist, einige oder alle Hintergrundebenen zu vergrößern, wenn er die überlappenden Teile der Bilddaten verbindet.
  7. Verarbeitungssystem nach Anspruch 6, worin der mindestens eine Prozessor weiterhin dazu konfiguriert ist, zu ermitteln, ob es eine direkte Kollision von Bezugszeitpunkten von verschiedenen Teilen der Bilddaten gibt.
  8. Verarbeitungssystem nach Anspruch 7, worin: wenn es eine direkte Kollision von Bezugszeitpunkten gibt, der mindestens eine Prozessor weiterhin dazu konfiguriert ist, eine oder mehrere Lücken und Fehler in einem überlagernden Asset auszubessern, das einen ersten Bezugszeitpunkt eines zugrundeliegenden Assets und einen zweiten Bezugszeitpunkt verschieden vom ersten Bezugszeitpunkt hat; und wenn es keine direkte Kollision von Bezugszeitpunkten gibt, der mindestens eine Prozessor weiterhin dazu konfiguriert ist, keine Lücken und Fehler in einem überlagernden Asset auszubessern, das einen ersten Bezugszeitpunkt eines zugrundeliegenden Assets und einen zweiten Bezugszeitpunkt verschieden vom ersten Bezugszeitpunkt hat.
DE202009019138.9U 2008-08-28 2009-08-21 Architekturen zur Erstellung und Darstellung von zeitabhängigen Bildern Expired - Lifetime DE202009019138U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/231,290 US8077918B2 (en) 2008-08-28 2008-08-28 Architectures and methods for creating and representing time-dependent imagery
US12/231,290 2008-08-28

Publications (1)

Publication Number Publication Date
DE202009019138U1 true DE202009019138U1 (de) 2017-01-17

Family

ID=41721790

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202009019138.9U Expired - Lifetime DE202009019138U1 (de) 2008-08-28 2009-08-21 Architekturen zur Erstellung und Darstellung von zeitabhängigen Bildern

Country Status (6)

Country Link
US (6) US8077918B2 (de)
EP (2) EP2321770B1 (de)
AU (1) AU2009286145B2 (de)
CA (3) CA2735326C (de)
DE (1) DE202009019138U1 (de)
WO (1) WO2010024873A1 (de)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8584013B1 (en) * 2007-03-20 2013-11-12 Google Inc. Temporal layers for presenting personalization markers on imagery
JP4926891B2 (ja) * 2007-08-30 2012-05-09 株式会社日立製作所 地理情報システム及び地理情報管理方法
US8872847B2 (en) 2008-08-28 2014-10-28 Google Inc. Architectures and methods for creating and representing time-dependent imagery
US8077918B2 (en) 2008-08-28 2011-12-13 Google, Inc. Architectures and methods for creating and representing time-dependent imagery
US8793652B2 (en) 2012-06-07 2014-07-29 International Business Machines Corporation Designing and cross-configuring software
US9280335B2 (en) 2010-09-30 2016-03-08 International Business Machines Corporation Semantically rich composable software image bundles
TW201011259A (en) * 2008-09-12 2010-03-16 Wistron Corp Method capable of generating real-time 3D map images and navigation system thereof
JP5477059B2 (ja) * 2010-03-04 2014-04-23 ソニー株式会社 電子機器、画像出力方法及びプログラム
EP2583877B1 (de) * 2010-06-16 2018-06-06 Navitime Japan Co., Ltd. Navigationssystem, endgerät, navigationsserver, navigationsverfahren und navigationsprogramm
US10108731B2 (en) * 2010-09-29 2018-10-23 Open Text Sa Ulc System and method for timeline management of objects
US10387524B2 (en) * 2010-09-29 2019-08-20 Open Text Sa Ulc System and method for managing objects using an object map
US8769493B2 (en) 2010-09-30 2014-07-01 International Business Machines Corporation System for managing lifecycles for virtual image assets
US20120213416A1 (en) * 2011-02-23 2012-08-23 Google Inc. Methods and systems for browsing heterogeneous map data
US20120303556A1 (en) * 2011-05-27 2012-11-29 Microsoft Corporation Comparison of modeling and inference methods at multiple spatial resolutions
KR101253283B1 (ko) * 2011-08-16 2013-04-10 한국과학기술연구원 고해상도 영상 재구성 방법 및 시스템
JP6056127B2 (ja) * 2011-10-31 2017-01-11 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US9507747B2 (en) 2011-11-04 2016-11-29 Microsoft Technology Licensing, Llc Data driven composite location system using modeling and inference methods
US20140082661A1 (en) * 2012-03-06 2014-03-20 Google Inc. Low latency video storyboard delivery with selectable resolution levels
US8650220B2 (en) 2012-06-05 2014-02-11 Google Inc. System and method for storing and retrieving geospatial data
US20140046923A1 (en) 2012-08-10 2014-02-13 Microsoft Corporation Generating queries based upon data points in a spreadsheet application
US9311748B2 (en) 2013-02-20 2016-04-12 Google Inc. Method and system for generating and storing data objects for multi-resolution geometry in a three dimensional model
US20140257687A1 (en) * 2013-03-08 2014-09-11 Qualcomm Incorporated Pyramid mapping data structure for indoor navigation
EP2838071A1 (de) * 2013-08-16 2015-02-18 VITO NV (Vlaamse Instelling voor Technologisch Onderzoek NV) Computerimplementiertes Verfahren, Server und dazugehöriges Computerprogrammprodukt zur Herstellung eines modularen digitalen Geländemodells
US20150089374A1 (en) * 2013-09-20 2015-03-26 Cyan Inc. Network visualization system and method
US20150199383A1 (en) * 2014-01-16 2015-07-16 Nokia Corporation Systems and Methods for Indexing and Retrieving Images
US9530226B2 (en) * 2014-02-18 2016-12-27 Par Technology Corporation Systems and methods for optimizing N dimensional volume data for transmission
USD780777S1 (en) 2014-04-22 2017-03-07 Google Inc. Display screen with graphical user interface or portion thereof
USD781318S1 (en) 2014-04-22 2017-03-14 Google Inc. Display screen with graphical user interface or portion thereof
US9934222B2 (en) 2014-04-22 2018-04-03 Google Llc Providing a thumbnail image that follows a main image
USD781317S1 (en) 2014-04-22 2017-03-14 Google Inc. Display screen with graphical user interface or portion thereof
US9972121B2 (en) 2014-04-22 2018-05-15 Google Llc Selecting time-distributed panoramic images for display
US10078668B1 (en) 2014-05-04 2018-09-18 Veritas Technologies Llc Systems and methods for utilizing information-asset metadata aggregated from multiple disparate data-management systems
US10635645B1 (en) 2014-05-04 2020-04-28 Veritas Technologies Llc Systems and methods for maintaining aggregate tables in databases
US10002156B2 (en) * 2015-03-16 2018-06-19 Here Global B.V. Version management for incrementally compiled map data
US9654753B1 (en) * 2015-09-01 2017-05-16 Amazon Technologies, Inc. Video stream processing
KR102651125B1 (ko) 2016-04-06 2024-03-26 삼성전자주식회사 경로 렌더링을 수행하는 방법 및 장치
KR102479037B1 (ko) * 2016-05-25 2022-12-20 한국전자통신연구원 타일 지도 서비스 장치 및 그 동작 방법
JP7114082B2 (ja) * 2019-03-20 2022-08-08 株式会社アクセルスペース 情報処理装置、情報処理方法及びプログラム
CN114327221A (zh) * 2021-12-24 2022-04-12 杭州网易云音乐科技有限公司 合照方法、介质、装置和计算设备
US12112433B2 (en) * 2022-04-06 2024-10-08 Qualcomm Incorporated Apparatus and methods for image reconstruction using machine learning processes

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225207B1 (en) 2001-10-10 2007-05-29 Google Inc. Server for geospatially organized flat file data
US20080016472A1 (en) 2006-06-12 2008-01-17 Google Inc. Markup Language for Interactive Geographic Information System
US7965902B1 (en) 2006-05-19 2011-06-21 Google Inc. Large-scale image processing using mass parallelization techniques
US8762493B1 (en) 2006-06-22 2014-06-24 Google Inc. Hierarchical spatial data structure and 3D index data versioning for generating packet data
US11437553B2 (en) 2017-12-21 2022-09-06 Lumileds Llc Lighting device with switching material
US11473461B2 (en) 2017-10-31 2022-10-18 Maersk A/S Apparatus and method for blending oil on a marine vessel
US11762049B2 (en) 2019-07-03 2023-09-19 Canon Medical Systems Corporation Medical data processing apparatus, medical data processing method, and magnetic resonance imaging apparatus

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5912165A (en) * 1993-08-18 1999-06-15 Applied Spectral Imaging Ltd Method for chromosome classification by decorrelaiton statistical analysis and hardware therefore
US8429205B2 (en) * 1995-07-27 2013-04-23 Digimarc Corporation Associating data with media signals in media signal systems through auxiliary data steganographically embedded in the media signals
DE19549306A1 (de) 1995-12-22 1997-07-03 Art & Com Medientechnologie Un Verfahren und Vorrichtung zur bildlichen Darstellung raumbezogener Daten
FI103074B (fi) * 1996-07-17 1999-04-15 Valtion Teknillinen Spektrometri
US6373568B1 (en) * 1999-08-06 2002-04-16 Cambridge Research & Instrumentation, Inc. Spectral imaging system
US7308117B2 (en) 2000-02-04 2007-12-11 National Science And Technology Development Agency System and method for manipulating information and map for geographical resource management
DE10151217B4 (de) * 2001-10-16 2012-05-16 Carl Zeiss Microlmaging Gmbh Verfahren zum Betrieb eines Laser-Scanning-Mikroskops
US6985903B2 (en) 2002-01-25 2006-01-10 Qualcomm, Incorporated Method and system for storage and fast retrieval of digital terrain model elevations for use in positioning systems
US7158878B2 (en) * 2004-03-23 2007-01-02 Google Inc. Digital mapping system
US7599790B2 (en) * 2004-03-23 2009-10-06 Google Inc. Generating and serving tiles in a digital mapping system
CA2559726C (en) * 2004-03-24 2015-10-20 A9.Com, Inc. System and method for displaying images in an online directory
US9910341B2 (en) * 2005-01-31 2018-03-06 The Invention Science Fund I, Llc Shared image device designation
US8311733B2 (en) * 2005-02-15 2012-11-13 The Invention Science Fund I, Llc Interactive key frame image mapping system and method
US7498955B2 (en) 2005-03-08 2009-03-03 Northrop Grumman Corporation Geographic image strorage, transmission and display system
JP4366601B2 (ja) * 2005-03-18 2009-11-18 ソニー株式会社 タイムシフト画像配信システム、タイムシフト画像配信方法、タイムシフト画像要求装置および画像サーバ
US7353114B1 (en) * 2005-06-27 2008-04-01 Google Inc. Markup language for an interactive geographic information system
US8190649B2 (en) * 2006-04-25 2012-05-29 Google Inc. Ranking and clustering of geo-located objects
US20080077597A1 (en) * 2006-08-24 2008-03-27 Lance Butler Systems and methods for photograph mapping
US8130245B2 (en) * 2007-01-18 2012-03-06 Harris Corporation System and method for processing map images
JP4926891B2 (ja) 2007-08-30 2012-05-09 株式会社日立製作所 地理情報システム及び地理情報管理方法
US8103081B2 (en) * 2008-03-10 2012-01-24 Cambridge Research & Instrumentation, Inc. Classification of samples
US20090303251A1 (en) 2008-06-10 2009-12-10 Andras Balogh Displaying, processing and storing geo-located information
US8872847B2 (en) 2008-08-28 2014-10-28 Google Inc. Architectures and methods for creating and representing time-dependent imagery
US8077918B2 (en) * 2008-08-28 2011-12-13 Google, Inc. Architectures and methods for creating and representing time-dependent imagery
US8890863B1 (en) 2011-08-12 2014-11-18 Google Inc. Automatic method for photo texturing geolocated 3-D models from geolocated imagery

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225207B1 (en) 2001-10-10 2007-05-29 Google Inc. Server for geospatially organized flat file data
US7965902B1 (en) 2006-05-19 2011-06-21 Google Inc. Large-scale image processing using mass parallelization techniques
US20080016472A1 (en) 2006-06-12 2008-01-17 Google Inc. Markup Language for Interactive Geographic Information System
US7643673B2 (en) 2006-06-12 2010-01-05 Google Inc. Markup language for interactive geographic information system
US8762493B1 (en) 2006-06-22 2014-06-24 Google Inc. Hierarchical spatial data structure and 3D index data versioning for generating packet data
US11473461B2 (en) 2017-10-31 2022-10-18 Maersk A/S Apparatus and method for blending oil on a marine vessel
US11437553B2 (en) 2017-12-21 2022-09-06 Lumileds Llc Lighting device with switching material
US11762049B2 (en) 2019-07-03 2023-09-19 Canon Medical Systems Corporation Medical data processing apparatus, medical data processing method, and magnetic resonance imaging apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Foley et al., „Computer Graphics: Principals and Practice Second Edition in C": Addison-Wesley (1996) (siehe Kapitel 12 und 15)

Also Published As

Publication number Publication date
US9099057B2 (en) 2015-08-04
WO2010024873A1 (en) 2010-03-04
US8077918B2 (en) 2011-12-13
EP2321770A1 (de) 2011-05-18
US9542723B2 (en) 2017-01-10
EP2321770A4 (de) 2012-01-04
US8295550B2 (en) 2012-10-23
CA2820284A1 (en) 2010-03-04
CA2820284C (en) 2016-11-01
US20100054527A1 (en) 2010-03-04
EP2321770B1 (de) 2016-10-19
CA2791456C (en) 2013-10-22
US20130301871A1 (en) 2013-11-14
US20130335411A1 (en) 2013-12-19
US8520977B2 (en) 2013-08-27
US20160005147A1 (en) 2016-01-07
AU2009286145B2 (en) 2012-06-21
CA2791456A1 (en) 2010-03-04
AU2009286145A1 (en) 2010-03-04
CA2735326A1 (en) 2010-03-04
EP3136296A1 (de) 2017-03-01
US20130011079A1 (en) 2013-01-10
EP3136296B1 (de) 2019-03-27
US8737683B2 (en) 2014-05-27
US20120045098A1 (en) 2012-02-23
CA2735326C (en) 2013-05-28

Similar Documents

Publication Publication Date Title
DE202009019138U1 (de) Architekturen zur Erstellung und Darstellung von zeitabhängigen Bildern
US9916070B1 (en) Architectures and methods for creating and representing time-dependent imagery
DE202015009166U1 (de) System zur Bereitstellung individualisierter, mobiler Asset-Anwendungen
DE202015009181U1 (de) Überblendung zwischen Straßenansicht und Erdansicht
DE202015009163U1 (de) Mosaikbasierte Verteilung von suchbaren geospatialen Daten an Client-Vorrichtungen
DE202011110873U1 (de) Skalierbare Wiedergabe von großen räumlichen Datenbanken
DE202010018459U1 (de) System zur Darstellung von Übergängen zwischen Strassenansichten
DE202015009198U1 (de) Auswahl der zeitlich verteilten Panoramabilder für die Anzeige
DE202011110887U1 (de) Wiedergeben und navigieren fotografischer Panoramen mit Tiefeninformationen in einem geographischen Informationssystem
EP3410405A1 (de) Verfahren zur darstellung von virtueller information in einer ansicht einer realen umgebung
DE202011110870U1 (de) Erzeugung portabler Globen für ein Geo-Informationssystem
DE112010003865T5 (de) Visuelle Organisation von Information durch assoziierte georäumliche Daten
DE202012013455U1 (de) Kartenerstellung
DE202014010927U1 (de) Referenzpunktidentifizierung aus Punktwolken, die aus geografischen Bilddaten erstellt werden
DE202013012446U1 (de) Strukturüberblendung für weichen Übergang zwischen unterschiedlichen Detaillierungsgraden in Grafikanwendungen
DE112016001829T5 (de) Automatische Verbindung von Bildern unter Verwendung visueller Eigenschaftsquerverweise auf zugehörige Anwendungen
DE202013012486U1 (de) Benutzeroberfläche für das Orientieren einer Kameraansicht in Richtung von Oberflächen innerhalb einer 3-D-Karte und Einrichtungen, welche die Benutzeroberfläche miteinbeziehen
DE202015009139U1 (de) Bildmodifikation
DE102021204765A1 (de) Rendern von Augmented-Reality mit Verdeckung
Suter TOPGIS-swisstopo’s Production System for 3D Topographic Databases
ESCAP Geo-referenced information systems for Disaster Risk Management (Geo-DRM): installation and user manual
DE202010018497U1 (de) System zur Suche anhand der Ausrichtung

Legal Events

Date Code Title Description
R151 Utility model maintained after payment of second maintenance fee after six years
R207 Utility model specification
R152 Utility model maintained after payment of third maintenance fee after eight 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

R071 Expiry of right