Digitale Panoramafotografie - Teil II (Horizont und Perspektive)

Der Horizont ist doch eigentlich waagrecht -- oder?


Jedem der schon mal Panoramen gerechnet hat, wird es schon passiert sein: Man kommt vom Fotografieren heim, freut sich beim Betrachten der Einzelbilder schon auf das fertige Ergebnis (man hat an alles gedacht: Stativ benutzt, Belichtung war richtig, auch genügend Überlappung wurde eingeplant) -- und könnte sich zehn Minuten später in den eigenen Hintern beißen... :
Denn dass was bei der Vorschau des fertigen Panoramas zu sehen ist, ist zum Herumzeigen nicht sehr geeignet, da es aussieht, als hätte sich ein betrunkener Fotograf beim Aufnehmen der Einzelbilder an seinem Stativ festgehalten. ;-)
Der Horizont gewölbt und die Gebäude, Masten, Laternen, etc. könnten Italiens schiefem Turm von Pisa ernsthaft Konkurrenz machen:


Abbildung 1: Dresden -- mit etwas ungewöhnlicher Erdkrümmung

Oft wird dann überlegt wo der Fehler liegen könnte und rumprobiert, vielleicht auf's Programm geschimpft, die Bilder gleich im digitalen Papierkorb versenkt oder es einfach mit den Worten 'das sollte schon so sein, das war Absicht' Freunden und Bekannten gezeigt.
Oder ...

Vorbereitung


... man geht das Problem nochmals ganz von vorne an, startet Hugin und fügt die gewünschten Bilder im Reiter 'Bilder' hinzu. Dann ist es sehr empfehlenswert, sich den Ankerpunkt auf ein halbwegs mittiges Bild umzusetzen:


Abbildung 2: Umsetzen des Ankerbildes

Alle Bilder in der Liste links markieren und auf der rechten Seite die Kontrollpunkte von Autopano suchen lassen (Button 'Punkte erstellen'). Der Standardwert von 10 pro Bilderpaar kann ruhig eingestellt bleiben. Nachdem das Autopano-Fenster zum automatischen Festlegen der Kontrollpunkte wieder verschwunden ist, auf den Reiter 'Kontrollpunkte' wechseln und zwei verschiedene Bilder auswählen. Man sieht die von Autopano gefundenen Punkte:


Abbildung 3: Kontrollpunkte eines Bilderpaares

Der Abstand zwischen diesen Punkten ist überall noch Null, da der Optimierer noch nicht gelaufen ist; also gleich mal rüber auf den Reiter 'Optimieren' wechseln. Wir nehmen zu Anfang den Schnelloptimierer, stellen 'Positionen (inkrementell, von Anker beginnend)' ein und starten:


Abbildung 4: Optimierer erstmalig einstellen

Nach kurzer Zeit zeigt uns Hugin das von PanoramaTools ermittelte Ergebnis an. Die durchschnittliche Kontrollpunkteentfernung gibt die gemittelte Entfernung zwischen den Kontrollpunktepaaren in Pixel an.
Je kleiner der Wert, desto genauer liegen die Bilder schon übereinander -- und alles unter 1 ist hier schon einer der besten Werte die man erreichen kann:


Abbildung 5: Traumhafte Werte des Optimierers

Sieht man sich das Ergebnis in der Vorschau an (im Menü unter Ansehen/Vorschaufenster, oder der drittletzte Button in der Toolbar), so haben wir genau das, was ganz oben zu sehen ist. Schuld daran sind falsche Werte für den Parameter 'pitch' und 'roll' (oder einfach gesagt: die mittleren Bilder sind zu hoch, die äußeren zu stark gedreht):


Abbildung 6: Eine unerwartete Vorschau nach dem guten Optimierungsergebnis

Was also dagegen tun?

Horizont begradigen


Die Parameter einzeln zu optimieren bringt in diesem Fall nichts, denn die Punkte liegen schon fast exakt aufeinander wenn man das Ergebnis des Optimierers genau ansieht (das Maximum zwischen zwei Punkten ist nur etwas über einen Pixel!). Der Optimierer weiß ganz einfach nicht, dass es einen Horizont gibt, der gerade sein soll. Er ermittelt nur die beste Überlagerung der Bilder -- wie dabei die Bilder angeordnet sind ist ihm komplett egal.
Die Lösung steckt in den Kontrollpunkten: PanoramaTools bietet grundsätzlich die Möglichkeit an, Punkte zu definieren, die im fertigen Panorama genau horizontal bzw. vertikal liegen sollen.
Wenn man also Linien im Bild hat, von denen man weiß, dass sie waagrecht oder senkrecht sein sollen (der Horizont, Häuserkanten, Masten etc.), so kann man diese zusätzlichen Informationen berücksichtigen. Der Optimierer bekommt damit die Information, dass er nicht nur die Einzelbilder, sondern auch das Gesamtbild richtig hinschieben, drehen und wölben muss.

Alles was man zu tun hat, ist zwei Bilder herzunehmen, in denen jeweils ein Punkt auf dieser geradezudrehenden Linie sichtbar ist. Bei diesem Beispiel wurden die Bilder 0 und 2 gewählt (man könnte auch andere nehmen, aber es schadet nicht, ein Bild dazwischen zu überspringen -- dann wird das Ergebnis etwas genauer und für den Optimierer leichter).

Betrachtet man die Originalbilder, so stellt man fest, dass im Bild 2 Berge im Hintergrund zu sehen sind, bei Bild 0 jedoch nicht. Würde bei Bild 2 nun die Bergoberkante als Horizontpunkt hergenommen werden, würde man sehr schnell feststellen, dass kein ordentliches Ergebnis herauskommen kann (der Horizont und die Bergkante haben in der Realität ja eine deutlich unterschiedliche geografische Höhe.
Deshalb bei beiden Bildern einen Punkt wählen, bei dem sich die Häuser am/im Horizont verlieren:


Abbildung 7: Setzen der horizontalen Kontrollpunkte

Hugin fügt diese beiden Kontrollpunkte vorerst als 'normal' hinzu, d.h. der Optimierer würde versuchen diese deckungsgleich übereinander zu legen. Da das aber mit Sicherheit falsch wäre (es sind ja zwei komplett verschiedene Punkte in den Bildern), muss man den Modus auf 'horizontal' umstellen.
Damit weiß PanoramaTools, dass diese Punkte nur auf einer Geraden (= auf gleicher Höhe) liegen sollen:


Abbildung 8: Kontrollpunkte als 'Horizontlinie' definieren

Das zweite Horizontpunktepaar wird nun bei Bild 3 und 5 eingefügt -- selbe Prozedur wie gerade beschrieben. Man könnte eigentlich für jedes Bilderpaar diese Punkte setzen, allerdings ist das oft unnötig, da die Bilder soundso über die restlichen normalen, deckungsgleichen Kontrollpunkte zusammenhängen.

Wenn die Kontrollpunkte gesetzt sind -- und noch bevor man nun ein weiteres Mal optimieren lässt -- gleich eine wichtige Umstellung: beim Schnelloptimierer wird 'Positionen und Ansicht' oder 'benutzerdefiniert' gewählt (und die Parameter Yaw (y), Pitch (p), Roll (r) und View (v) optimiert).

Warum?

Jetzt soll PanoramaTools auch die Neigung und das Rollen aller Einzelbilder selbst bestimmen (auch die des Ankerbildes). Würde man das nicht tun, so bedeutet das, dem Optimierer zwei gegensätzliche Bedingungen zu stellen:
  1. Drehe die Bilder, damit die horizontalen Kontrollpunkte auch wirklich horizontal sind,
  2. Drehe die Bilder nicht (da der Parameter 'r' -- die Rotation der Bilder -- nicht verändert werden darf).

Und das hätte dann die Folge, dass die Bilder nicht gedreht werden und daher der Kontrollpunktabstand der horizontalen Kontrollpunkte einfach sehr hoch bleibt.

Aus diesem Grund muss also der Optimierer so eingestellt werden, dass der einzige fixe Parameter die horizontale Position des Ankerbildes ist (Yaw). Alles andere muss von PanoramaTools frei veränderbar (und somit im Optimierer angehakt) sein:


Abbildung 9: Konfiguration des Optimierers

Wenn man nun optimieren lässt und das Vorschaufenster aufmacht, so sieht man, dass der Horizont jetzt wirklich schon gerade ist:


Abbildung 10: Ein deutlich besseres Ergebnis mit geradem Horizont

Falls wen diese schwarze, leere Fläche stört, die plötzlich dabei auftaucht: Bitte nicht versuchen, sie im Vorschaufenster mit dem Bildwinkel-Regler wegzubekommen. Würde man die Regler so einstellen, dass oben kein schwarzer Rand mehr ist, würde Hugin auch unten viel abschneiden.
Insofern diese Fläche einfach ignorieren, sie kann dann im fertigen Panorama leicht weggeschnitten werden.

Perspektive korrigieren


Den nächsten Punkt könnte man sich bei unserem Beispielbild eigentlich sparen, da das Ergebnis auch jetzt schon sehr gut aussieht -- aber dass muss nicht bei allen Panoramen so sein.

Denn manches Mal kommt es auch nach einem Geradedrehen des Horizonts noch vor, dass eigentlich senkrecht stehende Dinge im Bild noch geneigt sind -- entweder laufen dann Gebäude nach oben hin zusammen oder auseinander (je nachdem, ob man beim Fotografieren die Kamera nach oben oder unten gekippt hat). Diese 'stürzenden Linien' sind eine ganz normale Folge der Perspektive bzw. des Standpunkts des Fotografen. Zum Korrigieren sucht man sich nach dem Horizont ausrichten optimalerweise auch noch eine Linie im Bild, von der man sicher weiß, dass sie senkrecht sein muss. In unseren Panorama wäre das z.B. das schwarze Balkongeländer links und rechts.
Bei diesen Beispielbildern können nun aber keine zwei verschiedenen Bilder zum Definieren der Punkte verwendet werden (da das Balkongeländer immer nur auf einem Bild zu sehen ist); man muss zweimal dasselbe Bild für die Punkte verwenden (hier zweimal Bild 0, das Balkongeländer links), was allerdings PanoramaTools bzw. Hugin nicht stört:


Abbildung 11: Setzen der vertikalen Kontrollpunkte

Auch hier wieder: das Punktepaar als 'vertikal' definieren, sonst würde versucht werden, die beiden Punkte deckungsgleich übereinander zu bringen (was bei zweimal demselben Bild soundso nicht gehen würde). Also nach dem Hinzufügen den Modus wieder umstellen:


Abbildung 12: Kontrollpunkte auch als vertikale Linie definieren

Danach wieder optimieren lassen, und die Vorschau zeigt uns dann, was als Ergebnis rauskommen wird:


Abbildung 13: Die Vorschau nach Horizontkorrektur und Perspektivenkorrektur

Nun kann das Panorama in seiner gewünschten Endgröße gerechnet werden.

Das Endergebnis und ein paar abschließende Bemerkungen



Abbildung 14: Dresden, so wie es bei der Aufnahme zu sehen war

Sollte also jemand beim Zusammenrechnen der Einzelbilder mit dem Horizont oder der Perspektive nicht auf Anhieb klar kommen, so helfen oft die speziellen Kontrollpunkte. Sie sorgen für ein Geradedrehen des gesamten Panoramas und für eine Perspektivenkorrektur.
Neben dem generellen Ausrichten des Panoramas können sie aber noch zu zwei anderen Zwecken benutzt werden, da aber nicht unter Verwendung mehrerer Bilder gleichzeitig, sondern nur mit einer einzigen Aufnahme:

Weiterführende Links


Pablo d'Angelo et al. - Hugin
Helmut Dersch - Original Panorama Tools
Bernhard Vogel - Entzerrung und die unverstandene Horizontlinie
John Houghton - How to straighten horizons and correct verticals (engl.)
Ben Kreunen - Big Ben's Panorama Tutorials (engl.)


Copyright © 2006 Jochen Oberreiter, foto.oberreiternet.at