早速 Windows 版バイナリとソース(後々読むので)をダウンロードして使ってみました。なんとトリミングもできるしJPEG出力のクオリティも設定できるじゃないですか。トーンマッピング後の絵もウィンドウ枠で拡大縮小できるし。今まで使わなかったのを後悔しました。
今回のバージョンアップで私的にもっともうれしかったのは mantiuk06 の高速化。SSE 機能を使って改善していますので CPU のコア数に関係なく一様に高速化します。ここで一番よく使う TMO である mantiuk06 が各バージョンでどうなってきたか簡単に書きます。pfstmo-1.3.2 と pfstmo-1.4 ではまったく同じコードを使っています。高速化のために OpenMP で並列処理をさせています。qtpfsgui-1.9.3 はpfstmo-1.3.x をベースにしていて、そこに detail factor というパラメータを追加しています。また saturation correction も 0-1 だったのを 0-2 とより大きい値を指定できるようになりました。saturation correction は pfstmo-1.4 のリリース後に pfstmo にも取り込まれました。それからしばらくして今度の Luminance HDR 2.0.2-pre1 では OpenMP 頼りだけの高速化だけでなく SSE を使うようになりました。
pfstmo と Luminance HDR の仕上がりデータを見ていてヒョンなことに気がつきました。似てるけどなんか違うんです。例えばサンプルのHDR画像の中から Nancy church #2 をトーンマッピングしてみるとこんな結果になります。左が Luminance HDR で右が pfstmo です。(画像をクリックで大きくなります)
二枚を重ねてみると
トーンマッピングの各パラメータは下記のとおりです。
pregamma: 1.0 contrast factor: 0.3 saturation correction: 0.8 detail factor: 1.0 gamma: 2.2pfstmo のコマンドはこうです。
$ pfsinrgbe nancy_church_2.hdr | pfstmo_mantiuk06 --factor 0.3 --saturation 0.8 | pfsgamma --gamma 2.2 | pfsout nancy_church_2.jpg
なんだか pfstmo の方が明るいです。何で一致しないんだろう???Flickr で聞いてみようかな。