CHDKで手軽にRAWを撮る!

数年前にジャンクでRAW画像を撮影できるデジカメPowershot G1/G2を入手し触れて以来、猫さん。はRAWで写真を撮る様になってしまいました。
いまやこのサイト、ブログの写真のほとんどをRAWからおこしています。

RAWで撮るとJPEGと違って一旦PCにデータを移行してそこで"現像"する必要があります。
なので普通にJPEGで撮るのと比べて手間がかかりますが、色や解像度などをその時々に応じて自分が納得できる写真に仕上げられるのが魅力です。

そんなRAW画像を扱う事に慣れてくると猫さん。はデジカメが勝手に生成するJPEG画像に納得できなくなっていました。
そしてある時、

持ち歩けるRAW対応のデジカメが欲しい・・。

ふとそんな思いを抱く様になりました。

Powershot G1/G2は性能面において十分な代物ですが、古い機種なので電池の持ちもそれほど良くありませんし何より重くて見た目もゴツいんです。
正直お外に持っていく気にはなれませんでした。

デジカメならもっとコンパクトにライトに持ち運びたい!

しかし現実にRAWが扱えるのは一眼を除くと一部の高級機種のみ。
やはりそこら辺のコンデジでは望めぬ機能だよな・・・。

しかしそんなある時、普通のデジカメの機能を超拡張してしまうという「CHDK」なるものと出会ってしまったのです。

コンテンツジャンプ

CHDKとは?

CHDKを使う為の準備
CHDKを起動する
RAWを撮れる様に設定する
RAWファイルの互換性を解決する
CHDKでRAWを使ってみて
CHDKをさらに設定していく

おまけ:IXY Digital 50の謎

CHDKとは?

CHDKはCanon製デジタルカメラに搭載されているファームウェアをハックするロシア発のツールです。

このツールを使う事でRAW画像の撮影、最速1/40000の超高速シャッタースピード設定、最長64秒の長時間露光撮影、超高感度設定、メモリーカードや電池の残量表示、動画撮影時のビットレート変更などなどデジカメに隠されている様々な機能を引き出す事が出来ます。
ファームウェアをハックするツールですが一時的に乗っ取るだけでファームウェアそのものを入れ替えたり書き換えたりするものではありません。
なのでこのツールでファームウェアを乗っ取っても後で簡単に標準の状態に戻せるという優れものです。

とは言っても勿論このツールはメーカー非公式のツールです。
このCHDKを使った結果、カメラにどんな異常が発生しても誰も責任は負えません。使用には十分注意しましょう。

TOP▲

CHDKを使う為の準備

[CHDKが使えるカメラかどうかを確認する]

CHDKを使用するデジタルカメラは以下の2つの条件を満たしている必要があります。

・Canon製デジタルカメラである事。
・使用するデジタルカメラがDIGIC彊聞澆留覗エンジンを搭載している機種である事。
※最新のDIGIC4でも動作するみたいです。初代DIGICでは動作しません。
※条件を満たしていてもCHDKが満足に動作しない機種もあります。例:IXY digital 50(日本版だから?)

[CHDKのダウンロード]

CHDKはこちらのサイトよりダウンロードできます。
ただし、機種やファームウェアのバージョン毎にダウンロードするファイルが違うので注意してください。

[ファームウェアのバージョン確認]

ファームウェアのバージョンは「vers.req」という空ファイルをメモリーカードのルートフォルダに作成し、再生モードでデジカメを起動した後にSETボタンを押しながらDISP.ボタンを押せば右写真の様な画面が出て確認する事が出来ます。
※機種によってはファイル名が「ver.req」でないと確認できない場合があります。

[機種名を確認する]

紹介先のダウンロードサイトは海外版のデジカメを基準としているので機種名を日本版表記では書いていません。
IXYシリーズは日本と海外とで名前が違っているので要注意です。
公式サイトで海外版の名称を確認できます。

海外機種一覧(コンパクトデジタルカメラ)

以上の事柄を確認してCHDKをダウンロードし終えたら任意の場所にダウンロードファイルを展開して中身を全てメモリーカードへコピーします。
コピー先は全部まとめてルートフォルダへ。

これでCHDKを使う準備は完了です!

TOP▲

CHDKを起動する

CHDKを仕込んだメモリーカードをデジカメにセットしたら再生モードで起動します。
そして[MENU]ボタンを押してメニューを開くと項目の一番下に"Firmware Update"という項目が追加されていますのでそれを実行します。

この時に"Update File Error"と表示される時はダウンロードしたCHDKが間違っている可能性があるので機種名をよく確認した上でダウンロードするところからやり直してください。

選択すると本当に実行するか訪ねてくるので構わず"OK"を選択します。

すると、自動的に再起動して起動と同時にCHDKが起動します。
CHDKが起動した事を示す画像が出てくればCHDKの起動は完了です。

ここで正しいCHDKが入っていない場合、暗転したまま起動しなくなる事があります。
その時は電池を抜く事で電源を落せますが、デジカメに影響があるかもしれないのでそういう事にならない様CHDKのチェックは慎重にやりましょう。
この場合は機種が合っててバージョン違い(1.00Aとか1.00Kとか)である事が多いです。

CHDKを起動させた状態で撮影モードに切り替えると画面が通常とは変化しています。
初期設定では電池やメモリーカードの残量表示、時刻などの表示が追加されています。

ここからデジカメを拡張すべく色々と設定していくワケですが詳しくは次の項目にて。

TOP▲

RAWを撮れる様に設定する

ここのタイトルが"CHDKで手軽にRAWを撮る!"なので、まずは手始めにRAW画像が撮影できる様に設定する手順をご紹介していきます。

まずCHDKが起動している状態で[イージーダイレクト]ボタン(青く光るボタン)→[MENU]ボタンの順に押していくとCHDKの設定画面(OSD)が表示されます。

ここでの操作方法は通常のメニュー画面とほぼ同じです。
上下で項目移動、左右で値変更、[SET]ボタンは決定で[MENU]ボタンが設定終了、です。

そこで上から3番目の"RAW parameters"を選択するとRAWに関する設定項目が現れます。

この設定項目の一番上にある項目、"Save RAW"のチェックボックスにチェックを入れる事でRAWファイルの記録、撮影が有効になります。[ ]内に●が付くと有効です。

設定を有効にした状態で写真を撮影するとメモリーカードの画像保存フォルダにJPEGファイルと共に同名で拡張子が".CRW"のファイルが保存されます。
その拡張子が".CRW"のファイルが撮影されたRAWファイルです。

デジカメによって「101CANON」以降のフォルダが作成されている場合、RAWファイルはJPEGファイルと同じ場所に保存されず「100CANON」フォルダに保存されます。
※機種や設定によって「101CANON」以降のフォルダは作成されない場合もあります。

以上でRAWファイルの撮影が出来る様になりました^^

[注意]
CHDKで記録されるRAWファイルの名前はJPEGファイルの名前とリンクしています。
デジカメ側の設定で画像番号をリセットする設定にしている時に、JPEGファイルのみを削除した状態でRAWの撮影を行うと既に保存されているRAWファイルが上書きされたり、ファイルのナンバリングがおかしくなってしまう事があります。

例:メモリーカードの中身が0001.JPG、0002.JPG、0003.JPG、0001.CRW、0002.CRW、0003.CRWというファイル構成の時に0003.JPGのみを削除してその後にCHDKでRAW画像を撮影すると、この場合では0003.CRWが上書き保存されてしまう事があります。

特にデジカメでJPEGを削除すると発生しやすいみたいです。といってもPCで削除したからといって発生しないかどうかは分からないので画像番号のリセットを設定した状態でファイルを整理する時は一番新しいJPEGファイルのみを残しておく様にしておく方が良いです。

TOP▲

RAWファイルの互換性を解決する

本来ここで普通のRAWファイルならLightroomなどの現像ソフトに入れて写真を現像・加工していきます。
しかし、このCHDKで撮影されたRAWファイルを現像ソフトに入れてみると、

と、エラーを吐かれ現像する事が出来ません。
これはCHDKを使った機種に対する互換性がない為です。

この問題を解消するには撮影したRAWファイルをDNG形式に変換して互換性の問題を解決してあげる必要があります。

DNG4PS-2というフリーソフトが有志の手によって開発されているので変換にはそれを使います。
Windows、OSX、Linuxと主要なOS全てに対応しているのが心強いです。
猫さん。の環境はOSXなのでOSX版で説明していきます。

DNG4PS-2を起動すると→の様な画面が出てきます。

特に設定を変更する必要は無く、変換したいRAWファイルが保存されているフォルダと変換後ファイルの保存先を指定して[Convert]をクリックすれば変換を開始します。

DNG4PS-2によって変換されたファイルは拡張子が".DNG"となり、指定した保存先へ日付を冠しているフォルダの中に入れられて保存されます。(初期設定の時)

このファイルを改めて現像ソフトに入れると・・・、

この様にCHDKで撮影されたRAWファイルでも現像ソフトで扱える様になりました^^b
後は通常のRAWファイル同様に好きな様に加工して現像してやるだけです。

TOP▲

CHDKでRAWを使ってみて

ただ一言、

言う事無しですね。(ぉ

コンデジでRAWを扱う、という願望はそのまま叶いましたし、実際にRAW撮影が出来る様になって色々と無茶が利く様になったのがとても良いです。
撮影後に色付けするRAWでは明度や色味を好きに設定可能ですから、他に気をつけるのはピントぐらいのモノです。
ホワイトバランスでは特に悩む事が多かったのでそこら辺をほとんど気にしなくて良くなるのはすばらしいですね。

後、よくCHDKを使った人の感想で"これで一眼とかと同等"などという感想を見かけることがありますが、さすがパーツから良い写真が撮れる様に吟味されている一眼と比べてしまうと像の映り方や絶対的に大きく明るいレンズによる表現力などは到底敵うものではありません。
しかし手軽さという意味での利便性は一眼を遥かにしのぎます。

唯一の欠点と言うか難点はRAWファイルを扱うとファイルのサイズがとても大きくなってしまう事ですね。
ファイルの大きさはカメラの有効画素数によりますが、1ファイルおよそ2〜10MB位になります。
そうなるとメモリーカードに対する容量もそうですが速度も気になってきますね。
SDHCなどの高速規格に対応していない機種で低速なSDカードを使うと1枚撮るごとに数秒は処理を待たされます。

これはなるべく新しい映像エンジンが搭載されている機種、書き込み速度が速いメモリーカードを使う事でだいぶ解消されます。
しかしどんなに環境が良くなってもファイルが大きい事には変わりないので連写などを行う時はRAWで撮らないのが無難です。

大きいファイルを扱う様になったという事で電池の持ち具合も気になってくるところですが、Powershot S3ISにエネループという組み合わせでもう1年くらい使用していますが電池の持ち具合は標準の仕様とほとんど変わらないです。(500枚程で電池切れの表示がでました)

環境さえそろっていれば基本無料で出来るので本当におすすめな裏技だと思いました。
と、以上なんだかんだで色々と語る事がありましたw

TOP▲

CHDKをさらに設定していく

CHDKの機能はデジカメでRAWを撮れる様にするだけではなく、その他にも様々な機能があります。
その様々な機能を以下順不同で簡潔にインデックスしました。

CHDKは使う機種によって設定できる項目が変化するのでここに載ってても機種によっては使えない場合があります。

■CHDKを自動起動させる
通常画面からCHDKの設定画面(Main Menu)を呼び出して"Miscellaneous stuff"を選択し、上から12番目の"Make card bootable"の項目を選択します。

画面が一瞬点滅する程度で操作が完了した合図などは一切ありませんが、実行し終わった後にデジカメの電源落とし一旦SDカードを抜いてカードの書き込み防止スイッチをONにしてから、再び電源を入れていきなりCHDKが起動すれば成功です。

この設定はFAT(16)フォーマットのSD(SDHC)でしか出来ないので注意してください。

■JPEGファイルとRAWファイルの保存場所を同じにする
CHDKの設定画面を呼び出して"RAW parameters"を選択し、上から5番目の項目"RAW file in dir with JPEG"のチェックボックスを有効に設定します。

この設定を有効にすると、初期設定では「100CANON」フォルダに保存されるRAWファイルがJPEGファイルと同じフォルダに保存される様になります。

■DNGファイルをCHDKから直接出力させる
初期設定のCHDKから出力されるRAWファイルは独自形式である為、一般の現像ソフトなどで使うにはDNGファイルに変換する必要があります。
ですが実はCHDKの設定を変更する事で互換性の心配がないDNGファイルをCHDKから直接出力する事が出来ます。

設定画面を呼び出して"RAW parameters"を選択し、その中の"DNG format"という項目を有効にすればDNG形式で出力する事が出来るのですがいきなり有効にしようとすると
"badpixel.binが読み込めない。badpixel.luaというスクリプトを実行してくれ!"
というエラーが出ます。

そこで一旦"Main Menu"に戻って今度は"Scripting parameters"を選択します。
すると項目の一番上に"Load script from file..."という項目があるのでそれを選択します。

選択すると今度は新たに灰色のウィンドウが出現します。
そしたら[TEST]ディレクトリの中にある[BADPIXEL.LUA]というファイルを選択。

選択すると選択画面に戻るのでそこで[MENU]ボタンを押します。

するとこのような画面になっていると思います→
画面左下に[Create badpixel.bin]と表示されている事をご確認ください。
それと動画モードでなく、写真撮影モードである事もご確認ください。
動画モードだと正常にスクリプトが実行されません。

この状態でシャッターボタンを押すとスクリプトが実行されます。

画面左下が変化してしばらく待つ様に言われます。
この間2回ほど自動でシャッターが切られますがそれでも何もせず待ちます。

待ってる時間はカメラの画素数が多いほど長いです。

待っているとまた画面が変化して[SET]ボタンを押してファイルを保存する様言われます。
ファイルを保存すれば左下に***FINISHED***と表示され、スクリプトが終了します。

ファイルを保存しなければまたやり直しになるので必ず保存する様にしましょう。

再び"DNG format"の項目に戻り有効化してみるとエラーなく有効化できると思います。
有効化するついでにその下にある"'DNG' file extention"も有効化すれば保存するRAWファイルの拡張子を".CRW"から".DNG"にする事が出来ます。

有効化して撮影するとこの様にDNGファイルが生成されています。(右側)
元のRAWファイルと違ってプレビューアイコンが表示されています。

後はDNG4PS-2で変換したファイルと同じ様に現像ソフトにインポートすればちゃんと読み込んでRAWファイルとしての処理が行う事が出来ます。

■動画撮影中にビットレートを変更する
この機能はCHDKを起動すればデフォルトで有効になっています。
動画撮影中に上下のキーを押すと倍率で画質を変更できます。
設定を変更すればクォリティレベルでも画質を変化させられます。

少し試してみましたが上げても画質にあまり変化ない様に思えます^^;
それに何で操作が撮影中限定なんだろう?

■動画撮影中にAFを使う
動画撮影中にAFが利かない機種でもAFが使える様になる機能です。
動的にAFが働く様にはなりませんが動きによるピンぼけを一応解消できます。

CHDKの設定画面を呼び出して"Video parameter"を選択し、その中の"AF key"という項目の値を変更してAF動作に使うキーを設定できます。
[空白(機能OFF)]、[Shutter]、[SET]から選択できます。

有効化して動画撮影中に設定したボタンを押すとAFが働きます。
音声録音を他の機器に任せられれば使える機能かも。(AFの動作音がうるさいです。)

■動画撮影中に光学ズームを使う
設定できる機種であればデフォルトで有効になっています。
AFと同様に動画撮影中に光学ズームが使用可能になります。
コレもズーム音が動画に入ってしまうので音声録音を他の機器に任せられれば使える機能だと思います。

以上、全ての機能がみれた訳ではありませんのでとりあえず確認した分だけ載せました。
その他の機能は発見し次第随時追加していく予定です。

TOP▲

IXY Digital 50の謎

今回、手持ちにある全てののCanon製デジカメでCHDKを試しましたがその中でも色々とおかしな挙動をするデジカメが1つだけありました。

それはIXY Digital 50です。

時刻のカウントが妙に遅く、badpixel.binが作成できず、動画のビットレートが変更できず、その上現像したRAW画像は上部に変なノイズがのる始末。

機体は何ら異常のない完動品です。2台あったので2つとも試しましたが結果は変わらず。

もちろん、CHDKは公式なツールではありませんので完璧な動作を期待してはいけませんが唯一この1機種だけこうなったので気にはなってしまいます^^;
ただ単に対応できないだけなのか?日本版機種だから動かないのか?CHDKのバグ?

とにかく謎です。。。

TOP▲