ブレンド処理により写真の画質を向上させるEnfuse

 風景を撮影する場合に同じアングルで露出を変えた一連の写真を撮っておくと、ハイライトと陰影のバランスの取れた1枚の写真に合成することが可能である。従来こうした処理を行うにはQtpfsguiなどのトーンマッピング型アプリケーションを使うのが主流であったが、トーンマッピングは処理終了までの時間が長く、使いこなしも難しく、不自然な結果を生じさせる場合もあるという欠点を有している。これらと対照的に、取り扱いが簡単で、処理も速く、得られる結果も優れているのが Enfuse という新規に登場したツールである。

 Enfuseは、これまでパノラマ写真合成用アプリケーションのHuginおよびEnblendに携わっていた開発者達が集まって最近立ち上げられたばかりのプロジェクトである。位置付け的にはEnblendパッケージの一部という扱いだが、Linux用の安定版はまだリリースされていない。WindowsおよびMac OS X用のEnblendであればコンパイル済みのベータ版をpanospace.wordpress.comからダウンロードできるが、Linuxユーザの場合はこのページからリンクされている指示に従って自力でコンパイルする必要がある。このコンパイルそのものは短時間で終わる作業であり、必要な依存ファイルを事前にインストールしておく以外、特に手間のかかる点もないはずだ。

 インストールが正常に終了するとenfuseという名前のバイナリが作成されているはずである。その実行用の構文は単純で、「enfuse -o outputfilename.jpg inputfile_1.jpg inputfile_2.jpg inputfile_3.jpg ...」というように、出力ファイル名の後ろに、入力対象のイメージを列挙するだけである(ワイルドカードによる一括指定も使用可能)。デフォルト設定下のEnfuseでは、多少冗長なステータスメッセージが出力されるようになっているが、どのようなアルゴリズム処理が実施されているかを雰囲気だけでも味わうのにはこうした仕様もいいかもしれない。なお処理された結果を確認するには、ユーザが好みの画像ビュワーを別途立ち上げる必要がある。

enfuse1_thumb.jpg
露出の異なる一連の画像(入力ファイル群)。暗い画像のほうがスクリーン上のテキストが識別しやすい

 ここでは具体的な操作法を解説するための素材として、私の作業机の一隅を撮影した一連のスナップショットを用意した。各フレーム中にはパソコンのモニタおよびカメラに向けたLEDライトが写されており、前景部と背景部を見ると、照明を反射している部分および光の陰となっている部分がいくつか存在しているのが分かるはずだ。

 これらのイメージ群に対して、入力イメージの処理法を調整するコマンドラインスイッチを指定することなくデフォルト状態のEnfuseを実行させたところ、私の環境では4秒と待たされることなく処理結果のイメージが出力された。これに比べてQtpfsguiによるトーンマッピングでは、処理結果のイメージを出力するのに20秒以上を要している。また私個人の主観的な判断ではあるが、Qtpfsguiではアルゴリズム設定を微調整したにもかかわらず、その最良の結果のものを選んでも品質的にはEnfuseのものより劣っているよう感じられる。

enfuse2_thumb.jpg enfuse3_thumb.jpg
Enfuseによる処理結果(パラメータ調整なし) Qtpfsguiによる処理結果(パラメータ調整した複数の結果から最良のものを選択)