目次: ART を使った不均等黄変ネガフィルム画像の補正テクニック
(1) チャンネル再構成で黄色味を消す
(8) 追加補正: 狭まった B チャンネルのダイナミックレンジを復原する
----------------------------
B チャンネル再建法は、他チャンネル (特に G チャンネル) の情報を流用して B チャンネルを復元しようとするのですから、どうしても B チャンネルが G チャンネルに近づいてしまいます。それをなるべくあの手この手で不必要に近づかないようにしていますが、限界があります。特に青い空が目立つような画像では、 B チャンネルのダイナミックレンジがさがり、かつ G チャンネルの値に近づきますので、空の色が冴えなかったりします。黄色の部分も必要以上に値が上がった結果、黄色みが冴えなくなることがあります (これは黄色味を取るのが本補正の役割ですので当然のことですが)。
例えば、元々青線のヒストグラムだったのが、最低レベルが上がり、最高レベルが下がったり (赤線)、最低レベルはあまり上がらなくても、最高レベルが下がったり (緑線)、するような現象です。
B チャンネル補正法の場合、G 情報を使って補正していきますので、例えば濃い青の空がある画像の場合、補正した画像が G チャンネルに引きずられて、上の緑線のような状態になる場合があります。
このようなことは、特に本来の画像における空の青みが青かった場合、青みが大幅に薄くなり、時に若干緑がかる、というような形で現れます。
同様なことは、通常のネガフィルムの褪色でも発生します。それによるものと思われる、ネットで見つけた典型的事例をリンクとして貼っておきます。
京浜東北線の205を。もうちょっといい具合にスキャンしたい。 pic.twitter.com/dPhsphUCyO
— きたきた (@newx700a507si) 2024年6月7日
この両画像とも、本来青かった部分が緑がかる一方、本来黄色味があった部分は、黄色味が薄く、冴えなくなっていますが、これは明らかに B チャンネルのダイナミックレンジが狭くなっているためです。つまり B の値の高いところは褪色のため下がる一方、低いところは上がってしまったのです。すなわち、青のレベルが下がるだけでなく、黄色の部分の青のレベルも上がる、つまり上からも下からもレベルが狭まる、上の図の赤線のようなヒストグラムになっているわけです。
なお、フィルム専用スキャナの場合、スキャナドライバが自動的に、R, G, B のダイナミックレンジの幅が合うように調整して、この B チャンネルのダイナミックレンジの縮小が目立たない場合もあります (但し、しない場合もあったり、画像によっては自動調整に失敗する場合もあります)。しかしネガフィルムをデジタルカメラを使ってキャプチャを行うと、自動補正が入らないため、狭まったダイナミックレンジはそのままとなり、上の参考例のようになることが多いです。
このような場合、単純に B チャンネルのディスプレイ範囲におけるダイナミックレンジを拡げる (ホワイトポイントのレベルを下げる一方、ブラックポイントのレベルを上げる)、だけでうまくいく可能性もありますが、うまくいかない場合の方が多いです。これは、色は絶対値で決まるわけではなく、相対値で決まるからです。例えば B チャンネルの値の絶対値が高くても、必ずしも青いとは限らず、R, G の値によっては黄色味が強く感じられる場合もありますし、逆に値の絶対値が低くても黄色いとは限らず、青く見える場合もあります。単純にダイナミックレンジを拡げると値が高ければさらに高く、低ければさらに低くすることになりますので、うまくいかない可能性が高いわけです。値が高くても黄色みがあれば下げなくてはいけませんし、値が低くても青みがあれば上げなくてはなりません。これはフィルムの褪色によって B チャンネルのディスプレイ範囲におけるダイナミックレンジが狭まるのは、光学的変化ではなく化学的変化だからです。
この場合、やはり ART のカラー / トーン補正を使って、拙作の、相対色領域補正、相対色領域補正 (ガンマ)、もしくは相対色領域 RGB カーブ CTL スクリプトを使い、相対的に青い領域では B チャンネル値を上げる一方、相対的に黄色い領域では B チャンネル値を下げるような編集を行うことで、B チャンネルのダイナミックレンジの縮小を補正することができます。
このツールのダウンロード先は以下にあります。以下、2タイプあります。できるマスクは同じですが、補正の仕方が異なります。必要に応じて使い分けてください。
また、マニュアルは以下をご覧ください。
因みに、一旦、B チャンネル再建法を適用した画像に対して、黄色味を復元するためにマスクを作成する場合、黄透過マスクではなく赤透過マスクを作り、それを基に青の値を下げる編集を行ったほうが良い結果が得られる可能性が高いです。
というのは B チャンネル再建法は徹底的に黄色味を削減します。それに対し黄透過マスクを作成しても、もともと黄色味があった部分をうまく選択できるとは限りません。ところで、黄色というのは青の値が低いのに対し赤と緑の値が高い部分です。従って相対的に赤い部分が高いところを範囲指定するマスクを作ると、黄マスクよりベターである可能性が高くなります。だとしたら、赤だけではなく緑も高いはずだから、緑のマスクでも良いではないか、と思われる方もいると思いますが、緑は B チャンネル再建法適用の際、青の値を上げるのに参照しているので、効果は下がります。
なお、既存の画像ソフト、例えば Photoshop の場合、このような選択ができるツールがありません。厳密にいうと私のツールと同じ原理で色域選択するツールはあります。特定色域の選択のカラーで、相対値での指定を選ぶと同じ原理で動くマスク(選択範囲) が作れますが、マスクの強度が弱すぎるので、画像の色のニュアンスを変えるのには使えますが、変色を強力に補正するほどの補正力がありません。また、指定範囲を調整する機能もありません。但し、変色の程度が弱くて変色のパターンもシンプルであれば使える場合もあると思います。この辺りの事情は GIMP でも似たり寄ったりです。それが筆者がこのツールを開発した理由です。
あるいは、単に ART のパラメータ指定マスクの色相を使って青い領域、黄色い領域を指定し、標準、もしくは知覚的モードで、それぞれ、青み、黄色味を増やすような編集を行っても良いかもしれません。
----------
なお、ART を使わず GIMP 上で同様の編集を行うには、以下のツールをご活用ください。ImageJ で作成したマスク画像を GIMP 上でレイヤーマスクとして貼り付けて使います。元々、こちらのツールを開発し、それを ART に移植したのが、上のツールです。
このツールで青透過マスクもしくは黄色透過マスクを作り、それぞれのマスクを掛けた補正レイヤーに対し B チャンネルの値を上昇もしくは下降させることで、B チャンネルのダイナミックレンジを拡張することができます。
------------
[関連記事]