Sie sind nicht angemeldet.

1

Donnerstag, 26. November 2009, 21:46

Tester gesucht: HDRFlow Workflows für freie Bildbearbeitungstools

Hallo Leute,

Für die Vorbereitung der "Rohware" habe ich eine Software geschrieben, die die folgende freien Bildbearbeitungstools in einem Workflow kombiniert:

DC-Raw - Dekodierung von RAW-Dateien
Exif-Tools - Speichern und Wiedereinfügen der Metainformationen
ImageMagick - Anwenden von Masken, Ausblenden von Alpha-Kanälen für picturenaut, Anwenden von Schärfe-Filtern
align_image - Ausrichten von Bildern mit Kontrollpunkten
fulla - Korrektur von TCA
tca_correct - Ermittlung der Korrekturparameter für fulla.
Enfuse - Kombinieren von Bildern
picurenaut - Erzeugung von HDR-Bildern, tonemapping von HDR-Bildern

Kommerziell:

photomatixcl - Erzeugung von HDR-Bildern

Folgende Features werden dabei unterstützt:
  • Dekodierung der Raw-Dateien.
  • Es wird sowohl Enfuse als auch das Generieren von HDR und Tonemapping mit Picturenaut unterstützt
  • Metadateien bleiben erhalten
  • Workflows werden im Projektverzeichnis in der XML-Datei default.dat gespeichert. Sämtliche Parameter werden dort mitgespeichert, sodass das Ergebnis jederzeit reproduziert werden kann.
  • Vorauswahl von einigen Beispiel-Workflows. Durch Editieren der XML-Datei kann jede sinnvolle Kombination von Arbeitsschritten erzielt werden. (Für Fortgeschrittene)
  • Mehrprozessorfähig: Arbeitet mehrere Workflow-Schritte parallel ab. Die Anzahl der verfügbaren CPUs wird automatisch erkannt, kann aber auch in der Konfiguration festgelegt werden.
  • Konfigurierbar: Sinnvolle Parameter können für jedes Tool festgelegt werden. Eingestellte Parameter werden in Workflow-Datei gespeichert.
  • Auswahl möglich ob Zwischenergebnisse abgespeichert werden sollen, oder ob nur das Endergebnis erhalten wird.
Ein Workflow sieht beispielsweise wie folgt aus

Beispielworkflows

Installation:

Nach Installation müssen die Programmverzeichnisse der einzelnen Tools festgelegt werden. Es wird überprüft, ob die notwendige Tools hinreichend aktuell sind.

Erste Schritte

In der Startmaske kann der vordefinierte Workflow ausgewählt werden. Folgende Workflows sind verfügbar:

Startbildschirm

Static HDR Flow:     "All In One" - Kombination von fast allen Tools
Simple Flow:         Experimentell: Test-Workflow (mit Anwendung von Masken)
PictureNaut-Workflow:     Enthält zusätzlich zu Aligner und Fulla die PictureNaut Komponenten zum Erzeugen von HDR-Bildern und zum Tonemapping derselben.
Raw Converter:         Keine HDR-Generierung - nur Dekodierung von Raw-Bildern mit DC-RAW
Photomatix:        Experimentell: HDR-Generierung mit Kommandozeilentool von photomatix. Das Tonemapping wird mit dem Picturenaut Tool durchgeführt.
Enfuse Workflow:    Kombinatin der Bilder mit Enfuse mit Anwendung von Masken.
Enfuse SingleWorkflow:     Experimentell: Erzeugt aus einem einzelnen Raw-Bild verschiedene Belichtungen und kombiniert diese mit Enfuse.

Die hier definierten Tools können durch Manipulation der XML-Datei beliebig angepasst werden (Wenn man weiss wie es geht).

Fileselector

Jeder Workflow enthält eine allgemeine Einstellungsmaske und die FileSelector-Komponente. In den allgemeinen Einstellungen muss das Projektverzeichnis festgelegt werden. Falls das Verzeichnis nicht existiert wird es erzeugt. Im Fileselector können die Raw bzw. JPG-Dateien per DragNDrop eingefügt werden. Weiterhin können hier Maskenbilder ausgewählt werden. Diese Option ist aber nur vorhanden, falls der Workflow dies auch unterstützt. Es wird eine Vorschau der Datei angezeigt. Dies funktioniert aber nur, wenn in Windows ein entsprechender Decoder installiert ist.

Logwindow

Einschränkungen:

- Nur getestet mit Raw-Bildern von Nikon
- Maskenbilder müssen im PNG-Format vorliegen
- Windows Only
- benötigt .Net Runtime in der Version 3.5
- es ist zwar möglich zu jedem Bild die TCA-Korrektur-Werte zu ermitteln. Dies ist aber nicht sinnvoll, da sich diese Bilder nicht mehr sinnvoll kombinieren lassen. Stattdessen sollten die Korrekturparameter mit einer repräsentativen Auswahl von Bildern ermittelt werden und diese Werte dann fix als Parameter zu Fulla definiert werden. Diese Vorgehensweise ist auch wesentlich performanter, da tca_correct für die Ermittlung sehr lange braucht.
- keine konsequente Lokalisierung der Dialoge, manchmal Englisch manchmal Deutsch.

Was fehlt, was ist geplant:

- SDK/API um eigene Workflow-Komponenten zu entwickeln (falls Interesse besteht)
- Unterstützung von Masken in allen vordefinierten Workflows
- Verbesserung der Auswahl der vordefinierten Workflows
- Verbesserung der Dateiauswahl
- Konsequente Unterstützung von sinnvollen Dateiformaten (ausserhalb der Nikon-Welt)
- Grafischer Workflow-Designer (sehr viel später, Ideen zur verwirklichung werden gerne akzeptiert)

Wer das Tool testen möchte, findet die gezippten Setup-Dateien im Anhang. Ich würde mich über konstruktives Feedback jeglicher Art sehr freuen.

Viel Spass
Schmart
»schmart« hat folgende Datei angehängt:
  • hdrflow-0.1.zip (386,96 kB - 75 mal heruntergeladen - zuletzt: 23. Juni 2025, 03:13)

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »schmart« (27. November 2009, 09:43)


2

Freitag, 27. November 2009, 11:01

Prinzipiell ist ja jeder Versuch eine freie Software mit neuer Funktionalität zu anzubieten sehr zu begrüßen.

Leider ist das hier aber ein klassisches Beispiel für ein Tool, mit dem sich vielleicht der Entwickler zurecht findet, der Rest der Menschheit aber ziemlich hilflos davor steht.

Ich habe mich jetzt etwa eine Stunde damit befaßt und das einzige was ich dem Teil an Reaktionen entlocken kann sind Abstürze. Und sei versichert, daß ich mich mit dem Thema Bildbearbeitung und HDR nicht erst seit gestern beschäftige.

Es ist wohl nicht falsch, wenn ich behaupte, daß das Ding alles andere als selbsterklärend ist.

Wenn du also ein weiter gehendes Feedback von deinen Usern erwartest, solltest du ihnen zumindest so viel mit auf den Weg geben, daß sie ohne Suchen und Raten ein Ergebnis erzielen können, das sie ermutigt weiter zu machen.

Das fängt mit einer Beschreibung an, die erläutert, warum es dieses Tool überhaupt gibt und welche Vorteile ein Nutzer davon haben kann, wenn er es einsetzt. Dann geht es weiter mit den notwendigen Voraussetzungen, Einstellungen, einer einfachen Anleitung u.s.w.

 

Ich für meinen Teil habe vorerst das Interesse verloren und werde mich erst wieder damit beschäftigen, wenn mindestens drei andere Leute mitteilen, daß sie ohne dieses Ding nicht mehr leben können.


3

Freitag, 27. November 2009, 22:07

Das Tool welches ich hier vorstelle ist in der Tat ein Werkzeug welches ich als Entwickler einsetze. So gesehen ist es vielleicht wirklich im Moment so, dass ich mich alleine damit zurechtfinde. Aber gerade aus diesem Grunde stelle ich es ja auch diesem Forum zur Verfügung. Ich betreibe das Thema dieses Forums nur als Hobby - in meiner Freizeit. Das Programm welches hier entstanden ist, sollte dann auch vielleicht nicht an professionellen Maßstäben gemessen werden. Ich würde konstruktive Kritik gerne nutzen, damit hier ein allgemeiner Nutzen daraus erzielt werden kann. Wenn das Programm bei dir abstürzt, so kann dies nur dadurch sich ändern, wenn ich mehr Informationen zu den Umständen erfahre. Mit den von dir getroffenen Aussagen kann ich leider nichts anfangen.

Ich versuche es aber trotzdem:

Bevor irgendetwas funktioniert ist es wichtig, dass in der Einstiegsmaske unter Installation die Tools auch richtig konfiguriert sind.

Die Installation Schritt für Schritt:

 
Start

Click auf Installation sollte die entsprechende Maske öffnen

Allgemein

Auf dieser Maske kann die maximale Anzahl der CPUs automatisch oder manuell festgelegt werden. Ausserdem kann hier das Verzeichnis festgelegt werden, wo Standardmasken abgelegt werden.

Install Aligner

In den folgenden Reitern werden die jeweiligen Tools konfiguriert. Die Masken erfassen standardmässig im oberen Teil das Verzeichnis wo sich das Tool befindet. Im unteren Bereich erfolgt als Kontrolle, ob das Tool auch richtig erkannt wird, der jeweilige Hilfetext. Eine Ausgabe wie "Das System kann die angegebene Datei nicht finden" oder "Das Gerät ist nicht bereit" deutet darauf hin, dass hier der Ort nicht stimmt.

Die Crux bei der Nutzung von externen Tools ist, dass diese Angaben bei jeder Installation unterschiedlich sein können. Ich habe bewusst darauf verzichtet, die Tools ins Setuppaket aufzunehmen. Auf den Seiten befindet sich aber jeweils ein Link, wo die Tools im Internet zu finden sind.

Notwendig ist die Konfiguration auf den Seiten Aligner, Enfusing, Exif-Tool, Dcraw und ImageMagick. Bei letzterem wird aber gegenwärtig die Korrektheit noch nicht überprüft. Bei den anderen findet eine Überprüfung statt. Bei einigen wird auch überprüft, ob die installierte Version hinreichend aktuell ist.

Sieht bei euch die Installation wie folgt aus, fehlen vermutlich noch einige Angaben:

Fehler bei der Installation

In diesem Fall lässt sich die Installationsmaske auch nicht mit OK verlassen.

Ist die Hürde überwunden kann im Startbildschirm ein erster Workflow erzeugt werden. Für den ersten Test ist "Enfuse Workflow" gut geeignet. Es erscheint folgende Maske

Enfuse Allgemein

Auf dieser Maske kann ein Name und eine Beschreibung hinterlegt werden. Zwingend sind diese Angabe nicht. Als Pflichtfeld muss hier lediglich das Output Directory angegeben werden. In diesem Verzeichnis werden alle Dateien abgelegt, die beim Ablauf des Workflows erzeugt werden. Weiterhin kann hier ein "privates" Maskenverzeichnis hinterlegt werden. Das Thema "Masken" lasse ich im ersten Schritt aussen vor. Dat kommt später.

Die im Workflow bearbeiteten Dateien werden im Fileselector gesetzt:

Enfuse Fileselector leer

Hier sollte als erstes die Set-Size gesetzt werden. In den meisten Fällen wird hier eine "3" stehen.

Durch Drag und Drop können Dateien auf die Fileliste gezogen werden. Alternativ kann auch der Button "Einfügen" genutzt werden. Ich benutze aber eigentlich immer DragNDrop. Die Liste ist hierarchisch angeordnet. Leider wird die Hierarchie nach jeder Dateioperation wieder zugeklappt. An dieser Stelle habe ich noch eine Baustelle. Nach Aufklappen der einzelnen Ebenen sieht die Maske dann wie folgt aus:

Enfuse Fileselector mit Dateien

Die folgenden Masken enthalten gültige Standardwerte. Für den ersten Test schlage ich aber trotzdem die folgende Belegung vor. Fulla und Aligner sollten für einen ersten Test deaktiviert werden.

Enfuse Dcraw

Hier bitte den Haken bei "Keep files" setzen. Die von DCRaw dekodierten Tif-Dateien verbleiben dann im Verzeichnis "[Output Director]\out\RawConverter".

Enfuse Fulla

Fulla im ersten Test bitte deaktivieren.

Enfuse Aligner

Der Aligner ist standardmässig schon deaktiviert.

Enfuse Enfuser

Für einen ersten Test sollten die Einstellung für Enfuse passen.

Nach all der Einstellerei kann mit dem Button "Start" nun der Workflow gestartet werden. Es erscheint folgendes Fenster:

Log Console

Das Ausgabefenster beinhaltet verschiedene Protokolle. Die Konsole zeigt Ausgaben von der Workflow-Engine. In weiteren Fenstern werden Ausgaben der beteiligten Tools und weitere Debuginformationen angezeigt.

Log Thread 1

Hegt ihr die Vermutung, dass irgendwas nicht rund läuft, so lohnt sich der Blick in die einzelnen Protokolle. Ihr habt grosse Chancen, dass hier eine Fehlermeldung auf die eigentliche Fehlerursache hinweist. Im Zweifel könnt ihr das Protokoll ins Forum posten und die Allgemeinheit oder mich rätseln lassen. Erscheint eine Fehlermeldung in Form einer Meldungsbox ist dies in vielen Fällen ein Fehler im beteiligten Tool. Auch die Fehlermeldung ist für die Analyse interessant und kann, falls die Ursache nicht selbst gefunden wird, hier analysiert werden. In den meisten Fällen ist das Tool nicht oder in der falschen Version installiert.

Nach hoffentlich erfolgreichem Ablauf sollte das Ausgabeverzeichnis wie folgt aussehen:

Ausgabeverzeichnis

In diesen Verzeichnisse befinden sich die Ergebnisdateien.

So ich hoffe ich habe ein wenig zur Erhellung begetragen und wünsche noch einen schönen Freitagabend

Schmart


4

Freitag, 27. November 2009, 22:27

Der Begriff Masken ist sehr mißverständlich. In diesem Umfeld ist das die Bezeichnung für Alphakanäle. Ich hab mich die ganze Zeit gefragt, wozu ein Maskenverzeichnis gut sein soll. Ein weiterer wichtiger Hinweis ist, daß Imagemagick zwingend installiert sein muß und die Installation nicht überprüft wird. Bis jetzt weiß ich aber immer noch nicht wofür das Tool eigentlich gut sein soll bzw. wie es mir (möglicher Weise) helfen kann, meine Arbeit zu erleichtern.

5

Freitag, 27. November 2009, 23:13

Die Konfiguration von ImageMagick wird in der nächsten Version überprüft.

Den Begriff "Maske" habe ich hier übernommen: http://www.imagemagick.org/Usage/channels/#erase Alphakanal wäre hier wohl auch nicht der richtige Begriff, da im Moment nicht der Alphakanal gesetzt wird, sondern die Maske destruktiv das Bild beschneidet. Zumindest zeigt GIMP mir nicht an, dass lediglich durch den Alphakanal das Stativ ausgeschnitten wird. Falls jemand weiss, wie hier composite aufgerufen werden kann, um nur den Alphakanal zu setzen, der darf hier gerne Aufklärung leisten.

Ich benutze das ganze um die Bilder vor dem Stitchen in PTGUI aufzubereiten. Folgende Punkte werden dabei berücksichtigt:

- Dekodieren der Raw-Dateien
- Korrektur von TCA
- Ausrichten von Bildern die ohne Stativ aufgenommen wurden
- das Kombinieren der Belichtungsreihen mit Enfuse bzw. picturenaut
- Entfernen des Stativs und anderer störender Elemente auf den ungestitchten Bildern.

In PTGUI können die so erzeugten Bilder dann meist ohne grosse Nachbearbeitung zusammengesetzt werden.

Habe ich das vergessen zu erwähnen? Muss mal mit meiner Marketingabteilung reden ;-)

6

Samstag, 28. November 2009, 09:53

Ja das solltest du, denn bis jetzt ist der USP deines Produktes immer noch verborgen.

7

Sonntag, 29. November 2009, 20:28

Sinn...

Ich sehe den Sinn darin, das diverse Einzelschritte in dem Tool zusammengafasst werden und dann automatisch bis zum Endprodukt (Equi) durchlaufen.
Also: nur noch den Belichtungssatz aufnehmen -> ab in das Tool -> Equi hinten raus.

Das könnte eine Vereinfachung sein, wenn alle Panos gleich parametrisiert werden können.
Bei mir scheitert die Nutzung von DCRAW unter TuFuse schon an dieser Automatik.
Ich müsste die Parameter "im Dunkeln" einstellen und probieren - da ist das Arbeiten mit einem grafischen RAW Konverter für mich leichter.

Die Weiterverarbeitung via TuFuse - die könnte ich mir mit einem Tool vereinfacht vorstellen.
Das Stitchen wiederrum nicht - obwohl es sicher genug Panos gibt die sich per Skript stitchen lassen würden.
Meine Monopods sind da manchmal ein wenig zickig.

Die "Marketing"- Abteilung sollte also schon Ziele und Nutzvorteile darstellen.

Interessanter Ansatz allemal - vielleicht kann Mann "Quereinsteigen" in das Tool ?


pedalschinder

Power-User

Beiträge: 129

Wohnort: Rosenheim

Beruf: 3D Visualisierung

  • Nachricht senden

8

Montag, 30. November 2009, 05:17

Leider auch noch nicht wirklich für mich zu nutzen... allein schon den vollen umfang zu erfassen (incl. einer realen Anwendung) ist teilweise nicht ganz ohne. Noch dazu bei mir unter OS X... ;-) Aber egal... Ist doch n guter Gedanke! Bin neuem gegenüber immer aufgeschlossen, daher versprech ich einfach mal, das ganze trotzdem gespannt zu verfolgen - denn interressant ist es definitiv! Nur so entsteht Fortschritt!