Loading...
 

Vollautomatische Generierung von Panoramen aus unsortierten Einzelbildern

Robert Wulff, 2008


In dieser Studienarbeit wurde ein Algorithmus zur vollautomatischen Generierung von Panoramen aus unsortierten Einzelbildern implementiert. Das zugrunde liegende Verfahren Recognising Panoramas wurde von M. Brown und D. Lowe erstmals 2003 vorgestellt.


Weiterhin wurden Untersuchungen bezüglich der Ausgabegeometrie und des Blendings durchgeführt und der Ansatz von Brown und Lowe besonders diesbezüglich erweitert.

Der Algorithmus gliedert sich in die folgenden Schritte:

  • Extraktion von Merkmalen in den Eingabebildern
  • automatische Korrespondenzfindung zwischen den Merkmalen
  • robuste Geometrieschätzung (Bündelausgleichung)
  • Berechnung der Ausgabegeometrie
  • Blending


Eigenschaften des Algorithmus

  • Vollautomatisch!
  • unsortierte Eingabebildmenge
  • Robust gegenüber Änderung der Beleuchtung und Skalierung (Zoom)
  • Bilder, die nicht Teil des Panoramas sind, werden automatisch aussortiert
  • Kamera darf beliebig gedreht sein (auch um die optische Achse!)
  • Kameraparameter, die geschätzt werden: Rotation, Fokallänge, Pixel-Seitenverhältnis, Hauptpunkt, Linsenverzeichniskoeffizienten
  • für das Blending stehen verschiedene Gewichtungsfunktionen zur Auswahl

Vorbedingung

Die Lage der Kameras ist für alle Aufnahmen konstant. Unterschiede sind erlaubt in Rotation und intrinsichen Kameraparametern (Fokallänge, Hauptpunkt, Pixel-Seitenverhältnis, Radialverzeichnung).

Schritt 1: Extraktion von Merkmalen

In allen Eingabebilder werden Merkmale extrahiert. Hierfür werden die SIFT-Features verwendet, die auf Grauwertbildern definiert sind. Dabei wird jedem Merkmal ein Deskriptorvektor zugeordnet, mit Hilfe dessen sich die Ähnlichkeit zwischen zwei Merkmalen bestimmen lässt: Ist der euklidische Abstand zweier Deskriptorvektoren gering (fast 0), so sind sich die Merkmale ähnlich.

In jedem Eingabebild werden Merkmale extrahiert.
In jedem Eingabebild werden Merkmale extrahiert.

Schritt 2: automatische Korrespondenzfindung zwischen den Merkmalen

Zur Korrespondenzfindung zwischen den Merkmalen wird ein approximativer Ansatz verfolgt: Mit Hilfe des Best-Bin-First-Algorithmus wird zu jedem Merkmal ein feste Anzahl von ähnlichen Merkmalen (= nächste Nachbarn) ermittelt.
Der Best-Bin-First-Algorithmus partitioniert den hochdimensionalen Merkmalsraum, so dass in jeder Partition (= Bin) wenige aehnliche Merkmale enthalten sind. Diese Partitionen werden in einem balancierten Binärbaum angeordnet, wodurch sich das Finden eines nächsten Nachbarn auf ein Suchproblem in einem Binärbaum beschränkt.

Der Merkmalsraum (hier beispielhaft in 2D) wird partitioniert und in einem Binärbaum angeordet.
Der Merkmalsraum (hier beispielhaft in 2D) wird partitioniert und in einem Binärbaum angeordet.

Schritt 3: robuste Geometrieschätzung

Die im letzten Schritt ermittelten Merkmalskorrespondenzen enthalten noch sporadische Fehler, die die Geometrieschätzung stark verfälschen können. Mit Hilfe von Homographien, die mittels RANSAC geschätzt werden, lassen sich diese Fehlkorrespondenzen elimienieren.

Nach der Überprüfung auf geometrische Konsistenz wurde die rot markierte Fehlkorrespondenz eliminiert.
Nach der Überprüfung auf geometrische Konsistenz wurde die rot markierte Fehlkorrespondenz eliminiert.


Anschließend ist dann bekannt, welche Eingabebilder geometrisch konsistente Überlappungen aufweisen. Auf dieser Grundlage können erste Approximationen für die Kameraparemter ermittelt werden, die dann durch eine Bündelausgleichung optimiert werden.

Die Schätzung der Eingabekamera-Geometrie wird mittels einer Bündelausgleichung optimiert.
Die Schätzung der Eingabekamera-Geometrie wird mittels einer Bündelausgleichung optimiert.

Schritt 4: Berechnung der Ausgabegeometrie

Ist die Geometrie der Eingabebilder bekannt, kann die Geometrie für die virtuelle Ausgabekamera berechnet werden. Für die Ausgabe wurde eine Kameramodell mit zylinderförmiger Bildebene gewählt. Die Zylinderachse wird so berechnet, dass sie der Hauptrotationsachse des Panoramas entspricht. Anschließend werden Höhe und Öffnungswinkel pixelgenau so ermittelt, dass das Panorama das Zielbild genau ausfüllt.

Die virtuelle Ausgabekamera mit zylinderförmiger Bildebene ist charakterisiert durch Rotation, Höhe und Öffnungswinkel.
Die virtuelle Ausgabekamera mit zylinderförmiger Bildebene ist charakterisiert durch Rotation, Höhe und Öffnungswinkel.

Schritt 5: Blending

Bedingt durch Unterschiede in der Belichtung der Eingabebilder werden Objekte der Szene in unterschiedlichen Bildern mit unterschiedlichen Intensität abgebildet. Damit die Kanten der Eingabebilder im finalen Panorama nicht sichtbar sind, wird eine simple Multi-Band-Blending-Strategie verwendet:

  • Weise jedem Pixel in jedem Eingabebild ein Gewicht zu. Das Gewicht ist in der Bildmitte 1 und fällt so ab, dass es zum Bildrand hin 0 ist.
  • Zerlege jedes Eingabebild in zwei Frequenzbänder (Hochpass und Tiefpass).
  • Blende die tiefen Frequenzen mittels einer gewichteten Summe der bezüglich eines 3D-Raumstrahls korrespondierenden Pixel.
  • Addiere zu diesem Wert den Hochpass-Anteil des Pixels mit dem größten Gewicht.
Zum Blenden des finalen Panoramas wird eine Multi-Band-Blending-Strategie verwendet. Hohe und tiefe Frequenzen der Eingabebilder werden unabhängig voneinander geblendet.
Zum Blenden des finalen Panoramas wird eine Multi-Band-Blending-Strategie verwendet. Hohe und tiefe Frequenzen der Eingabebilder werden unabhängig voneinander geblendet.

Ergebnisse

Panorama 'Kieler Hafen'
Panorama 'Kieler Hafen'
Panorama 'Chicago'
Panorama 'Chicago'
Panorama 'Gompa'
Panorama 'Gompa'
Panorama 'Klassenzimmer'
Panorama 'Klassenzimmer'
Panorama 'Pyramide'
Panorama 'Pyramide'
Panorama 'Himalaya'
Panorama 'Himalaya'
Panorama 'Acker'
Panorama 'Acker'
Panorama 'Uni'
Panorama 'Uni'
Panorama 'CN-Tower'
Panorama 'CN-Tower'


Betreuer: Kevin Koeser


Download: Studienarbeit (pdf 2MB)


Created by koeser. Last Modification: Thursday 29 of May, 2008 19:18:47 CEST by koeser.