zurück zum Artikel

Raw-Formate für Ixus und Powershot mit CHDK Kommentare

Reiko Kaps, Jobst-H. Kehrhahn

Mit CHDK lernen kompakte Canon-Kameras unter anderem, ihre Aufnahmen auch in Rohdaten-Formaten (Raw) abzuspeichern, die frei von störenden Einflüssen wie JPEG-Kompression und reduzierter Farbtiefe sind.

Günstige Kompaktkameras speichern die Bilddaten nur in Dateiformaten wie JPEG, das den ohnehin
begrenzten Farbsinn des Sensors weiter zusammenstaucht. Der Firmware-Aufsatz Canon Hack Development Kit [1] (CHDK) rüstet jedoch bei vielen Canon [2]-Kompaktkameras das Raw- oder Rohdaten-Format nach, das ansonsten nur wesentlich teurere DSLR-Modelle beherrschen. Diese frei von einer weltweiten Community ohne jedwede Unterstützung von Canon entwickelte Software läuft mittlerweile auf über 70 Ixus- und Powershot-Modellen und steht zum kostenlosen Download [3] zur Verfügung. Bevor Sie das Raw-Format mit Ihrer Kompakten nutzen können, müssen Sie CHDK installieren – wie, erfahren Sie im Detail hier [4].

Raw-Formate lassen sich mit einem unentwickeltem Silberfilm vergleichen: Die gespeicherten (latenten) Informationen entsprechen dem, was die Kameraoptik, die Blende, die Verschlusszeit und der Sensor abbilden können. Rohdaten-Formate variieren von Hersteller zu Hersteller und teilweise auch von Modell zu Modell, sodass man für die Umwandlung in Austauschformate wie JPEG, PNG oder TIFF immer einen speziellen Konverter benötigt. Um dieses Problem aus der Welt zu schaffen, entwickelte Adobe das Rohdaten-Format DNG (Digitales Negativ), das allerdings nur wenige Kamerahersteller tatsächlich einsetzen. CHDK speichert das Adobe-Rohdatenformat nach einigen Vorarbeiten, die wir hier beschreiben. DNG beseitigt einige Einschränkungen des puristischen CHDK-Raw-Formats, indem es Angaben zur Belichtungszeit, Blende und ISO-Wert speichert. Für unsere Rohdaten-Versuche setzen wir eine Canon IXUS 80 ein.

Das CHDK-Hauptmenü, also das Top-Level-Menü, von dem aus alle CHDK-Funktionen erreicht werden können. Um das Hauptmenü aufzurufen, drückt man die - und anschließend die Menü-Taste.

Das CHDK-Hauptmenü, also das Top-Level-Menü, von dem aus alle CHDK-Funktionen erreicht werden können. Um das Hauptmenü aufzurufen, drückt man die - und anschließend die Menü-Taste.

Mehr Infos

CHDK für DNG vorbereiten

Rufen Sie mit der <ALT>-Taste und einem anschließenden Druck auf die SET-Taste das CHDK-Skript-Menü auf. Über den Menüpunkt „Skript laden“ wechseln Sie ins Unterverzeichnis TEST/ und wählen dort die Datei badpixel.lua. Ein weiterer Druck auf die SET-Taste lädt das kleine Programm, die Menü-Taste führt in den Skript-Modus zurück. Anschließend startet ein Druck auf den Auslöser das geladene Skript, das 30 bis 40 Sekunden für die Erstellung der Fehlerpixel-Liste benötigt. Während es seine Arbeit erledigt, sollten Sie die Kamera nicht bewegen. Hat es die Liste erstellt, fordert das Skript auf dem Display zum Speichern der
Datei über die SET-Taste auf. Sollte das Skript scheitern und die Meldung nicht anzeigen, starten Sie es einfach noch einmal.

Für die direkte Umwandlung in DNG benötigt die Kamera einige Informationen über die fehlerhaften Pixel des Sensors. Diese Angaben rechnet CHDK bei der DNG-Umwandlung heraus, so wie es auch die Original- Firmware beim Speichern von JPEG-Dateien erledigt. Fehlerhafte Sensor-Pixel (Fehlpixel, Badpixel, Hotpixel) leuchten beispielsweise ständig oder zeigen falsche Farben an. Sie sind bereits nach der Fertigung vorhanden und stehen dann als Listen in der Firmware bereit. Oder sie entstehen erst nach der Geräteproduktion, fehlen dann also in den vom Hersteller bereitgestellten Listen. Diese Angaben erwartet CHDK auf der SD-Karte im Verzeichnis CHDK/ in der Datei badpixel.bin, die man über das mitgelieferte Skript badpixel.lua erstellen muss (siehe Kasten).

Hat man diese Vorarbeit gemeistert, lässt sich die DNG-Sicherung in der CHDK-Oberfläche aktivieren. Weitere Optionen versehen die DNG-Dateien mit der expliziten Endung .DNG oder steuern, ob CHDK den Kameraeigenen Raw-Puffer für die Umwandlung nutzen soll, was den Vorgang etwas beschleunigt. Die Ixus 80 braucht ohne Raw-Puffer etwa sechs, mit Puffer gut fünf Sekunden für das Speichern einer Aufnahme im DNG-Format. Verzichtet man im Menü auf die Dateiendung .DNG, sichert die Ixus 80 die DNG-Dateien mit der Endung, die man über den Punkt „RAW-Datei Endung“ ausgewählt hat. Steht hier .CRW, sollte die Ixus die DNG-Dateien auch dann anzeigen und kopieren können, wenn man über den Computer per USB-Kabel auf den Speicher der Kamera zugreift. Sichert CHDK die digitalen Negative hingegen mit der typischen Endung .DNG, kommt man nur über einen Kartenleser an die Rohdatenbilder auf der Speicherkarte heran.

Gespeicherte Raw-Bilder (im CHDK-eigenen Format) lassen sich sofort in der Kamera weiterverarbeiten, was der Punkt „RAW-Entwicklung“ im RAW-Menü der Firmware anstößt. Über den folgenden Dateiauswahl-Dialog wählt man eine Rohdatendatei, nickt den Dialog mit der SET-Taste ab und verlässt das CHDK-Menü über die ALT-Taste. Nun ändert man im Aufnahmemodus beispielsweise den Farbmodus auf Sepia oder Schwarzweiß und drückt den Auslöser. CHDK schießt nun kein neues Bild, sondern fertigt aus den gewählten Rohdaten einen Abzug, der als zusätzliche JPEG-Datei auf der SD-Karte landet. Auf diesem Weg kann man nicht nur die Farben anpassen, sondern auch Schärfe, Kontrast, Bildauflösung, Rausch-Reduktion (über die Empfindlichkeit), Kompression und über den digitalen Zoom sogar den Ausschnitt beeinflussen.

Raw-Formate für Ixus und Powershot mit CHDK

Über eigene Tonwertkurven lassen sich zudem weitere Effekte und Manipulationen an den Raw-Bildern vornehmen, vorausgesetzt, man fotografiert mit einer Kamera, die 10-Bit-Raw-Aufnahmen erstellt. Dazu schaltet man im CHDK-Hauptmenü unter „Tonwertkurven“ den Punkt „Kurven an/aus“ auf Custom und wählt über „Lade Kurvenprofile“ ein Kurvenprofil. Anschließend verlässt man das CHDK-Menü, lädt wie oben beschrieben eine CHDK-Raw-Datei und startet im Aufnahmemodus die Raw-Entwicklung des gewählten Bildes.

Fertige Kurvenprofile samt ausführlicher Beschreibung und Installationanleitung findet man in den CHDK-Foren. Die deutsche CHDK-Version bringt allerdings bereits viele Profile mit. Eigene lassen sich über das einfache Windows-Programm Curve-Update erstellen. Die Software steht als Download über das deutsche CHDK-Forum [5] bereit. Liegen die Raw-Bilder als DNG auf der Speicherkarte, lassen sie sich über den Dateimanager (unter Verschiedenes im CHDK-Menü) zurück ins CHDK-Raw-Format wandeln und anschließend "entwickeln“. Der Dateimanager vereint außerdem mehrere Raw-Dateien, was der klassischen Doppelbelichtung entspricht. Dabei mittelt er die Belichtung aller Aufnahmen (Raw Mittelwert) oder sie summiert sie auf (Raw Sum). Der weitere Bearbeitungsweg der Rohdatenbilder hängt vom verwendeten Format ab.

Setzt man auf Adobes Digitales Negativ, kann man die Bilder direkt über einen Konverter wie Lightroom [6], Raw Therapee [7] oder UFRaw [8] in gebräuchliche Austauschformate wie PNG oder JPEG wandeln oder sie an Bildverarbeitungsprogramme weiterreichen. Bevorzugt man hingegen das CHDK-Rohdatenformat, muss man unter Umständen die Metadaten aus dem ebenfalls abgespeicherten JPEG-Bild laden. CHDKs Raw-Format hat zwar die Endung .CRW, die Canon auch für eines seiner Raw-Formate nutzt, aber mehr Gemeinsamkeiten haben beide nicht. Die allermeisten Programme verstehen das CHDK-Format nicht. Ausnahmen sind allerdings Konverter wie dcraw [9] und ufraw [10] oder das für Windows, Mac OS X und Linux erhältliche Programm DNG4PS-2 [11], das CHDK-Raw-Dateien ins DNG-Format verwandelt. Es kopiert dabei auch gleich die Metadaten aus den JPEG-Dateien. Allerdings unterstützt das Programm nicht alle von CHDK unterstützte Kameramodelle und es wird nicht mehr weiterentwickelt.

Im Heft c't Digitale Fotografie 3/10 [12] finden Sie weitere CHDK-Anleitungen zu folgenden Themen:

Langzeitbelichtungen mit CHDK
HDR-Aufnahmen und Belichtungsreihen
CHDK-Erweiterungen selbst schreiben

CHDK installieren

Um CHDK zu installieren, braucht man zunächst drei Dinge: erstens eine SD-Karte, die für die ersten Gehversuche nicht größer als 4 GByte sein sollte. Zweitens einen Card-Reader inklusive PC und drittens einen Internetzugang, um den für die jeweilige Kamera passenden CHDK-Build herunterzuladen. Wer
gerne mit einem Utility arbeitet, findet unter chdk.wikia.com/wiki/CardTricks [13] ein gleichnamiges
Hilfsprogramm, das die Installation erleichtert. Außerdem gibt es dort einige gut gemachte Installations-Guides.

CHDK unterstützt zwar wie erwähnt insgesamt über 70 verschiedene Ixus- und Powershot-Modelle, aber eine einheitliche CHDK-Version gibt es nicht. Jede Kamera – oder besser gesagt: jede Firmware einer Kamera – hat ihren eigenen CHDK-Build. Auf chdk.wikia.com [14] findet sich auf der rechten Seite ein Kasten, der alle unterstützten Kameras und Firmware-Versionen aufführt. Als Gegenstück gibt es bei wirklemms.de [15] im Thread „Installation (Integration)“ und dort unter „Ankündigung: nicht CHDK-unterstützte Kameras“ eine Negativ-Liste.

Damit CHDK ordnungsgemäß läuft, muss die SD-Karte als FAT16 formatiert werden (deshalb auch die 4 GByte Speicherbegrenzung). Unter Windows geht man dazu wie üblich vor, klickt also mit der rechten Maustaste das SD-Laufwerk an und wählt im Kontextmenü „formatieren…“.

Um die richtige CHDK-Version für eine Kamera zu finden, benötigt man deren genaue Firmware-Versionsnummer – und zwar genauer, als sie die Kamera werkseitig angibt. Um diese zu erhalten, speichert man auf der SD-Karte zwei leere Textdateien mit den Namen „ver.req“ und „vers.req“. Welche
der beiden tatsächlich benötigt und von der Kamera genutzt wird, ist abhängig vom Modell. Anschließend legt man die SD-Karte in die Kamera ein, startet im Wiedergabe-Modus und drückt gleichzeitig die Tasten FUNC SET und DISP. Jetzt zeigt die Kamera statt beispielsweise 1.0.1.0 die hier benötigte Firmware-Version an – etwa „GM1.01B“ . Wichtig ist die Angabe der Versionsnummer wie 1.01B.

Von CHDK gibt es verschiedene Distributionen, beispielsweise auch eine deutsche CHDK-DE, die sich in manchen Punkten von der internationalen Version unterscheidet. Sie bietet unter anderem eine deutsche
Menüführung und Umlaute per Default, reichlich Tonwertkurven zur direkten Anwendung in der Kamera und verbesserte Fehlermeldungen. Heruntergeladen werden kann CHDK-DE von der deutschen Seite wirklemms.de [16]. Um die richtige Version herunterzuladen, braucht man das Kameramodell und die in Schritt 3 ermittelte Firmware-Version.

Entpacken, auf SD-Karte kopieren, fertig! Im Root-Verzeichnis findet sich dann neben anderen Dateien die besagte DISKBOOT.BIN und ein Verzeichnis CHDK. Jetzt legt man die SD-Karte ein und startet die Kamera im Wiedergabemodus (das Objektiv muss eingefahren sein). Das aktiviert im Canon-Wiedergabe-Menü ganz am Ende einen zusätzlichen Menüpunkt namens „Firm Update…“, den man auswählt, um CHDK das erste Mal manuell zu starten. Die Kamera bootet neu und lädt CHDK, zu erkennen am charakteristischen
Logo.

Damit CHDK beim nächsten Start automatisch geladen wird, muss man nach dem manuellen Start noch zwei Dinge erledigen: Zunächst wechselt man mit der Tastenkombination <Alt>+Menü ins CHDK-Menü, wobei die <Alt>-Taste je nach Modell variiert. Bei der Ixus 70 liegt sie beispielsweise auf der Print-Taste. Dann drückt man „Verschiedene Einstellungen > Mache SD-Karte bootfähig …“ via FUNC.SET. Im letzten Schritt setzt man den Schreibschutz der SD-Karte. Das war’s: Künftig sollte CHDK bei jedem Kamerastart automatisch geladen werden.

Im Heft c't Digitale Fotografie 3/10 [17] finden Sie weitere CHDK-Anleitungen zu folgenden Themen:

Langzeitbelichtungen mit CHDK
HDR-Aufnahmen und Belichtungsreihen
CHDK-Erweiterungen selbst schreiben

Kommentieren [18] (rst [19])


URL dieses Artikels:
https://www.heise.de/-1285851

Links in diesem Artikel:
[1] http://forum.chdk-treff.de/download.php
[2] http://www.canon.de/
[3] http://forum.chdk-treff.de/download.php
[4] http://www.heise.de/foto/artikel/Raw-Formate-fuer-Ixus-und-Powershot-mit-CHDK-1285851.html?artikelseite=2
[5] http://forum.chdk-treff.de/download.php
[6] http://www.adobe.com/de/products/photoshoplightroom/?promoid=DTEPG
[7] http://www.rawtherapee.com/
[8] http://ufraw.sourceforge.net/
[9] http://www.cybercom.net/~dcoffin/dcraw/
[10] http://ufraw.sourceforge.net/
[11] http://code.google.com/p/dng4ps2/
[12] http://www.heise.de/foto/inhalt/2010/03/4/
[13] http://chdk.wikia.com/wiki/CardTricks
[14] http://chdk.wikia.com
[15] http://forum.chdk-treff.de/viewtopic.php?f=1&t=611
[16] http://forum.chdk-treff.de/download.php
[17] http://www.heise.de/foto/inhalt/2010/03/4/
[18] http://www.heise.de/foto/foren/S-Artikel-Foren/forum-134011/list/
[19] mailto:rst@ct.de