2012年07月03日

GIMPのHDR能力(?)を他のHDRソフトと比較してみた

※これ以外にも記事はあるので「GIMP HDR」でブログ内検索してみてください。

※HDRソフトの比較ということで検索で来てくれる人が少なくないですが、こちらの記事の最後のほうに、比較しているサイトなどへのリンクを貼ってありますので参考にしてください。

こちらの記事で、GIMPとPhoto ReColorとPhotoshopのトーンマッピングを比較しています。

※GIMPでHDRを作るチュートリアルはこちらの記事を参照。→こちらの記事も参照のこと。→GIMPでやるLucis Artエフェクトの記事も参考にしてください。


        *        *


「GIMP」と「HDR」で検索してくる人が少なくない。
フリー(または事実上フリー)で使えるHDRソフトがいろいろあるのに、そんなにGIMPで作りたい人がいるのだろうか(まあ、GIMPはファンも多いしな)。

 

GIMPで作れるHDRは、32ビットファイルに合成をしない、露出合成というものだ。
これについては、露出合成のリクツという記事で触れた(なお、露出合成も広い意味での「HDR」を作る方法だけど、「HDR合成」じゃないから、そう呼ばないほうがいい。HDR合成というのは32ビットファイルを作る合成だ……16ビットでもいいんだけど。露出合成はHDRじゃないということで、EDRまたはXDRと呼ぶ場合もある。これはExtended Dynamic Rangeの略で、「高い」じゃなく「拡張された」「強調された」「伸長された」ダイナミックレンジというよーな意味だ。しかしながら、いわゆるゲロゲロな見栄えのHDRじゃない、自分のHDRは自然なHDRだよという意味でEDRと呼ぶ人もいるので、わけがわからんことになっている……これは海外での話だが)。

ここでは、その露出合成と、その後のフェイクHDR(トーンマッピングをしたような感じにする)のスクリプトの結果を、他のソフトと比較してみることにする。 → 追記:先に結論を書いちゃうけど、こんなクソスクリプトを使うより、プラグインを使う方法がいい。位置合わせをしたものを露出合成(ゴーストがある場合はこちら参照)して、そしてプラグインで強調、これがGIMPでHDRを作る方法の王道(私が勝手に決めた)。(^_^;)

 

露出合成のフリーのプラグイン(スクリプト)はExposure Blendといい、ここ(ぐるぐる翻訳)で手に入る。→ 追記:いまはほかにも露出合成のスクリプトがあるようです。

フェイクHDR云々というスクリプトに関しては、こちらのブログを参考にしてほしい。
なお、そこではAdaptive Equalizationというプラグインが必要と出ているが、これはAdaptive Contrast Enhancementのことであり、すでに入っていれば入れる必要はない。落として解凍しても中身は同じだ。
このプラグインの使いこなし(?)に関しては、こちらを参照。

 

では、やってみる。
素材はこの3枚。プラマイ2のブラケットだ。

P6291900_3_1





まずはGIMPで合成したもの。
合成のパラメータはデフォルトのまま(プレビューもないし、いじるとどうなるのかよくわからない)。

P6291900_3co_1



おもしろくないといえばおもしろくないが、素直でいいと思う。

なお、このスクリプトでファイルを呼び出す前に、いったん3枚をGIMPに読ませておくといい。
そうすると、写真フォルダ内を探すことなく、最近開いたファイルから選択できるので楽だ(作業用の専用フォルダを作っておけばいいのだが)。

いちおう、基本的にはズレのない画像を入力したほうがいいのだが、上下左右の平行移動のズレなら、レイヤーを移動することで修整できるようだ(今回は、Fusionで位置合わせをした画像を入力した)。
回転のズレはきびしいが、これもレイヤーを回転させたりなんだりで、やってできなくはないだろう(GIMPで傾きを修整する方法、というか、角度を測ってほかの画像と合わせる方法は、こちらの記事が参考になると思う、たぶん)。
ゆがみ(パースのズレとか)に関しては……これもプラグインで用意されている各種フィルターを駆使すればなんとかなるかもしれないが、むずかしいだろう(いずれにしろ、あらかじめ位置合わせをすませた素材を用意したほうがいいと思う。合成のときにやる必要はない)。

この露出合成は「明るいカットの暗いところ」と「暗いカットの明るいところ」を標準露出のカットにかぶせるものだから、32ビットHDRファイルの合成と違ってExifによる露出情報はいらない。明るさを変えてスキャンしたイラストや写真などでもできる。

明暗の2枚しか写真がない場合は、それを加算平均(不透明度50%で統合するだけ)して、擬似的に標準露出のカットを作っておけば、それを使って3枚での合成ができる。

 


ほかのソフトによる露出合成はどうだろうか。
Photomatix Proに合成させたものを見てみる。
これはコントラストが高くなるモードでやってみた(体験版でも横799ピクセル以下ならロゴは入らない。つまりフリーソフトとして使える)。

P6291894_898_900_fus_1



なかなかすばらしい。
GIMPでも、調節しだいではこういうこともできるのだろうか?
後でコントラストを上げればすむハナシかもしれないが。

 

次はFusion(最新のは有料になったが、旧バージョンはフリー)による露出合成。
SUM合成のプライオリティというモードで、パラメータはデフォルト位置だが、色だけ濃くした。

P6291900_00_sum_pr_1



Photomatix Proほどではないが、GIMPよりもコントラスト高く合成できている。
しかし、GIMPで合成したものをレタッチソフトで自動調節すると、少しコントラストが高まってほぼ同じになる。

 

いずれも合成写真とは思えないほどナチュラルに仕上がっているが、このあたりが32ビットファイルを作って、それを細部強調しながら8ビットに圧縮(トーンマッピング)するという、よくあるHDRとは違うところだ。
まあ、今回は明暗差も大きくなく、それほど無理のない被写体であるが。

 

参考までに、3枚を同じ割合で合成するという平均合成(加算平均)だと、このようになる(Fusionのアベレージでやってるので、厳密にいえば正しい加算平均ではないと思う)。
これにはそれぞれの画像が33.33…パーセントずつ混ざっている。

P6291900_00_sum_av_1



別に悪くはないが、あきらかに調子が眠い(コントラストが低い)。いや、あきらかというほどではないか……。
まあ、これを素材に後処理をするのであれば、もちろん使える範囲ではあると思う(後処理でコントラストを高めるのであれば、素材としては低コントラストのほうがいいこともある)。

 

もひとつ参考にということで、なんちゃってHDRという、明るいところを落とし、暗いところを持ち上げる、つまり8ビット画像の中でのトーン圧縮をするフリーソフトでの結果をば。
これは適正露出のやつを処理したが、飛んでるところとつぶれているところ(白と黒)は救えない。ディテールがないところは持ち上げたり落としたりはできないのだ(無理にやってもグレーになるだけ……なのだが、トーンマッパーはへーきでそういうことをするものがある)。

P6291900_nan



なお、Photomatix BasicやProでできる2枚からの露出合成(これは完全にフリーの機能なので、大きさにかかわらずロゴは入らない)は、プラス2とマイナス2では明るさの差がありすぎ、合成してもほとんどうまくいかない。後で処理するための素材としては使えなくはないこともあるが、だいたい結果は見られたものではないものになる(実際にそうなったので、ここでは出さない)。
経験上、Photomatixによる2枚からの露出合成は、プラマイ1のカットの合成が限界だろう。「あとちょっと」のダイナミックレンジを広げる方法と思ったほうがいい(それでも、特殊なシチュエーションは別にして、ふつーのスナップ写真的なものでは、飛んでるところやつぶれてるところが救えることがかなり多い)。
逆にいえば、プラマイ1の3枚をGIMPで合成するなら、適正を除いた2枚をPhotomatixで合成したほうが、すくなくとも早いと思う(Proを使えばズレの修整もできるし)。






さて、できた画像をいじってみよう。
素材はGIMPで合成したもの。
まずはFake HDR Effect adptiveで処理したもの(パラメータはデフォルトのまま)。

P6291900_3co_ad_1



うーん……。

 

次はFake HDR Effect enhanceというスクリプト。

P6291900_3co_en_1



うー……。

 

ただ、これらはもともと1枚のふつーの画像をいじるためのもので、コントラストを落としていると思う。← 追記 : そう思ったのだが、次の記事でも出してるように、コントラストは上げてきた。暗いところを完全につぶしてやがって、なに考えてるんだか。
だから、もともとコントラストの低い露出合成画像を素材にすると、よけいにうーんと思ってしまうのかも。

というわけで、それぞれ、輝度(明度)のみオーバーレイでコントラストをつけた(色はそのまま)。

P6291900_3co_ad1_1
P6291900_3co_en1_1



うーむ。
これで、フェイクとはいえ、トーンマッピングしたような感じを出してるということなのか。adptiveのほうは、それはそれで独特の風味があるけど(Adaptive Contrast Enhancementを使ってるからね)。

 

ためしに私が完全手動でいじくったもの(フォトショのLE使用)。
コピーしたレイヤーをぼかしたりオーバーレイで重ねたり、暗いところだけコピーしてああだこうだどうこうという感じで……およそは前々からやってることだけど、いきあたりばったりなところもあるので再現しろといわれても(笑)。
いちおう消したり描いたりはしてない。
目がちらちらする効果(これはなんちゃってHDRでもできる)はこっちのほうが上じゃないか?

P6291900_3co_ph_1



まあ、方法は違うけれども、こういうことを自動でやらせるというのがスクリプトで、特別なフィルターじゃないからねぇ。

 

さて、というわけで、上と同じ素材(GIMPで露出合成したもの)を、他のHDRソフトでいじってみた。
まずはPhotomatix Proでトーンマッピングした(絵画調のプリセット)。
意外とおもしろくない。

P6291900_3co_tm_1



次はHDRソフトじゃなく、フォトショのプラグイン(有料)のLucis Artでいじったもの。
Topaz Adjustとかでも似たような感じにできると思う、たぶん。

P6291900_3co_ru_1



次もHDRソフトじゃなく、同じくフォトショのプラグイン(有料だけど、カンバスサイズを上下に大きくすることでロゴが入るのを回避できるので、事実上フリーソフトとして使える)のReDynaMix HDRでいじったもの。
HDRという名まえだけど、合成をするものではなく、ディテールの強調ソフト(エレメンツでも動く)。
GIMPでもフォトショのプラグインを動かす方法があるようなので、これも動くんじゃないかな? →追記:GIMPでフォトショのプラグインを動かす方法は、実際にやってみたのだがうまく動作しない。プラグインを認識はするのだが、起動しない。なんかエラーも出る。もしかしたら古いGIMPじゃないとだめなのかも。追記:いまはQuickHDRというスタンドアロンのソフトがあります。

P6291900_3co_re_1



これはLuminance HDR(フリーソフト)のトーンマッピングオペレーター、mantiuk'06でいじったもの。
mantiukのトーンはなかなかいいと思う。
あっさりしてる(これでも色を濃くしてる)というか、渋いというか、明部は落とすし暗部は上げるしで、全体のコントラストは低いんだけど、ていねいに描かれた細密画みたく細部はきっちり出してくる。ハデさはないけど、というか、ハデじゃないからこそ、けっこう好きだ。

P6291900_3co_m06_1



最近はほとんど位置合わせソフトと化してるFusionに、久しぶりにトーンマッピングさせてみた。
モード3というやつで、いちばん汚くなるモード(今のバージョンでも同じかどうかは知らない)。
あらためてみると、このディテールのエンハンス(細部強調)はけっこうイケてるかも。たまには使ってやるかな。わりと独特だよね。mantiukがペン画の細密画なら、こちらは油絵の細密画という感じ?

P6291900_3co_01_hdr_mode3_1



最後はFhotoroom HDRというHDR付きレタッチソフト。
フリー版でも、1枚のトーンマッピングならロゴは入らない。
これも汚くなるプリセットを選んだけど、ReDynaMix HDRに似てるかな。それだけありがちな調子ってことだろうか。

P6291900_3co_Fh_1





どれがいいかというのは好みというか目的というかによるだろうけど、GIMPのフェイクなんちゃらというのは、わざわざそれで処理するほどの魅力は感じないなぁ、私は。
いろいろパラメータをいじれば変わってくるんだろうけど。

ほかにもフリーで使えるHDRソフトはあるけど、私が使ってるのはこれだけなんです、はい(高いフォトショなんか持ってないから知らないよー)。Picturenautでのトーンマッピングやフィルター類では、たいして変わらなかったので出しませんでした。

 

おしまい。

 




追記

また違うGIMP用のフェイクHDRスクリプトを発見したので、それも試してみた。

Fake high dynamic range effect for Gimp

こちらのページに行って、Fake HDR effect script-fu-v0.2.zipというのを落として解凍、scmファイルをスクリプトのフォルダに入れてやると使える。

やってみた。

まずFake HDR Effectというスクリプト。

P6291900_3co_fakehdr_1



こちらはFake HDR Effect plusというスクリプト。

P6291900_3co_fakehdrp_1



私の目がおかしいのか、違いがわからん(plusのほうが、暗部が少し明るいか)。
というか、plusのほうは各種パラメータをいじれるようになってるだけで、やってることは同じなのかもしれない。

そのパラメータをがんがんいじってやればいいものができるのかもしれないが、プレビューできないものをいじる気にはならない(英語だから意味もわからないし)。
ほかになにもなければ研究もしたくなるけど、わざわざGIMPでフェイクHDRを作る意味もないしなぁ。
HDRとは無関係のエフェクトだと思ってみても、それほどいいものとは思えない……というか、ぜんぜんよくない。

なお、素材画像との相性がわるいのかと思って、夜景なんかでもやってみたんだけど、同じだった。
私の目には、色が強調されただけのように見えた。
こういうスクリプトを作ってる人にとって、HDRというのは色の強調と同じことなんだろうか。彩度を上げればいいだけのハナシなのにわけがわからん。HDRというのを誤解してはいないだろうか(というか、一般的に誤解されてるような気もしないではない)。
いやまあ、スクリプトの動きを見てると、ぼかして重ねたり比較(明)で重ねたり差分をとったりマスクを作ったりと、とにかく忙しいのだけど、その努力が形になってるとは思えない。あれだけやってこれかよ、という具合(もしかして、うちのGIMPは壊れてるのか?)。

 

それにしても、ちょっと連続作業が続くと、とたんに激重になるんだよな、GIMPって。
もちろん私のパソが低スペックすぎるのがわるいのだけど、なんにしてもハイスペック前提のソフトは好かん。





追記
次の記事では、スクリプトを使わずに(GIMPだけで)本物のフェイクHDR(?)のようなものを作る方法を紹介しているので、興味があったら見てね。気に入るかどうかはわからないけど。 → スクリプトやフィルターを使いまくりの処理はこちら。 → さらにすばらしいフィルターをこちらで紹介してる。





もういっこ追記
次の記事でも触れているが、レティネックスというのが色調補正の中に入っているのを発見したので使ってみた。
原版を複製したのをレティネックスで処理(レベルを「低い」にしただけ)、それを原版の上にオーバーレイで重ねた。
みちがえるようにくっきりした。ローカルのコントラスト強調にたいへん有効のようだ(全体のコントラストを調整してもこうはならない)。
露出合成のあととはいわず、「露出はいいんだけどなんとなく眠い」写真をくっきりさせるのにもいいのではないだろうか。GIMP使いの人は、ぜひ使ってみてほしい(こちらの記事も参考に)。

P6291900_3co_gi_ret_1





また追記
fake-hdr.scmというスクリプトも発見したが、作例を出すまでもない。ほかのと同じだ、同じ。
誰かが考えた手法を違う人がスクリプト化しただけなのか? モトは同じなのか?
なんか、海外の人の考えるHDRって、どっかおかしくないか? それとも、やっぱりパラメータがそのままで、いじってないからおかしいのか?
ただ、これはレイヤーをそのままにしてくれる(統合はしない)ので、最後の段階で少し手を加えることもできるかもしれない……どうすればいいのかさっぱりわからないが。






※重要な追記
ほかの記事を作っていて気がついたのだが、大きなサイズのまま処理をして、あとで縮小するということをせず、最初から縮小したものを使うと結果が大きく異なるということがある。
明るさや色の調整とは違って、ぼかしが入る系のフィルターは特にそうだ(あるいは特定の範囲ごとにどうこういう計算をするとか)。
コントラストを調整するプラグインなども、ぼかした画像をマスクにしたりすることがあるので、これも仲間。
というわけで、ディテールのサイズを調整できるAdaptive Contrast Enhancementも仲間であった。
それを使うフェイクHDRのスクリプトも、素材サイズが異なると、結果はまったく違うのではないだろうか、と思った。
800×600のサイズでやってみた。

P6291900_3co_ad80



このもにょもにょした気持ち悪い調子、これなら立派な(?)フェイクHDRといっていいと思う。
もしかしたら、パラメータのなにかをいじるとこのようになるのかもしれないが、あいかわらずやる気はおきない。

あと、ほかのと同じだと書いて見本も出さなかったフェイクHDRのスクリプト(Fake HDR lookという)の、いちばん上のレイヤーを、Adaptive Contrast Enhancementで処理すると、このようになった(これは横1500でやって縮小した)。

P6291900_3co_look



小汚いタイプの絵画調になった。
コントラストが低いが、あとで調整すればいい。

というわけで、ヘンに画質にこだわって大きなまま処理するよりも、最初から縮小したものをいじったほうがいいこともあるようだ。
考えてみれば、HDRソフトのトーンマッピングだって、サイズによって結果が違うことはある。
もっと早くに気がつけばよかった。
ま、「サイズによって違う」ということであって、「小さいほうがいい」とは限らないが(被写体にもよるし、どういうものを求めているかによっても違うだろう)。

で、このように別の処理をしたものを混ぜるということも有効である場合が少なくない。
下はこれら2枚を半々で混ぜて、自動レベル調整(フォトショでやった)で調子と色をひきしめたものだ。

P6291900_3co_ad80_look



なんだよGIMP、やればできるじゃん。
手動でやったほうがいいとか思ってすまんかった(最後は手動で混ぜてるけど)。

ちゃんちゃん♪



※このFake HDR lookというスクリプトには、ダッヂ&バーン(覆い焼きと焼き込み)という機能があって、そこにチェックを入れると、それ用のレイヤーが出力される。
そのレイヤーの調整のしかたは、こちらの記事の追記で説明してる。

トラックバックは許可されていません。

コメントはまだありません。

コメントする。

絵文字
 
星  顔 
 

ライブドアブログでは広告のパーソナライズや効果測定のためクッキー(cookie)を使用しています。
このバナーを閉じるか閲覧を継続することでクッキーの使用を承認いただいたものとさせていただきます。
また、お客様は当社パートナー企業における所定の手続きにより、クッキーの使用を管理することもできます。
詳細はライブドア利用規約をご確認ください。