Panoramen - Universität Osnabrück

Transcrição

Panoramen - Universität Osnabrück
Panoramen
Dorit Borrmann
Universität Osnabrück
Virtuelle Panoramen bieten einen 360 Grad Rundumblick auf Webseiten. Hierzu werden zunächst
teilweise überlappende Einzelbilder durch einen Stitching-Prozess zu einem länglichen Pixelbild
zusammengesetzt, welches dann eine interaktive Rundumsicht durch perspektive Verzerrung im
abspielenden Plugin ermöglicht. In dieser Arbeit werden Panoramen vorgestellt. Hierbei wird zuerst
auf die grundlegenden Schritte beim Erstellen von Panoramen und dabei auch auf die
Schwierikeiten eingegangen. Anschließend werden Werkzeuge vorgestellt, mit denen diese Schritte
durchgeführt werden können. Abschließend wird auf die Darstellung im Web eingegangen.
Inhaltsverzeichnis
1 Einleitung................................................................................................................................................... 2
1.1 Panoramaformate.............................................................................................................................. 2
2 Erstellen eines Panoramabildes..............................................................................................................
2.1 Bilder aufnehmen...............................................................................................................................
2.2 Stitching.............................................................................................................................................
2.3 Blending.............................................................................................................................................
2.4 Cropping............................................................................................................................................
4
4
5
7
9
3 Tools zur automatischen Panoramaerstellung.......................................................................................
3.1 Panoramen aus Einzelbildern............................................................................................................
3.1.1 Hugin........................................................................................................................................
3.1.2 PTgui........................................................................................................................................
3.1.3 PanoTools.................................................................................................................................
3.1.4 Enblend....................................................................................................................................
3.1.5 Autopano..................................................................................................................................
3.2 Panorama-Filme.................................................................................................................................
3.2.1 Pano2VR..................................................................................................................................
3.3 Microsoft Photosynth.........................................................................................................................
10
10
10
14
17
17
18
18
18
22
4 Darstellung im Web...................................................................................................................................
4.1 Bild.....................................................................................................................................................
4.2 QuickTime..........................................................................................................................................
4.3 Flash..................................................................................................................................................
4.4 Applet.................................................................................................................................................
24
24
24
25
26
5 Zusammenfassung.................................................................................................................................... 28
1 Einleitung
2
1 Einleitung
Panoramabilder sind Bilder mit besonders großem Sichtfeld oder Blickwinkel. Sie unterliegen einer langen
Tradition. Landschaften und historische Ereignisse wurden oftmals als riesige Gemälde dargestellt, die teilweise
ganze Säle schmückten. Mit fortschreitender Entwicklung der Fotografie jedoch verloren Panoramen an
Bedeutung, da herkömmliche Kameras über geringe Öffnungswinkel verfügen. Das Interesse an Panoramen
verschwand hingegen nicht vollkommen. So wurde 1845 vom Optiker Friedrich Martens die erste
Panoramakamera entwickelt. Mit Hilfe eines schwenkbaren Objektivs konnte er mit dieser Kamera
Panoramabilder aufnehmen, wie das Panorama von Paris in 'Abb. 1'.
Abb. 1: Panoramabild von Paris, circa 1845-1850, Fotograf unbekannt
Mit der Verbreitung von Digitalkameras entwickelt sich ein neuer Trend in der Panoramafotografie. Einzelbilder
werden zu Panoramen zusammengefügt. Diese Arbeit beschreibt diesen Vorgang unter besonderer
Berücksichtigung der anschließenden Darstellung im Web. Dabei werden zuerst die einzelnen Schritte erläutert,
die notwendig sind um ein Panorama aus Einzelbildern zu erstellen. Anschließend werden einige Programme
vorgestellt, mit denen Panoramen automatisch erstellt werden können. Zum Schluss wird auf die konkrete
Darstellung im Web eingegangen.
1.1 Panoramaformate
Für die Darstellung von Panoramen kommen eine Vielzahl von Projektionstypen in Frage, die eine
unterschiedliche Betrachtungsweise ermöglichen. In diesem Abschnitt werden die vier grundlegenden Typen
vorgestellt. Die weiteren Typen sind zum größten Teil eine Ableitung dieser, die durch leichte Änderungen der
Parameter entstehen.
1. Zylindrische Panoramen: Zylindrische Panoramen erwecken den Eindruck als befände man sich im
inneren eines Zylinders auf dessen Fläche die Umgebung projiziert ist. Eine komplette Rundsicht hat einen
horizontalen Blickwinkel von 360 Grad. Die vertikale Projektion ist hingegen auf die Ränder des Zylinders
eingeschränkt.
2. Sphärische Panoramen: Sphärische Panoramen sind auf die Oberfläche einer Kugel projiziert, in deren
Inneren der Betrachter sich befindet. Der Rundblick ist auf 360 Grad horizontal und 180 Grad vertikal
beschränkt. Man kann sich also komplett im Kreis drehen und auch senkrecht nach oben und nach unten
blicken.
3. Kubische Panoramen: Bei kubischen Panoramen befindet man sich im Zentrum eines Würfels, auf dessen
6 Seiten die Umgebung mit einem Blickwinkel von jeweils 90°, horizontal und vertikal, projiziert wird. Dies
ermöglicht ebenfalls wie beim sphärischen Panorama ein Blickfeld von 360° (horizontal) und 180°(vertikal).
Für die Speicherung solcher kubischen Panoramen werden die Würfelseiten entweder einzeln abgespeichert
oder als Bildstreifen. Diese Streifen stellen dann alle Seiten des Würfels als Kreuz, T (siehe 'Abb. 2') oder
Streifen dar.
1 Einleitung
3
Abb. 2: Würfelseiten eines kubischen Panoramas als T dargestellt.
Weitere Formate erlauben die Betrachtung einer Kugel von außen oder verwenden unterschiedlichen
Verzerrungen der hier beschriebenen Formate.
2 Erstellen eines Panoramabildes
4
2 Erstellen eines Panoramabildes
So einfach die Idee ein Panoramabild aus Einzelbildern zu erstellen doch erscheint, so erkennt man beim
Versuch die Bilder zusammen zu setzen sehr schnell die Schwierigkeiten. 'Abb. 3' zeigt auf der linken Seite
acht Einzelaufnahmen des Osnabrücker Schlosses und in der Mitte das Ergebnis, wenn man diese übereinander
legt. Im Gegensatz dazu zeigt das rechte Bild ein tatsächliches Panoramabild.
Abb. 3: Panorama vom Osnabrücker Schloss
Im Folgenden werden die Probleme beim Erstellen von Panoramabildern erläutert und die Schritte vorgestellt,
mit denen diese Probleme gelöst werden können.
1.
2.
3.
4.
Bilder aufnehmen
Bilder zusammenfügen (Stitching)
Farbe korrigieren (Blending)
Ränder anpassen (Cropping)
Diese vier Schritte zum Erstellen eines Panoramabildes, die hier nur aufgelistet sind, werden in den nächsten
Abschnitten detailliert beschrieben.
2.1 Bilder aufnehmen
Im ersten Schritt müssen Bilder aufgenommen werden. Dabei gilt es darauf zu achten, dass jedes Foto von
der gleichen Position aufgenommen wird, da durch mehrere Bilder nur der Blickwinkel vergrößert werden soll.
Verändert man die Kameraposition, führt das dazu, dass Bilder sich nicht mehr zusammenfügen lassen. So
passiert es, dass Objekte, in einem Bild ein anderes Objekt verdecken, im anderen jedoch nicht. Des Weiteren
führen Objekte die von unterschiedlichern Positionen betrachtet werden zu unnatürlich wirkenden Bildern.
Dieses Problem ist in 'Abb. 4' veranschaulicht, wo das Ergebnisbild der beiden Einzelbilder drei Würfelseiten
zeigt.
Abb. 4: Links: Aufsicht auf einen Würfel mit vier verschieden farbenen Seiten und zwei Kamerapositionen.
Rechts: Zusammengesetztes Bild aus den beiden Kamerabildern.
2 Erstellen eines Panoramabildes
5
2.2 Stitching
Damit die Bilder aneinandergefügt werden können, ist es notwendig Homomorphien zu erkennen. Homomorphien
sind Strukturähnlichkeiten in zwei Bildern, die darauf schließen lassen, dass die beiden Bilder an eben dieser
Stelle das Gleiche abbilden. Das automatisierte Finden von Homomorphien geschieht über Analyse der Bilder
mit Mitteln der Computer Vision. Es gibt verschiedene Möglichkeiten Strukturmerkmale in Bildern
wiederzuerkennen, die mehr oder weniger geeignet sind.
Pixelwerte: Die einfachste aber zugleich auch fehlerbehafteste Methode ist der Vergleich von Pixelwerten.
Hierbei spielen die unterschiedlichen Eigenschaften der Pixel eine Rolle, die durch Darstellung mit verschiedenen
Farbmodellen zum Vorschein kommen. Vergleichbar sind Farbwerte, Helligkeit oder Sättigung. Auf eine weitere
Beschreibung der Farbräume wird hier jedoch verzichtet, da der Vergleich von Pixelwerten deutliche Nachteile
1
mit sich bringt. Der interessierte Leser sei auf das Computergrafikskript verwiesen.
Kanten, Ecken, Linien: Kanten sind markante Stellen in Bildern. Große einfarbige Flächen lassen sich nicht
fehlerfrei aneinanderfügen. Erst durch strukturierte Merkmale kann man Bildbereiche aus zwei Bildern eindeutig
einander zuordnen. Merkmale, die intuitiv verwendet werden können, sind somit Kanten in Bildern.
Zur Detektion von Kanten gibt es einige wohlbekannte Verfahren, die auf der Suche nach Maxima der Gradienten
2
basieren . Bei der Canny Edge Detection wird die Ableitung ein Gaussfilters auf das Bild angewandt. Ein
Bildfilter manipuliert Bildpixel durch eine Funktion in Anhängigkeit der Nachbarpixel. Bei der Ableitung einer
2-dimensionalen Gaussfunktion (Vgl. 'Abb. 5') bestimmt die Magnitude der Gaussfunktion den Eintrag in die
Filtermaske. Auf diese Weise werden Bereiche markiert, die einen scharfen Übergang haben, also Kanten.
Abb. 5: 2-dimensionale Gaussfunktion
Auch Ecken lassen sich erkennen, indem man die Gradienten in x- und y-Richtung des Bildes bestimmt und
diese beide mit einem Schwellwert vergleicht. Vergleicht man nun die Anordnung von Kanten oder Ecken in
zwei Bildern so lassen sich durch Beziehungen, Abstände und Orientierungen zwischen Kanten oder Ecken
Beziehungen zwischen zwei Bildern erstellen. Somit wird deutlich, wie diese zueinander gehören. Dabei ist die
Verwendung von Ecken etwas zuverlässiger. Linien bereiten dann Probleme, wenn alle Merkmale parallel
zueinander sind. Man kann die Bilder entlang der Linien beliebig aufeinander verschieben. Werden jedoch
zwei Ecken als korrespondierend erkannt, so ist die Zuordnung eindeutig.
Geometrische Formmerkmale: Es gibt unterschiedliche geometrische Formmerkmale, die verwendet werden
3
können um geometrische Objekte zu beschreiben . Zu den einfachsten Merkmalen gehören Objektfläche und
Umfang, Kreisförmigkeit, Seitenverhältnis, Füllungsgrad und Radienverhältnis. Oberfläche und Umfang sind
zwar invariant gegenüber Rotation und Translation, nicht aber gegenüber Skalierung. Kreisförmigkeit stellt ein
Verhältnis aus Fläche und Umfang einer Kontur dar, reicht von 0 bei einer Linie bis zu 1 bei einem Kreis und
ist invariant gegenüber Rotation, Skalierung und Translation. Das Seitenverhältnis eines Rechtecks, das eine
Kontur umschließt ist skalierungs- und translationsinvariant. Rotationsinvarianz erreicht man erst wenn man
1 http://www-lehre.inf.uos.de/~cg/2008/skript/node55.html
2 David A. Forsynth, Jean Ponce, 2003. Computer Vision: A Modern Approach
3 Vgl. Stefan Stiene, Januar 2006. Konturbasierte Objekterkennung in Tiefenbildern eines 3D Laserscanners, Masterthesis.
2 Erstellen eines Panoramabildes
6
die Orientierung der Rechtecke beliebig hält. Der Füllungsgrad kann als Verhältnis der Fläche zu diesem
umschließenden Rechteck bestimmt werden. Invarianz ist also identisch zu der des Seitenverhältnisses. Das
Radienverhältnis ist das Verhältnis zwischen dem größten Kreis der in die Kontur passt und dem kleinsten
Kreis der die Kontur umfasst und ist rotations-, skalierungs- und translationsinvariant.
Erweiterte Formmerkmale sind sogenannte geometrische Momente. Reguläre oder diskrete geometrische
Momente einer zweidimensionalen Bildfunktion B(x,y), werden berechnet durch
M X
N
X
mp,q =
B(x, y)xp y q mit p, q = 0, 1, 2, ...
x=1 y=1
Dabei bezeichnet N die Zeilen- und M die Spaltenanzahl. Das Moment besitzt die Ordnung j=(p+q), und zu
jeder Ordnung j gibt es j+1 Momente. Durch Verschiebung der x und y Koordinaten um den Schwerpunkt
werden diese Momente zu zentralen Momenten umgewandelt, die translationsinvariant sind. Durch Normierung
erreicht man auch skalierungsinvarianz. Rotationsinvarianz wird jedoch erst durch geeignete Kombination zum
4
Beispiel nach Hu erreicht.
Selbst wenn diese Merkmale invariant gegenüber Skalierung, Translation und Rotation sind, so ist die
Bestimmung doch oftmals sehr aufwändig. Es müssen zuerst Flächen extrahiert werden, von denen dann die
Eigenschaften bestimmt werden und diese mit Flächen aus anderen Bildern verglichen werden.
5
SIFT-Merkmale: SIFT (Scale-invariant feature transform) Merkmale sind in der Computer Vision häufig
verwendete Merkmale, deren großer Vorteil darin liegt, dass sie invariant gegenüber Rotation, Skalierung und
auch gegenüber Belichtungsunterschieden sind. Das heißt ein Merkmal, beispielsweise die Kante eines Objekts,
das in einem Bild erkannt wird, wird auch in einem korrespondierenden Bild erkannt, in dem die Szene rotiert
oder skaliert ist und das unterschiedliche Belichtung aufweist. Die Extraktion von SIFT-Merkmalen besteht aus
vier Schritten, die im Folgenden erläutert werden.
1. Scale-Space extrema detection: Im ersten Schritt der Berechnung werden Extrema in allen Orientierungen
und Skalierungen gesucht. Mit Hilfe von Difference of Gaussion Funktionen (DoG) werden potentielle interessante
Punkte detektiert, die invariant gegenüber Rotation und Skalierung sind. DoG bedeutet die Differenz aus zwei
Faltungen des gleichen Bildes mit unterschiedlichen Gauss-Filtern.
2. Keypoint localization: Bei jedem potentiellen Keypoint wird ein Modell zur Bestimmung von Ort und Skalierung
erstellt. Anhand eines Stabilitätsmessung werden Keypoints ausgewählt. Dabei werden Kanten, die einen
geringen Stabilitätswert haben elimiert und Ecken bevorzugt hinzugefuegt.
3. Orientation assignment: Entsprechend der Richtungen der lokalen Bildgradienten in der Umgebung eines
jeden Keypoints werden dem Keypoint eine oder mehrere Richtungen zugewiesen. Bei der weiteren Verwendung
werden die Bildausschnitte relativ zu der Hauptrichtung eines jeden Keypoints transformiert. Dies garantiert
Invarianz gegenüber Rotation.
4. Keypoint descriptor: Die lokalen Bildgradienten werden mit der ausgewählten Skalierung in der Umgebung
um jeden Keypoint gemessen. Daraus erstellt man Keypoint-Deskriptoren, anhand derer man Signifikante
Änderungen im Bild klassifizieren kann, die aber invariant gegenüber Belichtungsunterschieden des gesamten
Bildes sind.
'Abb. 6' zeigt die Bildgradienten eines Beispielbildes und die daraus enstandenen Keypoint-Deskriptoren. Aus
diesen Merkmalen erstellt man nun einen kD-Baum, in dem man nach Nachbarn suchen kann um
Korrespondenzen zu bestimmen.
4 Hu, M.K., 1962. Visual pattern recognition by moments invariants. IRE Trans. Information Theory, 8: 179- 87.
5 David G. Lowe, 2004. Distinctive Image Feature Tranform from Scale-Invariant Keyppints.
2 Erstellen eines Panoramabildes
7
Abb. 6: Links: Bildgradienten und daraus resultierende Keypoint-Deskriptoren. Rechts: Bild mit darin detektierten
SIFT-Merkmalen.
Geometrische Transformation: Nachdem Korrespondenzen in Nachbarbildern bestimmt worden sind, muss
ein Bild so transformiert werden, dass seine Merkmale auf die des anderen Bildes abgebildet werden. Dies
entspricht der Transformation eines Rechtecks auf ein beliebiges Viereck. Sei g(x,y) eine Transformation die
auf eines der Bilder angewandt werden soll und k die Anzahl der Merkmale, dann gilt es das Minimum von
min
k
X
2
g(xil , yil ) − (x′jl , yj′ l )
l=1
zu bestimmen, das heißt eine Transformation, welche die beiden Bilder so aufeinander abbildet, dass der
Abstand zwischen den korrespondierenden Merkmalspunkten minimal ist.
2.3 Blending
Sollen zwei Bilder aneinandergefügt werden, so entstehen deutliche Ränder an den Übergängen von einem
zum anderen Bild. Grund dafür sind Belichtungsunterschiede aber auch natürliche Faktoren, wie Vignettierung.
Vignettierung ist ein Effekt der durch die Krümmung der Kameralinse verursacht wird und zu einem
Helligkeitsanstieg an den Bildrändern führt. Um diese Effekte im zusammengesetzten Bild zu vertuschen,
müssen die Übergänge angepasst werden. Dabei gilt es zu beachten, dass bei Bildern mit hoher Raumfrequenz
weichere Übergänge erwartet werden, als bei Bereichen mit niedriger Raumfrequenz. Des Weiteren stellen
sich bewegende Objekte Probleme dar.
6
Das hier beschriebene Verfahren verfolgt die Idee, die Einzelbilder nach Raumfrequenz zu unterteilen und
mit unterschiedlichen Blendmasken zu überlagern. Bereiche mit bewegten Objekten müssen dafür zuerst
manuell aus einem der beiden Bilder entfernt werden. Als erstes wird aus den beiden zu überlagernden Bilder
eine Transitionsline berechnet, die Linie entlang derer die Bilder aneinandergefügt werden sollen. Nun wird
basierend auf dieser Transitionslinie eine Blendmaske erstellt, die auf einer Seite der Transitionslinie schwarz,
auf der anderen Seite weiss ist. Die Transitionslinie soll dabei möglichst weit entfernt von den Rändern der
Überlappenden Ausschnitte liegen.
7
Aus der so erstellten Blendmaske wird eine Gauss-Pyramide gebildet . Dabei wird das Bild mit einem Gauss-Filter
Tiefpass gefiltert. In jeder Ebene wird das Bild verkleinert und somit der Übergang zwischen schwarz und weiss
weicher. 'Abb. 7' zeigt eine exemplarische Blendmaske für die erste und die vierte Ebene. Dabei wurde die
Blendmaske für die vierte Ebene vergrößert um die Unterschiede in der Breite der Maske zu verdeutlichen.
6 Vgl. http://enblend.sourceforge.net/details.htm
7 David A. Forsynth, Jean Ponce, 2003. Computer Vision: A Modern Approach
2 Erstellen eines Panoramabildes
8
Abb. 7: Erste (links) und vierte (rechts) Ebene einer Gauss-Pyramide für eine exemplarische Blendmaske
Die Ebenen der Gauss-Pyramide sollen nun mit den beiden Fotos kombiniert werden. Dazu muss auch aus
jedem Foto eine Bild-Pyramide erstellt werden. Hierbei soll jede Ebene eine unterschiedlich hohe Raumfrequenz
besitzen. Formell bedeutet Raumfrequenz den kleinsten räumlichen Abstand, nach dem sich räumlich periodische
Erscheinungen wiederholen. Für Fotos lässt sich daraus ableiten, dass Teile mit besonders feiner Struktur eine
hohe Raumfrequenz, also viele kleine Kanten haben, während Bereiche mit niedriger Raumfrequenz sanfte
große Flächen ohne Übergänge besitzen, so zum Beispiel bei weichen Bereichen, wie dem Himmel. Von den
beiden aneinanderzufügenden Bildern wird jeweils eine Laplace-Pyramide gebildet um die Bilder nach
Raumfrequenz aufzubrechen. Hierzu wird wiederholt ein Hochpassfilter angewandt. Jede Filterung wählt aus
dem Bild die Elemente mit der höchsten Raumfrequenz aus und reicht den Rest weiter an die folgende Ebene.
Da jede tiefere Ebene über weniger Informationen verfügt, die feinsten Kanten entfernt wurden, kann das Bild
skaliert werden, so dass die Struktur einer Pyramide entsteht. Das linke Bild in 'Abb. 8' zeigt die oberste Ebene
einer Laplace-Pyramide für ein Beispielbild. Es wird deutlich, dass hier nur die feinsten Kanten abgebildet sind,
also nur die höchste Raumfrequenz.
Die unterste Ebene besteht aus der geringsten Anzahl von Pixeln, repräsentiert aber die größten Flächen im
Originalbild, die Bereiche mit den weichsten Übergängen. Dies liegt daran, das jedes Pixel eine große Anzahl
von Pixeln aus dem Originalbild beeinflusst. Dies ist demonstriert in 'Abb. 8', wo aus dem Beispielbild nur noch
die Bereiche mit niedrigster Raumfrequenz übrig geblieben sind.
Abb. 8: Links: Oberste Ebene der Laplace-Pyramide eines Beispielbildes. Nur die Merkmale mit der höchsten
Raumfrequenz, also die feinsten Strukturen sind hier enthalten. Rechts: Die Komponenten des Beispielbildes
mit niedrigster Raumfrequenz.
Das tatsächliche Blending ist nun die Kombination der beiden Pyramiden. Hierbei werden die Bilder ebenenweise
zusammengesetzt. Die unterste Ebene der Laplace-Pyramide wird mit der untersten Ebene der Gauss-Pyramide
geblendet. Dabei wird jedes Pixel des Ergebnisbildes entsprechend der Blendmaske unterschiedlich stark von
den beiden Originalbildern beeinflusst. Ein schwarzes Pixel in der Blendmaske bedeutet, dass das Pixel komplett
aus dem linken Originalbild übernommen wird, bei weißen Pixeln komplett aus dem rechten. Bei Grauwerten
wird ein gewichteter Mittelwert aus den Farbwerten der Pixel aus den beiden Originalbildern übernommen.
Ebenso verfährt man mit den anderen Ebenen der Bild- und Blendmaskenpyramiden. Auf diese Weise erhält
man weiche Übergänge bei hoher Raumfreqeunz und schärfere Übergänge bei niedrigerer Raumfrequenz.
Um das Endergebnis zu erhalten müssen nun noch die kombinierten Ebenen überlagert werden.
2 Erstellen eines Panoramabildes
9
2.4 Cropping
Beim Stitchen der Einzelbilder zum Panoramabild werden Rechtecke auf beliebige Vierecke projiziert. Aus
diesem Grund verfügt das Panorama nicht über gerade Ränder. Für ein schönes Panoramabild müssen folglich
die Ränder geglättet werden. Dies gilt es auch bereits bei der Aufnahme der Bilder zu berücksichtigen. Es sollte
ausreichend Rand zur Verfügung stehen, der abgeschnitten weden kann ohne dabei das Motiv des Panoramas
zu abzuschneiden.
3 Tools zur automatischen Panoramaerstellung
10
3 Tools zur automatischen Panoramaerstellung
Panoramen manuell zu erstellen ist eine schwierige Aufgabe. Mit Mitteln der Computergrafik und der Computer
Vision lässt sich dieses jedoch stark vereinfachen. In diesem Kapitel werden zuerst Werkzeuge vorgestellt, mit
denen Einzelbildern zu Panoramen zusammengefügt werden. Im Anschluss daran werden Möglichkeiten zur
Konvertierung dieser Bilder in Panoramafilme vorgestellt.
3.1 Panoramen aus Einzelbildern
Zur Erstellung von Panoramen aus Einzelbildern gibt es unterschiedliche Programme, von denen einige hier
vorgestellt werden.
8
Hugin ist ein plattformunabhängiges OpenSource Projekt mit dem man basierend auf den PanoTools
Panoramabilder aus Einzelbildern zusammenfügen kann. Dabei können der Reihe nach alle in Kapitel 2
vorgestellten Schritte durchgeführt werden. Die Verwendung dieses Programmes wird im Abschnitt Hugin im
Detail beschrieben.
9
PTgui ist eine Anwendung zum Stitchen von Panoramen. Es ist entstanden aus dem Versuch eine graphische
Oberfläche für die Panorama Tools zu erstellen. Inzwischen ist es zu einer eigenständigen Stiching Anwendung
entwickelt worden, in der weiterhin die Programme der Panorama Tools verwendet werden können.
10
Die PanoTools , ursprünglich als Panorama Tools entwickelt, sind eine Sammlung von Anwendungen zu Erund Darstellung von Panoramen. Sie stellen Funktionalitäten für alle Schritte der Panoramaerstellung zur
Verfügung. Sowohl Hugin als auch PTGui können als graphische Oberfläche für diese Applikationen verwendet
werden.
11
Enblend ist eine Anwendung zur Komposition zweier überlappender Bilder ohne scharfe Übergänge durch
Überblenden. Enblend ist in Hugin und PTGui integrierbar, kann aber auch über Kommandozeilenbefehl als
eigene Anwendung gestartet werden.
12
Autopano
ist eine kommandozeilenbasierte Anwendung zur Extraktion von SIFT-Merkmalen aus Bildern.
3.1.1 Hugin
Nach dem Starten von Hugin erscheint zuallererst die Hauptoberfläche ('Abb. 9'), von der aus alle weiteren
Schritte möglich sind. In diesem Kapitel werden zuerst die notwendigen Schritte beschrieben und dann die
Schritte, die allein der Verbesserung des Ergebnisses dienen.
8 http://hugin.sourceforge.net/
9 http://www.ptgui.com/
10 http://panotools.sourceforge.net/
11 http://enblend.sourceforge.net/
12 http://autopano.kolor.com/
3 Tools zur automatischen Panoramaerstellung
11
Abb. 9: Hauptfenster von Hugin
Bilder laden: Durch Druck auf die Schaltfläche "Bilder laden" öffnet sich ein Fenster ('Abb. 10'), in dem man
seine Festplatte nach Bildern durchsuchen und diese gleichzeitig in die Applikation laden kann. Bestätigt man
die Auswahl öffnet sich ein Weiteres Fenster, in dem man Kameraeigenschaften angeben muss. Diese bestehen
aus dem Objektivtyp, der Brennweite und dem Öffnungswinkel der Kamera. Der Einfluss dieser Angaben auf
das Ergebnis ist jedoch in der Regel gering.
Abb. 10: Einstellung der Linseninformationen
Ausrichten: Beim Laden der Bilder werden automatisch Kontrollpunkte erstellt, anhand dieser nun die
Ausrichtung der Bilder nach Druck auf den Knopf "Ausrichten" berechnet wird.
Erstelle das Panoramabild: Im letzten Schritt wird nun noch das Panoramabild erstellt. Ein Druck auf "Erstelle
das Panoramabild" öffnet ein Fenster, in dem weitere Einstellungen getätigt werden können.
3 Tools zur automatischen Panoramaerstellung
12
Abb. 11: Fenster zur Eingabe der Parameter für das Ausgabepanorama
Dabei wird in das Register "Zusammenfassung" gewechselt. Neben der Größe und der Kompression des
Ergebnisbildes kann auch der Algorithmus fürs Stitching ausgewählt werden sowie die Kurve für die Interpolation
beim Zusammenfügen. Außerdem kann angegeben werden, ob die Übergänge zwischen den Bildern mit
Enblend geglättet werden sollen.
Feinjustierungen: Die hier beschriebenen Schritte reichen aus um schnell ein Panoramabild aus Einzelbildern
zu erstellen. Für gute Ergebnisse ist es manchmal aber nötig, einige Einstellungen zu verändern. Diese werden
im folgenden Kapitel erläutert.
3.1.1.1 Erweiterte Einstellungen
Die drei grundlegenden Schritte zur Erstellung eines Panoramabildes mit Hugin wurden im vorherigen Kapitel
beschrieben. Hier folgen nun einige weitere Einstellungen, die besonders dann helfen, wenn eine rein
automatische Erzeugung nicht das gewünschte Ergebnis bringt.
Nach dem Laden der Bilder werden zuerst automatisch Kontrollpunkte erzeugt. Anschließend öffnet sich ein
Vorschaufenster:
3 Tools zur automatischen Panoramaerstellung
13
Abb. 12: Vorschaufenster
Hier wird das Panorama dargestellt, wie es im Ergebnis zu sehen sein wird. Unten rechts kann zwischen
unterschiedlichen Projektionsarten gewählt werden. Daneben kann der Überblendmodus umgestellt werden.
Im Vorschaufenster selbst hat man die Möglichkeit mit der Maus das gesamte Panoramabild zu verschieben
oder mit den Schiebereglern das Sichtfeld zu verändern. In der oberen Leiste sind Knöpfe zum automatischen
Zentrieren, Anpassen an das Sichtfeld und Ausrichten des Panoramas (von links). Daneben gibt es die
Möglichkeit anstatt mit der Maus Transformationen numerisch anzugeben. Dies gilt sowohl für Translation als
auch für Rotation des Panoramabildes. In der Leiste darunter kann die Anzeige einzelner Bilder abgeschaltet
werden um eventuelle Fehlanordnungen besser zu erkennen.
Abb. 13: Fenster zum Laden oder Löschen von Bildern und automatischen Bestimmen von Kontrollpunkten.
3 Tools zur automatischen Panoramaerstellung
14
Öffnen des Registers mit dem Titel "Bilder" ('Abb. 13') gibt die Möglichkeit Einzelbilder zu verwalten. Jedes
einzelne Bild wird angezeigt mit den aktuell berechneten Transformationen, die nötig sind um es an ein Ankerbild
anzupassen. Anker können für Belichtung und Position separat ausgewählt werden. Der Belichtungsanker
dient als Referenz für die Helligkeit der Bilder, während der Positionsanker im Ergebnisbild das Blickzentrum
bildet, das je nach Projektionsart als nächstes oder entferntestes Bild projiziert dargestellt werden kann. In
diesem Fenster gibt es auf der rechten Seite die Möglichkeit neue Bilder zu laden, Bilder aus der Auswahl zu
löschen oder die Reihenfolge der Bearbeitung zu verändern. Unten links können Position und Orientierung des
Ergebnisses geändert werden. Des Weiteren können hier Bildpaare ausgewählt werden, zwischen denen
automatisch korrespondierende Kontrollpunkte bestimmt werden sollen.
Die Kontrollpunkte werden im Register "Kontrollpunkte angezeigt":
Abb. 14: Kontrollfenster für die Betrachtung und Erstellung von Kontrollpunkten.
In zwei Fenstern werden die Bilder eines Paares angezeigt und in diesen jeweils die Kontrollpunkte markiert,
die in beiden Bildern vorkommen. Die Kontrollpunkte werden aufgelistet mit ihren Positionen in Bildkoordinaten
und den Abständen unter den aktuellen Tranformationen. Es können auch Punkte manuell hinzugefügt werden,
oder ein Paar feinjustiert werden sowie fehlerhafte Kontrollpunktpaare gelöscht werden. Nachdem man
Kontrollpunkte verändert hat, müssen im Hauptfenster durch den Knopf "Ausrichten" die Bilder entsprechend
der neuen Punktpaare ausgerichtet werden.
Im Register "Optimieren" gibt es die Möglichkeit die Parameter zum Zusammenfügen der Einzelbilder zu
optimieren. Dabei kann ausgewählt werden, welche der Bild- oder Linsenparameter optimiert werden sollen.
3.1.2 PTgui
13
PTGui ist eine Anwendung zum Stitchen von Panoramen. Es ist entstanden aus dem Versuch eine graphische
Oberfläche für die Panorama Tools zu erstellen, hat sich aber zu einer eigenständigen Stiching Anwendung
entwickelt. PTGui läuft derzeit unter Windows und Mac OSX.
13 http://www.ptgui.com/
3 Tools zur automatischen Panoramaerstellung
15
In der generellen Funktionalität und auch im Bezug auf die graphische Oberfläche unterscheidet sich PTGui
kaum von Hugin. Deswegen wird hier auf eine Vorstellung der grundlegenden Funktionalität verzichtet.
Stattdessen werden nur die zusätzlichen Funktionen vorgestellt die PTGui zur Verfügung stellt.
Das Hauptfenster wird in 'Abb. 15' gezeigt.
Abb. 15 Hauptfenster von PTGui.
Im Vorschaufenster gibt es neben der Möglichkeit das gesamte Panorama zu bearbeiten auch die Möglichkeit
Bilder einzeln transformieren. Außerdem lässt sich auch eine verbesserte Ergebnisvorschau nur für ausgewählte
Bilder erstellen.
Des Weiteren bietet PTGui die Möglichkeit Ränder von Bilder abzuschneiden, zu croppen. Diese Anwendung
kann für jedes Bild einzeln oder auch für alle Bilder mit den gleichen Parametern durchgeführt werden.
3 Tools zur automatischen Panoramaerstellung
16
Abb. 16 Fenster zum Croppen von Einzelbildern
In einem weiteren Unterfenster 'Exposure/HDR' können die Bilder automatisch bezüglich
Belichtungsunterschieden und Weißabgleich korrigiert werden. Auch die Effekte durch Vignettierung werden
hierbei behoben.
Abb. 17 Fenster für automatische Korrektur von Belichtung, Weißabgleich und Vignettierung
3 Tools zur automatischen Panoramaerstellung
17
Ein Mangel in der Trial-Version ist, dass der Optimizer aus den Panorama Tools nicht verwendet werden kann.
3.1.3 PanoTools
14
Die PanoTools
sind eine Sammlung von Anwendungen zu Er- und Darstellung von Panoramen. Sie sind
15
eine Weiterentwicklung der Panorama Tools .
Die PanoTools bestehen aus
•
•
•
•
•
•
•
•
•
PTStitcher, einem Panorama Stitcher für eine große Anzahl an Input und Output Formaten,
PTPicker, einer graphischen Oberfläche zum Ausrichten der Bilder,
PTStereo, zum Erstellen von 3-dimensionalen Objekten aus mehreren Bildern,
PTInterpolate, einem Werkzeug zum Kombinieren zweier Bildern von unterschiedlichen Blickpunkten zu
einem Bild,
PTMorpher, einem Morphing Werkzeug,
PTAverage, das Rauschen in Bildern reduziert,
PTStripe, das Bilder zu Filmstreifen kombiniert um sie in einem Objekt-Viewer anzuzeigen,
Panorama Tools, Plugins für Photoshop und GraphicConverter zum Erstellen und Editieren von Panoramen,
PTEditor, einem visuellen Panorama Editor.
Auf eine detaillierte Beschreibung aller Werkzeuge wird hier verzichtet. Der PTViewer, der Teil der Panorama
Tools war, wird im Abschnitt Applet genauer vorgestellt.
3.1.4 Enblend
16
Enblend ist eine Anwendung zur Komposition zweier überlappender Bilder. Es fügt Bilder, die zuvor angeordnet
wurden, so zusammen, dass keine scharfen Übergänge entstehen, indem es die Bilder überblendet. Sowohl
in Hugin als auch in PTGui kann Enblend als Applikation zum Blenden der gestitchten Bilder integriert werden.
Die Applikation verwendet das im Kapitel Blending beschriebene Verfahren um Übergänge zwischen Bildern
möglichst weich zu gestalten. Enblend kann aber auch manuell gestartet werden. Dazu erstellt man mit einem
Tool wie Hugin kein komplettes Panoramabild sondern wählt "Multiple TIFF" als Ausgabe. Diese TIFF-Bilder
werden dann mit Enblend überlagert. Der Aufruf
enblend -o output.tif input1.tif input2.tif ...
überblendet die 'input'-Dateien und erstellt daraus das Ausgabebild output.tif. Dabei müssen die Eingabebilder
von links nach rechts angeordnet sein um einen fehlerfreien Ablauf zu ermöglichen. Durch den Parameter -l
anzahl wird die maximale Anzahl an Pyramidenebenen bestimmt um den Blendingprozess zu beschleunigen.
Mit -w ermöglicht man Blending über die +/-180 Grad Grenze hinaus, wie es zum Beispiel für 360 Grad
Panoramen nötig ist. -z verwendet verlustlose Kompression des Ausgabebildes. Weiteren Parametern existieren
um beispielsweise die Größe des Ergebnisbildes manuell zu setzen oder die Größe des Caches der für Enblend
zur Verfügung steht zu bestimmten.
14 http://panotools.sourceforge.net/
15 http://www.all-in-one.ee/~dersch/
16 http://enblend.sourceforge.net/
3 Tools zur automatischen Panoramaerstellung
18
3.1.5 Autopano
17
Autopano ist ein automatisches Panorama-Erkennungstool für die PanoTools. Gegeben einer Menge von
Bildern detektiert es solche, die zusammen ein Panorama ergeben könnten. Dies geschieht durch Extraktion
von SIFT-Merkmalen und Detektion von Punktpaaren in einem Bilderpaar. Als Ausgabe generiert es
Panorama-Projektdateien inklusive Mengen von Kontrollpunktpaaren. Autopano wird gestartet mit
autopano.exe [Verzeichnis] [Optionen]
oder
autopano.exe /f Datei1 Datei2 .. [DateiN] [Optionen]
Die angegebenen Dateien oder die Dateien im angegebenen Verzeichnis werden analysiert und Ausgabedateien
panorama1.oto, panorama2.oto, ... autopanoN.oto erstellt, welche die Informationen über die detektierten
Panoramen enthalten. Diese Ausgabedateien können von Programmen wie PTGui oder Hugin geöffnet werden.
Autopano ist in der Lage selbständig aus einer Menge von Bildern jene zu bestimmen, die zu einem Panorama
gehören und ebenso die Anordnung der Bilder. Aus diesem Grund ist es auch bei Applikationen, die Autopano
verwenden, wie Hugin oder PTGui, nicht nötig die Einzelbilder in der richtigen Reihenfolge anzugeben.
3.2 Panorama-Filme
Die bislang vorgestellten Programme erstellen Panoramen als einfache Bilder. In diesem Kapitel wird eine
Anwendung zum Erstellen von Panorama"filmen" aus Panoramabildern vorgestellt. Ein Panoramafilm ist eine
Darstellungsweise von Panoramen. Hierbei wird das Panoramabild nicht flach auf dem Bildschirm dargestellt,
sondern der Benutzer erhält die Möglichkeit sich in dem Bild zu bewegen und erhält somit den Eindruck eines
tatsächlich vergrößerten Blickwinkels ohne Verzerrungen. Dabei kann die Bewegung durch das Bild entweder
manuell gesteuert werden oder aber eine automatische Bewegung in den Film eingebaut sein. Durch Verknüpfung
mehrerer Panoramafilme ergibt sich so die Möglichkeit eines virtuellen Rundgangs. Ein eindrucksvolles Beispiel
18
dafür sind die Panoramen aus der Osnabrücker Innenstadt .
Zwei Filmformate, die sich zur Darstellung von Panoramen eignen sind Quicktime VR und Macromedia Flash.
Ein Programm zur Erstellung von Panoramafilmen ist Pano2VR, das im folgenden Unterkapitel vorgestellt wird.
3.2.1 Pano2VR
19
Pano2VR 2.0 ist eine Applikation, die Panoramabilder in QuickTime VR und Macromedia Flash Formate
konvertiert. Dabei ist die Möglichkeit gegeben Hotspots zu definieren und Auto-Rotation hinzuzufügen. Unterstützt
werden die Panoramaformate Sphärisch, Würfelflächen, Kreuz-, T- und Streifen-Eingabeformate. Aus einem
Format kann auch ein anderes generiert werden, um zum Beispiel die Möglichkeit zu erhalten, Würfelflächen
zu retuschieren. Pano2VR 2.0 gibt es in Beta-Versionen für Linux, Mac OS und Windows. Pano2VR basiert
auf der älteren Variante Pano2QTVR 1.6, das in drei verschiedenen Ausführungen, jedoch nur für Windows,
20
existiert. In der aktuellen Version sind einige Features aus Pano2QTVR noch nicht in Pano2VR integriert,
während andere besser funktionieren. Ein Vergleich der Features befindet sich im nächsten Abschnitt.
17 http://autopano.kolor.com/
18 http://www.stadtpanoramen.de/osnabrueck/
19 http://gardengnomesoftware.com/pano2vr.php
20 'Stand 21.12.2007'
3 Tools zur automatischen Panoramaerstellung
19
Die grundlegende Funktion der Anwendung ist sehr simpel gehalten. Alle Funktionalitäten sind direkt vom
Hauptfenster aus zu erreichen:
Abb. 18: Hauptfenster von Pano2VR
Zuerst wird ein Panoramabild in das Programm geladen (rot markiertes Feld). Man kann einerseits per
Drag-and-Drop ein Bild mit der Maus in das Fenster ziehen oder aber mit dem "Select Input" Knopf ein weiteres
Fenster öffnen, in dem man bequem nach einem Eingabebild browsen kann, für dieses das Format angeben
und auch eine Hotspotdatei laden kann. Wird kein Eingabeformat angegeben, so wird dieses automatisch
bestimmt.
Der grün markierte Bereich ist für die Einstellung der Ansichtsparameter. Ein Knopfdruck auf "Modify" öffnet
ein Fenster ('Abb. 19'), in dem die Startparameter für die Orientierung des Bildes und das Sichtfeld eingestellt
werden können. Des Weiteren lassen sich hier die Grenzen für die Rotation angeben.
Das blau markierte Feld dient der Angabe von Benutzerdaten sowie dem Titel des Panoramas oder dem
Erstellungsdatum. Der magentafarbene Bereich dient der Erstellung von Hotspots im Panorama. Ein Hotspot
ist ein Zugriffsbereich innerhalb des Panoramas. In einem eigenen Fenster können im Panorama Hotspots
angelegt werden. Dazu markiert man Bereiche des Bildes und belegt sie mit einem Titel, wie in 'Abb. 20' zu
sehen. Bewegt man nun bei der Anzeige des Panoramas die Maus über den markierten Bereich so erscheint
ein Tooltip mit dem Titel. Des Weiteren gibt man eine Ziel-URL an, die mit dem Hotspot assoziiert und geöffnet
werden soll, sobald auf den Hotspot geklickt wird. Durch Angabe eines Targets wird spezifiziert, ob die Seite
im gleichen Fenster oder in einem anderen Fenster geöffnet werden soll. Die URL kann als Ziel entweder eine
beliebige Webseite oder auch einen weiteren Panoramafilm beinhalten.
3 Tools zur automatischen Panoramaerstellung
20
Abb. 19: Einstellung der Ansichtsparameter
Abb. 20: Definition von Hotspots
Im cyan markierten Bereich des Hauptfensters können Ausgabeformate spezifiziert werden. Zur Wahl stehen
QuickTime VR Macromedia Flash und Konvertierung in andere Panoramabilder. Für QuickTime und Flash
können neben Qualität und Fenstergröße auch noch Autorotation eingestellt werden. Dies bedeutet, dass eine
bestimmte Zeit nach Laden des Videos das Panoramabild in vorgegebener Geschwindigkeit rotiert.
3 Tools zur automatischen Panoramaerstellung
21
Ergebnisse der Videos, die mit diesem Programm erstellt wurden folgen im Kapitel 'Darstellung im Web'.
3.2.1.1 Features von Pano2VR
Pano2VR ist eine komplett neu geschriebene Applikation für deren Funktionalität PanoQTVR als Vorbild dient.
Da Pano2QTVR von der Bedienerfreundlichkeit und Übersichtlichkeit weit hinter Pano2VR zurückliegt und
auch in der kostenlosen Version bezüglich der Funktionalität eingeschränkter ist, wird hier auf eine genauere
Beschreibung der Anwendung verzichtet. 'Tab. 1' liefert eine Übersicht über die unterschiedlichen Funktionalitäten
der verschiedenen Versionen.
Wesentlichen Features
Läuft unter Microsoft Windows
Läuft Mac OS X (Universal)
Läuft unter Linux
Kubische Panoramen
Zylindrische Panoramen
Erstellt Objektfilmen
Exportiert Panoramen als QuickTime (.mov)
Exportiert Panoramen als Macromedia Flash 8 (.swf)
Exportiert Panoramen als Macromedia Flash 9 (.swf)
Exportiert Objektfilme als QuickTime (.mov)
Exportiert Objektfilme als Macromedia Flash (.swf)
Erstellt bis zu 255 Hotspots
Erstellt Grau- oder Farbvorschau mit gewähltem Reduktionsfaktor
Erstellt Sepiavorschau
Erzeugt Subtiles für Progressiven Download
Setzen der wichtigsten QuickTimeVR Parameter z.B. fov, pan, tilt, protection,
compressed headers, userdata,...
Erkennt Details für initiale Anzeigeparameter, und übernehme diese Position
Erkennt Details im nächsten verlinkten Film für virtuelle Touren
Extrahiert Würfelflächen zum Retuschieren und vereinige sie für die Ausgabe
Unterstützung für die PanoTools pano12.dll (sofern installiert)
Mehrere, strukturierte Konfigurationsdateien
Droplets für Drag & Drop Batch Processing mehrerer Dateien
Verwendung von Sprite-Tracks in QuickTime VR Dateien
Importiert Bilder als Overlays
Interaktive Oberflächen mit Kontrollsymbolen
Hintergrundmusik für Panoramen
Importiert Autorotationssprites für Panoramen
Erstellt Thumbnails von Quellbildern (GIF, TIFF und PNG auch mit
transparenten Kanälen)
Live Vorschau für Thumbnail Erzeugung
Erstellt HTML Dateien für QuickTime, DevalVR und PTViewer
Erstellt vertikale Bildstreifen for SPi-V and Immervision Pure Player
Verbesserte Performanz durch mehrere Prozessorkerne
Unabhängig von Apple's QuickTime
Objekte: Spezifikation von Animation and Autoplay Geschwindigkeit
Objekte: Unbegrenzte Ansichten und Animationen
Objekte: Unterschiedliche Controller wie Grabber, Joystick oder absolute
Position
Verwendung der Ergebnisse für kommerzielle Zwecke
Pano2VR 2.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Pano2QTVR 1.6
free pro flash-pack
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
(planed)
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
Tab. 1: Vergleich der Features von Pano2VR und den unterschiedlichen Varianten von Pano2QTVR
3 Tools zur automatischen Panoramaerstellung
22
Die Funktionalitäten zusammenfassend lässt sich sagen, dass der Mangel des neuen Projektes Pano2VR in
der fehlenden Möglichkeit zur Erstellung von Objektfilmen und der fehlenden Unterstützung der PanoTools,
die ausgereifte Funktionalitäten zur Verfügung stellen, liegt. Andererseits ist aber die Unabhängigkeit von
QuickTime durch die Möglichkeit der Erstellung von Flash Filmen gegeben, die Anwendung wird durch Fähigkeit
zur Verwendung mehrerer Prozessorkerne beschleunigt und ist zusätzlich neben Windows auch für Linux und
Mac OS verfügbar. Außerdem sind in der kostenlosen Version auch viele Features vorhanden, die in der
kostenlosen Pano2QTVR Variante fehlen. Nachteil bleiben hier nur die Wasserzeichen in den Ergebnissen.
3.3 Microsoft Photosynth
Microsoft ueber Photosynth:
Photosynth is an amazing new technology from Microsoft Live Labs that will change
forever the way you think about digital photos.
Microsoft Photosynth ist eine StandAlone Application zur Darstellung von 3D-Modellen aus Kamerabildern.
Die Anwendung soll neben der Verbindung der Bilder eines einzelnen Nutzers auch Verlinkungen zwischen
Bildern anderer Benutzer ermöglichen. In der derzeitigen Version existiert es nur als Tech-Preview, der jedoch
bereits tiefe Einblicke in die tatsächliche Applikation ermöglicht. Ein Nachteil der Applikation sind die hohen
Systemanforderungen, insbesondere bezüglich der Grafikkarte. So läuft Photosynth nur mit einer Grafikkarte,
die Vista Aero Ready ist und über DirectX9 Unterstützung mittels WDDM Treiber verfügt.
Die 3D-Modelle werden folgendermaßen erstellt:
1.
2.
3.
4.
5.
Lade eine Sammlung von Fotos hoch
Linke Fotos mit korrespondierenden Merkmalen
Bestimme 3D Positionen mehrfach vorkommender Merkmale
Erstelle Photosynth-Modell aus Punktwolke der Merkmale
Projiziere Originalbilder auf die Merkmalspunkte
Auf diese Weise wird ein 3D-Modell der Szene generiert. Der Benutzer hat die Möglichkeit sich durch die Szene
zu bewegen und die Photos aus verschiedenen Blickwinkeln zu betrachten sowie nahtlos in die Szene
hereinzuzoomen. Die Kamerapositionen der einzelnen Bilder können angezeigt werden. Für ein Bild lassen
sich aus den eigenen Bildern und auch aus fremden Bildern ähnliche Motive automatisch suchen. Ansichten
und ganze Sammlungen können an Freunde geschickt werden und mit Notizen oder URLs versehen werden.
Abb. 21: Microsoft Photosynth
3 Tools zur automatischen Panoramaerstellung
23
21
Einen Überblick über Microsoft Photosynth bietet die Video-Tour von der Photosynth-Webseite . Im
22
Tech-Preview
kann ausserdem die grundlegende Funktionalität der Anwendung bereits getestet werden.
21 http://labs.live.com/photosynth/videodemo.html
22 http://labs.live.com/photosynth/view.html?collection=sanmarco/index1.sxs&st=coll
4 Darstellung im Web
24
4 Darstellung im Web
Eine große Anwendungsbreite haben Panoramen im WorldWideWeb. Zur Darstellung von Orten zur Orientierung
und zur einfachen Betrachtung bieten sich Panoramen an, da hier hier nur eine zweidimensionale Betrachtung
möglich ist, diese aber zur Anschaulichkeit nur wenig hilfreich ist. Als Darstellungsweise bieten sich Bilder,
QuickTime VR und Macromedia Flash Formate an, sowie die weit verbreitete Verwendung von Applets. Diese
Möglichkeiten werden in diesem Kapitel erläutert.
4.1 Bild
Die Darstellung von Panoramabildern unterscheidet sich nicht von der Darstellung anderer Bilder.
1 <img src="Schloss/Schloss.jpg" width="800" height="300" alt="Osnabruecker Schloss">
zeigt das Bild in angegebener Breite und Höhe an:
Abb. 22: Panoramabild vom Osnabrücker Schloss
4.2 QuickTime
23
'QuickTime VR' ist eine von Apple entwickelte Technologie zur Darstellung von Panoramen. In einem QuickTime
ähnlichen Format werden dabei Panoramabilder angezeigt, in denen gezoomt und navigiert werden kann. Auf
diese Weise entsteht der Eindruck, man befände sich direkt in der Szene und könne um sich herum blicken.
Daher kommt auch der Name "QuickTime VR" der für "virtuelle Realität" steht.
Das Einbinden von Panoramen im QuickTime VR Format in Webseiten geschieht über das embed-Tag.
1 <embed
2
src="Schlossrundsicht/Rundsicht_out.mov"
3
height="500"
4
width="650"
23 http://www.apple.com/quicktime/technologies/qtvr/
4 Darstellung im Web
5
6
7
8
9
10
11
12
13
14
15 >
25
type="video/quicktime"
controller="true"
autoplay="true"
cache="true"
HOTSPOT1="http://www.uni-osnabrueck.de"
HOTSPOT2="http://www-lehre.inf.uos.de"
HOTSPOT3="http://www.fahrrad-beelmann.de"
Target1="_blank"
Target2="_blank"
Target3="_blank"
Abb. 23: Rundsicht vom Osnabrücker Schloss zur Darstellung als QuickTime VR
Es gibt eine große Anzahl an Parametern. Neben den Standardeinstellungen für die Größe des Anzeigefensters,
den Optionen Kontrollsymbole anzuzeigen und automatisches Starten zu erlauben, können zum Beispiel die
24
Hotspots neu definiert werden. Apple bietet eine vollständigere Auflistung der möglichen Parameter .
Die Navigation in QuickTime VR ist möglich über die Maus oder über Tastenkombination:
• Umschalt-Taste zum hereinzoomen,
• Strg-Taste zum herauszoomen,
• Pfeil-Tasten zum navigieren.
Bewegt man die Maus über einen Hotspot, so erscheint eine Notiz mit dem Namen des Hotspots. Ein Klick auf
diesen öffnet das bei der Erstellung oder in html definierte Ziel.
4.3 Flash
25
Adobe Flash (ehemals Macromedia Flash) ist eine Anwendung zum erstellen von "Flash-Filmen" im
SWF-Format, die auf Vektorgrafiken basieren. Durch Animation und Programmierung lassen sich in diesem
Format identisch zu QuickTime VR auch Panoramen anzeigen, in denen gezoomt und navigiert werden kann.
Das Einbinden erfolgt wiederum über das embed-Tag.
1 <embed src="Schlossrundsicht/Rundsicht_out.swf"
2
quality="high"
3
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?
4
P1_Prod_Version=ShockwaveFlash"
5
type="application/x-shockwave-flash"
6
width="500"
7
height="500">
8
</embed>
24 http://www.apple.com/quicktime/tutorials/embed2.html
25 http://www.adobe.com/support/documentation/de/flash/
4 Darstellung im Web
26
Abb. 24: Rundsicht vom Osnabrücker Schloss zur Darstellung als Flash-Film
Die Navigation geschieht auch hier per Maus oder durch Tastenkombination:
• Umschalt-Taste zum Hereinzoomen,
• Strg-Taste zum Herauszoomen,
• Pfeil-Tasten zum Navigieren.
Auch der Umgang mit Hotspots ist identisch zu dem bei QuickTime VR.
4.4 Applet
26
PTViewer ist ein Teil der Panorama Tools. Es handelt sich hierbei um ein Java-Applet mit großem
Funktionsumfang zum Anzeigen von Panoramen.
PTViewer unterstützt sphärische und zylindrische Darstellung von equirektangulären Panoramen mit 360 Grad
horizontalem Blickfeld sowie in einer Erweiterung auch das QuickTime VR Format.
Die grundlegende Verwendung des PTViewers ist sehr einfach:
1 <APPLET archive=ptviewer.jar code=ptviewer.class width=320 height=200>
2 <PARAM name=file
value="RundsichtBild.jpg">
3 </APPLET>
Man stellt das Applet mit vorgegebener Höhe und Breite dar und übergibt diesem als "file"-Parameter den
Namen des anzuzeigenden Bildes. Dieses wird dann wie in 'Abb. 25' dargestellt.
Abb. 25: Panoramabild vom Osnabrücker Schloss im Applet dargestellt
26 http://www.all-in-one.ee/~dersch/PTVJ/doc.html
4 Darstellung im Web
27
Zahlreiche weitere Parameter stehen zur Verfügung. Einige sind in folgender html-Seite verwendet:
1 <APPLET name="ptviewer" archive=ptviewer.jar code=ptviewer.class width=320 height=200
mayscript=true>
2
.
3
.
4
.
5
<PARAM name=pano0 value=" {file=images/pano.jpg}
6
{pan=-45}
7
{tilt=-50}
8
{fov=80}
9
{fovmax=120}
10
{fovmin=30}
11
{auto=0.5}
12
{hotspot0=x1141 y207 cff0000 n'Marburger Schloss'
u'Controls.html'}
13
{hotspot1=x311 y265 c00ff00 n'Pfarrkirche'
u'Controls.html'}
14
{hotspot6= x776 y124
n'Lamp' m'images/lmask.gif' i'ptviewer:PlaySound(0)'
u'Controls.html'}
15
{hotspot8= x776 y124 p i'images/popup.gif'}
16
>
17
<PARAM name=wait
value="images/wait.jpg">
Hier sind als Beispiel initiale Rotationen (tilt, pan) vorgegeben, das Blickfeld eingeschränkt (fovmax,
fovmin), eine Autorotationsgeschwindigkeit (auto) vorgegeben und Hotspots durch x- und y-Koordinate im
Bild festgelegt. Mit pano0/1/2 können auch mehrere Panoramen geladen werden deren Anzeige durch
Kontrollfunktionen aktiviert werden kann. Eine komplette Liste aller Parameter und Kontrollfunktionen bietet
27
die API . Kontrollfunktionen können mit Javascript aufgerufen werden. Sie dienen der Navigation im Bild, der
Anzeige von Hotspots, dem Abspielen von Musikdateien und vielen weiteren Funktionen.
'Abb. 26' zeigt ein Applet mit Kontrollleiste.
Abb. 26: PTViewer mit Kontrollleiste
Unten rechts neben dem Kompass der die Orientierung anzeigt, befinden sich Symbole zum Starten und
Stoppen der Autorotation, zum Zoomen, zum Markieren der Hotspots und zum Springen zu einem bestimmten
Hotspot. Die Knöpfe auf der linken Seite lassen das Applet neu laden, zum Schloss-Hotspot springen,
Autorotation einschalten und einen Ton abspielen. Zum Testen befindet sich dieses Applet unter
http://www-lehre.inf.uos.de/~dborrman/Panoramen/PTVJ_EX/.
27 http://www.all-in-one.ee/~dersch/PTVJ/ptviewer.html
5 Zusammenfassung
28
5 Zusammenfassung
Das Blickfeld eines Menschen ist größer als die Bilder, die wir mit herkömmlichen Kameras erfassen können.
Durch Stiching-Prozesse lassen sich aus Einzelbildern längliche Pixelbilder erzeugen. Solche virtuellen
Panoramen bieten können einen Rundumblick von bis zu 360 Grad erzeugen. In dieser Arbeit wurden zuerst
die Schwierigkeiten bei der Erstellung von Panoramen aufgeführt.
Im zweiten Teil wurden Werkzeuge vorgestellt, welche die Probleme der Panoramaerstellung weitestgehend
beherrschen. Mit Programmen wie Hugin und PTGui lassen sich unterstützt durch die PanoTools, Enblend und
Autopano in kurzer Zeit mit geringem Aufwand Panoramen erstellen. Selbst die Bilder einer herkömmlichen
2.0 Megapixel-Kamera können dabei überzeugende Ergebnisse liefern, ohne dass der Benutzer großen
manuellen Aufwand betreiben muss.
Pano2VR und PTViewer bieten darüber hinaus die Möglichkeit die Panoramen so darzustellen, dass man sich
in ihnen virtuell bewegen kann. Auf diese Weise kann man ganze Rundgänge erzeugen. Dies eröffnet neue
Möglichkeiten auf Webseiten. Wegbeschreibungen, Ortsangaben oder Ortsbeschreibungen können durch
einen Panoramafilm mit einfachen Mitteln eindrucksvoll unterstützt werden.

Documentos relacionados