von Tim Doellen

Fertiges Panoramabild. (© carnival)

Von der professionellen Spiegelreflex- bis zur integrierten Smartphone-Kamera: vermutlich jeder moderne digitale Fotoapparat besitzt einen Panoramamodus. Durch Betätigen des Auslösers und einfaches Schwenken der Kamera setzt sich wie von selbst eine Rundumsicht der Umgebung zusammen. Aber was geschieht dabei technisch in der Kamera? Und woher kommen die komischen Kanten im Bild, die du im Resultat hin und wieder beobachten kannst?

Das Verfahren, auf dem die Erstellung solcher Panoramabilder basiert, nennt sich Stitching (englisch stitch: „Nähen“, „Heften“). Hierbei werden mehrere Einzelbilder aufgenommen und dann „zusammengeheftet“. Um ein Panorama-Bild zu machen reicht es also, den Panorama-Modus auszuwählen, auf die Kamera-Taste zu tippen und dann die Kamera langsam in eine Richtung zu bewegen – das Stitching erledigt die Kamera selbst.

Stell dir vor, du fährst in den Urlaub und willst  dir vorher einen Ausschnitt einer Karte kopieren. Die Größe deines haushaltsüblichen Scanners ist allerdings nicht ganz ausreichend, um den gewünschten Bereich zu erfassen. Eine Lösung des Problems wäre jetzt, einfach mehrere Teilscans zu machen und diese dann zusammenzuheften. Genau das geschieht auch beim Stitchen – der Aufnahmewinkel der Kamera ist nicht groß genug, um die komplette Szene abzulichten, also werden mehrere Einzelaufnahmen zusammengefügt.

Nun ist die Problematik bei den mit der Hand aufgenommenen Fotos im Vergleich zum Scan etwas komplizierter. Im Gegensatz zum Scan-Beispiel verschiebt sich die Kamera in der Panoramaszene schließlich nicht parallel, sondern wird gedreht und verschoben. Da jedes einzelne Bild aus einer etwas anderen Perspektive aufgenommen wird, unterliegen die Motive zwischen den Einzelaufnahmen einer perspektivischen Verzerrung. Die Fotos können also nicht einfach unverarbeitet zusammengeheftet werden, sondern müssen zunächst entzerrt werden.

Aber woher weiß die Kamera nun, wo und wie geheftet werden soll und welches Bild wie entzerrt werden muss?

Vielleicht kennst du die Thematik des Entzerrens aus Scanning-Apps, mit denen du Dokumente mit deiner Handykamera fotografieren kannst, um sie dann wie einen echten Scan abzuspeichern. Bei einem etwas schrägen Aufnahmewinkel hat das Stück Papier nun die Form eines Trapezes – es ist perspektivisch verzerrt. In der App kannst du nun manuell die vier Ecken des aufgenommenen Blattes markieren, die Entzerrung zu einem Rechteck wird daraufhin automatisch vorgenommen.

Anhand von Punkten lässt sich das Bild so verschieben und verzerren, dass das Stück Papier eine rechteckige Form annimmt.

Das Prinzip funktioniert auch, wenn sich das Dokument nicht in der Bildmitte befindet. Anhand von nur vier Punkten im Bild lässt sich also eine Verschiebung und Verzerrung zu vier Zielpunkten vornehmen. In diesem Fall sind die Zielpunkte die Ecken des rechteckigen Bildes in der gewünschten Größe, sie können aber in anderen Anwendungsfällen auch beliebige andere Positionen haben.  Wir schauen uns das mal für nur zwei Bilder an, die aneinander geheftet werden sollen:

Wir benötigen also je vier Start- und Zielpunkte. Dazu identifizieren wir in unseren Einzelbildern möglichst unverwechselbare Punkte, die sich in beiden Bildern wiederfinden lassen.

Mit grünen Kreisen sind beispielhaft Punkte markiert, die auf beiden Fotos gut wieder zu erkennen sind und sich einander daher gut zuordnen lassen.

Diese Zuordnung findet offensichtlich nicht manuell, sondern automatisch statt. Die jeweils gefundenen markanten Punkte aus den zwei Bildern werden nun alle miteinander verglichen, um zueinander gehörige Paare zu identifizieren. Da bei diesen Zuordnungen immer Fehler auftreten können, suchen wir nicht nur vier, sondern so viele Punkte wie möglich – so können die auftretenden Ungenauigkeiten ausgeglichen werden.

Die Transformation, also die Verschiebung und Entzerrung, wird nun so ausgeführt, dass im Ergebnis zwischen allen gefundenen Punkten eine gute Übereinstimmung erreicht wird.

Die beiden Einzelbilder werden so verzerrt und verschoben, dass die gleichen Punkte möglichst gut aufeinander liegen.

Da die Einzelbilder bei einem Panorama alle direkt aufeinander folgend aufgenommen werden, kann hier Schritt für Schritt jedes neue Bild an seinem Vorgänger ausgerichtet werden. Das Ergebnis ist ein Gesamtbild aus vielen, sich überlappenden Einzelbildern.

Fertiges Panoramabild. (© carnival)

Um sichtbare Kanten an den Übergängen zwischen einzelnen Bildern zu vermeiden, werden Farbton und Kontrast angeglichen. Außerdem sorgen weiche Übergänge dafür, dass der Eindruck einer kontinuierlichen Aufnahme entsteht.

Wie kann es also sein, dass einige Panoramabilder trotz alldem seltsam aussehende Kanten aufweisen?

Das beschriebene Verfahren funktioniert bei statischen Objekten. Hier können die ausgewählten Punkte einander eindeutig zugeordnet werden. Probleme gibt es also, wenn sich Objekte oder Personen im Sichtbereich bewegen. In diesem Fall verändern sich auch einige Positionen der relevanten Punkte. Wird nun versucht, das Bild so zu verzerren, dass die Punkte gut aufeinander passen, kann keine zufriedenstellende Lösung gefunden werden. Die Verzerrung mit der geringsten Abweichung liefert dann die besagten unschönen Artefakte.

Nicht nur bei Bewegungen im Sichtbereich passieren Fehler. Auch wenn die Kamera bei der Aufnahme zu schnell bewegt wird, erzielt sie kein befriedigendes Ergebnis. Denn je schneller die Kamera bei der Aufnahme des Panoramas geschwenkt beziehungsweise bewegt wird, desto größer wird der Abstand zwischen den einzelnen Aufnahmen. Dadurch verkleinert sich auch der Bildbereich, der von beiden Einzelbildern abgedeckt wird. Die Anzahl der Punkte, die einander zugeordnet werden können, wird reduziert. Bei einer geringen Anzahl von Punkten, die für das Ergebnis berücksichtigt werden, haben fehlerhafte Zuordnungen ein stärkeres Gewicht. Dadurch kann es zu ähnlichen Effekten kommen, wie bei sich bewegenden Objekten im Bild – die Verzerrung liefert kein befriedigendes Ergebnis.

Probleme bei Panoramaaufnahmen bei zu schneller Kamerabewegung oder sich bewegenden Pesonen (© wikimedia commons)

Richtig verwendet lassen sich mit der Panoramafunktion moderner Digitalkameras beeindruckende Ergebnisse erzielen. Ob Landschaftsaufnahmen, oder künstlerische Darstellungen: das Einsatzgebiet ist vielseitig und lässt schier grenzenlose Freiheiten. Nicht ohne Grund findet diese Technik sowohl Anwendung im Amateur-, als auch im professionellen Bereich.

Kunstvoller Einsatz von Fehlern im Panorama (© theultralinx)

[1] Das Verfahren hier zu beschreiben würde den Rahmen dieses Artikels sprengen. Kurz gesagt werden die Bilder von einem Algorithmus nach markanten Regionen (z.B. Ecken und Kanten) durchsucht.

Literaturempfehlungen:

  • David G. Lowe: Object Recognition from Local Scale-Invariant Features. In: ICCV ’99 Proceedings of the International Conference on Computer Vision. Band 2, Seiten 1150–1157

https://www.cs.ubc.ca/~lowe/papers/iccv99.pdf

  • David G. Lowe: Distinctive Image Features from Scale-Invariant Keypoints In: International Journal of Computer Vision. Band 60, Nr. 2, Seiten 91–110, 2004

https://www.cs.ubc.ca/~lowe/papers/ijcv04.pdf