印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
PhotoWindows フリーソフトで擬似 HDRI

フリーソフトの Qtpfsgui と GIMP を使って,1枚のデジカメ画像から HDRI を作ってみる。

■ ■ ■

はじめに

Geekなぺーじ : PhotomatixとPhotoshopでHDRi遊び さんの記事に触発され,HDRI を作ってみたくなった。HDRI とは High Dynamic Range Image の略で,明暗分解能が高い画像イメージ の意味である (ハイダイナミックレンジイメージ - Wikipedia)。最後の「I」を大文字で表現するか小文字にするか悩んだが,今回は大文字で。

Yanagi さんなんかが好きそうだと思うのだが,そうでもない? McCOCK さんは素材を沢山もってそうだけど,どうだろうか。

HDRI の雰囲気は独特で,効果の度合いによっては,色やコントラストやエッジが強調されて,絵画調になったりする。ひと昔前の,人が描いていた映画の看板の感じと似たものも作れる ([PHOTOSHOP] Fake HDR in Photoshop - JPEG 1枚から作る疑似HDR画像 | Webデザイン, CSS, Javascript, Flash, ウェブサービス | mBlog)。

HDRI の作成には,露出だけが異なる複数枚の画像を使うのが基本である。低い露出の画像と高い露出の画像を合成して,ダイナミックレンジを広げるようにする。考え方については 特別講座 06 ダイナミックレンジなら、デジタルでしょ…HDRIを楽しみましょ さんが詳しい。

さて,HDRI を作りたいと思っても,私が持っているのは,手動の露出設定ができないコンパクトデジカメなので (nlog(n): V570 という不思議なカメラ),カメラを同じ位置に置いたままで露出の違う写真を撮ることができない。仕方ないので,1枚の画像から HDRI 風の画像を作ることにした。つまり合成された画像は「擬似 HDRI」になる。HDRI 合成のためのソフトにはいくつかあるようだが,今回はお試しなのでフリーソフトにしたい。有料にするなら,Qtpfsgui+GIMP の代わりにPhotomatix+Photoshop などになる。今回設定した要件は次の通り。

  • 1枚の JPG ファイルから合成する
  • 合成には Windows で動作するフリーソフトだけを使う

お手本にしたのは,HDR tutorial: how to create HDR photos with free Qtpfsgui and GIMP | Design live さんである。

作成

作成環境は,Windows Vista Business SP2 である。

素材選定

もと画像
もと画像


あきみち さんによれば,「被写体の選定が大事」なのだそうだ。人物の写真で試してみたところ,若干気持ち悪いものができあがってしまったため,今回は建物を選ぶことにした。素材は先日行った「さいたまスーパーアリーナ」に決定 (nlog(n): The Who 来日公演2008@さいたまスーパーアリーナ に行ってきた)。素材としては,ちょっと露出オーバー気味なのが問題。

ソフトのダウンロード

使用するソフトは,GIMP 2.6.6 と,Qtpfsgui 1.9.3 である。

Qtpfsgui という変な名前は,ウィジェットに Qt4,ライブラリに pfs を使った GUI なプログラムだからなのだそうだ (Qtpfsgui - Home)。Qtpfsgui のダウンロードは SourceForge.net: Qtpfsgui から。必要なら Windows DLL Package もダウンロードする。Windows Vista では,これがなくても動作した。

露出の違う画像の作成

露出の違う画像を,1枚の画像から擬似的に作るにはGIMP を使う。GIMP でもとの JPG 画像を開いてから,「ツール」→「色ツール」→「トーンカーブ...」を選択。マウスで曲線の一部をつかんでドラッグする (HDR tutorial: how to create HDR photos with free Qtpfsgui and GIMP | Design live の最後の方)。左斜め上にドラッグして,露出オーバーに (明るく) したら,画像を保存する。保存するときに,デフォルトの画質が「93 %」になっているので「100 %」に変更し,劣化を最低限に留める。ファイル名には例えば「-o」を追加してしておくとよい。露出アンダーも同様。ファイル名には「-u」などをつけておく。

露出 +2
露出 +2
露出 -2
露出 -2


生成された,露出の異なる2枚の画像。正確には「露出の異なっている風(ふう)」の画像。

複数枚画像の合成

上で用意した,もとの画像と,露出オーバーと露出アンダーの3枚の画像を Qtpfsgui に読み込む。ツールバーの「New Hdr...」をクリックする。「Load Images...」ボタンをクリックして,3枚を同時に指定する。上でファイル名に「-o」や「-u」をつけておいたのは,ここで選びやすくするためである。

次に,そのウィンドウの中で,読み込まれた画像のそれぞれに対して露出を設定する。適当な露出の値になっているので,これを変更する必要がある。オリジナルに「EV 0.0」,露出オーバーの画像に「EV 2.0」,露出アンダーの画像に「EV -2.0」を設定する。

設定が終わったら「Next >」をクリック。次のウィンドウはそのまま「Next >」。最後のウィンドウでは,「Profile 1」〜「Profile 6」から好みのものを選択する。違いがよく分からないので「Profile 1」のままでよい。「Finish」ボタンで決定する。

トーンマッピング

次に「トーンマッピング」と呼ばれる手続きを実行する。この手続きこそが HDRI 作りのキモになる。今回は試しということもあるので,特徴が分かるように過激なセッティングにしていくことにする。

ツールバーの「Tonemap the Hdr」をクリックすると,トーンマッピング用のウィンドウが開く。

まずは「Operator」として「Fattal」を選択し「Apply」ボタンをクリックする。ここの処理には時間がかかるので,画像サイズは「256x192」という小さいものを使う。スライドバーを動かして「Apply」すると,違う色合いの画像が生成される。気に入った色合いが出てきたら,画像サイズを最大にして「Apply」する。

Operator: Fattal
Operator: Fattal


生成された画像を保存する。設定値がファイル名に反映されるのは親切設計である。上の画像の場合「_pregamma_1_fattal_alpha_0.558_beta_0.919_saturation_1.51_noiseredux_0.jpg」となった。

Operator: Mantuik
Operator: Mantuik


次に Operator を「Mantuik」に変えて,同様に好みの画を作り,保存する。上の画像は「_pregamma_0.394_mantiuk_contrast_mapping_2.57_saturation_factor_1.738_detail_factor_1.jpg」である。

Qtpfsgui で合成された HDR 画像は本当に High Dynamic Range なので,モニタ画質である Low Dynamic Range (LDR) 上では表現できない (IBL-イメージベースドライティング- HDRとLDR - (やりこれ出張所)ほうれんそう)。そこで,HDR を LDR に圧縮してやる必要が出てくるのだが,やりかたが色々ある。その圧縮方法が,上の Operator として選択した「Fattal」や「Mantuik」などなのである。HDR 画像のどの部分を強調するかが,それぞれの特徴となっている。

画像の重ね合わせ

上で作った2枚の画像を,GIMP で重ね合わせる。処理の最終段階になる。「Fattal」で処理した画像を「ファイル」→「レイヤーとして開く」で開き,次に「Mantuik」で処理した画像を同じようにレイヤーとして開く。

「レイヤー」ドックでは,「Fattal」が「背景」となっているのが確認できる。「Mantuik」レイヤーを選択し,モードを「標準」から「ソフトライト」に変更する。「不透明度」をスライドバーで変えて,好みの色合いになるようにする。不透明度を 76 % にして得られたのが下の画像である。

完成品
完成品


これで完成。空とか壁にブロックノイズがでてガジガジになっているが,これはもともとの画像があまりにもひどすぎたためである。さらに精進が必要である。そうは言っても,HDRI っぽい悪夢的な感じは出ているように思う。

昨晩の夢はこの色合いの映像だった。げっ。

作業の流れ

作業の流れ
作業の流れ


全体の流れをまとめると上の図のようになる。1枚の JPG 画像から明るさを強調したものと暗さを強調したものを作り,HDRI の元画像としている。Qtpfsgui で3枚の元画像を合成して,1枚の HDRI を作る。そして Qtpfsgui のトーンマッピングの機能により,2種類の LDRI を作り,最後に GIMP で重ね合わせて最終的な LDRI を作っている。

まとめ

HDRI と言っても最終的には LDR 画像となるので,今回得られた画像は「擬似 HDRI から生成された LDRI」である。今回は,大げさにトーンマッピングをかけて絵画的だが変態的で悪夢的な画像にしてしまったが,ほどよくかければ,単に撮っただけの写真よりも,より現実に近く,よりリアルな画像に仕上げることができると思われる。Google の画像検索では,自然な仕上がりになっている画像が多い (HDRI - Google 画像検索)。つまりこれは,逆に言えば「撮っただけの写真というのはリアリティが薄い」ということでもある。適度な HDR 処理は,人間が見ている世界により近い画像を提供してくれる。

露出の手動設定ができるカメラが欲しくなった。ソフトはフリーのままでいいな。

Posted by n at 2009-05-18 21:13 | Edit | Comments (7) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments

おもろい。 いや、オモロー!

自分の中ではアドビのストリームライン、シンメトリー写真に続く"オモロー"だと思います。早速今夜…と言いたいところですが、多分、いじりだすと眠れなくなると思うので、週末トライしてみます。

Posted by: yanagi at May 20, 2009 09:43

yanagi さん
設定するパラメタの自由度が高すぎるので,予想以上に時間がかかるので注意です。休みの前日にやってください。

Posted by: n at May 20, 2009 22:12

皆既日食の写真を上手く撮るために「アンシャープマスキング法」というのが作られました。20年も前の話です。これが高い高い!当時高校生の自分たちでは手が出せない代物。
そんな中仲間の一人が「ニセ・アンシャープマスキング法」なるものを雑誌で見つけみんなで作りました。
フィルムのダイナミックレンジを超えるような対象物で、予め被写体の輝度が大体分かっている時に限られますが効果は絶大です。さらに印画紙が持っているレンジはフィルムよりも狭いので、焼き付けの時にも色々と工夫をしたものです。
今は、こういったことがデジタルでしかも簡単にできるかと、感心しました。
おお

Posted by: おお at May 21, 2009 00:13

先日、購入したデジカメのマニュアルを眺めていたら、この"HDR"の機能が付いていることを知り驚きました。連休中に試してみたいと思います。ちなみにカメラはPENTAXのK-7です。では。

Posted by: yanagi at September 14, 2009 13:33

yanagi さん
それは楽しみですね。デジタル一眼は色々なことができそう。いい写真ができたら是非とも公開してください。

Posted by: n at September 15, 2009 06:31

遅ればせながら、このエントリーを参考に画像を作ってみました。思った程、工数も無かったので安心しました。良い情報、ありがとうございました。

Posted by: yanagi at September 15, 2009 21:52

yanagi さん
おぉう,できましたか。露出違いの撮影をまとめてできるカメラはいいですね。ダイナミックレンジが本当に広くとれます。良いカメラが欲しくなりました。

Posted by: n at September 17, 2009 00:35
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?