Bildbasiertes Rendering fur die¨ Navigation in virtuellen...

78
Bildbasiertes Rendering f ¨ ur die Navigation in virtuellen Welten Diplomarbeit vorgelegt von Walter Schwebs Institut f ¨ ur Computervisualistik Arbeitsgruppe Computergrafik Betreuer : Dr. Peter Eisert Pr¨ ufer: Prof. Dr. Stefan M¨ uller Juli 2005

Transcript of Bildbasiertes Rendering fur die¨ Navigation in virtuellen...

Page 1: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Bildbasiertes Rendering fur dieNavigation in virtuellen Welten

Diplomarbeit

vorgelegt von

Walter Schwebs

Institut fur Computervisualistik

Arbeitsgruppe Computergrafik

Betreuer : Dr. Peter Eisert

Prufer: Prof. Dr. Stefan Muller

Juli 2005

Page 2: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Erkl arung

Ich erklare hiermit, dass ich diese Diplomarbeit selbstandig verfasst, noch nicht ander-weitig fur andere Prufungszwecke vorgelegt, keine anderen als die angegebenen Quellenund Hilfsmittel benutzt, sowie wortliche und sinngemaße Zitate als solche gekennzeich-net habe.

Berlin, den 18.7.05

Page 3: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3

Danksagung

An dieser Stelle richtet sich mein Dank an all diejenigen, die zum Gelingen dieser Ar-beit beigetragen haben. Hiermit bedanke ich mich besonders bei meinen Betreuern Dr.Peter Eisert und Jurgen Rurainsky fur die gute Betreuung meiner Diplomarbeit. Bedan-ken mochte ich mich auch bei meinem Prufer, Prof. Dr. Muller, fur Anregungen undRatschlage.

Page 4: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

4

Page 5: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Inhaltsverzeichnis

1 Einleitung 11.1 Motivation und Anforderung . . . . . . . . . . . . . . . . . . . . . . . 11.2 Gliederung der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . .2

2 Stand der Forschung 32.1 Freie Navigation in virtuellen Welten . . . . . . . . . . . . . . . . . . .32.2 Kalibriermethoden fur catadioptrische Kameras . . . . . . . . . . . . .5

3 Grundlagen 73.1 Bildbasiertes Rendering . . . . . . . . . . . . . . . . . . . . . . . . . .7

3.1.1 Die plenoptische Funktion . . . . . . . . . . . . . . . . . . . .113.1.2 Beispiele des IBR . . . . . . . . . . . . . . . . . . . . . . . . .143.1.3 Panoramen . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

3.2 Omnidirektionale Kameras . . . . . . . . . . . . . . . . . . . . . . . .233.2.1 Catadioptrischer Sensor . . . . . . . . . . . . . . . . . . . . .243.2.2 Spiegel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243.2.3 Verarbeitung omnidirektionaler Aufnahmen . . . . . . . . . . .25

4 Praktische Umsetzung 294.1 Verwendete Hardware-Komponenten . . . . . . . . . . . . . . . . . . .294.2 Verwendete Software-Komponenten . . . . . . . . . . . . . . . . . . .304.3 Aufnahmeprozess . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30

5 Kamerakalibrierung 315.1 Kameramodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

5.1.1 Verwendetes Kameramodell . . . . . . . . . . . . . . . . . . .325.2 Kalibriermethoden . . . . . . . . . . . . . . . . . . . . . . . . . . . .335.3 Kalibrierung catadioptrischer Sensoren . . . . . . . . . . . . . . . . . .34

5.3.1 Bestimmung der Spiegelgeometrie . . . . . . . . . . . . . . . .345.4 Kalibrierung der Kamera . . . . . . . . . . . . . . . . . . . . . . . . .43

5.4.1 Analyse durch Synthese . . . . . . . . . . . . . . . . . . . . .43

Page 6: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

6 INHALTSVERZEICHNIS

5.4.2 Kalibrierung mittels Analyse durch Synthese . . . . . . . . . .435.4.3 Beschreibung des Algorithmus . . . . . . . . . . . . . . . . . .44

6 Freie Navigation 496.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .496.2 Generierung perspektivischer Ansichten aus Panoramaaufnahmen . . .506.3 Ortsbestimmung der Kamera . . . . . . . . . . . . . . . . . . . . . . .526.4 Interpolation neuer Ansichten . . . . . . . . . . . . . . . . . . . . . . .526.5 Freiheitsgrade der virtuellen Kamera . . . . . . . . . . . . . . . . . . .59

7 Ergebnisse 617.1 Bedienung des Programms . . . . . . . . . . . . . . . . . . . . . . . .617.2 Ergebnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61

8 Zusammenfassung und Ausblick 65

Page 7: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Abbildungsverzeichnis

2.1 Beschrankung der Exploration auf Augenhohe . . . . . . . . . . . . . . 42.2 Plenoptic Stitching . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.3 Beisiel zumsingle viewpoint constraint . . . . . . . . . . . . . . . . . 6

3.1 Verschiedene Renderingmethoden im Vergleich nach [Slusallek 1998] .73.2 Generierung neuer Ansichten aus Referenzbildern . . . . . . . . . . . .83.3 Modellierung aus Bildern . . . . . . . . . . . . . . . . . . . . . . . . .93.4 Kontinuum der IBR-Methoden . . . . . . . . . . . . . . . . . . . . . .103.5 Die plenoptische Funktion als Bundel von Strahlen . . . . . . . . . . .113.6 Die plenoptische Funktion . . . . . . . . . . . . . . . . . . . . . . . .123.7 Prinzip eines Lichtfeldes . . . . . . . . . . . . . . . . . . . . . . . . .153.8 Generierung neuer Ansichten . . . . . . . . . . . . . . . . . . . . . . .153.9 Beispiel zur Generierung neuer Ansichten bei Lichtfeldern . . . . . . .163.10 Generierung neuer Ansichten durch konzentrische Mosaike . . . . . . .163.11 R. Barkers Panorama . . . . . . . . . . . . . . . . . . . . . . . . . . .173.12 Zylindrisches Panorama . . . . . . . . . . . . . . . . . . . . . . . . . .183.13 Die Mona Lisa im Original (links), gespiegelt (rechts) und gemorpht

(mitte) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193.14 Prinzip des Warping . . . . . . . . . . . . . . . . . . . . . . . . . . . .193.15 Beispiel zum Warping . . . . . . . . . . . . . . . . . . . . . . . . . . .193.16 Ein zylindrisches Panorama . . . . . . . . . . . . . . . . . . . . . . . .213.17 Ein kubisches Panorama . . . . . . . . . . . . . . . . . . . . . . . . .213.18 Eine Panoramaansicht . . . . . . . . . . . . . . . . . . . . . . . . . . .223.19 Prinzip des Stitching . . . . . . . . . . . . . . . . . . . . . . . . . . .223.20 Beispiel zum Stitching . . . . . . . . . . . . . . . . . . . . . . . . . .223.21 Verschiedene Sichtfelder, a) Sichtfeld einer konventionellen Kamera b)

hemispharisches Sichtfeld c) Sichtfeld einer Panoramakamera . . . . .233.22 Ein catadioptrischer Sensor . . . . . . . . . . . . . . . . . . . . . . . .243.23 (a) Parabolische, (b) elliptische, and (c) hyperbolische Spiegel erlauben

eine Zentral-Projektion durch die reflektierten Strahlen. . . . . . . . . .253.24 Generierung von Panoramaansichten aus omnidirektionalen Bildern . .26

Page 8: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

8 ABBILDUNGSVERZEICHNIS

3.25 Aufnahme eines catadioptrischen Sensors . . . . . . . . . . . . . . . .273.26 Verarbeitete Aufnahme eines catadioptrischen Sensors . . . . . . . . .27

4.1 Verwendete Kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . .304.2 Verwendeter Spiegel . . . . . . . . . . . . . . . . . . . . . . . . . . .30

5.1 Die perspektivische und orthographische Projektion . . . . . . . . . . .325.2 Verwendetes Kameramodell . . . . . . . . . . . . . . . . . . . . . . .325.3 Ubergang vom Welt- in Kamerakoordinatensystem (a) und vom Kamera-

in Bildkoordinatensystem (b), beschrieben durch die extrinsischen undintrinsischen Parameter. . . . . . . . . . . . . . . . . . . . . . . . . . .34

5.4 Aufnahme eines Kalibrierkopers mit einer omnidirektionalen Kamera .365.5 Kalibrierkoper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .365.6 Ein Pixel im Bild ist die Abbildung eines Punktes in der aufgenomme-

nen Szene nach Reflektion an der Spiegeloberflache . . . . . . . . . . . 375.7 Simulierter Aufnahmeprozess mit einer spiegelnden B-Spline Flache . . 385.8 Simulierter Aufnahmeprozess mit einer spiegelnden Kugel . . . . . . .385.9 B-Spline Tensorproduktflache . . . . . . . . . . . . . . . . . . . . . . 395.10 Initialisierung der Spiegelapproximation . . . . . . . . . . . . . . . . .425.11 Interpolationspunkte nach einer Iteration . . . . . . . . . . . . . . . . .425.12 Interpolationspunkte nach funf Iterationen . . . . . . . . . . . . . . . . 425.13 Analyse durch Synthese . . . . . . . . . . . . . . . . . . . . . . . . . .445.14 Analyse-durch-Synthese Schleife . . . . . . . . . . . . . . . . . . . . .45

6.1 Apples QuickTime VR . . . . . . . . . . . . . . . . . . . . . . . . . .496.2 Virtuelle Kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . . .506.3 omnidirektionale Aufnahme . . . . . . . . . . . . . . . . . . . . . . .516.4 Panoramaansicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . .516.5 perspektivische Ansicht . . . . . . . . . . . . . . . . . . . . . . . . . .516.6 Farb-Morph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .536.7 Ausgangsbilder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .546.8 Interpolation zwischen 1cm entfernten Referenzbildern . . . . . . . . .556.9 Interpolation zwischen 5cm entfernten Referenzbildern . . . . . . . . .566.10 Interpolation zwischen 15cm entfernten Referenzbildern . . . . . . . .576.11 Ausgangsbild . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .596.12 Detailbetrachtung . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59

7.1 Screenshots einer Kamerafahrt . . . . . . . . . . . . . . . . . . . . . .617.2 Screenshots einer Kamerafahrt . . . . . . . . . . . . . . . . . . . . . .627.3 Screenshots einer Kamerafahrt . . . . . . . . . . . . . . . . . . . . . .637.4 Screenshots einer Kamerafahrt . . . . . . . . . . . . . . . . . . . . . .647.5 Screenshots einer Kamerafahrt . . . . . . . . . . . . . . . . . . . . . .64

Page 9: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Tabellenverzeichnis

3.1 Klassifikation der plenoptischen Funktion . . . . . . . . . . . . . . . .13

6.1 Berechnung eines Zwischenbildes beim Farb-Morphing . . . . . . . . .53

Page 10: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

0 TABELLENVERZEICHNIS

*

Page 11: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 1

Einleitung

1.1 Motivation und Anforderung

Das Zusammenwachsen von Konzepten der Computergrafik und der Computer Visionhat eine Familie von Techniken hervorgebracht, die unter dem Namenbildbasierte Mo-dellierung und Renderingbekannt sind, die in vielen Anwendungsgebieten enorme Vor-teile bieten. Denn trotz großer Fortschritte der Computergrafik konnen fotorealistischeBilder mit konventionellen Rendertechniken, fur komplexe Szenen, nur mit sehr hohemAufwand erzeugt werden. Das bildbasierte Rendering nutzt einen anderen Ansatz zurErzeugung realistischer Computergrafik. So konnen im Kontrast zu konventionellenGeometrie-basierten Rendertechniken, qualitativ hochwertige Ansichten mit relativ ge-ringem Berechnungsaufwand erzeugt werden, unabhangig von der Szenenkomplexitat.

Diese Diplomarbeit bietet einen Einblick in den Grenzbereich zwischen Computergra-fik und Computer Vision, indem Probleme wie Szenendarstellung, Surface Fitting undKalibrierung komplexer optischer Systeme mit Hilfe bildbasierter Methoden gelost wer-den um schließlich eine freie Navigation in virtuellen Welten zu ermoglichen. Als Inputdieser Verfahren dienen Aufnahmen eines catadioptrischen Kamerasystems, die einenweiteren Schwerpunkt dieser Arbeit bilden.Unter einer Catadioptrische Kamera versteht man ein System, das es einem Betrachterermoglicht, eine aufgenommene Szene aus verschiedenen Blickrichtungen zu erfassen.

Die Aufgabenstellung dieser Arbeit ist die Implementierung eines Verfahrens zur bild-basierten Interpolation neuer Ansichten aus mehreren Panoramaaufnahmen. Hierzu istin einem ersten Schritt das vorhandene Spiegel-Kamerasystem zu kalibrieren, damit diegenaue Abbildung von Sichtstrahlen auf die Bildebene bekannt ist, um schließlich neueAnsichten zu interpolieren.

Page 12: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

2 Einleitung

1.2 Gliederung der Arbeit

Ausgehend von genannter Aufgabenstellung gliedert sich diese Diplomarbeit folgen-dermaßen.Kapitel 2 erortert den Stand der Forschung und bietet eine Einfuhrung, der fur dieseDiplomarbeit wesentlichen Themenbereiche.Kapitel 3 gibt einenUberblickuber die grundlegenden Begriffe und Verfahren des Bild-basierten Rendering und Catadioptrischer Systeme.Kapitel 4 beschreibt die Systemvoraussetzungen.Kapitel 5 befasst sich mit der Kalibrierung der catadioptrischen Kamera.Kapitel 6 geht auf die Realisierung der freien Navigation ein.Kapitel 7 bietet eine Programmbeschreibung und zeigt die Ergebnisse des erarbeite-ten Rahmenwerks, bevor inKapitel 8 die vorliegende Arbeit zusammengefasst und einAusblick auf zukunftige Entwicklungen gegeben wird.

Page 13: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 2

Stand der Forschung

Dieses Kapitel spiegelt den aktuellen Stand der Forschung der interaktiven Explorationphotorealistischer Umgebungen, sowie der Kalibrierung catadioptrischer Systeme wie-der.Zuerst wird in Kapitel 2.1 der Themenbereich der freien Navigation in virtuellen Wel-ten vorgestellt, der durch die Datengewinnung, Datenverarbeitung und Generierung derneuen Ansichten charakterisiert werden kann.In Kapitel 2.2 folgt eine Beschreibung aktueller Methoden zur Kalibrierung catadiop-trischer Kameras.

2.1 Freie Navigation in virtuellen Welten

Die interaktive Erkundung komplexer Umgebungen ist ein beliebtes Forschungsthemain der Computergrafik und unter dem Begriffvirtual walkthrough environmentsbekannt.Traditionelle Geometrie-basierte Renderingmethoden basieren auf der Verwendung vongroßtenteils texturierten 3D-Szenenbeschreibungen und liefern nur befriedigende Er-gebnisse in der Simulierung komplexer, photorealistischer Umgebungen in Echtzeit.Desweiteren ist die Modellierung großer, komplexer Szenen ein zeitaufwendiger Pro-zess.Der Vorteil dieses Ansatz liegt darin, dass Ansichten fur beliebige Positionen und Per-spektiven generiert werden konnen.

Bildbasierte Renderingsysteme ermoglichen, durch die Nutzung von Referenzbildern,die Generierung von Ansichten fur neue Betrachtungsstandorte ohne Vorliegen einesexpliziten 3D-Modells. Prominentestes Beispiel sind hier die 360◦-Panoramabilder, dieeine Rundumsicht von einem festen Standpunkt ermoglichen [Che95].Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der alswarpingbe-zeichnet wird, auf den im nachsten Kapitel noch ausfuhrlich eingegangen wird.

Page 14: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

4 Stand der Forschung

Bildbasierte Renderingmethoden konnen unabhangig von der Szenenvielfalt neue An-sichten generieren, benotigen aber enorme Speicherkapazitaten fur große Szenen.Ein Losungsansatz beider Ansatze ist die Aufteilung der zu erkundenden Umgebung.Im Fall polygonorientiertem Renderings zum Beispiel in Zellen (Raume), die verbun-den sind durch Portale (Turen oder Fenster) um die Anzahl der zu berucksichtigen Geo-metrieprimitive zu minimieren. Dennoch werden bei sehr hoher Detailvielfalt keinebefriedigende Ergebnisse fur interaktive Darstellungen erreicht.Bildbasierte Renderingmethoden vereinfachen den Modellierungsprozess und sind un-abhangig von der Detailvielfalt. Um den Speicherbedarf ihrerseits zu reduzieren werdenverschiedene Einschrankungen vorgenommen. Beispielsweise wird die Exploration ei-ner Szene nur in Augenhohe zugelassen (siehe Abbildung 2.1) .

Abbildung 2.1: Beschrankung der Exploration auf Augenhohe

Da IBR-Metoden generell von der 7-dimensionalen plenoptischen Funktion abge-leitet sind, kann der benotigte Speicherbedarf durch Vereinfachung der plenoptischenFunktion erheblich reduziert werden. Desweiteren lassen sich die IBR-Verfahren durchdie Art der Vereinfachung klassifizieren.Erste Ansatze bildbasierter Methoden zur freien Navigation, lieferten dieMovieMap[Lip80], die Bildsequenzen verschiedener Betrachtungsstandorte als Szenenreprasenta-tion wahlte und das bekannteQuicK Time VR[Che95], in dem verschiedene Panorama-aufnahmen genutzt werden.Lichtfelder[ML80] und derLumigraph[SJG96] nutzen eine vierdimensionale Parame-trisierung der plenoptischen Funktion. Die Navigation wird begrenzt durch eine Box,die der Szene oder dem Nutzer zugeordnet wird.Plenoptic Stitching[AC01] nutzt einen automatisierten Aufnahmeprozess mittels fah-rendem Roboter, auf dem ein catadioptrischer Sensor angebracht ist. Auf verschiedenenPfaden werden nun die Referenzbilder (Abbildung 2.2) aufgenommen, auf denen sichder Benutzer spater frei bewegen kann, der Wechsel zwischen den Pfaden ist ebenfalls

Page 15: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

2.2 Kalibriermethoden fur catadioptrische Kameras 5

moglich.In dieser Arbeit wird ein System vorgestellt, dasahnlich demPlenoptic Stitching, einefreie Navigation auf Pfaden ermoglicht.

Abbildung 2.2: Plenoptic Stitching

2.2 Kalibriermethoden fur catadioptrische Kameras

Catadioptrische Sensoren erweitern den Aufnahmebereich (field of view) klassischerKameras und finden vielfaltige Anwendung im Bereich der Computer Vision, wie Hin-derniserkennung, autonome Roboternavigation und Bewegungsbestimmung.Diese Anwendungen erfordern genaue Kenntnis des Projektionsmodells, das nur mittelseiner Kamerakalibrierung gewonnen werden kann.Die Kalibrierstrategie hangt dabei wesentlich vom Design des catadioptrischen Systemsab. Beispielsweise, ob die catadioptrische Kamera densingle viewpoint constrainterfullen, der bedeutet, dass der dem catadioptrischem System zugeordnete SpiegeleinProjektionszentrum besitzt (Abbildung 2.3) . Diese auch alssingle viewpoint camerasbekannten optischen Systeme vereinfachen den Abbildungsprozess eines Weltpunktes

Page 16: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

6 Stand der Forschung

auf einen Bildpunkt und wurden ausfuhrlich untersucht [SB99].Geyer und Daniilidis [CG99] stellten eine geometrische Kalibriermethode vor, die mit-tels Abbildungen paralleler Linien in einer Aufnahme die Kameraparameter bestimmenlassen.Aliaga [Ali01] nutzt das Wissen von Kalibriermuster um die intrinsischen und extrinsi-schen Kameraparameter zu bestimmen.Kalibriermethoden catadioptrischer Systemen, die densingle viewpoint constraintnichterfullen wurden unter anderem vorgestellt von [RS03], [PS04].

Abbildung 2.3: Beisiel zumsingle viewpoint constraint

Page 17: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 3

Grundlagen

3.1 Bildbasiertes Rendering

Eines der zentralen Anliegen der Computergrafik ist die Generierung von Bildern, be-liebiger Umgebungen, die dem Betrachter, durch die photorealistische Darstellung, einereale Szene vortauschen.

Abbildung 3.1: Verschiedene Renderingmethoden im Vergleich nach [Slusallek 1998]

Abgrenzung zur klassischen Computergrafik Der klassische Computergrafikansatzist die Modellierung der Szene durch Geometrieinformationen, ein Oberflachenreflexi-onsmodell und Beleuchtungsquellen. Diese Methode, bei der Objekte in der Szene mit

Page 18: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

8 Grundlagen

Geometriemodellen aus vielen planaren Primitiven dargestellt werden, ist die heute eta-blierte Technik. Ein Geometriemodell beschreibt die Lage und den Aufbau der vorhan-denen physikalischen Objekte und ein zugeordnetes Oberflachenreflexionsmodell legtfest, wie die Objektoberflache mit einfallendem Licht interagiert. Zwischen den Ob-jekten konnen Interaktionen mathematisch definiert werden. Neue Ansichten der Szenewerden mittels der Festlegung eines Kameramodells durch Projektion des 3D Modellsauf die Bildebene generiert. Das Ergebnis dieser Simulation hangt dabei ganz entschei-dend von der Qualitat der verwendeten Modelle und Modelltypen ab und erfordert einekomplexe, zeitaufwendige Modellierung der Szenerie. Die Zeit die fur das Rendern ei-nes Bildes benotigt wird, hangt wesentlich von der Komplexitat (z.B. der Anzahl derdarzustellenden Primitive) der Szene ab.

Das Bildbasierte Rendering (auchImage Based Rendering IBRgenannt) ist durchdie Ersetzung von Geometrieinformation durch Bildinformation gekennzeichnet. Dieserleichtert die Erfassung der aufgenommenen Szene und ermoglicht eine interaktiveDarstellung. Die Gewinnung neuer Ansichten erfolgt direkt aus Bildern auch bei kom-plexen Szenen.

Abbildung 3.2: Generierung neuer Ansichten aus Referenzbildern

Page 19: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.1 Bildbasiertes Rendering 9

Bildbasierte Renderverfahren gehen direkt vom dem aus, was ein menschlicher Be-trachter oder eine Kamera wahrnehmen kann. Allgemein kann dies durch die plenopti-sche Funktion beschrieben werden. Bildbasierte Renderverfahren stellen auch eher eineSignalrekonstruktion als eine physikalische Simulation dar [CZ03]. Die kontinuierlicheplenoptische Funktion wird abgetastet und aus diesen diskreten Werten wieder interpo-liert und rekonstruiert. Bei der bildbasierten Szenenreprasentation stellen Bilder denAusgangspunkt und das Ergebnis der Renderpipeline dar, eine explizite Modellrekon-struktion ist nur bei einigen speziellen Techniken vorgesehen.

Abbildung 3.3: Modellierung aus Bildern

In der Praxis nutzen allerdings viele bildbasierte Ansatze auch Geometrieinforma-tionen der aufgenommennen Szene. Es handelt sich dabei also um keine reinen bild-basierten Ansatze, sondern um Hybride zwischen traditionellen Rendertechniken undIBR-Methoden (Abbildung 3.4). Hierbei ist eine Klassifikation der Methoden moglich,je nachdem zu welcher Seite sie im Kontinuum zwischen purem IBR-Ansatz und tradi-tioneller Polygon-basierter Rendertechnik neigt.Da zwischen der zur Darstellung einer Szene benotigten Bild- und Geometrieinforma-tion grundsatzlich Substitutionsmoglichkeiten bestehen, lassen sich die verschiedenenbisher entwickelten Szenenreprasentationen als Kontinuum zwischen den Polen reinbildbasierter Verfahren und der Reprasentation durch ein exaktes Geometriemodell mitstatischer Texturierung einordnen.

Pure bildbasierte Rendertechniken benutzen nur Bilder der aufgenommenen Szeneum neue Ansichten zu generieren. Die betrachtete Szene wird als Satz von Fotogra-fien aufgenommen und abgespeichert (Sampling), um unmittelbar neue Ansichten zuberechnen (Resampling). In diesem Fall sind keine Kenntnisse der Szenengeometrie

Page 20: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

10 Grundlagen

Abbildung 3.4: Kontinuum der IBR-Methoden

notwendig und die Komplexitat einer Szene wirkt sich nicht auf die Berechnungszeitaus. Desweiteren wird der Modellierungsprozess der Szene erheblich vereinfacht.Die Vorteile des bildbasierten Renderings bestehen vor allem in der Kostenunabhangig-keit von der Szenenkomplexitat, Nutzung von realen und virtuellen Bildquellen unddem geringerern Rechenaufwand im Vergleich zu 3D-Graphik. Desweiteren ist die pho-torealistische Darstellung der Szene gegeben, da neue Ansichten durch Resampling derBilder der Szene generiert werden.Die Nachteile sind zum Beispiel die diskrete Reprasentation und die Große der Daten-mengen.

Page 21: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.1 Bildbasiertes Rendering 11

3.1.1 Die plenoptische Funktion

Ein digitales Rasterbild besteht aus einer endlichen und diskreten Pixelmenge. Gleich-zeitig kann ein Bild auch als die Menge aller Strahlen (Intensitaten) die von einem Punktaus zu sehen sind, betrachtet werden. Ein perspektivisches Bild beschreibt nach McMil-lan [IM95] eine Menge von Strahlen von einer bestimmten Betrachtungsposition aus.

Abbildung 3.5: Die plenoptische Funktion als Bundel von Strahlen

Eine allgemeine Beschreibung der (idealisierten) menschlichen Wahrnehmungsfahig-keit stellt die von Adelson und Bergen 1991 veroffentlichte plenoptische Funktion dar.Alle bildbasierten Darstellungsverfahren konnen dadurch charakterisiert werden, wiesie die Abtastung, Speicherung und Rekonstruktion der plenoptischen Funktion umset-zen.Die sieben-dimensionale plenoptische FunktionP = P (V x, V y, V z, λ, θ, φ, t) gibt furjeden Punkt(V x, V y, V z) im dreidimensionalen Raum und jeden Zeitpunkt t die Inten-sitat des aus Richtung(θ, φ) einfallenden Lichtstrahls der Wellenlangeλ an.

Damit sind die optischen Eigenschaften einer synthetischen oder realen Szene kom-plett beschrieben. Sind Betrachtungsposition und Kameraperspektive gegeben, kann dieBildsynthese abstrakt als die Bestimmung einer Teilmenge der plenoptischen Funktionbeschrieben werden.

Page 22: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

12 Grundlagen

Abbildung 3.6: Die plenoptische Funktion

Klassifikation bildbasierten Renderings

Wie Shum und Kang [HS00] feststellen, ist bisher keine vollstandige Abtastung oderSpeicherung der sieben-dimensionalen plenoptischen Funktion einer Szene gelungen.Man beschrankt sich auf eine partielle Abtastung, also darauf einen Ausschnitt (oderTeilraum) der plenoptischen Funktion aufzuzeichnen. Fotografiert man eine Szene, wer-den die in die Kamera einfallenden Lichtstrahlen durch den Film aufgezeichnet. Dieskann als eine (unvollstandige) Abtastung der plenoptischen Funktion aufgefasst werden.In der Literatur wird eine Stichprobe, die von einem festen Betrachtungspunkt aus denvollen Winkelbereich(θ, φ, ) erfasst, eine vollstandige Abtastung, Environment-Mapoder Panorama genannt. Zur bildbasierten Szenendarstellung wird eine endliche Zahldiskreter Bilder, sogenannt Referenzbilder aufgenommen, um beim Rendern wieder diekontinuierliche plenoptische Funktion anzunahern.Die bildbasierte Szenenbeschreibung kann vereinfacht werden, indem verschiedene Ein-schrankungen bezuglich der dargestellten Parameter der plenoptischen Funktion formu-liert werden. Zur Vereinfachungen der Szenenbeschreibung konnen nach [CZ03] fol-gende Einschrankungen formuliert werden.

Annahme1 Bei der Aufnahme der Bilder fur ein IBR-Verfahren, vereinfacht man dieDimension der Wellenlange auf drei Kanale (ublicherweise die drei Primarvalenzen rot,grun und blau). Jeder Kanal reprasentiert die Integration der plenoptischen Funktionuber einem bestimmten Wellenlangenbereich. Diese Vereinfachung hat kaum merk-bare Auswirkungen, da sich fast das gesamte menschliche Farbspektrum durch dreiPrimarvalenzen abdecken lasst.

Page 23: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.1 Bildbasiertes Rendering 13

Annahme2 Die Radianz eines Lichtstrahls wird als konstant angenommen.

Annahme3 Vereinfachung einer dynamischen zu einer statischen Szene, es wird alsoeine zeitliche Invarianz (t) der Szene angenommen, also nur ein Schnappschuss aufge-nommen.

Annahme4 Die Funktion vereinfacht sich auch dann weiter, wenn man Einschrankun-gen der Bewegungsfreiheit des Betrachters annimmt. Beispielsweise auf die Beschrankungder Bewegung auf eine Ebene.

Annahme5 Beschrankt man die Bewegungsfreiheit auf einen Pfad, den der Betrach-ter auf- und abwandern kann, wird die plenoptische Funktion um zwei Dimensionenvereinfacht.

Annahme6 Wird die Position des Betrachters als konstant angenommen, entfallendrei Dimensionen der plenoptischen Funktion.

Mit einer Vereinfachung und Verringerung der Dimension der plenoptischen Funktionsinkt auch der jeweils benotigte Speicherplatzbedarf. Allerdings lassen sich die auf-gefuhrten Vereinfachungen nicht beliebig kombinieren. Fur den praktischen Einsatz,sei mit fogender Tabelle 3.1 gedient.Ein anderer Ansatz, um eine kompaktere Darstellung zu erhalten, ist die Kombination

Dimension Name Einschrankung

7D plenoptische Funktion keine6D Surface plenoptische Funktion (2)5D Plenoptische Modellierung (1)(3)5D Light field Video (1)(2)4D Lightfields und Lumigraph (1)(2)(3)3D Konzentrische Mosaike (1)(2)(3)(4)3D Panorama Video (1)(3)(5)2D Panorama (1)(3)(6)2D Bild (1)(3)(6)

Tabelle 3.1: Klassifikation der plenoptischen Funktion

der bildbasierten Szenenbeschreibung mit geometrischer Information der Szene.

Page 24: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

14 Grundlagen

Sampling und Speicherung

Wie bereits beschrieben, kann eine verallgemeinerte Szenenbeschreibung auf Basis derplenoptischen Funktion zur Speicherung und Darstellung von Szenen verwendet wer-den. Bei der Abtastung der plenoptischen Funktion entstehen aber sehr große Da-tenmengen. Zwar kann durch die Formulierung sinnvoller Einschrankungen (Tabelle3.1), die Reduzierung der zu verarbeitenden Datenmenge erreicht werden. Dennochkann durch weitere Aspekte zusatzlich eine Verringerung des Datenaufkommens er-reicht werden ohne die Renderqualitat zu sehr zu beeintrachtigen.Beispielsweise kann durch Kompression der Referenzbilder der benotigte Speicher-platzbedarf noch weiter reduziert werden.Eine Analyse der benotigten Referenzbilder fuhrt zum Begriff derSampling-Analyseund der Frage :Wie viele Samples gebraucht werden, um die plenoptische Funktion ge-eignet rekonstruieren zu konnen?Aufgrund der hohen Dimension der plenoptischen Funktion ist dieSampling-Analysekein einfaches Problem. Ein Ansatz zur Losung derSampling-Analyse[CZ03], ist demklassischen Abtastungstheorem zu folgen, also mittels Fourier-Analyse des plenopti-schen Signals und Analyse der spektralen Bandbreite die Abtastungsrate zu bestimmen.

3.1.2 Beispiele des IBR

Da eine ausfuhrliche Beschreibung aller gangigen IBR-Verfahren den Rahmen dieserArbeit ubersteigen wurde, werden drei Verfahren exemplarisch vorgestellt. Verwiesenwird auf [CZ03]Beispiele des Bildbasierten Rendering sind:

• Lightfields, die fur jeden Punkt im Raum die erhaltene Radianz aus jeder Rich-tung beschreiben. Neue Ansichten werden generiert durch Resamplen der, imVorfeld aufgenommenen, Bilder der Szene. Ein Strahl wird reprasentiert durchseine Schnittpunkte mit zwei parallelen Ebenen (auchlightslabgenannt).

Fur jeden Pixel der neue Ansicht, werden die Schnittpunkte des korrespondieren-den Sichtstrahls mit der Kamera -und Focalebene berechnet. Die (u,v) Koordi-naten der Schnittpunkte werden benutzt um die Bilder fur das Resamplen aus-zuwahlen. Die (s,t) Koordinaten fur die Wahl der aktuellen Pixel.Die Aufnahme von Lightfields ist aufwendig und nur mit einer speziellen, prazisebeweglichen Aufnahmevorrichtung moglich. Nachteilig wirken sich dabei auchdie großen Datenmengen aus.

• Konzentrische Mosaike[HS99] stellen einen Ansatz vor, der im Gegensatz zuden im nachsten Kapitel vorgestellten Panoramen, Verdeckungen berucksichtigen

Page 25: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.1 Bildbasiertes Rendering 15

Abbildung 3.7: Prinzip eines Lichtfeldes

Abbildung 3.8: Generierung neuer Ansichten

kann. Der Betrachterstandort ist auf planare konzentrische Kreise beschrankt.Konzentrische Mosaike stellen eine dreidimensionale plenoptische Funktion dar,wobei die berucksichtigten Parameter der Rotationswinkel, der Radius zwischenKamera und Rotationsachse und der vertikale Sehwinkel sind.

Neue Ansichten werden gewonnen, indem vertikale Linien mehrerer Panorama-bilder zusammengefugt werden (siehe Abbildung 3.10). Dabei entstehen in derneuen Ansicht vertikale Verzerrungen. Diese konnen, Kentnisse der Szenengeo-metrie vorrausgesetzt, durch ein Tiefenkorrekturverfahren abgeschwacht werden.

Page 26: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

16 Grundlagen

Abbildung 3.9: Beispiel zur Generierung neuer Ansichten bei Lichtfeldern

Abbildung 3.10: Generierung neuer Ansichten durch konzentrische Mosaike

Page 27: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.1 Bildbasiertes Rendering 17

3.1.3 Panoramen

Historische Entwicklung des Panoramas Das Panorama wurde bereits 1792 vonRobert Barker in London zum Patent angemeldet. Er erbaute in Edinburgh eine Rotunde,in der rundumlaufende Gemalde mit einer Hohe von bis zu siebzehn Metern und einemUmfang von 130 Meter auf die Innenseite der Wande gemalt wurden. Das Publikumstand auf einer zentralen Plattform und betrachtete die von einer verdeckten Lichtquelleerleuchteten Gemalde.

Abbildung 3.11: R. Barkers Panorama

Der Erfindung der Fotografie im Jahr 1839 folgten bald die ersten Ideen fur Panora-makameras. 1843 patentierte derOsterreicher J. Puchberger eine Kamera mit drehbarerOptik, die von Hand mit einer Kurbel angetrieben wurde. Diese Technik wurde vonKodak weiterentwickelt und ab 1899 als erste Panoramakamera vertrieben.Raoul Brimoin-Sansons entwickelte 1897 das Cineorama mit 10 synchronisierten Film-projektoren und 100 Meter Umfang.Im 20. Jahrhundert folgten Disneys CircleVision mit 9 35mm-Kameras und moderneKinos wie dasIMAX und dasOMNIMAX.

Page 28: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

18 Grundlagen

Abbildung 3.12: Zylindrisches Panorama

Erstellung von Panoramen

Panoramen erweitern das eingeschrankte Blickfeld (auchfield of vievgenannt) traditio-neller Szenenansichten. Dem Anwender wird ermoglicht, eine Szene von einem Be-trachtungsstandort aus in verschiedene Blickrichtungen zu erkunden. Dies wird durchdie Abbildung eines großeren Raums um die Kamera erreicht. Zur Erstellung einesPanoramas wird die Umgebungstextur der realen Szene von einem zentralen Punkt auserfasst und auf eine einfache Form abgebildet. Dadurch wird die plenoptische Funk-tion auf zwei Dimensionen reduziert, die auch als environment map bezeichnet wird[Che95].Allerdings ist das vertikale Blickfeld bei den zylindrischen Panoramen eingeschrankt.Beim Betrachten der Szene wird der jeweils sichtbare Bereich des Panoramas in per-spektivisch korrekte Ansichten transformiert. Dieser auch alsWarping bezeichneterVorgang ist in Abbildung 3.14 fur ein zylindrisches Panorama beschrieben.

Warpen und Morphen sind zwei Techniken die man als fundamentale Operationendes bildbasierte Renderings bezeichnen kann. Warpen beschreibt das Deformieren einesBildes oder Bildausschnitts durch Umordnen der Pixel eines Bildes, also eine geome-trische Transformation oder Verzerrung des Bildes. Die Abbildung oder die Transfor-mation charakterisiert den Zusammenhang zwischen Pixeln des Quell- und Zielbilds.Rasterbasiertes Warpen wird in der Bildbearbeitung, aber auch bei der Texturierunggeometrischer Modelle eingesetzt. Auch Morphen (Abkurzung fur Metamorphose) isteine Operation mit Quell- und Zielbild. Entscheidend ist hierbei, das die gleichzeitigelineareUberblendung der Farben und das Warpen der Form zwischen in beiden Bil-dern definierten Merkmalspaaren (Korrespondenzen) erfolgt. Solche Merkmale konnenPunkte, Liniensegmente oder die Knotenpunkte von Netzen sein.

Abhangig vom View Frustum wird auf die vertikalen Scanlines eine Skalierungs-operation angewandt, um eine perspektivisch korrekte Ansicht zu erzeugen. Der Ablaufdes Warping ist dem Texture Mappingahnlich, die (x,y) Koordinaten eines Punktes

Page 29: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.1 Bildbasiertes Rendering 19

Abbildung 3.13: Die Mona Lisa im Original (links), gespiegelt (rechts) und gemorpht(mitte)

Abbildung 3.14: Prinzip des Warping

Abbildung 3.15: Beispiel zum Warping

Page 30: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

20 Grundlagen

in der Bildebene gegeben, erhalt man direkt die (u,v) Koordinaten des (in diesem Fallzylindrischen) Panoramas. Desweiteren ist klar ersichtlich, dass die vertikale Orientie-rungsfreiheit eingeschrankt ist.

Das Zoomen auf ein bestimmtes Szenendetail, wird durch Veranderung des ViewFrustums erreicht. Dies wird haufig verbunden mit einer hierarchischen Szenenspei-cherung (ahnlich den MipMaps in der Texturverarbeitung) um großere Detailvielfalt zuerhalten und Aliasing zu vermeiden.Panoramen begegnen dem Betrachter meist in zylindrischer, kubischer oder spharischerForm. Ein zylindrisches Panorama kann man sich als ‘Bild von Bildstreifen‘ (imagestrip) vorstellen, das eine 360◦ Ansicht der aufgenommenen Szene zeigt.Spharische Panoramen bieten haufig einen verzerrten Blick auf die Welt,ahnlich derSicht durch einefish-eye-Linse.Ein kubisches Panorama kann als ein sechs-seitiger Bildwurfel betrachtet werden, derdie aufgenommene Szene aus sechs Positionen betrachtet.

Die Akquisition von Panoramabildern lasst sich in drei verschiedene Moglichkeiten ein-teilen. Zunachst muss man dabei reale und synthetische Szenen unterscheiden. Ist diezu betrachtende Szene eine generierte Landschaft aus einem Rechner, ist es eine Frageder Software, ob sich solche Szenen ausgeben lassen.Handelt es sich um eine reale Szene, kann auf spezielle Panorama-Kameras zuruckge-griffen werden, wie rotierende Kameras oder catadioptrische Kameras auf die im Ab-schnittuber omnidirektionale Kameras naher eingegangen wird.Die dritte Moglichkeit besteht im Zusammensetzen normaler Photos zu einem Pan-orama. Dieses sogenannteStitching-Verfahren hat die Grundidee, eine Reihe von Auf-nahmen mit jeweils etwas versetzter Blickrichtungubereinander zulegen, um sie schließ-lich zu einer Panorama-Ansicht krummen zu konnen. Mathematisch wird dieser Vor-gang durch eine Projektion der Bildflachen auf einen Zylinder und anschließende Pixel-zuweisung realisiert.Wichtig ist hierbei, dass die Aufnahmen um einen festen Rotationspunkt gemacht wer-den und dass sich die einzelnen Aufnahmenuberlappen. Ein weiterer Gesichtspunktder bei der Erstellung von Panoramen berucksichtigt werden muss, ist die Art der An-wendung. Handelt es sich zum Beispiel um einereal-time-Anwendung, wie NavigationoderUberwachung, liefern nur catadioptrische Kameras befriedigende Ergebnisse.

Page 31: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.1 Bildbasiertes Rendering 21

Abbildung 3.16: Ein zylindrisches Panorama

Abbildung 3.17: Ein kubisches Panorama

Page 32: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

22 Grundlagen

Abbildung 3.18: Eine Panoramaansicht

Abbildung 3.19: Prinzip des Stitching

Abbildung 3.20: Beispiel zum Stitching

Page 33: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.2 Omnidirektionale Kameras 23

3.2 Omnidirektionale Kameras

Omnidirektionale Kameras sind keine neue Erscheinung, bereits 1843 patentierte Jo-seph Puchberger inOsterreich eine rotierende Kamera um omnidirektionale Bilder zuerhalten.Rees erhielt 1970 in der USA das Patent fur ein Kamerasystem, das eine Kamera miteinem hyperbolischen Spiegel kombinierte, um omnidirektionae Bilder aufzunehmen,die anschließend in perspektivische Ansichten transformiert wurden.Das Spektrum der Anwendungen dieser Kamerasysteme umfasst Bereiche wie Video-konferenzen, Virtual Reality,Uberwachung, 3D Rekonstruktion und autonome RoboterNavigation.Allerdings ist der Terminus omnidirektional irrefuhrend, da er andeutet den gesamtenRaum um die Kamera abzubilden, obwohl omnidirektionale Kameras meist nur einebestimmte Region (typischerweise hemispharisch) um die Kamera abbilden.

Abbildung 3.21: Verschiedene Sichtfelder, a) Sichtfeld einer konventionellen Kamerab) hemispharisches Sichtfeld c) Sichtfeld einer Panoramakamera

Es gibt mehrere Moglichkeiten um omnidirektionale Bilder zu erhalten:

• Eine Moglichkeit ist eine um ihre vertikale Achse rotierende Standard CCD Ka-mera. Die erhaltenen Bildinformationen werden anschließend zusammengeklebt(stitchen) um 360◦Panoramaansichten zu erhalten. Nachteie dieses Ansatzes istdie schwierige Verarbeitung bei dynamischen Szenen, sowie zeitaufwendige Um-rechnungen.

• Die Benutzung mehrerer konventioneller Kameras. Die unterschiedlichen Projek-tionscharakteristiken fuhren allerdings zu unterschidlichen Verzerrungen, Hellig-keit oder Farbe.

Page 34: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

24 Grundlagen

• Die Erweiterung einer traditionellen Kamera um spezielle Weitwinkellinsen, zumBeispielFischaugen-Linsen. Nachteilig wirken sich hier die starken Verzerrun-gen, sowie die hohen Anschaffungskosten aus.

• Sowie die Erweiterung einer traditionellen Kamera mit einem Spiegel, welcheman auch als catadioptrische Kamera bezeichnet.

3.2.1 Catadioptrischer Sensor

Ein catadioptrischer Sensor besteht aus Spiegeln (catoptrics) und Linsen (dioptrics).Haufig wird die Kombination einer Kamera, die auf einen konvexen Spiegel gerichtetist, verwendet.

Abbildung 3.22: Ein catadioptrischer Sensor

3.2.2 Spiegel

Eine konventionelle, perspektivische Kamera kann durch das Loch-Kameramodell ap-proximiert werden.

Die Geometrie der Loch-Kamera ist gegeben durch die Bildebene auf der senkrechtdie optische Achse steht, sowie der Brennweite. Alle Szenenpunkte im Blickfeld derKamera, werden proportional zur Brennweite auf die Bildebene projiziert. Die Erwei-terung der Kamera um einen Spiegelandert die Projektionscharakteristik und das Loch-Kameramodell ist im Allgemeinen nicht mehr gultig. Allerdings ist ein zentralperspek-tivisches Projektionsmodell fur einige spezielle Spiegelformen noch anwendbar. Dieseauch als ‘central catadioptric mirrors’ bekannten Spiegel [SB99] haben einen Brenn-punkt im Spiegel in dem sich alle Sichtstrahlen der aufgenommenen Szene schneiden.Diese Eigenschaft eines Spiegels wird auch alssingle viewpoint constraintbezeichnet.In der Praxis existiert eine große Anzahl von genutzten Spiegelformen, die planare, ko-nisch, elliptische, parabolische, hyperbolische oder kugelformige Gestalt besitzen. Alleder genannten, bis auf die planare Variante konnen horizontal eine 360◦ Ansicht derUmgebung abbilden. Den Raum, den die Kamera vertikal abbilden kann, hangt vom

Page 35: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.2 Omnidirektionale Kameras 25

Abbildung 3.23: (a) Parabolische, (b) elliptische, and (c) hyperbolische Spiegel erlau-ben eine Zentral-Projektion durch die reflektierten Strahlen.

gewahlten Spiegeltyp ab und liegt im Bereich zwischen 70◦ und 120◦.

3.2.3 Verarbeitung omnidirektionaler Aufnahmen

Wie man an Abbildung 3.25 sehen kann, sind Aufnahmen catadioptrischer Kamerasnicht sofort zu verwenden. Eine Moglichkeit diese Aufnahmen fur den menschlichenBetrachter aufzubereiten ist folgender zweistufiger Prozess.

• Zuerst folgt eine Projektion in ein anderes Koordinatensystem, zum Beispiel einzylindrisches oder spharisches Koordinatensystem.

• Anschließend folgt eine Transformation auf die Bildebene, die nun die finale Pan-oramaansicht aufweist (siehe Abbildung 3.26)

Generierung neuer Ansichen

Hat man einen Satz omnidirektionaler Bilder gegeben, ist eine weitere Aufbereitung derBilder notwendig um qualitativ hochwertige neue Ansichten zu erhalten. Diese Aufbe-reitung wird auch alsImage Warpingbezeichnet. Verschiedene Ansatze desImage War-ping existieren in der Literatur. Die einfachste Moglichkeit besteht in der Interpolationder Bilder ohne Warping. Dieser Ansatz fuhrt allerdings sehr schnell zumGhosting.Unter Ghostingversteht man verschwommene Bereiche im Bild, die entweder durchsich bewegende Objekte oder verschiedene Kamerazentren hervorgerufen werden.Ein zweiter Ansatz ist die Reprojektion der Bildabtastungen entsprechend ihrer Tiefe im3D-Modell. Dieser Ansatz erfordert aber eine genaue Kenntnis der Szenengeometrie,

Page 36: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

26 Grundlagen

die nicht immer verfugbar ist.Eine dritte Moglichkeit besteht in der Schatzung des Tiefenwertes fur jeden Pixel injedem Bild. Obwohl dieser Ansatz die genausten Abbildungen erzielt, ist er mit derheutigen Technik noch nicht zufriedenstellend umsetzbar.

Abbildung 3.24: Generierung von Panoramaansichten aus omnidirektionalen Bildern

Page 37: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

3.2 Omnidirektionale Kameras 27

Abbildung 3.25: Aufnahme eines catadioptrischen Sensors

Abbildung 3.26: Verarbeitete Aufnahme eines catadioptrischen Sensors

Page 38: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

28 Grundlagen

Page 39: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 4

Praktische Umsetzung

Ein praktisches Beispiel zu einigen in den vergangenen Kapiteln ausgefuhrten Konzep-ten, bildet den weiteren Schwerpunkt dieser Arbeit.Es soll ein Panoramaviewer entwickelt werden, der als Eingangsdaten mehrere Panora-men erhalt. Durch die Bestimmung der relativen Bewegung der Kamera zwischen denAufnahmen, soll es ermoglicht werden neue Ansichten zu interpolieren.Der Ausgangspunkt der Verarbeitungskette, die schließlich zur gefordertenfreien Na-vigation in virtuellen Weltenfuhren soll, sind Aufnahmen der vorhandenen catadiotri-schen Kamera. Die Kalibrierung des catadioptrischen Systems wird daher im nachstenKapitel ausfuhrlich erlautert. Nach einer Beschreibung der entwickelten Beispielan-wendung, folgt dann eine kurze Visualisierung der Ergebnisse. In diesem Kapitel sollauf die verwendeten Systemkomponenten eingegangen werden.Alle Bilder und Experimente wurden ausschließlich mit dem bestehenden catadioptri-schen System durchgefuhrt. Fur weitere Experimente soll der Aufnahmeprozess weit-gehend automatisiert werden.

4.1 Verwendete Hardware-Komponenten

Das vorhandene Aufnahmesystem besteht aus einer Kamera Canon PowerShot G5. So-wie aus einem konvexen Spiegel der Firma 0-360.com.

Canon PowerShot G5 Die Canon PowerShot G5 erlaubt Auflosungen von bis zu2.592 x 1.944 Bildpunkte. Als Dateiformat kann zwischen JPEG (.jpg) und RAW(Canon-eigenes Rohdatenformat) gewahlt werden.

Spiegel der Firma 0-360.com Der verwendete Spiegel hat ein 360◦ horizontales Blick-feld und ein bis zu 115◦ vertikales Blickfeld.

Page 40: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

30 Praktische Umsetzung

Abbildung 4.1: Verwendete Kamera

Abbildung 4.2: Verwendeter Spiegel

4.2 Verwendete Software-Komponenten

Der geforderte Panoramaviewer und das Programm zur Kalibrierung des catadioptri-schen Systems wurden inc++ implementiert. Fur die Benutzeroberflache wurdeglutausgewahlt. Desweiteren wurde die Grafikhardware-APIOpenGL genutzt.

4.3 Aufnahmeprozess

Um Aufnahmen moglichst guter Qualitat zu erhalten, wurde die catadioptrische Ka-mera auf einer Aluschiene befestigt und im konstanten Abstand jeweils eine Aufnahmegemacht. Desweiteren ist es notwendig vor jedem neuen Einsatz der catadioptrischenKamera das optische System zu kalibrieren, um die genaue Abbildung der Sichtstrahlenauf die Bildebene zu bestimmen.

Page 41: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 5

Kamerakalibrierung

5.1 Kameramodell

Mochte man wissen, wie Gegenstande aus der Szene auf ein Bild abgebildet werden,muss man die Parameter der aufzeichnenden Kamera(s) kennen, sowie das zu Grundeliegende Projektionsmodell. Virtuelle Kameras werden außerdem als Referenzmodellzur Spezifikation von Betrachtungspositionen und -transformationen eingesetzt. DieAbbildung wird durch die Position und Orientierung der Kamera in der abgebildetenSzene (extrinsischen Kameraparameter) und die Abbildungseigenschaften der Kamera(intrinsischen Kameraparameter) beeinflusst. Die Bestimmung der Kameraparameterwird als Kamerakalibrierung bezeichnet.Verwendung finden haufig das orthographische und perspektivische Projektionsmodell.Die orthographische Projektion ist die Abbildung eines 3D-Objektes auf eine Ebenedurch parallele Strahlen, orthogonal zur Bildebene.Bei der perspektivischen Projektion treffen sich die Strahlen im Brennpunkt der Ka-mera. Die Lochkamera ist das einfachste Modell das die perspektivische Projektionrealisiert. Das heißt vor allem, dass die Lochkamera keine Verzerrungen berucksich-tigt, die zum Beispiel wahrend der Aufnahme durch das optische System hervorgerufenwerden konnen.

Die Erfahrung im Umgang mit Kameras hat gezeigt, dass es bei der Abbildung ei-nes Weltpunktes in einen Bildpunkt eine Verzerrung gibt. Das heißt die Abmessungenzwischen den Bildpunkten auf dem Bild entsprechen nicht den (in Maßstab gesetzten)Abmessungen zwischen den reprasentierten Weltpunkten. Also entspricht ein Kamera-bild nicht dem Bild, welches eine ideale Lochkamera erzeugen wurde. Und eine relativkleine Verzerrung des Bildes konnte zu einer relativ großen Verfalschung von Messda-ten fuhren. Es lohnt sich diese Verzerrung genauer zu untersuchen, um somit Modelleentwickeln zu konnen, die auch diese berucksichtigen.

Page 42: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

32 Kamerakalibrierung

Abbildung 5.1: Die perspektivische und orthographische Projektion

5.1.1 Verwendetes Kameramodell

Da es in der Literatur unterschiedliche Notationen fur Kameramodelle gibt, wird indiesem Abschnitt das verwendete Kameramodell [Eis02] erlautert.

Das Kameramodell entspricht einer Konkatenation von perspektivischer Projektion,Linsenverzerrung und dem CCD Sensor (siehe Abbildung 5.2).

Abbildung 5.2: Verwendetes Kameramodell

Die Bildkoordinaten ergeben sich durch:

X = −fx · x/z (5.1)

Y = −fy · y/z

, wobeiX undY den Bildkoordinaten entsprechenfx undfy, der Brennweite, skaliert durch die horizontalen und vertikalen Skalierungs-

Page 43: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.2 Kalibriermethoden 33

faktoren,x, y undz - Koordinaten im 3D-Objekt, bezogen auf das Kamerakoordinatensystem

5.2 Kalibriermethoden

Abbildungen durch optische Projektionssysteme werden durch die Kameraparameterbestimmt. Die Bestimmung dieser Parameter geschieht normalerweise mit Hilfe einesKalibrierkorpers, dessen genauen physikalischen Ausmaße bekannt sind. Das Kalibra-tionsobjekt besteht normalerweise aus 2 oder 3 Ebenen, die orthogonal zueinander lie-gen. Manchmal wird auch alternativ eine sehr prazise bekannte Translation einer Ebeneverwendet. Diese Annaherung erfordert allerdings teuere Kalibrationsapparaturen undeine aufwandige Installation. Anschließend werden Punktkorrespondenzen zwischen3D-Punke des Kalibrierkorpers und ihren Abbildern der Bildebene genutzt werden umdie gesuchten Parameter zu berechnen. Diesen Ablauf bezeichnet man auch alsGeome-trische Kalibration.Einen alternativen Ansatz beschreibt die Technik der Selbstkalibration. Diese Verfahrenbenutzen keine Kalibrierungsobjekte und es ist mit minimal 3 Bildern, das Berechnender Korrespondenzen zwischen den Punkten der aufgenommenen Bildern moglich. DieKameraparameter (intrinsische und extrinsische Parameter) konnen auf diese Weise be-stimmt werden. Die Methode basiert auf der Bedingung, dass die betrachteten PunkteTeil einer statischen Szene sind, nur die Kamera bewegt sich. Falls die Bilder durchdieselbe Kamera mit konstanten intrinsischen Parametern aufgenommen worden sind,genugen die Korrespondenzen zwischen den 3 Bildern zum Bestimmen der intrinsi-schen und extrinsischen Parameter, was uns erlaubt, die 3D Struktur mit einer großenGenauigkeit zu rekonstruieren. Wahrend diese Methode sehr flexibel ist, ist sie nochnicht voll entwickelt. Weil es viele Parameter zu bestimmen gibt, kann man nicht im-mer zuverlassige Ergebnisse erzielen.

Extrinsische Kamera Parameter

Die Bestimmung der extrinsischen Kamera Parameter dient dazu, die Transformationzwischen dem unbekannten Kamerakoordinatensysten und dem bekannten Weltkoordi-natensystem festzulegen.Typischerweise geschieht dies durch folgende Schritte:

• Bestimmung des Translationvektors zwischen den relativen Positionen der Ur-sprunge beider Koordinatensysteme

• Bestimmung der Rotationmatrix, die beide Koordinatensysteme gleich ausrich-ten.

Page 44: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

34 Kamerakalibrierung

Intrinsische Kamera Parameter

Dienen fur die Widerherstellung vom Zusammenhang zwischen dem Kamerakoordina-tensystem und dem Bildkoordinatensystem. Solche sind z.B. die Brennweite f und dasoptische Zentrum in der Bildebene.

Abbildung 5.3: Ubergang vom Welt- in Kamerakoordinatensystem (a) und vomKamera- in Bildkoordinatensystem (b), beschrieben durch die extrinsischen und int-rinsischen Parameter.

5.3 Kalibrierung catadioptrischer Sensoren

Ein catadioptrischen Sensor besteht aus einer traditionellen Kamera und einem Spie-gel. Die Parameter dieses Kameramodells umfassen die intrinsischen und extrinsischenKameraparameter, die Distanz zwischen Spiegel und Kamera und die Geometrie undOrientierung des Spiegels.

5.3.1 Bestimmung der Spiegelgeometrie

Der erste Schritt bei der Kalibrierung des vorhandenen Spiegel-Kamerasystems bestehtin der Erfassung der genauen Spiegelform.Hierzu wurde ein Verfahren angewandt, das von Halstead et al zur Bestimmung derHornhaut des Auges entwickelt wurde. Der Algorithmus beruht darauf, eine spiegelndeOberflache anhand der Normalen der Oberflache zu rekonstruieren. Hierbei werden

Page 45: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.3 Kalibrierung catadioptrischer Sensoren 35

Abbildungen von Bildpunkten zu Szenenpunkten genutzt, um partielle Differentialglei-chungen aufzustellen, die der Spiegel erfullen muss. Die Spiegelform wird dann durcheine Losung des resulterenden Differentialgleichungssystem bestimmt.Nach einer Beschreibung des im Rahmen dieser Diplomarbeit entwickelten Kalibrierkorpers,wird der Algorithmus ausfuhrlich erklart.

Der Kalibrierk orper Ein catadioptrischer Sensor realisiert eine Abbildung von Punk-ten im Bild zu Punkten in der Szene. Das Ziel der Spiegelrekonstruktion ist es nun, einenSpiegel zu finden, der in Kombination mit der vorhandenen Kamera die Abbildung rea-lisiert.Um nun einem Pixel des Bildes einen Punkt der Szene zuzuordnen, wurde ein Ka-librierkorper entwickelt, der aus einem offenen Kubus besteht, auf dessen InnenseitenKalibriermuster aufgebracht wurden. Die Kalibriermuster bestehen aus weißen Quadra-ten gleicher Kantenlange auf schwarzem Grund. Die Anordnung der Quadrate variiertvon Innenseite zu Innenseite um im Ergebnisbild die Abbildungen der Seitenflachen zuunterscheiden.Da sich die Auflosung des vorhandenen Spiegel-Kamerasystems vom Bildzentrum zumBildrand vermindert, wurde die Anordnung der Quadrate unter Berucksichtigung derAuflosung der catadioptrischen Kamera entwickelt um am Rand des Bildes noch ver-wertbare Bildinformationen zu gewinnen. Als Bildinformationen dienen zum einen dieKanten zwischen den schwarzen und weißen Regionen des Bildes, als auch die Mittel-punkte der weißen Quadrate. Der Kubus hat ein Loch im Boden durch das die Aufnah-men mit dem Spiegel-Kamerasystem gemacht (Abbildung 5.4).

Page 46: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

36 Kamerakalibrierung

Abbildung 5.4: Aufnahme eines Kalibrierkopers mit einer omnidirektionalen Kamera

Abbildung 5.5: Kalibrierkoper

Page 47: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.3 Kalibrierung catadioptrischer Sensoren 37

Simulierung der Aufnahme des catadioptrischen Sensors Die mit Hilfe des Kali-briermusters gewonnenen Bildinformationen dienen dazu die Spiegelform zu rekonstu-ieren. Hierzu wird der Aufnahmeprozess, mit Hilfe eines, im Rahmen dieser Diplomar-beit entwickelten Raytracers simuliert. Das Ziel des Rekonstruktionsalgorithmus ist es,die Beschreibung einer Oberflache zu finden, die im simulierten Aufnahmeprozess zumgleichen Ergebnisbild wie im realen Aufnahmeprozess fuhrt.

Abbildung 5.6: Ein Pixel im Bild ist die Abbildung eines Punktes in der aufgenomme-nen Szene nach Reflektion an der Spiegeloberflache

Generell entsteht ein Bild eines catadioptrischen Sensors dadurch, dass ein Szenen-punkt nach Reflektion an der Spiegeloberflache im Ergebnisbild abgebildet wird (Ab-bildung 5.6).

In der simulierten Aufnahme wird das CCD-System der Kamera durch die Bildebenemit der Koordinatenebene (u,v) ersetzt. Der Kalibrierkorper wird fur den Raytracernachmodelliert und die Kalibriermuster als Texturen auf die Seitenflachen aufgetragen.

Page 48: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

38 Kamerakalibrierung

Abbildung 5.7: Simulierter Aufnahmeprozess mit einer spiegelnden B-Spline Flache

Abbildung 5.8: Simulierter Aufnahmeprozess mit einer spiegelnden Kugel

Page 49: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.3 Kalibrierung catadioptrischer Sensoren 39

Der Spiegel des catadioptrischen Systems findet seine Entsprechung als:

Sr(u, v) = V (u, v) + D(u, v)I(u, v) (5.2)

Wobei jeder Punkt der Spiegeloberlache durch das Bildkoordinatensystem parametri-siert ist. Jedem Pixel(u,v) der Bildebene wird ein ViewpointV (u, v) und ein Richtungs-vektor I(u, v) zugeordnet. D(u,v) entspricht der Distanz von Bildebene zur Spiegelo-berflache und wird mittels des B-Spline Tensorproduktes ausgedruckt.

D(u, v) =

Kf∑i=1

Kg∑j=1

cijfi(u)gj(v) (5.3)

Wobeifi(u) undgj(v) den B-Spline Basisfunktionen undcij den Kontrollpunkten ent-sprechen. Das ProduktKf ·Kg druckt die Anzahl der Kontrollpunkte aus.Tensorprodukt-Flachen entstehen aus der einfachen Idee, dass die Kontrollpunkte derKurve in u-Richtung aus den Kurven in v-Richtung berechnet werden. Die Basen sinddabei im Prinzip voneinander unabhangig. Da die B-Spline-Basis gewahlt wird, erhaltman eine Lokalitat der Kontrollpunkte.

Abbildung 5.9: B-Spline Tensorproduktflache

Herleitung des Algorithmus Eine catadioptrische Kamera bildet die aufgenommeneSzene nach Reflektion an der Spiegeloberflache auf die Bildebene ab (Abbildung 5.6).

Page 50: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

40 Kamerakalibrierung

Jedem Pixel(u, v) wird durch den RichtungsvektorI(u, v) ein PunktSr(u, v) der Spie-geloberflache zugeordnet. An dem der reflektierte StrahlR(u, v) zum abgebildeten Sze-nenpunktM(u, v). Dies ermoglicht die Berechnung der Normalen anSr(u, v) durch:

Ni =Ri − Ii

|Ri − Ii| (5.4)

Die Tangentialebene am PunktSr(u, v) wird durch die beiden Tangentenvektorentuund tv aufgespannt, die sich als partielle Ableitungen inu und v Richtung berechnenlassen.

tu =∂S(u, v)

∂u(5.5)

tv =∂S(u, v)

∂v(5.6)

Da die Tangententu undtv orthogonal zur NormaleN(u, v) sind erhalt man:

Ni · tu = 0 (5.7)

Ni · tv = 0 (5.8)

Substitution von (Gleichung 5.5 und 5.6) in (Gleichung 5.7 und 5.8) und Einsetzender Spiegeldefinition (Gleichung 5.2) fuhrt zu dem Gleichungssystem:

V

Kf∑i=1

Kg∑j=1

cijf′i(u)gj(v) +

∂V

∂u

Kf∑i=1

Kg∑j=1

cijfi(u)gj(v)) +∂S

∂u

·N(u, v) = 0 (5.9)

V

Kf∑i=1

Kg∑j=1

cijfi(u)g′j(v) +∂V

∂v

Kf∑i=1

Kg∑j=1

cijfi(u)gj(v) +∂S

∂v

·N(u, v) = 0, (5.10)

das linear in den Kontrollpunktencij ist. Dieses Gleichungssystem wird mittels der Me-thode der kleinsten Fehlerquadrate gelost und fuhrt zu den benotigten Kontrollpunktencij.

Ablauf des Algorithmus Als Input des Algorithmus dient ein Satz von Bildmerkma-len fi : i = 1...k einer Aufnahme des Kalibrierkorpers. Jedes Bildmerkmalfi ist dieAbbildung des entsprechenden MerkmalsFi im Kalibrierkorper. Desweiteren wird dieSpiegeloberflache als planare Spiegelflache und die Entfernung des Spiegels von derKamera initial abgeschatzt.Verfolgt man nun von einem Bildmerkmalfi einen StrahlI(u, v) zur Spiegeloberflacheerhalt man einen SchnittpunktSr(u, v) mit dem Spiegel und einen Strahl R(u, v) der

Page 51: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.3 Kalibrierung catadioptrischer Sensoren 41

zum abgebildeten Szenenpunkt zeigt. Dieser Szenenpunkt stimmt im Allgemeinen nichtmit dem abgebildeten QuellmerkmalFi der realen Aufnahmeuberein. Durch die ge-naue Kenntniss der Geometrie des Kalibrierkorpers als auch des Kalibriermusters kannman einen modifizierten StrahlR (u, v), der vonSr(u, v) zu Fi zeigt und erhalt einemodifizierte Normale beiSr(u, v) durch:

N i =R i − Ii

|R i − Ii| (5.11)

Durch gleiches Vorgehen bei jedem Bildmerkmalfi erhalt man einen Satz von Norma-len Ni : i = 1...k durch die die Spiegeloberflache mittels des Gleichungssystems (5.9und 5.10) angepasst wird.Es handelt sich um einen iterativen Prozess, bei dem die Iteration beendet ist, sobald dieVeranderung in der Oberflachenapproximation unter einen zu bestimmenden Schwell-wert fallt.Eine Starke des Algorithmus besteht in der Moglichkeit der Verfeinerung der Oberflachen-approximation. Wird in der ersten Iteration die Spiegeloberflache noch durch ein B-Splinepatch abgeschatzt, besteht in den weiteren Iterationen die Moglichkeit die Patchan-zahl zu erhohen und somit eine großere Zahl von Bildmerkmalen in die Berechnungeinfließen zu lassen.Um den Algorithmus zu veranschaulichen, sollen die Schritte der Oberflachenrekon-struktion durch die Kontrollpunkte des B-Spline-Tensorprodukts nach den Iterationenvisualisiert werden.

Page 52: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

42 Kamerakalibrierung

Abbildung 5.10: Initialisierung der Spiegelapproximation

Abbildung 5.11: Interpolationspunkte nach einer Iteration

Abbildung 5.12: Interpolationspunkte nach funf Iterationen

Page 53: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.4 Kalibrierung der Kamera 43

5.4 Kalibrierung der Kamera

Nachdem die Spiegelform ermittelt ist, folgt die Kalibrierung der zugeordneten Kamera.Die Wahl der verwendeten Kalibriermethode wurde mit Bedacht gefallt. Denn wie be-reits erlautert, umfassen die Parameter des catadioptrischen Kameramodells nicht nurdie intrinsischen und extrinsischen Kameraparameter, sondern auch die Distanz zwi-schen Spiegel und Kamera und die Geometrie und Orientierung des Spiegels. Die be-reits im Abschnitt 5.2 vorgestellten Kalibriermethoden erlauben nur die Bestimmungder extrinsischen und intrinsischen Kameraparameter. Die Kalibrierung mittels Ana-lyse durch Synthese erlaubt auch die Bestimmung der Orientierung des Spiegels underspart somit weitere Arbeitsschritte.Nachdem das grobe Konzept derAnalyse durch Synthese-Technik vorgestellt wird, folgteine Beschreibung des Ablaufs der Kamerakalibrierung.

5.4.1 Analyse durch Synthese

Die Analyse durch Synthese-Technik beschreibt den generellen Ansatz Bildanalyse mit-tels Computergrafik zu betreiben.Als Ausgangspunkt dient eine parametrisierte Szenenbeschreibung, dessen Parameter-werte wahrend der Analyse bestimmt werden sollen.

5.4.2 Kalibrierung mittels Analyse durch Synthese

Im Gegensatz zu den traditionellen Kalibriermethoden, nutzt die Bestimmung der Ka-meraparameter durch Analyse durch Synthese [Eis02] die gesamte Bildinformation undnicht nur einen Satz von Punktkorrespondenzen. Dabei wird, detailliertes Wissenuberdie aufzunehmende Szene vorrausgesetzt, der Aufnahmeprozess simuliert. Es wird ver-sucht die synthetischen Bilder mit der Orginalaufnahme des Kalibrierkorpers inUber-einstimmung zu bringen um die gesuchten Kameraparameter zu gewinnen. In Abbil-dung 5.13 ist der schematische Ablauf des Alghoritmus erkennbar.

Page 54: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

44 Kamerakalibrierung

Abbildung 5.13: Analyse durch Synthese

5.4.3 Beschreibung des Algorithmus

Ahnlich wie bei der Bestimmung der Spiegelgeometrie, ist es notwendig den Aufnah-meprozess zu simulieren. Nun wird allerdings keine Beschreibungsform einer Oberflachegesucht, sondern die intrinsischen und extrinsischen Kameraparameter.Ausgehend von den Aufnahmen der Kamera, die kalibriert werden sollen, sind folgendeSchritte zur Kamerakalibrierung notwendig:

• Erstelle ein Modell, um den Aufnahmeprozess simulieren zu konnen.

• Simuliere den Aufnahmeprozess mit einem Satz Kameraparameter.

• Der Vergleich der realen und sythetischen Ansichten wird genutzt, um die Ka-meraparameter, in einer Analyse-durch-Synthese Schleife (Abbildung 5.14), zuoptimieren.

Page 55: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.4 Kalibrierung der Kamera 45

Abbildung 5.14: Analyse-durch-Synthese Schleife

Bestimmung der extrinsischen Kameraparameter

Es wird angenommen, dass die intrinsischen Kameraparameter schon bestimmt sind.Es wird also nur die relative Lage des Kalibrierkorpers zum Kamerakoordinatensystemgesucht.Die Koordinatenx des Kalibrierkorpers im Kamerakoordinatensystem korrespondierenzu den Koordinatenx0 im lokalen Koordinatensystem des Kalibrierkorpers entspre-chend:

x = R · x0 + t, (5.12)

wobeiR die Rotation undt die Translation zwischen Kamerakoordinatensystem undKalibrierkorper reprasentieren. DaR und t bestimmt werden sollen, werden dieseWerte durchR und t abgeschatzt und es ergibt sich:

x = R · x0 + t (5.13)

Der Aufnahmeprozess kann nun mit dem 3D-Modell des Kalibrierkorpers an der geschatz-ten Positionx simuliert werden. Die genaue Positionx steht mit den abgeschatztenWerten in Relation durch:

x = 4R(x− xc) + xc +4t, (5.14)

wobeixc = [xc yc zc]T = t dem Zentrum des Objekts entspricht.

4R = R · RT ist die Korrektur der abgeschatzten Rotationsmatrix.

Page 56: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

46 Kamerakalibrierung

4t = t− t ist die Korrektur des Translationsvektors.Die drei Parameter4Rx,4Ry und4Rz von4R sind die Eulerwinkel der Rotations-matrix.Durch Einsetzen der Gleichung (5.13) in (5.1) kann man die unbekannten 3D-Objektpunktex mit ihren korrespondierenden BildpunkteX = [X Y ]T in Beziehung setzen.

X = −fxx + (z − zc)4Ry − (y − yc)4Rz +4txz + (y − yc)4Rx − (x− xc)4Ry +4tz

(5.15)

Y = −fyy + (z − zc)4Rx − (x− xc)4Rz +4tyz + (y − yc)4Rx − (x− xc)4Ry +4tz

(5.16)

Substitution der 3D-Koordinaten durch:

x = − zX

fx

y = − zY

fy

, (5.17)

fuhrt zu den Verschiebungsvektorend = [dx dy]T , die gegeben sind durch:

dx = X−X ≈ fx

(−4Ry

(1− zc

z

)− 4Rz

fy

Yn − 4txz

)+X

(4Rx

fy

Yn − 4Ry

fx

Xn − 4tzz

)

(5.18)

dy = Y−Y ≈ fy

(−4Rx

(1− zc

z

)− 4Rz

fx

Yn − 4tyz

)+Y

(4Rx

fy

Yn − 4Ry

fx

Xn − 4tzz

)

(5.19), wobeiYn = Y + fy

yc

zundXn = X + fx

xc

zgilt.

Bestimmung der Parameter mit Hilfe von Gradienten Die extrinsischen Kamera-parameter beschreiben den Unterschied in Position und Orientierung in zwei BildernIundI. Daher konnen die sechs extrinsischen Kameraparameter durch die Intensitatsgra-dienten inI undI abgeschatzt werden. Setzt man die Intensitatsgradienten in Relationzu den Verschiebungsvektorend und entwickelt man sie mit der Taylor-Reihe resultiertdie optische Flussgleichung:

1

2

(∂I

∂X+

∂I

∂X

)dx +

1

2

(∂I

∂Y+

∂I

∂Y

)dy =

∂I

∂Xdx +

∂I

∂Ydy = I − I (5.20)

Substitution von den Gleichungen 5.18 und 5.19 in Gleichung 5.20 fuhrt zu linearenGleichungen fur die sechs unbekannten extrinsischen Kameraparameter:

a04Rx + a14Ry + a24Rz + a34tx + a44, ty + a54tz = I − I (5.21)

wobeia0 bisa5 gegeben sind durch:

a0 =∂I

∂X

X

fy

Yn +∂I

∂Y

(fy(1− zc

z) +

Yn

fy

Yn

)(5.22)

Page 57: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

5.4 Kalibrierung der Kamera 47

a1 = − ∂I

∂X

(fx

(1− zc)

z+

X

fx

Xn

)− ∂I

∂Y

Y

fx

Xn (5.23)

a2 = − ∂I

∂X

fx

fy

Yn +∂I

∂X

fx

fy

Xn (5.24)

a3 = − ∂I

∂X

fx

z(5.25)

a4 = − ∂I

∂Y

fy

z(5.26)

a5 = − ∂I

∂X

X

z− ∂I

∂Y

Y

z(5.27)

Das resultierende Gleichungssystem kann mit der Methode der kleinsten Fehlerquadrategelost werden.

Bestimmung der intrinsischen Kameraparameter Um die intrinsischen Kamerapa-rameter zu bestimmen, wird in die Berechnung der Verschiebungsvektoren (Gleichung5.18 und 5.19) die zusatzlichen Großen4f fur die Brennweite,4q fur das Bildsei-tenverhaltnis und4κi fur die Linsenverzerrung einbezogen. In Kombination mit deroptischen Flussgleichung (Gleichung 5.20) ergibt sich der folgende Term, der in Glei-chung 5.21 eingefugt wird:

a64f + a74q +∑i=1

a8,i4κi = I − I (5.28)

,wobeia6 bisa8 gegeben sind durch:

a6 =∂I

∂XX +

∂I

∂YY (5.29)

a7 =∂I

∂Y(5.30)

a8i =r2i

1 +∑

j=1 κjr2j

(∂I

∂XX +

∂I

∂YY

)(5.31)

Die intrinsischen Kameraparameter konnen wiederum mit der Methode der kleinstenFehlerquadrate bestimmt werden.

Page 58: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

48 Kamerakalibrierung

Page 59: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 6

Freie Navigation

6.1 Einleitung

Interaktive Visualisierungssysteme, wie Apples QuickTime VR, erlauben einem Be-nutzer sich in einer virtuellen Umgebung zu bewegen. Dies geschieht mit Hilfe einervirtuellen Kamera, die vom Benutzer kontrolliert wird. Als Ausgangsmaterial werdenhaufig Photografien verwendet um eine virtuelle Umgebung zu konstruieren. Anschlie-ßend konnen Ausschnitte dieser virtuellen Umgebung, durch Projektion auf ein geome-trisches Primitiv betrachtet werden.

Abbildung 6.1: Apples QuickTime VR

Beschrankt wird dieser Ansatz durch die alleinige Nutzbarkeit statischer Szenen.

Page 60: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

50 Freie Navigation

Abbildung 6.2: Virtuelle Kamera

6.2 Generierung perspektivischer Ansichten aus Pan-oramaaufnahmen

Die Synthese perspektivischer Ansichten aus omnidirektionalen Aufnahmen erforderteinen dreistufigen Prozess. Mittels der im vorigen Kapitel gewonnenen Erkenntnis,welcher Sichtstrahl in die Welt jedem Pixel zuzuordnen ist, erfolgt eine Konvertierungdes omnidirektionalen Bildes (Abbildung 6.3) in eine Panoramaansicht (Abbildung 6.4).Diese Aufnahmen dienen als Input des entwickelten Panoramaviewers.Die ZuordnungPixel→ Sichtstrahlwird dabei in einer Look-up-table gespeichert, umeine schnelle Berechnung zu ermoglichen.

Um dem Betrachter die gewohnten perspektivischen Ansichten zu ermoglichen,wird der gerade betrachtete Bildausschnitt mittels der Look-up-Tabelle auf das Displayprojiziert (Abbildung 6.5).

Page 61: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

6.2 Generierung perspektivischer Ansichten aus Panoramaaufnahmen 51

Abbildung 6.3: omnidirektionale Aufnahme

Abbildung 6.4: Panoramaansicht

Abbildung 6.5: perspektivische Ansicht

Page 62: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

52 Freie Navigation

6.3 Ortsbestimmung der Kamera

Damit der im Panoramaviewer sichtbare Bildausschnitt stets der aktuellen Position undBlickrichtung des Benutzers entspricht, mussen die Panoramen mit den Koordinatenihres Aufnahmestandpunktes assoziiert werden. Diese Informationen werden in ei-ner Konfigurationdatei gespeichert. Bei der Reprojektion des Panoramabildes kann derViewer auf diese Daten zuruckgreifen, um Bildausschnitte zu extrahieren.

6.4 Interpolation neuer Ansichten

Die in den vorigen Abschnitten erlauterte Generierung perspektivischer Ansichten istnur gultig, wenn der Betrachterstandpunkt mit einem Aufnahmestandpunkt eines Pan-oramasubereinstimmt.Ist dies nicht der Fall ist eine Interpolation der Panoramaansichten erforderlich. Es er-folgt eine bilineare Interpolation zweier benachbarter Panoramen.Es wird der in Kapitel drei theoretisch eingefuhrte BegriffMorphingwieder aufgegrif-fen und an einem praktischen Beispiel erlautert.Wie bereits beschrieben, ist dasMorphingeine Kombination von Verzerrung undUber-blendung zwischen einzelnen Bildelementen, die ein Quellbild in ein Zielbilduberfuhrt.In dieser Arbeit findet dasFarbmorphingAnwendung, die einfachste Morphing-Methode.Hierzu werden alle korrespondierenden Pixeluberblendet, also Pixeleigenschaften wieFarbe und Helligkeit Schritt fur Schritt interpoliert. Das Quellbild wird dazu mehr undmehr ausgeblendet, wahrend das Zielbild mehr und mehr eingeblendet wird.

Fur die Interpolationsschritte ergibt sich folgende Funktion :

θ(t) = a + t ∗ (b− a) (6.1)

,wobei fur a alle RGB-Werte des Quellbildes,fur b alle RGB-Werte des Zielbildes,fur t die Interpolationsschrittweite eingesetzt werden.Je nach Anzahl der gewunschten Zwischenbilder werden entsprechend viele Interpola-tionsschritte durchgefuhrt. In jeden Schritt wird mit der obigen Formel fur jedes Pixelim momentanen Zwischenbild der Rot-, Grun- und Blau-Anteil berechnet.

Page 63: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

6.4 Interpolation neuer Ansichten 53

Beispiel: Fur drei Interpolationsschritte wurde dieUberfuhrung folgendermaßenaussehen :

Abbildung 6.6: Farb-Morph

Ausgangsbild Zwischenschritt Zielbildt 0 0.5 1rot 255 128 0grun 255 192 128blau 0 64 128

Tabelle 6.1: Berechnung eines Zwischenbildes beim Farb-Morphing

Page 64: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

54 Freie Navigation

Zur Visualisierung dieses Prozesses und zu Beantwortung der Frage:Wie viele Re-ferenzbilder sind notig, um Ghosting zu vermeiden?, sei mit folgendem Experimentgedient.

Gegeben sei sei ein Quellbild, sowie im Abstand von 1cm, 5cm, 30cm aufgenommeneZielbilder. Das Farb-Morphing soll mit funf Interpolationsschritten durchgefuhrt wer-den.

Abbildung 6.7: Ausgangsbilder

Page 65: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

6.4 Interpolation neuer Ansichten 55

Abbildung 6.8: Interpolation zwischen 1cm entfernten Referenzbildern

Page 66: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

56 Freie Navigation

Abbildung 6.9: Interpolation zwischen 5cm entfernten Referenzbildern

Page 67: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

6.4 Interpolation neuer Ansichten 57

Abbildung 6.10: Interpolation zwischen 15cm entfernten Referenzbildern

Page 68: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

58 Freie Navigation

Fazit: Wie an den vorangegangenen Bildserien zu sehen ist, eignet sich nicht jederbeliebige Abstand fur das Farbmorphing.Wahrend bei 1cm entfernten Referenzbildern keineGhostingzu erkennen ist, ist schonbei 5cm EntfernungGhostingzu sehen. Eine geringere Interpolationsschrittweite wurdeden Effekt zwar vermindern, aber nicht ganz verhindern konnen.Referenzbilder mit 15cm Entfernung eignen sich nicht fur das Farb-Morphing.

Page 69: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

6.5 Freiheitsgrade der virtuellen Kamera 59

6.5 Freiheitsgrade der virtuellen Kamera

Somit lassen sich die Moglichkeiten zur Erkundung virtueller Umgebungen, die vomentwickelten Panoramaviewer bereitgestellt werden, folgendermaßen zusammenfassen:

• -freie Blickwinkelwahl, entsprechend demfield of viewder catadioptrischen Ka-mera

• -freie Bewegung zwischen den Aufnahmestandpunkten der catadioptrischen Ka-mera

• -beliebige Detailbetrachtung der Szenerie, durch Veranderung der Blickpyramide(siehe untere Abbildungen)

Abbildung 6.11: Ausgangsbild

Abbildung 6.12: Detailbetrachtung

Page 70: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

60 Freie Navigation

Page 71: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 7

Ergebnisse

7.1 Bedienung des Programms

Die Bedienung der Applikation gestaltet sich als sehr einfach.Die Wahl der Blickrichtung erfolgt durch die Maus. Das Zoomen und die Bewegunginnerhalb der Szenerie wird durch Tastaturbefehle gesteuert.

7.2 Ergebnis

Als Ergebniss dieser Diplomarbeit sollen die Sceenshots einer virtuellen Entdeckungs-tour durch das Labor des Heinrich-Hertz-Instituts in Berlin dienen.

Abbildung 7.1: Screenshots einer Kamerafahrt

Page 72: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

62 Ergebnisse

Abbildung 7.2: Screenshots einer Kamerafahrt

Page 73: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

7.2 Ergebnis 63

Abbildung 7.3: Screenshots einer Kamerafahrt

Page 74: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

64 Ergebnisse

Abbildung 7.4: Screenshots einer Kamerafahrt

Abbildung 7.5: Screenshots einer Kamerafahrt

Page 75: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Kapitel 8

Zusammenfassung und Ausblick

Diese Diplomarbeit bietet einen Einblick in das Gebiet des Bildbasierten Renderingsund Catadioptrischer Systeme. Dabei wurde zunachst mit einem allgemeinenUberblickin den Themenbereich begonnen und anschließend konkrete Verfahren vorgestellt, diezur freien Navigation in virtuellen Welten notwendig sind.Schließlich wurde auf die Implementierung des Systems eingegangen, das die bildba-sierte Interpolation neuer Ansichten aus mehreren Panoramaaufnahmen ermoglicht.Zuerst wurde ein Kalibrierkorper entworfen, der die Kalibrierung catadioptrischer Sy-steme wesentlich vereinfacht.Es wurde eine Kalibrierstrategie entwickelt, die fur beliebig geformte Spiegel die ge-naue Abbildung von Sichtstrahlen auf die Bildebene ermittelt. Die Implementierungdes Raytracers diente der Ermittlung der Spiegelform, sowie der Kalibrierung mittelsAnalyse durch Synthese.Durch die Kalibrierung des catadioptrischen Systems war es moglich, einen Panorama-viever zu implementieren, der die Exploration einer Umgebung auf Pfaden ermoglichtund neue Ansichten interpoliert.

Die Funktionalitat des Systems ist in vielerlei Hinsicht erweiterbar. So konnte mandas bestehende System, um die Moglichkeit des stereoskopischen Rendering erganzen.Ein weiterer wichtiger Gesichtspunkt, der bei dem vorgestellten System noch nicht aus-reichend berucksichtigt wurde, ist die Speichereffizienz.

Page 76: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

66 Zusammenfassung und Ausblick

Page 77: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

Literaturverzeichnis

[AC01] D. Aliaga and I. Carlbom. Plenoptic stitching. Computer Graphics (SIG-GRAPH 2001), 2001.

[Ali01] D. Aliaga. Accurate catadioptric calibration for real-time pose estimation inroom-size environments. (ICCV 01), 2001. IEEE International Conference onComputer Vision. July, 2001.

[CG99] K. Daniilidis C. Geyer. Catadioptric camera calibration. IEEE, 1999.

[Che95] S. E. Chen. Quicktime vr. Computer Graphics (SIGGRAPH 95), 1995.

[CZ03] T. Chen C. Zhang. A survey on image-based rendering - representation, samp-ling and compression. 2003.

[Eis02] Peter Eisert. Model-based camera calibration using analysis by synthesis tech-niques. 2002.

[EJ91] Adelson E.H. and Bergen J. The plenoptic function and the elements of earlyvision. MIT Press, 1991. Computational Models of Visual Processing. Came-bridge.

[GD98] C. Geyer and K. Daniliidis. Catadioptric camera calibration. ICCV 98, 1998.

[HS99] L. He H. Shum. Rendering with concentric mosaics. 1999.

[HS00] S. Kang H. Shum. A review of image-based rendering techniques. 2000.

[IM95] G. Bishop I. McMillen. Plenoptic modeling: An image-based rendering sy-stem. 1995.

[Lip80] A. Lippman. Movie maps: An application of the optical videodisc to computergraphics. SIGGRAPH 80, 1980.

[ML80] P. Hanrahan M. Levoy. Light field rendering. SIGGRAPH 96, 1980.

[PS04] S. Ramalingam P. Sturm. A generic concept for camera calibration. 2004.

Page 78: Bildbasiertes Rendering fur die¨ Navigation in virtuellen ...cg/Diplomarbeiten/DiplomarbeitSchwebs.pdf · Die Generierung der neuen Ansichten, erfolgt durch einen Prozess, der als

68 LITERATURVERZEICHNIS

[RS03] M. Grossberg R. Swaminathan, S. Nayar. Framework for designing catadiop-tric projection and imaging systems. IEEE, 2003.

[SB99] S. Nayar S. Baker. A theory of single-viewpoint catadioptric image formation.1999.

[SJG96] R. Szeliski S. J. Gortler, R. Grzeszczuk. The lumigraph. (SIGGRAPH 96),1996.

[Slu98] P. Slusallek. View interpolation. Stanford, 1998.