Farbmanagement-Workflow - Vorbereitung durch CHDK

DRI/HDR-Bilder, Zeitraffer, Bilder mit extremer Tiefenschärfe, Stereobilder

Farbmanagement-Workflow - Vorbereitung durch CHDK

Beitragvon Photonix » 28.10.2012, 19:13

Hallo,

vorab möchte ich etwas zu meiner Arbeitsumgebung mitteilen.

Ich fotografiere mit einer PowerShot SX10IS, Firmware 1.0.1a und (noch) CHDK 1.10 Rev. 907.
Als Bildverwaltungsprogramm nutze ich schon seit Jahren Digikam;
aktuell Version 2.9.0 unter OpenSuse 12.2.

Und jetzt zu meinem Wunsch:

Nachdem ich die Einrichtung eines Colormanagements lange aufschob, habe ich mich nun daran gemacht.

Nach langem Suchen und Lesen bin auf einen Kalibrierungsablauf für Kameras gestoßen,
der mir einfach, wenig fehleranfällig und dazu noch bequem, weil automatisierbar, erscheint.

Hierbei wird vor jedem "Shooting" bzw. nach jeder Veränderung der Lichtverhältnisse ein Aufnahme mit einem
sog. Colortarget erstellt, anhand derer die Farbabweichungen (im Bildbearbeitungsprogramm) ermittelt und
farbtreu ausbelichtet werden kann.

Zur Erklärung habe ich hier mal zwei Youtube-Links beigefügt:
1. Kurz und 2. Ausführlich.

Für einen wie in den Videos dargestellten Ablauf wäre seitens CHDK folgende Ergänzung hilfreich.

  1. Durch das Drücken - einer vorher zu definierenden - Taste legt CHDK ein neues Unterverzeichnis in DCIM an.
    Hierbei wird der Name des neuen Unterordners, wie beim Original-OS-Befehl, durch Hochzählen des letzten Unterordnernamens um 1 gebildet
    (105CANON + 1 = 106CANON).
    Evtl. reicht hier schon ein Befehl zum Auslösen des Menübefehls "Ordner anlegen".
    Der Weg "zu Fuß" ist: "Menu - Rechts - Rechts - "Ordner anlegen" (8x Hoch) - Set - Rechts - Menu".
    Die angebotene Automatik seitens OriginalFW beschränkt sich auf eine zeitliche Steuerung.
    Jedes ab nun gemachte Foto wird in diesem Ordner gespeichert; bis der Vorgang wiederholt wird (oder der Ordner 2.000 Fotos beinhaltet 8-[ ).
  2. Das 1. dort abgespeicherte Foto erhält das Präfix CT für ColorTarget und eine fortlaufende Nummer (0001); und idealerweise die Nummer des Unterordners.
    Hierdurch und durch den Zeitstempel sollte eine eindeutige Zuordnung gewährleistet sein.

Mit den so geordneten und sortierten Fotos lassen sich die ColorTarget-Fotos beim Import ermitteln und aussteuern,
die Kalibrierung kann angestoßen und das daraus gewonnene Profil auf die zugehörigen Fotos angewendet werden.
Wie das geschieht, hängt von den Möglichkeiten des jeweiligen Bearbeitungsprogramms ab.

Mit dieser Änderung wäre der erste, entscheidende Schritt zu einem durchgängigen Farbmanagement gegeben.

Eine Weiterspinnen auf Grundlage dieses Threads fände ich zwar reizvoll,
aber aufgrund des Umfangs und der starken CPU-Belastung der Kamera nicht für angebracht.
(Dieser Thread war das am nächsten gelegene Thema bei meiner Suche im Forum.)
Photonix
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 3
Registriert: 27.10.2012, 15:39
Kamera(s): SX10IS, FW 1.01a

Re: Farbmanagement-Workflow - Vorbereitung durch CHDK

Beitragvon msl » 29.10.2012, 13:41

Hallo und willkommen.

Interessanter Workaround in Sachen Farbmanagement. Allerdings gibt es bei deinen Vorschlägen zur Funktionserweiterung diverse Hürden.

Prinzipiell sind Ordnererstellung und Dateiumbenennung kein Problem für CHDK. Allerdings wird das nie so funktionieren, wie du es gerne hättest. Jegliche Datei- und Verzeichnisänderung durch CHDK bekommt das eigentliche Kamerabetriebssystem nicht mit. Die Kamera liest beim Einschalten die Dateistruktur ein. Alles was nicht den CIPA-Richtlinien (*) entspricht, wird ignoriert. Wenn man per CHDK einen Ordner erstellt, der CIPA-konform ist, wird dieser erst nach einem erneuten Einschalten der Kamera registriert. Hier hilft wirklich nur, die kamerainterne Funktion zur Ordnererstellung zu benutzen, um den Ordner sofort zu benutzen.

Wird der Dateiname einer Bilddatei wie im Vorschlag mit einem Präfix erweitert, wird diese Bilddatei von Kamera als nicht lesbare Datei aussortiert.

Aus meiner Sicht wäre eine Lösung, die die Dateistruktur unberührt lässt, besser. Ich würde entweder mit Logs arbeiten oder zusätzliche Informationen in den Exif-Daten hinterlegen. Diese Möglichkeiten verursachen natürlich mehr manuelle Nacharbeit.

Für die Variante mit Logs wäre eine spezielle Skripterstellung erforderlich. Dieses wird immer dann gestartet, wenn ein ColorTarget-Bild erstellt wurde. Was die Logdatei an Informationen enthält, bleibt dem Anwender überlassen.

Für die Exif-Variante gibt es eigentlich schon eine fast fertige Skriptvariante - TagMe. Hier wird der Exif-Eintrag "user comment" benutzt, um zusätzliche Informationen zum Bild zu hinterlegen. So könnte man beispielsweise alle Bilder, die zu einem Color Target gehören, entsprechend einheitlich markieren.


(*) Vorschriften zu Kamera-Datei-Strukturen

Gruß msl
■ "Hey you, don't tell me there's no hope at all. Together we stand, divided we fall."CHDK inside FAQCHDK-Neuigkeiten auf Twitter
Benutzeravatar
msl
Super-Mod
Super-Mod
 
Beiträge: 4512
Bilder: 271
Registriert: 22.02.2008, 12:47
Wohnort: Leipzig
Kamera(s): A720 1.00c
SX220 1.01a

Re: Farbmanagement-Workflow - Vorbereitung durch CHDK

Beitragvon Photonix » 02.11.2012, 13:31

Hallo und vielen Dak für die schnelle Antwort.

Ich habe mich in den letzten Tagen erst einmal damit beschäftigt, die CIPA-Richtlinien zu begreifen.
Das Nötige habe ich nun begriffen; hoffe ich.

Was Deine Beschreibung der Ordnererstellung angeht, habe ich das so verstanden:
Die Ordneranlage durch CHDK ist prinzipiell möglich, aber wegen "Turn it off and turn it on"
für den besagten Zweck umständlich und daher unbrauchbar.

Ist es denn möglich, den Menüpunkt der kamerainternen Funktion zur Ordnererstellung direkt anzuspringen. Sozusagen, als Deeplink.
Oder befindet man sich da schon auf verbotenem Gebiet?
Oder geht eine Emulation der manuellen Eingabe?

Den manuellen Weg zu gehen, bedeutet meines Erachtens das Aus der Idee,
Das wird zu umständlich und nach anfänglicher Euphorie wird besonders im Freien,
nach negativen Erfahrungen bei wechselden Lichtverhältnissen, auf die Funktion verzichtet.

Also mindestens das Generieren des Ordners sollte "per Knopfdruck" möglich sein.

Den "Rest" könnte ein Skript auf Basis von TagMe.lua beisteuern.
- Bei Skriptstart prüfen, ob seit dem letzten Start ein Photo gespeichert wurde.
Dadurch ist es möglich durch zweimaliges Starten des Skriptes, direkt hintereinander,
das Skript zu beenden.
Z. B. so:
1. "SET" drücken - Skript wird gestartet, die Start-Bildnummer wird gespeichert
2. "SET" drücken - Die Ende-Bildnummer wird gespeichert - Eine eindeutige Bezeichnung (CT01-[date]) wird in ein geeignetes EXIF-Feld *) geschrieben
Eine neue Datei (inkrement 1) wird angelegt, die neue Start-Bildnummer eingetragen
3. "SET" drücken. Da zwischenzeitlich kein Foto gespeichert wurde (Start-BildNr. = Ende-BildNr.), wird die Datei gelöscht und das Skript beendet sich.

Soweit die Aufgabe von CHDK.

Der restliche Ablauf könnte, durchaus unkomplizierter als ich das angedacht hatte, umgesetzt werden.
Dazu habe ich mir die bereits bestehenden Importfilteroptionen von Digikam nochmals genauer angeschaut.

Digikam importiert immer die gesamten Bilder einer Speicherkarte auf einmal.
Also nicht nach Unterordner getrennt. Jedoch läßt sich der Herkunftsordner mit der Importvariabel [dir] in den Dateinamen einbinden.
Dies ist wichtig, wenn die Nummerierung der Fotos auf den jeweiligen Ordner beschränkt ist; also in jedem Ordner mit 0001 beginnt.
Somit besteht eine zweite Möglichkeit der Zuordnung der Bildern mit dem zugehörigen Target.
Für den Fotografen ergeben sich dabei zwei zwingende Vorgaben:

1. Das erste Foto muß eine ausreichend große Abbildung des Colortargets beinhalten.
2. Die Namenskonvention des Kameraprofils muß eine eindeutige Zuordnung zulassen.
Bei Digikam kann dies auch weit über die 8.3-Dateinamen hinaus gehen.
Beispiel: Test Template Porsche Outside 2012-10-15 Scene 01 (High-noon sunny)

Die dritte Variante wäre über die Aufnahmezeit (Alle Fotos nach der Aufnahmezeit eines Targets und vor der Aufnahmezeit des nächsten Targets).
Dafür müssten die Targets aber als solche auch identifizierbar sein.

Für den weiteren Workflow habe ich eine Anfrage an das Digikam-Team geschickt.
Ich bin gespannt, wie es weitergeht.

Allen immer ausreichend Photonen auf dem Sensor
und CHDK im Speicher

Gruß

Jürgen
----------------------------------------
*)
Tag - DocumentName
Tag - ImageDescription

und mein Favorit
ProfileName
Tag ID Tag Name Writable Group
0xc6f8 ProfileName string! IFD0
Photonix
CHDK-Einsteiger
CHDK-Einsteiger
 
Beiträge: 3
Registriert: 27.10.2012, 15:39
Kamera(s): SX10IS, FW 1.01a

Re: Farbmanagement-Workflow - Vorbereitung durch CHDK

Beitragvon msl » 02.11.2012, 23:21

Hallo,

eine "deep link"-Methode für die Ordnererstellung ist nicht bekannt. Da bleibt wirklich nur die Möglichkeit, den Vorgang (Menüaufruf neuer Ordner) per Skript zu emulieren:
Syntax: [ Download ] [ Verstecken ]
Benutze Lua Syntax Highlighting
--Beispiel
click("menu")
sleep(100)
click("right")
sleep(100)
click("right")
sleep(100)
click("down")
sleep(100)
click("down")
--u.s.w.
Erstellt in 0.003 Sekunden, mit GeSHi 1.0.8.9

Inwieweit die Pausen zwischen den einzelnen Klicks notwendig sind und ob die Pausenlänge optimal ist, kann man nur durch "try & error" ermittleln.

Die Möglichkeit, manuell per Canon-Menü einen neuen Bildordner zu erstellen, bieten nicht alle Kameras an. Die SX10 zählt zu den älteren Kameras mit dieser Option. Bei neueren Kameras wurde auch die Vergabe der Ordnernamen verändert.

ältere Kameras: xxxCANON (xxx = fortlaufende Nummerierung beginnend mit 100), manuelle Ordnererstellung möglich
neuere Kameras: xxx___mm (xxx = fortlaufende Nummerierung beginnend mit 100; mm = Monat), Option für Ordnerstruktur mit Tagesdatum, keine manuelle Ordnererstellung

Das Exif-Skript TagMe.lua ist eigentlich nur für den Tag "user comment" vorgesehen. Sicherlich lassen sich auch andere Tags schreiben. Der Aufwand ist aber aufgrund der relativ komplizierten Struktur der Exif-Daten nicht unerheblich. Der Vorteil von TagMe.lua ist aber, dass man eine definierte Gruppe von Bildern auf einem Schlag mit dem gleichen Kommentar versehen kann.

In einer abgewandelten Form gibt es noch ein weiteres Skript, mit dem sich interaktiv der "user comment"-Tag schreiben lässt. Hier wird per CHDK-Datei-Browser eine Bilddatei aufgerufen, in die dann entweder aus einer bestehende Liste mit vorgefertigten Kommentaren oder über ein CHDK-Texteingabemodul der Benutzerkommentar geschrieben wird. So könnte man ziemlich simpel eine Target-Datei manuell markieren.

Möglicherweise reicht so eine einfache Markierung der jeweiligen Target-Datei schon aus, diese und alle folgenden Dateien bis zur nächsten Target-Datei in einem Ordner auf dem PC abzulegen.

Gruß msl
■ "Hey you, don't tell me there's no hope at all. Together we stand, divided we fall."CHDK inside FAQCHDK-Neuigkeiten auf Twitter
Benutzeravatar
msl
Super-Mod
Super-Mod
 
Beiträge: 4512
Bilder: 271
Registriert: 22.02.2008, 12:47
Wohnort: Leipzig
Kamera(s): A720 1.00c
SX220 1.01a


Zurück zu kreative Arbeit mit dem CHDK

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste