8月初めに、ImageJ Ver. 1.54x に対応したVer. 5.21をリリースしましたが、さらにアルゴリズムを見直した Ver. 5.3 を今回リリースします。やはりユーザインターフェースの変更はありませんので、マニュアルページも多少の補訂を除いて新たに書き直すことは行いません。なお、Ver. 5.1, Ver. 5.21 で GIMP 用プラグインの入れ替えを行っていれば、今回 GIMP 用プラグインの入れ替えは必要ありませんが、Ver. 5.01 以前からバージョンアップする場合は、GIMP 用プラグインの入れ替えも必要です。
■バージョンアップ内容
1. チャンネル間比較調整アルゴリズムの見直し
今回見直したアルゴリズムの内容は次の通りです。このプログラムでは、補正画像を作成したり、画像のミキシングを行う際に各チャンネルの明度の平均値を測定し、その平均値の差をならして調整したうえで、補正画像を作成するなどの処理を行っています。その際、従来は各チャンネルの全画面を対象に平均値の計算を行っていましたが、今回、特にBチャンネルとGチャンネルを比較する際に、全画面対象ではなく、周囲の幅15%をクロップした画像に基づいて計算し、それに基づいてチャンネル間のレベル調整を行ってから作業を行うように改訂しました。
このアルゴリズムの改訂はどのような意味を持つかというと、Bチャンネルで周辺褪色が起こっている場合 (コマの周辺が青もしくは青紫に褪色する現象)、全画面を対象に平均値を計算すると、周辺褪色が起こっている場合、必要以上に平均値が高くなってしまいます。この結果作成される画像もより望ましいものからずれてしまう可能性が高くなります。これを周辺を切り落とした画像に基づいて平均値を計算することで、より適切な画像を作成できるようにするという狙いがあります。
因みに本改訂を行ってから、過去補正してみた比較的ダメージの激しい画像を再度補正してみたところ、黄変をさらに効果的に削減するようです。そのため、遠景補正レイヤーを使わなくても済むケースが増えました。遠景補正レイヤーを使わないで済むなら、その分遠景補正レイヤーを編集するひと手間が減ります。どうも今までは、Bチャンネルの周辺褪色が悪さをして、近景補正レイヤーの補正値が不十分だったため、遠景補正レイヤーが必要だったケースがあったようです。また今まで不十分になりがちだった、もともと青みの強い部分の黄変もより効果的に削減されています。今回アルゴリズムを大きく変えたわけではありませんが、黄変削減量という点では、昨年のアルゴリズムの大幅改変に次ぐ大きな改善となっています。
なお遠景補正レイヤーを使うべきかどうかの一つの目安 (あくまで目安です) は、遠景補正レイヤーをオンにしたときに、より空が明るくなる(→RGB合成するとより青くなる)変化があるかどうかです。あまり変わらなかったり、空がかえって暗くなるようでは使わないほうが良い可能性が高いということになります。
なお、画像によっては (特にダメージが強いほど)、依然遠景補正レイヤーが有効な画像もあります。
一方、ダメージの比較的小さい画像(周辺褪色のあまり起こっていない画像)では大きな変化はないと思います。
このあたり試していただいて、お気づきの点に関してご意見をお寄せいただけますと幸いです。
なお、参考までにVer. 5.21の補正結果とVer. 5.3 の補正結果の違いを見ていただきます。
Ver. 5.21の適用結果と Ver. 5.3 の適用結果は、そもそも編集の仕方も異なるので、単純比較はできないことはご留意ください。ただ Ver. 5.21の方は、黄変が削減しきれず空のB値が低くなる (やや緑っぽくなる) ので、その補正のため遠景補正レイヤーを適用していますが、Ver. 5.3の方はそのような問題がないため遠景補正レイヤーを適用していません。また Ver. 5.21の方は Ver. 5.3 に比べて青い屋根の黄色味の除去量が少ないです。いずれにせよ Ver. 5.3 のほうが、Ver. 5.21 に比べて、黄色味をより効果的に除去していることは間違いありません。その一方で、Ver. 5.3 の方が Ver. 5.21 に比べて土の部分の黄色味が抜け過ぎではないかという印象を持たれるかもしれません。
ただいずれにせよこのスキャン画像は、スキャナの癖もしくはフィルムの特性により、マゼンタに偏っていますので、別途マゼンタ補正が必要です。Ver. 5.3 の土の部分の黄色味が抜け過ぎの部分は、私の場合、このマゼンタ補正の中で補正していきます。その結果が以下です。
このマゼンタ補正のために相対RGB色マスク作成ツールで、以下のようなマゼンタ補正マスクファイルを作成し、GIMPに読み込んだ図3のレイヤーを複製し、複製したレイヤーに以下のファイルをマスクとして読み込みます。この複製したレイヤーをマゼンタ補正レイヤーとします。
このマゼンタ補正レイヤーに対し、以下のトーンカーブを使って色の補正を行いました。土の部分のB値が意外に高く(ミッド~ハイライト域)、屋根の部分のB値は低く(シャドウ~ミッド域)なっています。
まず全般的にマゼンタを除去するために全域にわたってGカーブを上昇させます。さらに、シャドウ域を中心にRカーブを上げ、ハイライト域では若干下げます。Bカーブについては土の部分は主にミッドレンジからハイライト域下部に渡っているので、その部分のBカーブを一番下げるとともに、屋根の青はシャドウ~ミッド域が中心なので、そこはBカーブを下げる量を減らしました。その結果が図4となっています。つまり、Ver. 5.3により過剰に黄色が削減された部分はマゼンタ補正の中で再補償していきます。
大体黄色味が過剰に削減される色域は、元々黄色い領域を除けば、褐色~オレンジ色、もしくは、鶯色~黄緑色領域なので、私の場合、褐色~オレンジ色領域に関してはマゼンタ補正で (この領域の黄色味が削減されることで色がマゼンタに寄るため)、鶯色~黄緑色領域は、最初に緑の保護オプションを指定してImageJプラグインを走らせて緑色部分の黄色味削減を弱めるか、もしくはグリーン補正の中で黄色味の再補償を行っていくことが多いです。あるいは、該当部分のマスクを黒塗りあるいは灰色塗にして、補正の適応を除外するか、弱めるという方法もあります。なお、マスクの形状は多少はみ出ていても目の錯覚で十分効果がありますので(人間の目の色の認識は結構アバウトです)、あまり厳密に描かなくても大丈夫です。
2. 遠景補正レイヤー用マスク作成アルゴリズムの見直し
今まで遠景補正レイヤー用のマスク画像は、閾値以下を 0 (真っ黒), 閾値以上を 255 (真っ白)の二値マスクとしていました。ただそれですと、画像によっては閾値の境界付近で色の段差が目立ってしまう場合があります。
そこで閾値前後でなだらかに黒から白へ遷移するようマスク作成のアルゴリズムを見直しました。すべての画像で色の段差が出ないとまでは言い切れませんが、仮に段差が出たとしても以前より目立たなくなっていると思います。なお以下の図で、0 は真っ黒、255 は真っ白の値です(8bit相当の明度値で示しています)。
なお、なだらかにする範囲を 8bit 相当値で 20%ポイント分の範囲、51 (+- 25.5)としてみましたが、この値で良いのかどうかはちょっと迷いがあります。
それ以外に、オリジナルのBチャンネルが遠景補正レイヤーより青い部分を除外するようにしていたのですが、これだと周辺の青変褪色を強調するようなので止めました。
違いを具体例で見てみます。
新マスクの方が黒から白の遷移がなだらかになっているのが分かります。また周辺の青変部分が保護されていた (コマのフチの上下が黒っぽくなっている部分) のを止めました。ただ上の Ver. 5.3 の作例では遠景補正レイヤーは使っていません。
3. ファイル名の変更
従来 ImageJ 用のファイル名を、File_Maker_for_Photo_Color_adjustment_Ver xx.py としていましたが、今回ファイル名を、File_Maker_for_yellowed_photo_correction_Ver xx.py と変更させていただきます。以前のファイル名はこの1本しか手掛けていなかったときの名称ですが、現在色補正用のプログラムを何本も作っていて、それだと意味が不明瞭ですので変更しました。これに伴い、ImageJ上の表示名も変わります。
本プログラムのダウンロードはこちらからどうぞ。
なお、まだ細かいアルゴリズムの見直しやパラメータの見直しで改善の余地がありそうなので、今後とも検討していきます。
本ツールのマニュアルは、UIの変更はありませんので、引き続き以下の各ページをご覧ください。
5-1. 具体的な補正実施手順 - 準備
----------------------
なお、本記事で紹介した写真補正技法やソフトウェア (Plug-in) は個人的用途および非営利目的であれば自由に使っていただいて構いませんが、本技法を使って何らかの成果 (編集した写真等) を公表する場合は、本記事で紹介した技法を使った旨クレジットをつけて公表していただくことをお願いします。
また、本ソフトウェアは現状のまま提供されるものし、作者はこれを使ったことによるいかなる損害補償等にも応じられないことを了解の上使っていただくものとします。
但し、もしソフトウェアのバグがありましたら、ご連絡いただければなるべく改善するよう努めたいと思います。
営利・営業目的で使用される方は別途ご相談下さい。
また、私の作成したPlug-inも自由に改変して使用していただいて構いませんが、その成果を公表する場合はご一報下さい (公表しない場合は特に連絡は必要ありません)。またその改良した結果を私の方で自由に利用させていただくこともご了承下さい。
----------------------