HDR-Fotos mit Linux
Unsere Welt ist bunt - sogar wesentlich bunter, als die Kamera- und Display-Technik sie wiedergeben kann. Mit HDR bringen Sie die Nacht zum Strahlen und erzeugen teils surreale Bilder. Wir zeigen, wie das unter Linux funktioniert.

Zwischen einem lichtlosen schwarzen Loch und einem Blick in die strahlende Sonne besteht ein erheblich größerer Kontrast, als ihn Digitalkamera, Monitor oder Drucker abbilden können. Die meisten Bildformate arbeiten mit 8 Bit pro Farbe und müssen mit diesen 256 Helligkeitsstufen den ganzen Berei...

Zwischen einem lichtlosen schwarzen Loch und einem Blick in die strahlende Sonne besteht ein erheblich größerer Kontrast, als ihn Digitalkamera, Monitor oder Drucker abbilden können. Die meisten Bildformate arbeiten mit 8 Bit pro Farbe und müssen mit diesen 256 Helligkeitsstufen den ganzen Bereich vom Kohlenschacht bis hin zum hellen Sonnenstrahl abdecken. Etwas besser macht es da das RAW-Format digitaler Kameras, das bis zu 16-Bit pro Farbe speichert. Dies nutzt aber wenig, weil das Ausgangsmaterial der Kameras zumeist auf 12-Bit beschränkt ist.
Bitte mehr Bit
Die technische Lösung, dem Dilemma zu entkommen, ist High Dynamic Range (HDR). Dabei wird mit bis zu 32-Bit gerechnet. So bietet das quelloffene Format OpenEXR 16- und 32-Bit-Fließkomma- und 32-Bit-Integer-Varianten, die einen deutlich größeren Helligkeitsraum verwenden, als ihn heutige Geräte liefern können. Darüber hinaus existieren einige weitere Formate für HDR-Bilder - zu den bekanntesten gehören TIFF 32-Bit und scRGB, früher bekannt als sRGB64. Am häufigsten finden sich HDR-Bilder im Bereich der experimentellen oder professionellen Fotografie.

Bei Flickr und anderen Foto-Communities sieht man sie häufig. Teilweise werden sogar extra Rubriken für die echten, mit teuren Kameras von Leica und Jenoptik erstellten, und berechneten Pseudo-HDR-Fotos angelegt.
Das Grundprinzip ist relativ einfach erklärt: Nehmen Sie drei Fotos des gleichen Motivs, eine korrekt belichtet, eines etwas niedriger und eines etwas großzügiger. Die meisten hochwertigen Digitalkameras bieten dafür sogar automatische Funktionen an. In einem Bildbearbeitungsprogramm werden diese kombiniert und zu einem neuen Bild mit höherem Kontrastumfang zusammengerechnet.

So entstandene Bilder zeichnen sich durch einen enormen Detailreichtum aus, sowohl in den hellen als auch in den dunklen Bildteilen. Das sind genau die Bereiche, die bei normalen Bildern entweder im Dunkeln absaufen oder im Licht ausfransen. Um drei oder mehr Fotos korrekt zu berechnen, bedarf es spezieller Software. Sie verrechnet zwar die vorhandenen Bilder zu einem neuen Bild mit erweitertem Kontrastumfang, ersetzt aber nicht das Gefühl bei der Nachbearbeitung, denn einige Dinge leistet das rein mathematisches Rechenmodell zum Zusammenführen der Ausgangsdaten eben nicht.
HDR unter Linux
Wie nicht anders zu erwarten, bietet der Werkzeugkoffer eines Linux-Systems auch Optionen, um HDR-Bilder zu erzeugen. Überraschend ist allerdings, dass das Vorzeigewerkzeug Gimp derzeit keine Tools für die Zusammenführung unterschiedlich belichteter Aufnahmen enthält. Doch Linux wäre nicht Linux, würden sich hier nicht an anderer Stelle Lösungen auftun. Das Erzeugen von HDR-Bildern mittels Berechnungen am Computer bezeichnet man auch als DRI: Dynamic Range Increase. Folgende Werkzeuge können Sie unter Linux für Ihren Bilderzauber verwenden:
Das Programm CinePaint beherrscht von Haus aus höhere Bit-Auflösungen und auch die Erzeugung von Bildern mit erweitertem Kontrast. Mit den pfstools steht eine ganze Reihe von Kommandozeilen-Werkzeugen bereit, die zur Erstellung und zum Bearbeiten von HDR-Bildern dienen. Eine GUI von den Entwicklern, wie sie die meisten Bildbearbeiter bevorzugen, existiert derzeit noch nicht. Allerdings findet sich an anderer Stelle im Internet das Programm Qtpfsgui, das genau diese Lücke füllt. Von einem echten HDR-Profi, Greg Ward, stammt das Kommandozeilen-Tool hdrgen. Ein weiterer bekannter Name der HDR-Szene - Paul Debevec - hat zusammen mit zwei weiteren Entwicklern ein kleines Tool geschrieben: make HDR. Das kommerzielle Produkt Photogenics.HDR von Idruna Software ist bei einem Preis von etwa 400 Dollar eher etwas für Profis.
Obwohl Gimp ohne spezialisierte HRD/DRI-Werkzeuge auskommen muss, gelingen mit dieser hochwertigen Bildverarbeitung auch gute HDR-Bilder, wie wir in einem Workshop zeigen werden. Außerdem existiert mit Exposure Blend ein Plug-in für Gimp, mit dem sich HDR-Bilder recht einfach erzeugen lassen.
HDR mit qtpfsgui
Mit Hilfe von qtpfsgui von https://qtpfsgui.sf.net erstellen Sie beeindruckende HDR-Bilder mit wenigen Mausklicks. Leider gibt es derzeit für die meisten Distributionen keine Binärpakete von qtpfsgui, sodass wir empfehlen, das Tool, eventuell inklusive den pfstools, selbst zu kompilieren. Laden Sie das qtpfsgui-Source-Paket in Ihr Home-Verzeichnis herunter und entpacken Sie es mit

tar xzvf Archivname
Damit Sie es fehlerfrei kompilieren können, müssen Sie unter openSUSE 10.2 die Online-Paketquellen eingetragen haben - gegebenenfalls inklusive des Packman-Repositories - und folgende Pakete installieren: gcc-c++, pfstools, pfstools-devel, libexiv2, libexiv2-devel, fftw3-threads, OpenEXR-devel und libqt4-devel. Danach müssen Sie nur in das qtpfsgui-Verzeichnis wechseln und als root
qmake
make
make install
eingeben. Nutzer einer auf Debian-basierten Distribution wie kanotix, sidux benötigen für die pfstools die Pakete octave2.1-headers, openexr, libopenexr-dev, libmagick++9-dev, freeglut3-dev, libqt3-mt-dev und libqt4-dev. Für qtpfsgui müssen noch die Pakete exiv2, libexiv2-dev und galternatives nachinstalliert werden. Rufen Sie vor dem Kompilieren noch als root galternatives aus und setzen Sie qmake rechts auf Version 4.
Haben Sie alle diese Hürden genommen, starten Sie mit dem Befehl qtpfsgui die frisch kompilierte Anwendung. Mit Klick auf New Hdr... öffnen Sie eine Bilderserie. Klicken Sie im erscheinenden Dialog auf Load... und wählen Sie mit der Strg-Taste die zusammengehörenden Bilddateien aus. qtpfsgui verwendet zur Ermittlung der Bildhelligkeit die in JPEGs enthaltenen EXIF-Daten. Sind diese in Ihren Dateien nicht enthalten, müssen Sie ungefähre Werte mit entsprechenden Foto-Tools manuell nachtragen. Klicken Sie auf Next, können Sie im folgenden Dialog einstellen, wie das HDR-Bild aus den JPEGs erstellt werden soll. In der Regel können Sie die Vorgaben übernehmen.
Nach einem erneuten Klick auf Next wird das HDR-Bild berechnet und nach Klick auf Finish angezeigt. Viel haben Sie nicht von diesem Bild, denn HDR-Bilder können nicht in vollem Umfang auf dem Monitor oder gedruckt dargestellt werden. Mit Hilfe des Histogramms und des Gamma-Wertes oberhalb des Bildes könnten Sie noch die Bildhelligkeit verändern, richtig beeindruckend werden die Bilder aber erst mit Hilfe des Tonmappings, das den High Dynamic Range in einen Low Dynamic Range komprimiert.
Klicken Sie dazu auf den Button Tonemap the Hdr. Im folgenden Fenster stehen Ihnen verschiedene Konvertierungsalgorithmen aus den pstools zur Verfügung. Diejenigen, die einfach nur ungleichmäßig beleuchtete Szenerien optimieren wollen, sollten mit den Reinhard-Filtern experimentieren. Mögen Sie es besonders dramatisch oder surreal, probieren Sie den Fattal-Algorithmus aus. Mithilfe der Regler Alpha und Beta können Sie die dunklen und die hellen Bereiche stärker hervorheben oder abschwächen, während Sie mit Color Saturation den Himmel noch blauer und den Sonnenuntergang noch roter bekommen. Mit Klick auf Apply können Sie sich die Auswirkungen von Parameteränderungen in der Vorschau ansehen.

Möchten Sie Ihre Kreation herausrendern, wählen Sie rechts oben die gewünschte Result Size und klicken Sie auf Save Image, wodurch Sie das Ergebnis in eine neue Grafikdatei exportieren. Dabei stehen Ihnen auch verlustlose Formate wie BMP zur Verfügung.
Hilfe für Gimp
Mit Hilfe des Skripts exposure-blend können Sie auch mit Gimp die Erstellung von HDR-Bildern vereinfachen. Laden Sie das Skript unter https://turtle.as.arizona.edu/jdsmith/exposure-blend.scm herunter und kopieren Sie es in den Ordner home/.gimp-2.2/scripts. Im Dateimanager müssen Sie dazu die Option Verborgene Dateien anzeigen aktivieren.
Um ein neues HDR-Bild zu erzeugen, starten Sie das Skript über Xtns/Skript-Fu/Photo/Exposure Blend.... Es erscheint ein Eingabe-Dialog, dem Sie zunächst drei Bilder zuordnen müssen. Im Gegensatz zu CinePaint erkennt das Skript die Helligkeit der einzelnen Bilder nicht, sodass Sie diese im Dialog per Hand zuordnen müssen. Die anderen angebotenen Einstellungen können Sie bei den ersten Versuchen zunächst bei den Defaults belassen.
Ein Klick auf OK berechnet eine erste Version des HDR-Bildes. Unter Skript-Fu/Photo finden Sie einige neue Einträge, mit denen Sie das Ergebnis der Berechnung anpassen können. Konnten Sie die Bilder nicht mit einer Automatik-Funktion Ihrer Kamera aufnehmen oder sind die Bilder aus anderen Gründen nicht exakt deckungsgleich, können Sie dies mit der Funktion Skript-Fu/Photo/Align Exposure Mode: DARK oder BRIGHT anpassen. Sie verschieben das dunklere oder hellere Bild immer gegenüber dem normal belichteten. Drücken Sie dazu die Taste [m], um in den Verschiebe-Modus zu gelangen. Nun können Sie das schief stehende Bild mit den Pfeiltasten an das Referenzbild anpassen. Nach der Korrektur beenden Sie den Modus mit Mode : OFF. Außerdem können Sie das Bild automatisch zurechtschneiden lassen, indem Sie Trim Immage to Overlap Area anwenden.

Umfangreiche Möglichkeiten, das Ergebnis anzupassen, bietet das Set Blend Masks-Werkzeug, ebenfalls im Skript-Fu-Menü. Hier bestimmen Sie den Radius des Weichzeichners, der für die Masken verwendet wird, und stellen ein, ob Kanten geschützt werden sollen. Sie können verschiedene Masken zuordnen, was allerdings zu eher surrealistischen Ergebnissen führt, und zusätzliche Automatik-Funktionen aktivieren. Alle Aktionen lassen sich rückgängig machen, sodass Sie nach Herzenslust experimentieren können. Auch beim exposure-blend-Plug-in sollten Sie alle Möglichkeiten nutzen, die Gimp bietet, um das Ergebnis zu optimieren. Benutzen Sie entweder wieder das Kurven- oder das Farbwerte-Werkzeug, um den Kontrast der Masken zu erhöhen. Anschließend sollten Sie auch hier wieder darauf achten, dass das Bild nicht zu hell beziehungsweise zu flau erscheint und diesen Fehler ebenfalls korrigieren.
Fazit
Bei HDR-Fotos kommen Sie ausnahmsweise mit dem Standard-Bildwerkzeug Gimp allein nicht ganz zum Ziel, doch dafür gibt es ja qtpfsgui. Es bietet gute HDR-Werkzeuge. Die Kommandozeilen-Tools eignen sich dagegen eher für den HDR-Profi, der einzelne Arbeitsschritte automatisieren möchte. Alles in allem bietet Linux aber auch in diesem Spezialgebiet wieder für jeden das geeignete Werkzeug und das zum Dauer-Niedrig-Preis.

Pseudo-HDR mit Gimp
Eine Art Pseudo-HDR-Foto können Sie mit den Ebenen-Funktionen von Gimp erzeugen. Sie benötigen dazu lediglich zwei Bilder, die sich in der Belichtung stark unterscheiden. Öffnen Sie zunächst beide Bilder in Gimp. Kopieren Sie das dunklere Bild in die Zwischenablage und fügen Sie es anschließend in das hellere Bild ein. Es entsteht eine schwebende Auswahl, die Sie per rechtem Mausklick in die Ebenen-Palette und dem Befehl neue Ebene in eine feste Ebene umwandeln.

Klicken Sie mit der rechten Maustaste in der Ebenenpalette auf die Vorschau der neuen Ebene und fügen Sie über Ebene/Ebenenenmaske hinzufügen eine Maske hinzu, verwenden Sie die Option Graustufenkopie der Ebene. Öffnen Sie nun das Werkzeug Ebene/Farben/Kurven. Mit dem Kurvenwerkzeug können Sie nun sehr genau bestimmen, welche Bereiche des oberen, dunkleren Bildes sichtbar bleiben sollen, an allen anderen Stellen scheint das hintere, hellere Bild durch. Die Graustufenmaske blendet im dunkleren Bild die hellen Stellen aus und lässt die hintere Ebene sichtbar werden. Eventuell müssen Sie die Maske bei feinen Konturen anpassen, bis sie optimal ist.