DE69831924T2 - Verfahren und Vorrichtung zur Anzeige von Panoramen mit Videodaten - Google Patents

Verfahren und Vorrichtung zur Anzeige von Panoramen mit Videodaten Download PDF

Info

Publication number
DE69831924T2
DE69831924T2 DE69831924T DE69831924T DE69831924T2 DE 69831924 T2 DE69831924 T2 DE 69831924T2 DE 69831924 T DE69831924 T DE 69831924T DE 69831924 T DE69831924 T DE 69831924T DE 69831924 T2 DE69831924 T2 DE 69831924T2
Authority
DE
Germany
Prior art keywords
video
image data
image
video image
scene
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
DE69831924T
Other languages
English (en)
Other versions
DE69831924D1 (de
Inventor
Keh-shin Fu Mahopac Cheng
Keeranoor G. Peekskill Kumar
James Sargent Yorktown Heights Lipscomb
Jai Prakash Peekhill Menon
Marc Hubert Yorktown Heights Willebeek-Lemair
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69831924D1 publication Critical patent/DE69831924D1/de
Publication of DE69831924T2 publication Critical patent/DE69831924T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/23Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with coding of regions that are present throughout a whole video segment, e.g. sprites, background or mosaic

Description

  • Die vorliegende Erfindung betrifft allgemein Bildverarbeitungssysteme und insbesondere solche Bildverarbeitungssysteme, mit denen ein Benutzer Panoramabilder aus Daten erzeugen und betrachten kann, welche mehrere Ansichten einer interessierenden Bildszene darstellen.
  • Die vorliegende Erfindung betrifft auch Bildverarbeitungssysteme zur Wiedergabe von Videos.
  • Herkömmliche dreidimensionale Grafikanwendungen geben in Verbindung mit der entsprechenden Hardware interessierende Bildszenen wieder, die aus einem oder mehreren dreidimensionalen Objekten bestehen. Die dreidimensionalen Objekte werden üblicherweise durch geometrische Grundelemente, zum Beispiel durch Dreiecke, dargestellt. Die dreidimensionalen Grafikanwendungen speichern Grafikdaten, welche die Position und die Farbe der geometrischen Grundelemente in einem Modellkoordinatensystem darstellen. Mit Hilfe der Grafikanwendungen kann ein Benutzer die Grafikdaten bearbeiten, um die Bildszene wiederzugeben, d.h., dasjenige oder diejenigen Objekte der Bildszene darzustellen, welche von einem bestimmten Standpunkt aus in einem Anzeigefenster zu sehen sind. Der Benutzer kann sich durch Änderung der Position und der Orientierung eines Standpunktes (z.B. durch Änderung eines Kamerastandpunktes) durch die interessierende Bildszene hindurch bewegen. Durch das Durchlaufen einer Reihe zuvor ausgewählter Positionen und Orientierungsrichtungen des Standpunktes können außerdem auch Animationen erzeugt werden.
  • Die Bildbearbeitung ist ein rechenintensiver Prozess und erfolgt daher normalerweise mit Hilfe spezieller Grafikhardware. Solche Systeme sind leistungsfähig, gleichzeitig aber auch teuer, da sie eine nur für diesen Zweck geeignete spezielle Hardware benötigen.
  • Außerdem ist es bei herkömmlichen dreidimensionalen Grafiksystemen erforderlich, dass der Benutzer ein dreidimensionales Modell der Bildszene erstellt (d.h. die Grafikdaten definiert, welche die Position und die Farbe der geometrischen Grundelemente der Bildszene im Modellkoordinatensystem darstellen). Ein solches dreidimensionales Modell kann mit Hilfe von Software in Verbindung mit Peripherieeinheiten (z.B. Stifttabletts, Scannern, Kameras usw.) erstellt werden. Zum Beispiel wird von Dassault Systems in Frankreich ein Softwarepaket für dreidimensionale Grafikbearbeitung unter der Bezeichnung CATIA vertrieben. Mit Hilfe des Systems CATIA kann ein Benutzer ein dreidimensionales Modell einer interessierenden Bildszene erstellen. Eine Modellsoftware wie beispielsweise CATIA ist jedoch teuer, und zum Definieren der Grafikdaten muss selbst bei einer relativ unkomplizierten Bildszene ein beträchtlicher Arbeitsaufwand geleistet werden.
  • Wegen der hohen Kosten für herkömmliche dreidimensionale Grafiksysteme sind alternative Lösungen entwickelt worden, die wirksame, aber begrenzte Mittel zum Erstellen und Anzeigen einer dreidimensionalen Bildszene bieten. Die alternativen Lösungen sind normalerweise für die Verwendung in Standard-PCs geeignet und kommen ohne spezielle Grafikhardware aus. Eine solche Lösung ist die von International Business Machines Corporation unter der Bezeichnung PANORAMIX entwickelte und vertriebene Software.
  • Das System PANORAMIX verwendet zur Wiedergabe der Panoramaansicht einer interessierenden Bildszene (oder einer Sammlung von Bildern) eine zylindrische oder Polyederumgebungskarte. Ansichten aus unterschiedlichen Perspektiven werden durch Anzeigen der zylindrischen Umgebungskarte in einem gewünschten Anzeigefenster wiedergegeben.
  • Eine andere Panoramadarstellung ist mit einem von Apple Computer, Inc. in Cuperino, Kalifornien, unter der Bezeichnung QUICKTIMEVR entwickelten und vertriebenen Softwaresystem möglich. Die Software QUICKTIMEVR besteht aus zwei Teilen. Der erste Teil wird als Produktionswerkzeug an die Inhaltsanbieter (Content Provider) verkauft und ermöglicht diesen, aus mehreren Ansichten einer Bildszene ein Panoramabild zu erstellen. Der zweite Teil ist eine Anzeigesoftware, die an die Verbraucher verkauft wird, damit diese die mit Hilfe der Produktionssoftware erstellten Panoramabilder betrachten können. Eine ausführliche Beschreibung der Funktionsweise des Systems QUICKTIMEVR ist zu finden in Chen, „Quicktime VR – An Image-based Approach to Virtual Environment Navigation", ACM SIGGRAPH 1995, Los Angeles, Kalifornien, S. 29 bis 38, und in der US-Patentschrift 5 396 583 vom 7. März 1995 mit dem Titel „Cylindrical to Planar Image Mapping Using Scanline Coherence", von Chen et al., die an Apple Computer, Inc., abgetreten wurde.
  • Das System QUICKTIMEVR bedient sich zur Wiedergabe der Panoramaansicht einer interessierenden Bildszene (oder einer Sammlung von Bildern) einer Zylinderdarstellung der Umgebung. Unterschiedliche perspektivische Ansichten werden wiedergegeben, indem die Zylinderdarstellung der Umgebung in einem gewünschten Anzeigefenster gezeigt wird.
  • Andere handelsübliche Panoramabetrachtungssysteme sind REALSPACE VR, PHOTOBUBBLES und JUTVISION. Diese handelsüblichen System ermöglichen jedoch nicht das Einbinden von Videodatenströmen in die Panoramaansicht der interessierenden Bildszene.
  • In der britischen Patentschrift GB 2 316 257 mit dem Titel „Method and Apparatus for Overlaying a Bit Map Image on an Environment Map" von Lipscomb et al. wird beschrieben, wie eine zweidimensionale Bitmap eines ersten Bildes in ein zweites Bild kopiert werden kann, welches aus einem Teil einer Panoramadarstellung einer Umgebung erstellt wurde.
  • Eine erste Aufgabe und ein erster Vorteil der vorliegenden Erfindung besteht darin, ein Bildbearbeitungssystem bereitzustellen, mit welchem Panoramabilder und eingefügte Videobilder wiedergegeben werden können.
  • Eine andere Aufgabe und ein anderer Vorteil der vorliegenden Erfindung bestehen darin, ein Bildbearbeitungssystem bereitzustellen, mit dessen Hilfe die Wiedergabe von Panoramabildern und eingefügten Videobildern synchronisiert werden kann.
  • Eine weitere Aufgabe und ein weiterer Vorteil der vorliegenden Erfindung besteht darin, ein Bildbearbeitungssystem bereitzustellen, das eine interessierende Bildszene durch synchrones Zusammenfügen eines Panoramabildes der Bildszene und eines kontinuierlich empfangenen Stroms von Videobildern wiedergibt.
  • Weitere Aufgaben und Vorteile der vorliegenden Erfindung werden aus einer Erörterung der Zeichnungen und der folgenden Beschreibung klar.
  • Die oben genannten und weitere Probleme werden gelöst und die Aufgaben der Erfindung werden realisiert mit Hilfe der Verfahren und der Vorrichtung gemäß den Ausführungsarten der vorliegenden Erfindung, wobei Videodatenströme in ein wiederzugebendes Panoramabild eingefügt werden.
  • Die vorliegende Erfindung liefert ein Verfahren zur Wiedergabe eines Bildes, das aus einer gespeicherten Umgebungskarte einer Panoramaszene und aus Videodaten zusammengesetzt wurde, wobei das Verfahren die folgenden Schritte umfasst: Auswählen einer Orientierungsrichtung der Panoramaszene; Ausgeben der Umgebungskarte entsprechend der gewählten Orientierungsrichtung der Panoramaszene, um für die ausgewählte Orientierungsrichtung ein erstes Bild zu erzeugen; wobei das Verfahren durch die folgenden Schritte gekennzeichnet ist: Empfangen von Videodatenpaketen mit Videobilddaten; Anordnen der empfangenen Videobilddaten als Folge von Einzelbildern; Auswählen einer Folge von Videobilddaten zum Anzeigen; Umwandeln der ausgewählten Videobilddaten entsprechend der gewählten Orientierungsrichtung der Bildszene; synchrones Zusammenfügen der umgewandelten Bilddaten und des ersten Bildes zu einem Gesamtbild für die gewählte Orientierungsrichtung der Bildszene; und Anzeigen des Gesamtbildes.
  • Bei einer Ausführungsart beinhaltet das Verfahren zum Anzeigen der interessierenden Bildszene ferner einen Schritt zum kontinuierlichen Empfangen von Videodatenpaketen, welche Bilddaten und Tondaten enthalten. Bei dieser Ausführungsart werden die Tondaten kontinuierlich abgespielt, während ausgewählte Teile der Bilddaten angezeigt werden.
  • Bei einer anderen Ausführungsart beinhaltet das Verfahren zum Anzeigen der interessierenden Bildszene ferner einen Schritt des Übereinanderlegens der Videodaten und des ersten Bildes, das durch Ausgeben der Umgebungskarte erzeugt wurde. Bei der vorliegenden Erfindung können solche Überlagerungsverfahren wie beispielsweise Drawing Order Layering (Übereinanderlegen nach Zeichnungsreihenfolge), z-Buffer-Hiding Layering (Übereinanderlegen mit verdecktem z-Puffer) und das Chroma-Key-Verfahren verwendet werden.
  • Die vorliegende Erfindung beschreibt ferner ein Bildbearbeitungssystem zum Anzeigen eines Gesamtbildes aus einer gespeicherten Umgebungskarte einer Panoramaszene und aus Videodaten, wobei das System Folgendes umfasst: ein Mittel zum Wählen einer Orientierungsrichtung der Panoramaszene; und ein Mittel zum Ausgeben der Umgebungskarte entsprechend der gewählten Orientierungsrichtung der Panoramaszene, um für die gewählte Orientierungsrichtung ein erstes Bild zu erzeugen, dadurch gekennzeichnet, dass die Mittel Folgendes umfassen: ein Mittel zum Empfangen von Videodatenpaketen mit Videobilddaten; ein Mittel zum Zusammenfügen der empfangenen Videobilddaten zu einer Folge von Einzelbildern; ein Mittel zum Auswählen einer Folge von Videobilddaten zum Anzeigen; ein Mittel zum Umwandeln der ausgewählten Bilddaten entsprechend der gewählten Orientierungsrichtung der Bildszene; ein Mittel zum synchronen Zusammenfügen der umgewandelten Videobilddaten und des ersten Bildes zu einem Gesamtbild für die gewählte Orientierungsrichtung der Bildszene; und ein Mittel zum Anzeigen des Gesamtbildes.
  • Die oben dargelegten sowie weitere Merkmale der Erfindung werden aus der folgenden detaillierten Beschreibung der Erfindung in Verbindung mit den beiliegenden Zeichnungen klar, wobei:
  • 1 ein Funktionsblockschaltbild eines Computersystems ist, das von der bevorzugten Ausführungsart der vorliegenden Erfindung verwendet werden kann;
  • 2A ein Flussdiagramm der Funktionsblöcke eines unabhängigen Panoramaanzeigeprozesses ist;
  • 2B ein Verfahren zum Ausführen des Panoramaanzeigeprozesses gemäß 2A veranschaulicht;
  • 3 eine in rechteckige Abschnitte eingeteilte zylindrische Umgebungskarte veranschaulicht, welche von den unabhängigen Panoramaanzeigeprogrammen für die Bildbearbeitung verwendet werden;
  • 4 ein Verfahren zum Berechnen eines Pyramidenvolumens einer rechteckigen Zylinderfläche der in 3 gezeigten Umgebungskarte veranschaulicht, welches von den unabhängigen Panoramaanzeigeprogrammen für die Bildbearbeitung verwendet wird.
  • 5 ein Flussdiagramm der Funktionsblöcke eines unabhängigen Videoanzeigeprozesses ist;
  • 6 ein Verfahren zum Ausführen des Videoanzeigeprozesses gemäß 5 veranschaulicht;
  • 7 ein Flussdiagramm der Funktionsblöcke eines Anzeigeprozesses gemäß der vorliegenden Erfindung zum gemeinsamen Anzeigen von Panorama- und Videodaten ist;
  • 8 ein Flussdiagramm der Funktionsblöcke eines alternativen Anzeigeprozesses gemäß der vorliegenden Erfindung zum gemeinsamen Anzeigen von Panorama- und Videodaten ist; und
  • 9 ein Verfahren zum Ausführen des alternativen Anzeigeprozesses gemäß 8 zum gemeinsamen Anzeigen von Panorama- und Videodaten veranschaulicht.
  • Elemente mit gleichen Bezugsnummern in verschiedenen oben beschriebenen Figuren betreffen dieselben Elemente, jedoch muss nicht in der Beschreibung aller Figuren auf sie Bezug genommen werden.
  • Im Folgenden werden ein Verfahren und eine Vorrichtung zum Anzeigen von Panoramen mit Videodatenströmen beschrieben.
  • Die vorliegende Erfindung kann in einem beliebigen Computersystem realisiert werden, zum Beispiel einem Personal Computer, einem Arbeitsplatzrechner oder einem Grafikadapter, der zusammen mit einem Personal Computer oder einem Arbeitsplatzrechner arbeitet. 1 zeigt ein beispielhaftes Computersystem, das für die vorliegende Erfindung geeignet ist. Das beispielhafte Computersystem umfasst im Allgemeinen einen Speicher 101, mindestens eine Zentraleinheit (Central Processing Unit, CPU) 103 (von der eine gezeigt ist) und mindestens eine Eingabeeinheit 107 für den Benutzer (zum Beispiel eine Tastatur, eine Maus, ein Joystick, ein Spracherkennungssystem oder ein Handschrifterkennungssystem). Außerdem beinhaltet das Computersystem einen nichtflüchtigen Speicher, zum Beispiel einen ROM, und/oder andere nichtflüchtige Speichereinheiten 108 wie beispielsweise ein Festplattenlaufwerk, in welchem ein Betriebssystem und ein oder mehrere Anwendungsprogramme gespeichert sind, die in den Speicher 101 geladen und von der CPU 103 ausgeführt werden. Bei der Ausführung des Betriebssystems und des (der) Anwendungsprogramm(e) kann die CPU Daten verwenden, die in der nichtflüchtigen Speichereinheit 108 und/oder im Speicher 101 gespeichert sind.
  • Das beispielhafte Computersystem beinhaltet auch einen Einzelbildpuffer 104, der zwischen die CPU 103 und eine Anzeigeeinheit 105 geschaltet ist. Bei der Anzeigeeinheit 105 kann es sich um eine Katodenstrahlröhre oder einen LCD-Bildschirm handeln. Der Einzelbildspeicher 104 enthält Pixeldaten, welche ein auf der Anzeigeeinheit 105 anzuzeigendes Bild darstellen. In manchen Systemen kann zwischen die CPU 103 und den Einzelbildpuffer 104 eine (nicht gezeigte) Ausgabeeinheit, zum Beispiel eine Grafikbeschleunigungseinheit, geschaltet sein.
  • Die Tonausgabe erfolgt über eine Tonausgabeeinheit 110, zum Beispiel über Lautsprecher oder Kopfhörer, die direkt mit dem Computersystem oder einer an das Computersystem angeschlossenen Audiokarte verbunden ist.
  • Das beispielhafte Computersystem kann einen Datenübertragungsanschluss 109 (zum Beispiel einen Netzwerkadapter, einen Funkanschluss oder einen Modem) enthalten, der mit der CPU 103 verbunden ist und die Datenübertragung zwischen der CPU 103 und anderen Computersystemen über den Datenübertragungsanschluss, zum Beispiel über das Internet, ermöglicht. Die CPU 103 kann Teile des Betriebssystems, Teile des (der) Anwendungsprogramms(programme) oder Teile der bei der Ausführung des (der) Anwendungsprogramms(programme) des Betriebssystems verwendeten Daten über den Datenübertragungsanschluss empfangen.
  • Das (die) von der CPU 103 ausgeführte(n) Anwendungsprogramm(e) können die im Folgenden ausführlich beschriebenen Ausgabeprogramme der vorliegenden Erfindung ausführen. Alternativ können Teile der Ausgabeverfahren oder die kompletten Ausgabeverfahren als Hardware realisiert werden, die in Verbindung mit dem durch die CPU 103 ausgeführten Anwendungsprogramm arbeitet.
  • Wie oben erwähnt, ist das Konzept der Überlagerung eines Bitmapbildes auf eine Panoramaszene in der Bildbearbeitung bekannt, zum Beispiel aus der britischen Patentschrift GB 2 316 257 . Die 2A und 2B veranschaulichen einen unabhängigen Panoramaanzeigeprozess. Vor der Ausführung dieses Prozesses werden eine Hintergrundumgebungskarte erstellt und eine Datenübertragung von einem Quellensystem zu einem Zielsystem durchgeführt. Die Hintergrundumgebungskarte ist zum Beispiel eine zylindrische Umgebungskarte, die aus einer rechteckigen Anordnung von Elementen oder Pixeln besteht, welche jeweils Daten zur Darstellung eines Teils einer dreidimensionalen Bildszene beinhalten. 3 veranschaulicht die Zylinderdarstellung 201 der Umgebung, die in viele rechteckige Flächen aufgeteilt ist. Eine bestimmte rechteckige Fläche 302 entspricht einer bestimmten Orientierungsrichtung oder einem bestimmten Standpunkt für die interessierende Bildszene. Nachdem die Zylinderdarstellung der Umgebung empfangen und vom Zielsystem gespeichert worden ist, kann der Panoramaanzeigeprozess beginnen.
  • In den 2A und 2B beginnt der unabhängige Panoramaanzeigeprozess in Kasten 202 durch Lesen der zylindrischen Umgebungskarte 201, d.h. des Panoramabildes. Durch das Lesen der zylindrischen Umgebungskarte 201 wird ein ausgesuchter Teil der Darstellung 202, d.h. eine gewünschte Orientierungsrichtung oder ein Anzeigefenster, zum Anzeigen ausgewählt. In Kasten 204 erfolgt eine Panoramatransformation, bei welcher der ausgesuchte Zylinderteil in eine rechtwinklig-lineare Projektion der interessierenden Bildszene umgewandelt wird. Die rechtwinklig-lineare Projektion wird in Kasten 206 in einem Panoramazwischenpuffer 203 gespeichert. In Kasten 208 erfolgt eine Anzeigeaktualisierung, bei welcher der Inhalt des Panoramazwischenpuffers 203 in einen Anzeigepuffer 205 kopiert wird. Die rechtwinklig-lineare Projektion, d.h. der Inhalt des Panoramazwischenpuffers 203, steht dann zur Anzeige aus dem Anzeigepuffer 205 bereit, die in Kasten 210 erfolgt, und der Panoramaanzeigeprozess ist abgeschlossen.
  • 4 veranschaulicht ein Verfahren zum Ausführen der Panoramatransformation, bei welcher die Zylinderprojektion der zylindrischen Umgebungskarte 201 in die rechtwinklig-lineare Projektion 402 umgewandelt wird. Die Transformation erfolgt durch Abbildung einer schmalen Pyramide, die durch den Ursprung 0 und die Punkte a, b, c und d definiert ist, auf eine durch die Punkte A, B, C und D definierte rechteckige Fläche 402. Der Abbildungsprozess wird in der oben erwähnten britischen Patentschrift GB 2 316 257 ausführlich beschrieben.
  • In den 5 und 6 wird ein unabhängiger Videoanzeigeprozess veranschaulicht. Der Videoanzeigeprozess beginnt in Kasten 502 mit dem Empfangen aufgezeichneter und vom Quellensystem zum Zielsystem übertragener Videodatenpakete 601. Die Videodatenpakete 601 können zum Beispiel Bilddaten, Tondaten und Anweisungen enthalten, die im Quellensystem aufgezeichnet wurden. In Kasten 504 werden die empfangenen Bilddaten zusammengesetzt und in einem Videopufferkomplex 602 als Folge von Einzelbildern gespeichert. Die Schritte des Empfangens der Videodatenpakete 601 und des Zusammensetzens und Speicherns der Bilddaten im Videopufferkomplex 602 werden immer wiederholt, während das Quellensystem kontinuierlich Videodatenpakete 601 zum Zielsystem überträgt. In Kasten 506 werden aus einem Videozwischenpuffer 603 des Videopufferkomplexes 602 die Bilddaten einer Folge von Einzelbildern ausgewählt. Während die Bilddaten der Folge von Einzelbildern aus dem Videozwischenpuffer 603 zum Anzeigen ausgewählt werden, werden die Tondaten kontinuierlich abgespielt. Dann wird in Kasten 508 eine Transformation der ausgewählten Bilddaten in ein Anzeigeformat durchgeführt, bei welcher die Bilddaten der ausgewählten Einzelbilder in ein für die Anzeige geeignetes Format umgewandelt werden. Zum Beispiel kann die Transformation in das Anzeigeformat eine Umwandlung von 24 Bit Farbtiefe in 8 Bit Farbtiefe bewirken, d.h., die 24-Bit-Werte der Farben rot, grün und blau in 8-Bit-Zeiger umwandeln, welche auf Farbtabelleneinträge zeigen, deren Farben den gewünschten Farben nahe kommen. In Kasten 510 werden die umgewandelten Bilddaten 604 in einem Videoanzeigepuffer 605 gespeichert, sodass die umgewandelten Bilddaten 604 dann zum Anzeigen aus dem Videoanzeigepuffer 605 bereitstehen, was in Kasten 512 erfolgt und den Videoanzeigeprozess abschließt.
  • Gemäß der vorliegenden Erfindung werden der oben erwähnte unabhängige Panoramaanzeigeprozess und der Videoanzeigeprozess miteinander verknüpft und gleichzeitig ausgeführt, sodass die Panoramaansichten eines interessierenden Bildszene mit eingefügten Videodatenströmen ausgegeben werden können. Dadurch werden die Bilder der Videodatenströme so wiedergegeben, dass sie in das Panoramabild eingefügt sind.
  • Es ist anzumerken, dass der verknüpfte Prozess der vorliegenden Erfindung in mehrerlei Hinsicht eine Verbesserung gegenüber den unabhängigen Einzelprozessen darstellt. Vorzugsweise werden die übertragenen statischen und dynamischen Daten in der Weise ineinander integriert, dass die Bandbreite des Netzwerks wirksam genutzt wird. Die Bandbreite des Netzwerks wird zunächst, wie in der oben erwähnten britischen Patentschrift GB 2 316 257 beschrieben, zum Herunterladen des statischen Panoramabildes und dann zum Übertragen der dynamischen Videobilddaten mittels der Streamingtechnologie genutzt. Die statischen und die dynamischen Datenkomponenten werden anschließend ineinander geschachtelt, damit sie in der oben beschriebenen Weise als Gesamtbild angezeigt werden können.
  • Die vorliegende Erfindung kann zwar ähnliche Schritte wie die oben beschriebenen unabhängigen Prozesse beinhalten, jedoch ergeben sich Verbesserungen durch die Verwendung von Videodatenströmen als Quelle, die Synchronisierung des Videoanzeigeprozesses und des Panoramaanzeigeprozesses und den zusätzlichen Transformationsschritt zur Bildverknüpfung, um die Panoramabilder und die Videobilder für die Anzeige zusammenzufügen. Der verknüpfte Prozess überwindet die Beschränkungen beim unabhängigen Prozess, zum Beispiel die mangelhafte Synchronisation zwischen Videoanzeige und Panoramaanzeige sowie die fehlende Transformation der Videodaten vor dem Anzeigen. Bei der vorliegenden Erfindung ermöglicht der Transformationsschritt der Videodaten zum Beispiel die Maßstabsänderung, das Herstellen von Ausschnitten, das Beschneiden und Dehnen, das Chroma-Key-Verfahren und das Aufeinanderlegen des Videobildes auf das Panoramabild.
  • 7 veranschaulicht einen Prozess zur verknüpften Panoramaanzeige und Videoanzeige. Es ist klar, dass beim verknüpften Prozess Schritte mit derselben Bezugsnummer ablaufen, wie bei den unabhängigen Prozessen der Panoramaanzeige und der Videoanzeige beschrieben. Somit werden beim verknüpften Prozess im Abschnitt für die Panoramaanzeige mit Kasten 202 bis 206 die gespeicherten Hintergrundwerte gelesen und eine Zylinderprojektion durch Ausführen der Panoramatransformationsfunktion in eine rechtwinklig-lineare Projektion überführt. Entsprechend werden im Abschnitt für die Videoanzeige in Kasten 502 bis 506 Bilddaten aus den kontinuierlich empfangenen Videodatenpaketen zum Anzeigen ausgewählt. In Kasten 708 des verknüpften Prozesses wandelt jedoch eine neue Transformationsfunktion, eine Verknüpfungstransformation, die ausgewählten Videobilddaten aus dem Videozwischenpuffer 603 um. Dann werden die umgewandelten Videobilddaten in Kasten 710 mit der rechtwinklig-linearen Projektion des Panoramaanzeigeprozesses verknüpft und bilden ein Gesamtbild. In Kasten 712 wird das Gesamtbild im Panoramazwischenpuffer 203 gespeichert, um dann angezeigt zu werden. In Kasten 208 wird der unabhängige Panoramaanzeigeprozess wieder aufgenommen, indem der Inhalt des Panoramazwischenpuffers 203 in den Anzeigepuffer 205 kopiert wird. In diesem Fall stellt der Inhalt des Panoramazwischenpuffers 203 das Gesamtbild dar. Dann kann das Gesamtbild in Kasten 210 aus dem Anzeigepuffer 205 heraus angezeigt werden, womit der verknüpfte Anzeigeprozess abgeschlossen ist.
  • Bei einer Ausführungsart der vorliegenden Erfindung beinhaltet die Transformationsfunktion zur Bildverknüpfung einen Schritt, bei welchem der Videoanzeigeprozess (Kasten 502 bis 506) die ausgewählte anzuzeigende Bilddatenfolge dadurch kennzeichnet, dass er mit einem Zeiger auf den Videozwischenpuffer 603 zeigt, welcher die ausgewählte Bilddatenfolge enthält. Bei dieser Ausführungsart dient der Zeiger beispielsweise als Argument für den Aufruf eines Unterprogramms. Es ist klar, dass der Prozess zur verknüpften Panoramaanzeige und Videoanzeige ein Unterprogramm des Videoanzeigeprozesses aufrufen kann, dessen Argument ein Speicherplatz oder eine Adresse des Videozwischenpuffers 603 ist, in dem die ausgewählte Bilddatenfolge gespeichert ist. Alternativ kann der Videoanzeigeprozess ein Unterprogramm des Prozesses zur verknüpften Panoramaanzeige und Videoanzeige mit der Adresse des Videozwischenpuffers 603 als Parameter aufrufen, welche der Prozess der verknüpften Panoramaanzeige und Videoanzeige dann zur späteren Verwendung speichert. Dem Fachmann ist klar, dass es zahlreiche andere Verfahren gibt (z.B. äußere Ereignisse usw.), mit denen die anzuzeigende ausgewählte Bilddatenfolge gekennzeichnet werden kann.
  • Ebenso wie oben erwähnt, kann die Transformationsfunktion zur Bildverknüpfung bei einer anderen Ausführungsart der vorliegenden Erfindung einen Schritt beinhalten, bei welchem die ausgewählten Videobilddaten vor dem Einfügen in das Panoramabild einer Maßstabsänderung, dem Herstellen von Ausschnitten, dem Beschneiden und Dehnen, dem Chroma-Key-Verfahren und dem Übereinanderlegen unterzogen werden. Diese Ausführungsart kann auch einen Schritt der Lautstärkesteuerung von Tondaten beinhalten, die gleichzeitig mit den Videobilddaten vom Quellensystem empfangen wurden. Die Tondaten werden wie oben erörtert gleichzeitig mit den Bilddaten kontinuierlich abgespielt.
  • Aus der obigen Erörterung wird deutlich, dass zu den Elementen, durch die sich der verknüpfte Prozess von den unabhängigen Einzelprozessen unterscheidet, zumindest die Fähigkeit, den Panoramazeichnungsprozess und den Videozeichnungsprozess zu synchronisieren, und den Transformationsschritt zur Bildverknüpfung beinhalten. Diese Elemente werden im Folgenden ausführlich erörtert.
  • Bei der vorliegenden Erfindung umfasst eine Synchronisierungsstrategie die Ausführung der folgenden Schritte:
    • 1. Durchführen der Panoramatransformation in Kasten 204;
    • 2. Durchführen der Transformation zum Zusammenfügen der umgewandelten Bilddaten und der Panoramadaten in Kasten 708 und 710; und
    • 3. Durchführen der Anzeigeaktualisierung in Kasten 208, wobei der Inhalt des Panoramazwischenpuffers 203 in den Anzeigepuffer 205 für die Anzeige geschrieben wird.
  • Besonders wichtig ist die Synchronisierung dieser Schritte, wenn ein gemäß der Erfindung arbeitendes System zwischen den aufeinander folgenden Bildern die Zwischenspeicher nicht löscht. Wenn zum Beispiel ein ungelöschter Pufferspeicher asynchron gelesen wird, während in ihn geschrieben wird, enthält das Leseergebnis ein zuvor geschriebenes Bild, das mit dem gerade geschriebenen Bild gemischt ist. 7 beschreibt den ersten Schritt des Synchronisierungsverfahrens. Die Panoramatransformation (Kasten 204) und die Anzeigeaktualisierung (Kasten 208) sind als zwei asynchron ablaufende Prozesse zu erkennen. Bei diesem asynchronen Betriebsmodus ist der Anzeigezeitpunkt zwar optimiert, aber trotzdem kann das Bild verzerrt werden, da im Panoramazwischenpuffer 203 noch ein unvollständig aktualisiertes Bild enthalten sein kann, während die Anzeigeaktualisierung im Gange ist. Die beiden asynchron ablaufenden Prozesse enthalten die folgenden Schritte:
    Beim Schritt der Panoramatransformation:
    • 1. Durchführen der Panoramatransformation in Kasten 204;
    • 2. Warten auf Standortänderung;
    • 3. Aktualisieren der Betrachtungsrichtung und des Zoom; und
    • 4. Zurück zu Schritt 1.
  • Beim Schritt der Anzeigeaktualisierung:
    • 1. Warten auf die vertikale Austastlücke der Anzeigeeinheit;
    • 2. Durchführen der Anzeigeaktualisierung in Kasten 208; und
    • 3. Zurück zu Schritt 1.
  • Wenn die Programme jedoch synchronisiert wurden, erfolgt die Anzeige verzögert, und das Bild wird nicht verzerrt, da im Panoramazwischenpuffer ein vollständiges Einzelbild gespeichert ist, das während der Anzeigeaktualisierung kopiert wird. Der synchrone Prozess, bei dem die Panoramatransformation (nur Transformation des Panoramas, nicht der Videodaten) im Wechsel mit der Anzeigeaktualisierung erfolgt, umfasst die folgenden Schritte:
    Synchroner Prozess:
    • 1. Durchführen der Panoramatransformation in Kasten 204;
    • 2. Warten auf die vertikale Austastlücke der Anzeigeeinheit;
    • 3. Durchführen der Anzeigeaktualisierung in Kasten 208;
    • 4. Warten auf Standortänderung;
    • 5. Aktualisieren der Betrachtungsrichtung und des Zoom; und
    • 6. Zurück zu Schritt 1.
  • Im Folgenden wird der zweite Schritt des Synchronisierungsverfahrens beschrieben. Im zweiten Schritt erfolgt die Untersuchung der Beziehung zwischen dem Zusammenfügungsschritt (Kasten 708 und 710), der Panoramatransformation (Kasten 204) und der Anzeigeaktualisierung (Kasten 208). Es ist klar, dass ein synchroner Prozess bevorzugt wird, da Videobilddaten im Panoramazwischenpuffer überlagert werden. Durch den synchronen Prozess wird vermieden, dass das transformierte Panorama ohne die Videobilddaten oder alternativ mit einem unvollständigen Videobild angezeigt wird. Die Synchronisierung der Panoramatransformation (Kasten 204), der Zusammenfügung (Kasten 708 und 710) und die Anzeigeaktualisierung (Kasten 208) sind wie folgt als zwei synchron ablaufende Prozesse zu erkennen:
    Beim Videoanzeigeprozess:
    • 1. Empfangen der Videodatenpakte 601 im Videopufferkomplex 602 und Zusammensetzen der Bilddatenpakete in Kasten 502 und 504, bis die ankommenden Datenpakete zur Bildung eines vollständigen neuen Bildes ausreichen;
    • 2. Wiederholen von Schritt 1, bis eine Markierung „neuer Videozwischenpuffer" gelöscht ist;
    • 3. Warten auf das Löschen einer Markierung „Zusammenfügen";
    • 4. Verschieben eines Zeigers zum Videozwischenpuffer 603, in welchem die ausgewählte Folge der anzuzeigenden Bilddaten gespeichert ist, um auf das letzte Bild zu zeigen;
    • 5. Setzen der Markierung „neuer Videozwischenpuffer";
    • 6. Löschen der vorigen Bilder aus dem Videozwischenpuffer und Rückgabe des Speichers zum Videopufferkomplex 602; und
    • 7. Zurück zu Schritt 1.
  • Beim Panoramaanzeigeprozess:
    • 1. Durchführen der Panoramatransformation in Kasten 204;
    • 2. Setzen der Markierung „Zusammenfügen";
    • 3. Ausführen des Zusammenfügungsschrittes in Kasten 708 und 710;
    • 4. Löschen der Markierung „Zusammenfügen";
    • 5. Löschen der Markierung „neuer Videozwischenpuffer";
    • 6. Warten auf die vertikale Austastlücke der Anzeigeeinheit;
    • 7. Durchführen der Anzeigeaktualisierung in Kasten 208;
    • 8. Warten auf eine Änderung der Betrachtungsrichtung oder des Zoom oder auf das Setzen einer Markierung „neuer Videozwischenpuffer"; und
    • 9. Zurück zu Schritt 1.
  • Bei einer anderen Ausführungsart verläuft die Synchronisierung der Panoramatransformation (Kasten 204), des Zusammenfügungsschrittes (Kasten 708 und 710) und der Anzeigeaktualisierung (Kasten 208) wie folgt:
    Beim Videoanzeigeprozess mit zu Anfang gelöschter Markierung „neuer Videozwischenpuffer":
    • 1. Empfangen der Videodatenpakete 601 im Videopufferkomplex 602 und Zusammensetzen der Bilddatenpakete in Kasten 502 und 504, bis die ankommenden Datenpakete zur Bildung eines vollständigen neuen Bildes ausreichen;
    • 2. Wiederholen von Schritt 1, bis eine Markierung „Zusammenfügen" gesetzt ist.
    • 3. Verschieben des Zeigers zum Videozwischenpuffer 603, um auf das letzte Bild zu zeigen;
    • 4. Setzen einer Markierung „neuer Videozwischenpuffer";
    • 5. Warten auf das Löschen der Markierung „Zusammenfügen";
    • 6. Löschen der vorigen Bilder aus dem Videozwischenpuffer und Rückgabe des Speichers zum Videopufferkomplex 602; und
    • 7. Zurück zu Schritt 1.
  • Beim Panoramaanzeigeprozess mit zu Anfang gelöschter Markierung „Zusammenfügen":
    • 1. Durchführen der Panoramatransformation in Kasten 204;
    • 2. Setzen einer Markierung „Zusammenfügen";
    • 3. Warten. Weitergehen, wenn die Markierung „neuer Videozwischenpuffer" gesetzt ist oder wenn in Schritt 9 eine Änderung der vorigen Betrachtungsrichtung oder des Zoom des zuvor angezeigten Bildes erfolgte oder wenn sich die Betrachtungsrichtung oder des Zoom ändert;
    • 4. Ausführen des Zusammenfügungsschrittes in Kasten 708 und 710;
    • 5. Löschen der Markierung „neuer Videozwischenpuffer";
    • 6. Löschen der Markierung „Zusammenfügen";
    • 7. Warten auf die vertikale Austastlücke der Anzeigeeinheit;
    • 8. Durchführen der Anzeigeaktualisierung in Kasten 208;
    • 9. Aktualisieren der Betrachtungsrichtung und des Zoom; und
    • 10. Zurück zu Schritt 1.
  • Es ist klar, dass alternative Verfahren zum Setzen und Löschen von Markierungen („Flags") sowie andere Verfahren zur bedingten Ausführung von Prozessschritten beim Eintreten eines vorgegebenen Ereignisses im Geltungsbereich der vorliegenden Erfindung liegen. Ein wichtiges Merkmal der vorliegenden Erfindung beinhaltet die Synchronisierung des Panoramatransformationsschrittes (Kasten 204), des Zusammenfügungsschrittes (Kasten 708 und 710) und des Anzeigeaktualisierungsschrittes (Kasten 208), sodass die Realisierung der Synchronisierung kein wichtiges Element der Erfindung darstellt.
  • Außerdem ist klar, dass jede beliebige Ausführungsreihenfolge möglich ist und zum Beispiel die Ausführung mehrerer Panoramatransformationsschritte und Zusammenfügungsschritte für mehrere Panoramen und Videodatenströme beinhalten kann, sofern der Anzeigeaktualisierungsschritt (Kasten 208) als letzter Schritt ausgeführt wird.
  • Bei einer in den 8 und 9 gezeigten alternativen Ausführungsart der vorliegenden Erfindung ist die Videotransformation (Kasten 204) in den unabhängigen Videoanzeigeprozess einbezogen, der in den 6 und 7 dargestellt ist. Gemäß den 6 und 7 werden bei dem alternativen Videoanzeigeprozess in Kasten 502 Videodatenpakete 601 vom Quellensystem empfangen. In Kasten 804 werden die Bilddaten der empfangenen Videodatenpakete 601 bei der Videotransformation direkt in den Videozwischenpuffer 603 geschrieben. Ebenso wie beim unabhängigen Videoanzeigeprozess werden die Schritte des Empfangens der Videodatenpakete 601 und des Speicherns der empfangenen Bilddaten im Videozwischenpuffer 603 so lange wiederholt, wie das Quellensystem kontinuierlich Videodatenpakete 601 zum Zielsystem überträgt.
  • Die übrigen Schritte des alternativen Videoanzeigeprozesses werden ebenso ausgeführt, wie oben bei der Erörterung des verknüpften Prozesses der Panoramaanzeige und der Videoanzeige gemäß 7 beschrieben. Somit werden empfangene Bilddaten aus dem Videozwischenpuffer 603 (Kasten 506) ausgewählt, zusammengefügt (Kasten 708), mit den Panoramadaten zu einem Gesamtbild 903 zusammengesetzt (Kasten 710) und für die Anzeige zwischengespeichert (Kasten 712 bis 210).
  • Es ist anzumerken, dass die Videotransformation (Kasten 804) entweder asynchron oder synchron zum Zusammenfügen (Kasten 708 und 710) erfolgen kann. Wie bereits erwähnt, kann eine asynchrone Ausführungsform zwar die Anzeige beschleunigen, aber auch zum Verzerren des Bildes führen, da der Videozwischenpuffer während des Zusammenfügungsschritte ein unvollständig aktualisiertes Bild enthält. Praktisch verläuft dieser asynchrone Prozess wie folgt:
    Beim Videoanzeigeprozess mit zu Anfang gelöschter Markierung „neuer Videozwischenpuffer":
    • 1. Lesen der Videodatenpakete (601) in den Videozwischenpuffer (603), bis die ankommenden Datenpakete zur Bildung eines vollständigen neuen Bildes ausreichen (Kasten 502 und 804); und
    • 2. Zurück zu Schritt 1.
  • Beim Panoramaanzeigeprozess mit zu Anfang gelöschter Markierung „Zusammenfügen":
    • 1. Durchführen der Panoramatransformation in Kasten 204;
    • 2. Ausführen des Zusammenfügungsschrittes in Kasten 708 und 710;
    • 3. Warten auf die vertikale Austastlücke der Anzeigeeinheit;
    • 4. Durchführen der Anzeigeaktualisierung in Kasten 208;
    • 5. Aktualisieren der Betrachtungsrichtung und des Zoom; und
    • 6. Zurück zu Schritt 1.
  • Wenn die Videotransformation (Kasten 804) synchron mit dem Zusammenfügen (Kasten 708 und 710) erfolgt, wird die Anzeige zwar verzögert, aber das Bild bleibt unverzerrt. Beim synchronen Betriebsmodus wechseln die Videotransformation und das Zusammenfügen einander ab, sodass der Panoramaanzeigeprozess wie folgt gleichzeitig mit dem Videoanzeigeprozess abläuft:
    Beim Videoanzeigeprozess mit zu Anfang gelöschter Markierung „neuer Videozwischenpuffer":
    • 1. Lesen der Videodatenpakte 601 in den Videozwischenpuffer 603, bis die ankommenden Datenpakete zur Bildung eines vollständigen neuen Bildes ausreichen (Kasten 502 und 804);
    • 2. Wiederholen von Schritt 1, bis die Markierung „Zusammenfügen" gesetzt wurde;
    • 3. Setzen der Markierung „neuer Videozwischenspeicher";
    • 4. Warten, bis die Markierung „Zusammenfügen" gelöscht wurde; und
    • 5. Zurück zu Schritt 1.
  • Beim Panoramaanzeigeprozess mit zu Anfang gelöschter Markierung „Zusammenfügen":
    • 1. Durchführen der Panoramatransformation in Kasten 204;
    • 2. Setzen der Markierung „Zusammenfügen";
    • 3. Warten, bis die Markierung „neuer Videozwischenpuffer" gesetzt wurde;
    • 4. Durchführen des Zusammenfügungsschrittes in Kasten 708 und 710;
    • 5. Löschen der Markierung „neuer Videozwischenpuffer";
    • 6. Löschen der Markierung „Zusammenfügen";
    • 7. Warten auf die vertikale Austastlücke der Anzeigeeinheit;
    • 8. Durchführen der Anzeigeaktualisierung in Kasten 208;
    • 9. Aktualisieren der Betrachtungsrichtung und des Zoom; und
    • 10. Zurück zu Schritt 1.
  • Im Folgenden wird ebenfalls unter Bezug auf 7 der dritte Schritt des Synchronisierungsverfahrens beschrieben. Bei dem dritten Schritt wird die Beziehung zwischen der Anzeigeaktualisierung (Kasten 208) und der Bildwiederholperiode der Anzeigeeinheit untersucht. Die Anzeigeaktualisierung und die Bildwiederholperiode können in derselben Weise wie oben erläutert synchron oder asynchron ablaufen. Es ist jedoch zu beachten, dass die Bildwiederholperiode der Anzeigeeinheit normalerweise vom Betriebssystem des Computers gemäß der vorliegenden Erfindung vorgegeben ist und der Startzeitpunkt der Bildwiederholperiode nicht von der im Computer laufenden Anwendung bestimmt wird. Bei den Verfahren der vorliegenden Erfindung an sich kann eine Anwendung zwar den Zeitpunkt der Anzeigeaktualisierung in Bezug auf die anderen Transformationen bestimmen, nicht aber die Bildwiederholperiode der Anzeigeeinheit.
  • Im synchronen Betriebsmodus beinhaltet deshalb jeder der während der obigen Erörterung dargelegten Prozessschritte den Schritt „Warten auf die vertikale Austastlücke der Anzeigeeinheit", während dieser Schritt beim asynchronen Betriebsmodus fehlt.
  • Besonders ist zu beachten, dass bei der obigen Erörterung aller drei Schritte des Synchronisierungsverfahrens keiner der Zwischenpuffer gelöscht wurde, bevor ein Bild in ihn geschrieben wurde. Ändert man diese Prozesse dahingehend, dass der Zwischenpuffer gelöscht wird, bevor ein Transformationsschritt Daten hineinschreibt, müssen diese Transformationsschritte mit anderen Transformationsschritten synchronisiert werden, welche Daten aus dem Puffer lesen, damit das Lesen nicht aus einem ganz oder teilweise gelöschten Puffer erfolgt und entweder kein oder nur ein unvollständiges Bild angezeigt wird.
  • Nach der Erörterung der Möglichkeiten des Synchronisierungsverfahrens der vorliegenden Erfindung soll im Folgenden besonders der Schritt der Videodatentransformation betrachtet werden, bei dem zum Beispiel die Maßstabsänderung, das Herstellen von Ausschnitten, das Beschneiden und Dehnen, das Chroma-Key-Verfahren und das Überlagern des Panoramabildes mit dem Videobild erfolgen können.
  • Zuvor ist anzumerken, dass der Prozess der Maßstabsänderung und des Beschneidens von Bilddaten in der Bildbearbeitung bekannt ist und beispielsweise zu finden ist in „Computer Graphics, principles and practice", von J. D. Foley, A. van Dam, S. K. Feiner und J. F. Hughes, zweite Auflage, 1990, Addison-Wesley Publishing Company, Reading, New York, Kapitel 5, „Geometrische Transformationen". Ferner ist anzumerken, dass der unabhängige Panoramaanzeigeprozess von 2A Maßstabsänderungen bewirken kann, indem eine Zoomfunktion ausgeführt wird.
  • Das Zusammenfügen ermöglicht wie oben erörtert die Maßstabsänderung oder das Beschneiden der Videobilddaten, während die Bilddaten transformiert und mit den Panoramadaten im Panoramazwischenpuffer 603 verknüpft werden (Kasten 708 bis 712 in 7). Bei einer Ausführungsart der vorliegenden Erfindung wird im Zusammenfügungsschritt (Kasten 708) der Maßstab der Videobilddaten geändert, damit die Übereinstimmung mit anderen Maßstabsänderungen während der Panoramatransformation (Kasten 204) erhalten bleibt. Durch die übereinstimmenden Maßstabsänderungen bleibt das Videodatenbild dem maßstabsgeänderten Bild aus der Panoramatransformation proportional. Mithin wird der Maßstab des Videodatenbildes und des Panoramabildes gleich stark geändert. Außerdem bleibt die Position eines Punktes der Videobilddaten im Panoramazwischenpuffer 203 während des Zoomens erhalten, sodass ein Punkt unverändert an einer bestimmten Stelle im Panoramabild erscheint.
  • Desgleichen werden beim Zusammenfügen gemäß einer Ausführungsart der Erfindung Bilder auch beschnitten, um Beschneidungen während der Panoramatransformation auszugleichen. Dabei erfolgt das Beschneiden durch Speichern der Pixel der Videobilddaten im Panoramazwischenpuffer 203 in der Weise, dass sie ebenfalls unverändert an einer bestimmten Stelle des Panoramabildes erscheinen.
  • Gemäß der vorliegenden Erfindung können Videobilddaten beim Zusammenfügen der Bilder dem Panoramabild überlagert werden, um so das Gesamtbild zu erzeugen (Kasten 708 und 710). Man beachte, dass durch das Überlagern beim Zusammenfügen der Bilder die Videobilddaten ganz oder teilweise in die Panoramabilddaten eingefügt werden können oder umgekehrt. Gemäß der vorliegenden Erfindung können Überlagerungsverfahren wie beispielsweise das Drawing Order Layering (Überlagerung nach Zeichnungsreihenfolge), das z-Buffer-Hiding Layering (Überlagerung mit verdecktem z-Puffer) und das Chroma-Key-Verfahren verwendet werden.
  • Beim Drawing Order Layering wird ein zweites Bild auf ein erstes (Original-)Bild gezeichnet, sodass das zweite Bild im entstehenden Gesamtbild dem Betrachter näher erscheinen kann, da das zweite Bild das erste Bild verdeckt. Zwar wird auch beim z-Buffer-Hiding Layering ein zweites Bild auf ein erstes (Original-)Bild gezeichnet, damit es dem Betrachter näher erscheint, jedoch werden hier die Pixel je nach der jedem Pixel entsprechenden Tiefeninformation einzeln gezeichnet oder auch nicht gezeichnet. Dabei werden nur die mit einer entsprechenden Tiefeninformation versehenen Pixel gezeichnet, welche anzeigt, dass das Pixel sich näher am Beobachter befindet. Dadurch kann ein Objekt (das zweite Bild) beim z-Buffer Hiding Layering teilweise vor einem anderen Objekt (dem ersten Bild) herausragen.
  • Die beiden Verfahren Drawing Order Layering und z-Buffer Hiding Layering sind in der Bildbearbeitung bekannt und ausführlich beschrieben zum Beispiel in „Computer Graphics, principles and practice" von J. D. Foley, A. van Dam, S. K. Feiner und J. F. Hughes, zweite Auflage, 1990, Addison-Wesley Publishing Company, Reading, New York, im Inhaltsverzeichnis siehe unter painter's algorithm und z-Buffer.
  • Desgleichen wird auch mit der Chroma-Key-Verfahren ein zweites Bild auf ein erstes (Original-)Bild gezeichnet, damit dieses dem Beobachter näher oder ferner erscheint. Beim Chroma-Key-Verfahren werden die Pixel jedoch je nach dem jedem Pixel entsprechenden Farbwert einzeln gezeichnet oder nicht gezeichnet. Das Chroma-Key-Verfahren wird im Folgenden ausführlich erörtert.
  • Bei einer Ausführungsart der vorliegenden Erfindung kann jedes der oben erwähnten Überlagerungsverfahren durchgeführt werden, während das Videodatenbild transformiert und mit dem Panoramadatenbild verknüpft wird. Diese unabhängigen Überlagerungsverfahren sind bisher nur in Form von Sprites (zweidimensionalen Grafiksymbolen) angewendet worden, die einem Panoramabild überlagert wurden, nicht aber auf Videobilddaten, die mit Panoramabilddaten zu einem anzuzeigenden Gesamtbild verknüpft werden. Falls beim Transformationsschritt Überlagerungsverfahren eingesetzt werden, können diese in beliebiger Reihenfolge ausgeführt werden, und außerdem können beim Zusammenfügen der Videobilddaten und der Panoramabilddaten eine oder mehrere Panoramatransformationen und ein oder mehrere Verknüpfungsschritte durchgeführt werden.
  • Im Folgenden wird das Chroma-Key-Verfahren näher erläutert. Das Chroma-Key-Verfahren kann bei der vorliegenden Erfindung auf ein Bild angewendet werden, das in ein bestimmtes Zielsystem geschrieben wird, d.h. auf das von der Quelle gesendete Bild, oder auf das Bild im Zielsystem, d.h. das im Schreibpuffer des Zielsystems befindliche Bild.
  • Das Chroma-Key-Verfahren ist ein übliches Überlagerungsverfahren, das zum Beispiel im Fernsehfunk (TV) oder in der Filmindustrie verwendet wird, um nicht das gesamte Bild, sondern nur Teile des Bildinhalts aufzutragen. Mit dem Chroma-Key-Verfahren ist es zum Beispiel möglich, dass ein Fernsehansager beim Wetterbericht scheinbar vor einer großen Wetterkarte, tatsächlich aber vor einem blauen oder grünen Hintergrund steht. Das Verfahren beruht auf einem Prozess, bei dem eine Entscheidung zum Übernehmen von Pixeln von einem Farbschwellenwert (Chroma-Key-Farbe) abhängt. Dieser Farbschwellenwert stellt eine Kombination aus Farbe, Helligkeit und Pixelwerten in dem zu schreibenden Bild oder in dem zu überbeschreibenden Bild dar. Eine ausführliche Beschreibung des Chroma-Key-Verfahrens ist zu finden beispielsweise in „Video Demystified, a Handbook for the Digital Engineer" von Keith Jack, zweite Auflage, 1996, HighText Publications, San Diego, S. 404 bis 412 und A-54.
  • Beim Chroma-Key-Verfahren ist eine Chroma-Key-Farbe beispielsweise rot ohne grüne oder blaue Farbanteile. Ein RGB-Pixelwert (rot-grün-blau) wird nicht geschrieben, wenn er einen bestimmten Rotwert ohne grüne oder blaue Farbanteile aufweist. In diesem Fall erweist sich der Chroma-Key-Wert sozusagen als transparent. So wird in dem folgenden Beispiel einer Videokonferenz verfahren. Auch bei einem anderen Beispiel ist die Chroma-Key-Farbe rot ohne grüne oder blaue Farbanteile. In diesem Fall wird ein RGB-Pixelwert geschrieben, wenn der zu beschreibende Hintergrund den bestimmten Rotwert ohne grüne oder blaue Farbanteile aufweist.
  • In diesem Fall verhält sich der Chroma-Key-Farbwert wie ein Bildschirm, auf den ein Bild projiziert wird. Diese Variante wird im folgenden Beispiel eines Flugsimulators genutzt.
  • Als erstes Beispiel wird eine Videokonferenz beschrieben. Bei diesem Beispiel besteht ein Gesamtbild aus dem Kopf einer Person, der auf einer Panoramaszene eines Konferenzraums dargestellt wird. Mit Hilfe der Panoramatransformation (Kasten 204 in 7) wird ein ausgewählter Zylinderbereich des Panoramabildes 201 in eine rechtwinklig-lineare Projektion umgewandelt und diese rechtwinklig-lineare Projektion im Panoramazwischenpuffer 203 (Kasten 206) gespeichert. Dann wird ein Videobild dieser Person zusammen mit einem andersfarbigen ebenen Kontrasthintergrund aufgezeichnet und zum Zielsystem übertragen. Die Farbe des ebenen Hintergrundes wird als Chroma-Key-Farbe definiert, sodass nur die Pixel zur Darstellung der Person und nicht die Pixel des andersfarbigen ebenen Hintergrundes umgewandelt werden. Deshalb erscheint der andersfarbige ebene Hintergrund nicht im Gesamtbild. Somit werden beim Zusammenfügen gemäß dem Chroma-Key-Verfahren (Kasten 708 und 710) die außerhalb des Chroma-Key-Bereichs liegenden Videobilddaten aus dem Videozwischenpuffer 603 in den Panoramazwischenpuffer 203 (in dem jetzt nur die Panoramabilddaten gespeichert sind) kopiert, d.h. nur die Pixel, welche die Person darstellen, und nicht der andersfarbige ebene Hintergrund, sodass sich daraus das Gesamtbild ergibt. Das Gesamtbild wird im Panoramazwischenpuffer 203 (Kasten 712) gespeichert. Nach der Anzeigeaktualisierung (Kasten 208) steht das Gesamtbild zur Anzeige bereit (Kasten 210). Die folgenden Schritte geben einen Ausschnitt aus dem verknüpften Anzeigeprozess für Panorama- und Videobilder nach dem Chroma-Key-Verfahren wieder:
    • 1. Übergehen zum nächsten Pixel im Panoramazwischenpuffer;
    • 2. Durchführen der Panoramatransformation dieses Pixels in Kasten 204;
    • 3. Auswählen des entsprechenden Pixels aus dem Videozwischenpuffer 603 in Kasten 506, welches in den Panoramazwischenpuffer 203 kopiert werden soll;
    • 4. Zurück zu Schritt 1, wenn alle Komponenten rot, grün oder blau des Videopixels innerhalb der vorgegebenen Chroma-Key-Bereiche für die Farben rot, grün und blau liegen;
    • 5. Transformieren des im Videozwischenpuffer 603 gespeicherten Pixels und Zusammenfügen des Pixels mit dem im Panoramazwischenpuffer 203 gespeicherten Panoramabild; und
    • 6. Zurück zu Schritt 1.
  • Im Folgenden wird als weiteres Beispiel der Ablauf in einem Flugsimulator beschrieben. Im Flugsimulator enthält ein Gesamtbild ein Videobild der Außenwelt, das zusammen mit dem Panoramabild eines Cockpits angezeigt wird. Bei diesem Beispiel wird ebenso wie oben ein ausgewählter Zylinderbereich des Panoramabildes 201 des Cockpits in eine rechtwinklig-lineare Projektion umgewandelt (Kasten 204) und diese rechtwinklig-lineare Projektion im Panoramazwischenpuffer 203 gespeichert (Kasten 206). Das Panoramabild weist auf den Fensterflächen des Cockpits einen ebenen Hintergrund mit einer anderen Farbe auf. Ein Video eines Starts und einer Landung wird vom Quellensystem aufgezeichnet und im Videozwischenpuffer 603 des Zielsystems gespeichert. Beim Zusammenfügen nach dem Chroma-Key-Verfahren (Kasten 708 und 710) wird das im Videozwischenpuffer befindliche Videobild umgewandelt, das auf die innerhalb des Chroma-Key-Schwellenwertes liegenden Teile der Cockpitszene fällt. Der Panoramazwischenpuffer 203 (in welchem sich nun der Panoramahintergrund des Cockpits befindet) wird mit dem transformierten Videobild zusammengefügt und ergibt das Gesamtbild. Beim vorliegenden Beispiel wird das Panorama mit dem links, rechts, oben und unten beschnittenen Videobild überlagert, sodass es außerhalb des Cockpitfensters zu liegen scheint. Die folgenden Schritte geben einen Ausschnitt aus dem verknüpften Anzeigeprozess für Panorama- und Videobilder nach dem Chroma-Key-Verfahren für das Beispiel des Flugsimulators wieder:
    • 1. Übergehen zum nächsten Pixel im Panoramazwischenpuffer 203;
    • 2. Durchführen der Panoramatransformation dieses Pixels in Kasten 204;
    • 3. Zurück zu Schritt 1, wenn eine Komponente rot, grün oder blau des Panoramapixels außerhalb der vorgegebenen Chroma-Key-Bereiche für die Farben rot, grün und blau liegt;
    • 4. Auswählen des entsprechenden Pixels aus dem Videozwischenpuffer 603, welches in den Panoramazwischenpuffer 203 kopiert werden soll;
    • 5. Transformieren des im Videozwischenpuffer 603 gespeicherten Pixels und Zusammenfügen des Pixels mit dem Inhalt des Panoramazwischenpuffers 203; und
    • 6. Zurück zu Schritt 1.
  • Alternativ kann zuerst das gesamte Videobild und anschließend das nach dem Chroma-Key-Verfahren bewertete Panoramabild kopiert werden, dessen Pixelwerte außerhalb der Chroma-Key-Bereiche liegen. Auf diese Weise überschreiben die das Innere des Cockpits darstellenden Pixel einige der Pixel, welche die Videoaufnahmen der Starts und Landungen darstellen. Mit anderen Worten, die das Fenster des Cockpits darstellenden Pixel werden nicht geschrieben, sodass dieser Teil des Videobildes sichtbar bleibt.
  • Bei einer Ausführungsart werden die Chroma-Key-Werte jeweils als Wertebereiche dargestellt. Die Verwendung von Chroma-Key-Werten ist besonders dann von Bedeutung, wenn die Videodatenpakete in einem komprimierten Format vom Quellensystem zum Zielsystem übertragen werden. Normalerweise ändern sich bei der Übertragung komprimierter Daten oft die Werte durch das Codieren und Decodieren. Beim Beispiel des Flugsimulators kann der Prozess durch die Verwendung von Chroma-Key-Bereichen mit einem infolge einer fehlerhaften Dekomprimierung möglicherweise ungenauen Wert rechnen und einen genauen Farbwert rot, grün und blau des Pixels beibehalten.
  • Die Verwendung von Bereichen der Chroma-Key-Werte ist auch bei der Übertragung von Standbildern von Bedeutung oder wenn ein Komprimierungsverfahren verwendet wird, zum Beispiel das JPEG-Komprimierungsverfahren, bei dem die Werte vor und nach der Komprimierung naturgemäß voneinander abweichen.
  • Bei einer anderen Ausführungsart kann ein gesondertes Chroma-Key-Panoramabild erstellt werden. Dabei kann es sich um ein Bit im Originalpanoramabild oder um ein gesondertes Bild mit einem genau definierten Chroma-Key-Wert handeln. Dieses gesonderte Chroma-Key-Bild wird im Folgenden als Maske bezeichnet und kann das Schreiben des Farbbildes zulassen oder verhindern. Die Maske kann zum Beispiel für jedes ihrer Pixel einen oder zwei Farbwerte haben. Ein erster Chroma-Key-Wert bedeutet, dass die Maske transparent ist und das Videobild hindurchscheint. Ein zweiter Chroma-Key-Wert entspricht einer anderen Farbe und bedeutet, dass die Maske undurchlässig ist und somit die Betrachtung des Videobildes verhindert.
  • Beim Beispiel des Flugsimulators werden die Videopixel entsprechend dem Zustand der statischen Pixel im Panorama entweder gezeichnet oder nicht gezeichnet. Beim Beispiel der Videokonferenz werden die Videopixel je nach dem Wert der Pixel des bewegten Videos gezeichnet oder nicht gezeichnet, sodass die Maske in diesem Fall auch ein bewegtes Videobild sein kann.
  • Wenn eine Maske verwendet wird, kann diese dieselben Abmessungen wie das Panorama aufweisen. Bei Verwendung einer Maske beim Beispiel des Flugsimulators laufen die folgenden Schritte ab:
    • 1. Übergehen zum nächsten Pixel im Panoramazwischenpuffer 203;
    • 2. Durchführen der Panoramatransformation für dieses Pixel in Kasten 204; in diesem Schritt muss das richtige Pixel (i, j) im Panoramabild gefunden und in den Panoramazwischenpuffer 203 kopiert werden;
    • 3. Finden des entsprechenden Pixels in der Maske, wobei die Maske dieselben Abmessungen wie das Panoramabild aufweist und deshalb das Maskenpixel (i, j) gefunden wird;
    • 4. Wenn das Maskenpixel (i, j) nicht den Chroma-Key-Wert aufweist:
    • a. ist die Maske undurchsichtig, und das Video wird nicht gezeichnet; zurück zu Schritt 1;
    • b. ansonsten ist die Maske durchsichtig wie ein transparentes Cockpitfenster, sodass das Video gemäß den folgenden Schritten auf das Panoramabild gelegt wird;
    • 5. Berechnen des entsprechenden Pixels im Videozwischenpuffer 603, das in den Panoramazwischenpuffer 203 kopiert werden soll;
    • 6. Kopieren des Pixels aus dem Videozwischenpuffer 603 in den Panoramazwischenpuffer 203; und
    • 7. Zurück zu Schritt 1.
  • Wenn mit der Maske gearbeitet wird, braucht diese nicht dieselben Abmessungen wie das Panoramabild zu haben, da sie proportional angepasst werden kann.
  • Aus der obigen Erörterung ergibt sich, dass bei dem verknüpften Anzeigeprozess für ein Panoramabild und ein Videobild eine Bildszene in statische und dynamische Komponenten zerlegt wird. Das Panoramabild 201 ist die statische Komponente, während die dynamische Komponente über ein Netzwerk vom einem Server zu einem Client übertragen, wobei der Server vorzugsweise zuerst das Panoramabild 201 zum Client überträgt. Dann kann der Client die lokale Kopie des Panoramabildes 201 durchsuchen. Anschließend wird der Videodatenstrom 601 vom Server zum Client übertragen und in das Panoramabild eingefügt, sodass ein Gesamtbild entsteht.
  • Anschließend wird die Übertragung der Bilddaten fortgesetzt, indem abwechselnd die Bilddaten des statischen Panoramas und die Bilddaten der dynamischen Videobilder übertragen werden.

Claims (11)

  1. Verfahren zum Darstellen eines aus einer gespeicherten Umgebungskarte (201) einer Panoramaszene und aus Videodaten zusammengesetzten Gesamtbildes, wobei das Verfahren die folgenden Schritte umfasst: Auswählen einer Orientierungsrichtung der Panoramaszene (402); Ausgeben der Umgebungskarte entsprechend der gewählten Orientierungsrichtung der Panoramaszene, um für die gewählte Orientierungsrichtung ein erstes Bild zu erzeugen (202 bis 206); wobei das Ausgeben dadurch gekennzeichnet ist, dass es die folgenden Schritte umfasst: Empfangen (502) von Videodatenpaketen (601) mit Videobilddaten; Anordnen (504) der empfangenen Videobilddaten als eine Folge von Einzelbildern; Auswählen (506) einer Folge von Videobilddaten zum Anzeigen; Umwandeln (708) der ausgewählten Videobilddaten entsprechend der gewählten Orientierungsrichtung der Bildszene; synchrones Zusammenfügen (710) der umgewandelten Bilddaten und des ersten Bildes zu einem Gesamtbild für die gewählte Orientierungsrichtung der Bildszene; und Anzeigen des Gesamtbildes (210).
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die umgewandelten Videobilddaten in einem Videopufferspeicher (605) gespeichert werden und der Schritt des synchronen Zusammenfügens ferner den Schritt des Abrufens der umgewandelten Videobilddaten aus dem Videopufferspeicher und das Einfügen der umgewandelten Videobilddaten in das erste Videobild umfasst, um das Gesamtbild zu erzeugen.
  3. Verfahren nach Anspruch 1 oder 2, bei welchem der Schritt des Umwandelns der ausgewählten Videobilddaten zumindest die Maßstabsänderung, das Beschneiden und Dehnen der Videobilddaten umfasst.
  4. Verfahren nach Anspruch 3, bei welchem der Schritt des Umwandelns der ausgewählten Videobilddaten die Maßstabsänderung der Videobilddaten in der Weise umfasst, dass die Videobilddaten dem ersten Bild proportional sind.
  5. Verfahren nach einem der vorigen Ansprüche, welches ferner dadurch gekennzeichnet ist, dass der Schritt des Auswählens das Bewerten eines Wertes eines Zeigers auf einen Speicherplatz und das Abrufen des Inhalts dieses Speicherplatzes umfasst.
  6. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass der Schritt des Einfügens ferner einen Schritt des Übereinanderlegens der umgewandelten Videobilddaten und des ersten Bildes zu einem Gesamtbild umfasst.
  7. Bildverarbeitungssystem zum Anzeigen eines aus einer gespeicherten Umgebungskarte (201) einer Panoramaszene und aus Videodaten zusammengesetzten Gesamtbildes, wobei das System Folgendes umfasst: ein Mittel zum Wählen einer Orientierungsrichtung der Panoramaszene (402); und Mittel (202 bis 205) zum Ausgeben der Umgebungskarte entsprechend der gewählten Orientierungsrichtung der Panoramaszene, um für die gewählte Orientierungsrichtung ein erstes Bild zu erzeugen, dadurch gekennzeichnet, dass die Mittel Folgendes umfassen: ein Mittel zum Empfangen (602) von Videodatenpaketen (601) mit Videobilddaten; ein Mittel zum Auswählen einer Folge von Videobilddaten zum Anzeigen; ein Mittel zum Umwandeln (708) der ausgewählten Videobilddaten entsprechend der gewählten Orientierungsrichtung der Bildszene; ein Mittel zum synchronen Zusammenfügen (710) der umgewandelten Videobilddaten und des ersten Bildes zu einem Gesamtbild für die gewählte Orientierungsrichtung der Bildszene; und ein Mittel zum Anzeigen des Gesamtbildes (210).
  8. System nach Anspruch 7, dadurch gekennzeichnet, dass das Mittel zum Empfangen der Videodatenpakete ein Mittel zum kontinuierlichen Empfangen von Videodatenpaketen mit Bilddaten und Tondaten umfasst.
  9. System nach Anspruch 7 oder 8, welches ferner einen oder mehrere Videopufferspeicher (602, 603, 605) umfasst.
  10. System nach Anspruch 7, 8 oder 9, welches ferner ein Mittel zum Einfügen der umgewandelten Videobilddaten in das erste Bild umfasst, um das Gesamtbild zu erzeugen.
  11. System nach einem der Ansprüche 7 bis 10, welches ferner ein Mittel zur Maßstabsänderung, zum Beschneiden und/oder zum Dehnen der Videobilddaten umfasst.
DE69831924T 1998-01-15 1998-12-21 Verfahren und Vorrichtung zur Anzeige von Panoramen mit Videodaten Expired - Lifetime DE69831924T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/007,729 US6356297B1 (en) 1998-01-15 1998-01-15 Method and apparatus for displaying panoramas with streaming video
US7729 1998-01-15

Publications (2)

Publication Number Publication Date
DE69831924D1 DE69831924D1 (de) 2005-11-24
DE69831924T2 true DE69831924T2 (de) 2006-06-29

Family

ID=21727825

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69831924T Expired - Lifetime DE69831924T2 (de) 1998-01-15 1998-12-21 Verfahren und Vorrichtung zur Anzeige von Panoramen mit Videodaten

Country Status (5)

Country Link
US (1) US6356297B1 (de)
EP (1) EP0930584B1 (de)
JP (1) JP3177221B2 (de)
KR (1) KR100335306B1 (de)
DE (1) DE69831924T2 (de)

Families Citing this family (117)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001231029A (ja) * 2000-02-18 2001-08-24 Minolta Co Ltd 遠隔カメラシステム
GB2360413A (en) * 2000-03-16 2001-09-19 Lee Scott Friend Wide angle parabolic imaging and image mapping apparatus
US6559846B1 (en) * 2000-07-07 2003-05-06 Microsoft Corporation System and process for viewing panoramic video
US7095905B1 (en) * 2000-09-08 2006-08-22 Adobe Systems Incorporated Merging images to form a panoramic image
US6895126B2 (en) 2000-10-06 2005-05-17 Enrico Di Bernardo System and method for creating, storing, and utilizing composite images of a geographic location
CA2425482C (en) * 2000-10-11 2015-12-01 United Video Properties, Inc. Systems and methods for caching data in media-on-demand systems
FR2817441B1 (fr) * 2000-11-29 2004-01-16 Thomson Multimedia Sa Methode de visualisation d'une sequence video dans une fenetre d'un panorama
US6681004B2 (en) 2001-03-22 2004-01-20 Koninklijke Philips Electronics N.V. Telephone memory aid
US7006707B2 (en) 2001-05-03 2006-02-28 Adobe Systems Incorporated Projecting images onto a surface
US6894690B2 (en) 2001-06-20 2005-05-17 Engineering Technology Associates, Inc. Method and apparatus for capturing and viewing a sequence of 3-D images
FR2828754A1 (fr) * 2001-08-14 2003-02-21 Koninkl Philips Electronics Nv Visualisation d'un montage d'une video panoramique par application de commandes de navigation a ladite video panoramique
US7103236B2 (en) * 2001-08-28 2006-09-05 Adobe Systems Incorporated Methods and apparatus for shifting perspective in a composite image
US6970595B1 (en) * 2002-03-12 2005-11-29 Sonic Solutions, Inc. Method and system for chroma key masking
US20030179216A1 (en) * 2002-03-22 2003-09-25 Enroute, Inc. Multi-resolution video-caching scheme for interactive and immersive videos
US20040001091A1 (en) * 2002-05-23 2004-01-01 International Business Machines Corporation Method and apparatus for video conferencing system with 360 degree view
US7082572B2 (en) * 2002-12-30 2006-07-25 The Board Of Trustees Of The Leland Stanford Junior University Methods and apparatus for interactive map-based analysis of digital video content
US7352374B2 (en) * 2003-04-07 2008-04-01 Clairvoyante, Inc Image data set with embedded pre-subpixel rendered image
JP5138930B2 (ja) * 2003-07-11 2013-02-06 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ディスプレイ装置のための封入構造
US20050025465A1 (en) * 2003-08-01 2005-02-03 Danieli Damon V. Enhanced functionality for audio/video content playback
US7118228B2 (en) * 2003-11-04 2006-10-10 Hewlett-Packard Development Company, L.P. Image display system
CN1304938C (zh) * 2004-08-07 2007-03-14 马堃 一种静态环视图像的动态显示方法及其浏览器
KR100677142B1 (ko) * 2004-08-13 2007-02-02 경희대학교 산학협력단 파노라마 영상의 움직임 추정 및 보상
AU2005200888B2 (en) 2005-02-28 2009-01-08 Canon Kabushiki Kaisha Visualising camera position in recorded video
US7840032B2 (en) * 2005-10-04 2010-11-23 Microsoft Corporation Street-side maps and paths
US7660464B1 (en) 2005-12-22 2010-02-09 Adobe Systems Incorporated User interface for high dynamic range merge image selection
US7860343B2 (en) * 2006-04-10 2010-12-28 Nokia Corporation Constructing image panorama using frame selection
US20080043020A1 (en) * 2006-08-18 2008-02-21 Microsoft Corporation User interface for viewing street side imagery
US8103125B2 (en) * 2007-03-13 2012-01-24 International Business Machines Corporation Generating an amalgamated image including a static image and a dynamic image
WO2008147561A2 (en) * 2007-05-25 2008-12-04 Google Inc. Rendering, viewing and annotating panoramic images, and applications thereof
US8207962B2 (en) * 2007-06-18 2012-06-26 Mediatek Inc. Stereo graphics system based on depth-based image rendering and processing method thereof
WO2009003169A2 (en) * 2007-06-27 2008-12-31 University Of Florida Research Foundation, Inc. Display-based interactive simulation with dynamic panorama
WO2009017331A1 (en) * 2007-07-29 2009-02-05 Nanophotonics Co., Ltd. Method and apparatus for obtaining panoramic and rectilinear images using rotationally symmetric wide-angle lens
KR100882011B1 (ko) * 2007-07-29 2009-02-04 주식회사 나노포토닉스 회전 대칭형의 광각 렌즈를 이용하여 전방위 영상을 얻는 방법 및 장치
WO2009017332A1 (en) * 2007-07-29 2009-02-05 Nanophotonics Co., Ltd. Methods of obtaining panoramic images using rotationally symmetric wide-angle lenses and devices thereof
US8127235B2 (en) 2007-11-30 2012-02-28 International Business Machines Corporation Automatic increasing of capacity of a virtual space in a virtual world
US20090164919A1 (en) 2007-12-24 2009-06-25 Cary Lee Bates Generating data for managing encounters in a virtual world environment
GB2456802A (en) * 2008-01-24 2009-07-29 Areograph Ltd Image capture and motion picture generation using both motion camera and scene scanning imaging systems
JP5159375B2 (ja) 2008-03-07 2013-03-06 インターナショナル・ビジネス・マシーンズ・コーポレーション メタバースにおけるオブジェクトの真贋判断システム、方法及びそのコンピュータ・プログラム
US9205328B2 (en) 2010-02-18 2015-12-08 Activision Publishing, Inc. Videogame system and method that enables characters to earn virtual fans by completing secondary objectives
US8717404B2 (en) * 2010-04-27 2014-05-06 Lifesize Communications, Inc. Recording a videoconference based on recording configurations
US9682324B2 (en) 2010-05-12 2017-06-20 Activision Publishing, Inc. System and method for enabling players to participate in asynchronous, competitive challenges
US9635251B2 (en) 2010-05-21 2017-04-25 Qualcomm Incorporated Visual tracking using panoramas on mobile devices
US8933986B2 (en) 2010-05-28 2015-01-13 Qualcomm Incorporated North centered orientation tracking in uninformed environments
US9325804B2 (en) * 2010-11-08 2016-04-26 Microsoft Technology Licensing, Llc Dynamic image result stitching
US8548269B2 (en) 2010-12-17 2013-10-01 Microsoft Corporation Seamless left/right views for 360-degree stereoscopic video
SG11201400429RA (en) 2011-09-08 2014-04-28 Paofit Holdings Pte Ltd System and method for visualizing synthetic objects withinreal-world video clip
JP2013101525A (ja) * 2011-11-09 2013-05-23 Sony Corp 画像処理装置および方法、並びにプログラム
US9153073B2 (en) * 2012-05-23 2015-10-06 Qualcomm Incorporated Spatially registered augmented video
US9723034B2 (en) * 2012-12-13 2017-08-01 Mitel Networks Corporation Online meeting system and method
US10137376B2 (en) 2012-12-31 2018-11-27 Activision Publishing, Inc. System and method for creating and streaming augmented game sessions
DE102013201377A1 (de) * 2013-01-29 2014-07-31 Bayerische Motoren Werke Aktiengesellschaft Verfahren und Vorrichtung zum Verarbeiten von 3d-Bilddaten
US10482777B2 (en) 2013-02-22 2019-11-19 Fuji Xerox Co., Ltd. Systems and methods for content analysis to support navigation and annotation in expository videos
US9892761B2 (en) 2013-02-22 2018-02-13 Fuji Xerox Co., Ltd. Systems and methods for creating and using navigable spatial overviews for video
WO2015036003A1 (en) * 2013-09-14 2015-03-19 Taskin Sakarya Virtual transportation machine
US10126913B1 (en) * 2013-11-05 2018-11-13 Google Llc Interactive digital map including context-based photographic imagery
US9742995B2 (en) 2014-03-21 2017-08-22 Microsoft Technology Licensing, Llc Receiver-controlled panoramic view video share
US10286326B2 (en) 2014-07-03 2019-05-14 Activision Publishing, Inc. Soft reservation system and method for multiplayer video games
US9883101B1 (en) * 2014-07-23 2018-01-30 Hoyos Integrity Corporation Providing a real-time via a wireless communication channel associated with a panoramic video capture device
US9917877B2 (en) 2014-10-20 2018-03-13 Google Llc Streaming the visible parts of a spherical video
US9918082B2 (en) 2014-10-20 2018-03-13 Google Llc Continuous prediction domain
WO2016064862A1 (en) * 2014-10-20 2016-04-28 Google Inc. Continuous prediction domain
US9918094B2 (en) 2014-10-20 2018-03-13 Google Llc Compressing and representing multi-view video
US11351466B2 (en) 2014-12-05 2022-06-07 Activision Publishing, Ing. System and method for customizing a replay of one or more game events in a video game
US10118099B2 (en) 2014-12-16 2018-11-06 Activision Publishing, Inc. System and method for transparently styling non-player characters in a multiplayer video game
US10315113B2 (en) 2015-05-14 2019-06-11 Activision Publishing, Inc. System and method for simulating gameplay of nonplayer characters distributed across networked end user devices
US10286314B2 (en) 2015-05-14 2019-05-14 Activision Publishing, Inc. System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session
US10486068B2 (en) 2015-05-14 2019-11-26 Activision Publishing, Inc. System and method for providing dynamically variable maps in a video game
US10213682B2 (en) 2015-06-15 2019-02-26 Activision Publishing, Inc. System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game
US9704298B2 (en) * 2015-06-23 2017-07-11 Paofit Holdings Pte Ltd. Systems and methods for generating 360 degree mixed reality environments
US10471348B2 (en) 2015-07-24 2019-11-12 Activision Publishing, Inc. System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks
US11185784B2 (en) 2015-10-08 2021-11-30 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10099140B2 (en) 2015-10-08 2018-10-16 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10232272B2 (en) 2015-10-21 2019-03-19 Activision Publishing, Inc. System and method for replaying video game streams
US10245509B2 (en) 2015-10-21 2019-04-02 Activision Publishing, Inc. System and method of inferring user interest in different aspects of video game streams
US10376781B2 (en) 2015-10-21 2019-08-13 Activision Publishing, Inc. System and method of generating and distributing video game streams
US10694352B2 (en) 2015-10-28 2020-06-23 Activision Publishing, Inc. System and method of using physical objects to control software access
KR102576908B1 (ko) * 2016-02-16 2023-09-12 삼성전자주식회사 동적 파노라마 기능을 제공하는 방법 및 장치
US10226703B2 (en) 2016-04-01 2019-03-12 Activision Publishing, Inc. System and method of generating and providing interactive annotation items based on triggering events in a video game
US10226701B2 (en) 2016-04-29 2019-03-12 Activision Publishing, Inc. System and method for identifying spawn locations in a video game
US10179289B2 (en) 2016-06-21 2019-01-15 Activision Publishing, Inc. System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching
US10573065B2 (en) 2016-07-29 2020-02-25 Activision Publishing, Inc. Systems and methods for automating the personalization of blendshape rigs based on performance capture data
US10709981B2 (en) 2016-11-17 2020-07-14 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible barrier-aware heatmaps
US10463964B2 (en) 2016-11-17 2019-11-05 Activision Publishing, Inc. Systems and methods for the real-time generation of in-game, locally accessible heatmaps
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
US10055880B2 (en) 2016-12-06 2018-08-21 Activision Publishing, Inc. Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional
US10861079B2 (en) 2017-02-23 2020-12-08 Activision Publishing, Inc. Flexible online pre-ordering system for media
US10818060B2 (en) 2017-09-05 2020-10-27 Activision Publishing, Inc. Systems and methods for guiding motion capture actors using a motion reference system
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation in multiplayer gaming environments
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US10974150B2 (en) 2017-09-27 2021-04-13 Activision Publishing, Inc. Methods and systems for improved content customization in multiplayer gaming environments
US10463971B2 (en) 2017-12-06 2019-11-05 Activision Publishing, Inc. System and method for validating video gaming data
US10537809B2 (en) 2017-12-06 2020-01-21 Activision Publishing, Inc. System and method for validating video gaming data
US10981051B2 (en) 2017-12-19 2021-04-20 Activision Publishing, Inc. Synchronized, fully programmable game controllers
US10596471B2 (en) 2017-12-22 2020-03-24 Activision Publishing, Inc. Systems and methods for enabling audience participation in multi-player video game play sessions
US11278813B2 (en) 2017-12-22 2022-03-22 Activision Publishing, Inc. Systems and methods for enabling audience participation in bonus game play sessions
US10864443B2 (en) 2017-12-22 2020-12-15 Activision Publishing, Inc. Video game content aggregation, normalization, and publication systems and methods
US11263670B2 (en) 2018-11-19 2022-03-01 Activision Publishing, Inc. Systems and methods for dynamically modifying video game content based on non-video gaming content being concurrently experienced by a user
US11192028B2 (en) 2018-11-19 2021-12-07 Activision Publishing, Inc. Systems and methods for the real-time customization of video game content based on player data
US11323754B2 (en) 2018-11-20 2022-05-03 At&T Intellectual Property I, L.P. Methods, devices, and systems for updating streaming panoramic video content due to a change in user viewpoint
US11115712B2 (en) 2018-12-15 2021-09-07 Activision Publishing, Inc. Systems and methods for indexing, searching for, and retrieving digital media
US11679330B2 (en) 2018-12-18 2023-06-20 Activision Publishing, Inc. Systems and methods for generating improved non-player characters
US11305191B2 (en) 2018-12-20 2022-04-19 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11344808B2 (en) 2019-06-28 2022-05-31 Activision Publishing, Inc. Systems and methods for dynamically generating and modulating music based on gaming events, player profiles and/or player reactions
US11097193B2 (en) 2019-09-11 2021-08-24 Activision Publishing, Inc. Methods and systems for increasing player engagement in multiplayer gaming environments
US11423605B2 (en) 2019-11-01 2022-08-23 Activision Publishing, Inc. Systems and methods for remastering a game space while maintaining the underlying game simulation
US11712627B2 (en) 2019-11-08 2023-08-01 Activision Publishing, Inc. System and method for providing conditional access to virtual gaming items
US11537209B2 (en) 2019-12-17 2022-12-27 Activision Publishing, Inc. Systems and methods for guiding actors using a motion capture reference system
US11420122B2 (en) 2019-12-23 2022-08-23 Activision Publishing, Inc. Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay
US11563774B2 (en) 2019-12-27 2023-01-24 Activision Publishing, Inc. Systems and methods for tracking and identifying phishing website authors
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
US11351459B2 (en) 2020-08-18 2022-06-07 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values
US11724188B2 (en) 2020-09-29 2023-08-15 Activision Publishing, Inc. Methods and systems for selecting a level of detail visual asset during the execution of a video game
US11833423B2 (en) 2020-09-29 2023-12-05 Activision Publishing, Inc. Methods and systems for generating level of detail visual assets in a video game
US11717753B2 (en) 2020-09-29 2023-08-08 Activision Publishing, Inc. Methods and systems for generating modified level of detail visual assets in a video game
US11439904B2 (en) 2020-11-11 2022-09-13 Activision Publishing, Inc. Systems and methods for imparting dynamic and realistic movement to player-controlled avatars in video games
US11853439B2 (en) 2020-12-30 2023-12-26 Activision Publishing, Inc. Distributed data storage system providing enhanced security
US11794107B2 (en) 2020-12-30 2023-10-24 Activision Publishing, Inc. Systems and methods for improved collision detection in video games

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2256568B (en) 1991-06-05 1995-06-07 Sony Broadcast & Communication Image generation system for 3-D simulations
US5396583A (en) 1992-10-13 1995-03-07 Apple Computer, Inc. Cylindrical to planar image mapping using scanline coherence
US5495576A (en) * 1993-01-11 1996-02-27 Ritchey; Kurtis J. Panoramic image based virtual reality/telepresence audio-visual system and method
US5714997A (en) * 1995-01-06 1998-02-03 Anderson; David P. Virtual reality television system
US5729471A (en) * 1995-03-31 1998-03-17 The Regents Of The University Of California Machine dynamic selection of one video camera/image of a scene from multiple video cameras/images of the scene in accordance with a particular perspective on the scene, an object in the scene, or an event in the scene
JPH11509064A (ja) * 1995-07-10 1999-08-03 サーノフ コーポレイション 画像を表現し組み合わせる方法とシステム
US5912670A (en) * 1996-08-05 1999-06-15 International Business Machines Corporation Method and apparatus for overlaying a bit map image on an environment map
US5923334A (en) * 1996-08-05 1999-07-13 International Business Machines Corporation Polyhedral environment map utilizing a triangular data structure
US5793895A (en) * 1996-08-28 1998-08-11 International Business Machines Corporation Intelligent error resilient video encoder

Also Published As

Publication number Publication date
JP3177221B2 (ja) 2001-06-18
JPH11296667A (ja) 1999-10-29
EP0930584A2 (de) 1999-07-21
EP0930584A3 (de) 2002-11-06
KR100335306B1 (ko) 2002-05-06
KR19990067722A (ko) 1999-08-25
EP0930584B1 (de) 2005-10-19
US6356297B1 (en) 2002-03-12
DE69831924D1 (de) 2005-11-24

Similar Documents

Publication Publication Date Title
DE69831924T2 (de) Verfahren und Vorrichtung zur Anzeige von Panoramen mit Videodaten
DE69534751T2 (de) Bilddatenerzeugungsverfahren, Bilddatenverarbeitungsvorrichtung und Aufzeichnungsmedium
DE10296401B4 (de) Verbund-Rendering von 3-D-Graphikobjekten
DE19825302B4 (de) System zur Einrichtung einer dreidimensionalen Abfallmatte, welche eine vereinfachte Einstellung räumlicher Beziehungen zwischen realen und virtuellen Szeneelementen ermöglicht
DE4225872C2 (de) Verfahren zum Kennzeichnen und Identifizieren ausgewählter Gebiete in Bildern
DE60022610T2 (de) Verfahren zur Animationskodierung in einer Bilddatei
DE69925033T2 (de) Verfahren und system zur erzeugung von 3d modellen aus sequentiellen 2d bilddaten
DE69628662T2 (de) Bildumwandlungs- und kodierungstechniken
DE69333508T2 (de) Vorrichtung und Verfahren zur Verarbeitung von Videosignalen
DE60120474T2 (de) Rasterung von dreidimensionalen bildern
DE69635347T2 (de) Verfahren und system zum wiedergeben und kombinieren von bildern
DE60115034T2 (de) Verfeinerung von dreidimensionalen polygonalen gitterdaten
DE60109434T2 (de) Systeme und verfahren zur erzeugung von visuellen darstellungen von graphischen daten
DE69831961T2 (de) Bildobjekterzeugungsverfahren für objektbasierte kodierungssysteme unter verwendung von masken und gerundeten mittelwerten
DE60300788T2 (de) Bild mit Feldtiefe aus Z-Pufferbilddaten und Alphamischung
US5533181A (en) Image animation for visual training in a simulator
DE10197255T5 (de) VTV-System
DE112007002991T5 (de) Computergraphikschattenvolumen unter Verwendung von hierarchischem Okklusions-Culling
DE60301303T2 (de) Videoverarbeitung
DE202012013450U1 (de) Beschriftungspositionierbildwiedergabesystem zur Reduzierung des Kriechens bei Zoom-Aktivitäten
DE19825303A1 (de) System für virtuelle Szenen mit mehreren Kameras unter Verwendung von Standbildspeicherrahmenpuffern für jede Kamera
GB2157122A (en) Image composition system
EP2172032B1 (de) Verfahren zur bearbeitung eines räumlichen bildes
DE60030401T2 (de) Anzeigetechniken für dreidimensionale virtuelle Realität
DE60204508T2 (de) Bildverarbeitung für 3-D Spiele zum Zeichnen von Randlinien

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8328 Change in the person/name/address of the agent

Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7