省型旧形国電の残影を求めて

戦前型旧形国電および鉄道と変褪色フィルム写真を中心とした写真補正編集の話題を扱います。他のサイトでは得られない、筆者独自開発の写真補正ツールや補正技法についても情報提供しています。写真補正技法への質問はコメント欄へどうぞ

ART を使ってネガカラースキャン画像の不均等黄変を補正してみる

f:id:yasuo_ssi:20210310145522j:plain

 前回、ART を使ったネガカラーのマゼンタ被り補正に引き続き、今回は不均等黄変に挑戦してみます。ネガカラーの不均等黄変の補正については、本サイトで拙作の B チャンネル再建法ツールを紹介しており、とにかく黄色い部分を削除する効果に関しては最強です。また経年劣化で荒れた B チャンネルのテクスチャを修復する効果もあります。ただ、ImageJ と GIMP を使用しなければならないのでちょっと面倒だと感じられる方もおられるでしょう。

 但し、黄変によるダメージの程度が比較的小さい画像の場合は、拙作の ART 用 CTL スクリプトを用いて ART だけでも十分に補正が可能です。以下事例を見ていきます。

■不均等黄変の影響が軽微な場合

 こちらは先日お見せしたクモヤ22202 のオリジナルの画像です。

クモヤ22202 オリジナル

 一見して分かるように車庫の屋根の上に不均等黄変が出ています。ただ他の部分には及んでいません。またそれ以外に全般にマゼンタに傾いています。これを ART 上で拙作の相対色領域補正 CTL スクリプト を使って補正します。以下の説明は既に相対色領域補正 CTL スクリプトがインストールされていることを前提とします。インストールされていない場合は、以下の記事からダウンロード & インストールしておいてください。

yasuo-ssi.hatenablog.com

(1) まず画像を ART に読み込みます。

(2) ローカル編集タブにあるカラー/トーン補正に移動します。[モード] から [相対色領域補正] が選択できるようになっているはずですので、それを選びます。

カラー/トーン補正 の モードから選択して起動

(3) まず、空の黄色味を削除します。最初に対象色領域に黄色を選択し、対象領域表示にチェックして、領域を確認します。

対象色領域選択

(4) 空以外の部分も対象領域に入っているので、エリアマスクを設定し、補正領域を空に限定します。

エリアマスク設定

(5) 対象領域が設定出来たら領域表示のチェックを外し、blue チャンネルのスライダーを動かし黄変を消します。また、閾値や傾きのスライダーを動かし、対象領域を調整します。

領域範囲を調整するパラメータ

 

(6) 対象領域が確定したら、ブルーパラメータを青の方向に動かし、黄変を消します。

黄変消去中

(7) これで一応黄変は消えました。ただ、まだ今一つ空の抜けが悪く青空がすっきりしません。そこでやはり空を中心にエリアマスクを掛け、補正対象領域を緑に変えて空の抜けを改善します。

 そこで、カラー/トーン補正の + アイコンをクリックし、編集レイヤー (インスタンス) を一つ追加し、その上で先ほどと同じように、モードから相対色領域補正を選択してこのレイヤーに割り当てます。

編集インスタンス追加画面

(8) 対象色領域に緑を選び、対象領域表示をチェックし、さらにエリアマスクを設定します。今回は車庫の屋根も含ませました。

緑の補正対象領域を確認

(9) 変種対象領域の確認が終わったらチェックを外し、スライダーを動かして色を調整します。今回は先ほどと同じようにブルーチャンネルを動かして青みを増やしてすっきりさせました。

空の抜けを改善

(10) しかし土を中心としたマゼンタ被りは解決できていません。この時注意しなければならないのは車体の「ぶどう色2号」のマゼンタはこのままで良いという点です。従って車体を除いてマゼンタ補正を行います。

 先ほどと同じように、再度編集レイヤーを増やし、それに相対色領域補正を割り当てます。そして対象領域にマゼンタを選択し、領域表示を行います。さらに地面を中心にエリアマスクを設定します。

マゼンタの補正対象領域を設定

(11) 編集領域の確認が終わったら、RGB値調整スライダーを動かして、補正を行います。調整量は下図をご覧ください。

マゼンタの補正

(12) あと、草の緑がちょっと冴えないので、緑を対象として補正を掛けます。対象領域に緑を選択し、エリアマスクを設定するとともに、色の傾きを青の方向に寄せて、なるべく草以外はあまり補正されないようにします。

草の緑の補正範囲の設定

(13) 草の緑味と黄色味をふやして色を改善します。

草の緑の補正

(14) 出力結果はこちらです。

出力結果

 

 なお、この画像の黄変をカラー/トーン補正のカラーホイール + 類似色マスク (or 色相マスク) を使って補正しようとすると、マスクの形が黄変にうまく合わず、補正した周囲に黄色味が残ってしまいます。ユークリッドの距離を使っているとマスクの減衰が急すぎるので、なだらかな黄変のカーブと合わないというのが原因と思われます。いくつか編集インスタンスを重ね合わせれば何とかなるかもしれませんが、調整が難しいです。

類似色マスクを使って黄変の削除を試みる

 パラメータ指定マスクの色相を使った場合も同様で、黄変部分が若干オレンジがかっており、空の青と色相上の距離が若干離れていることもあって、調整するのが非常に難しいです。

 なお、最初に本 CTL を紹介した記事にも黄変を補正した事例を載せています。

yasuo-ssi.hatenablog.com

 

■相対色領域補正を使って補正を行う場合の注意事項

 このように不均等黄変が軽微な場合は、相対色領域補正 CTL スクリプトだけで十分に補正が可能です。基本、黄色味を消去するのに単一の編集インスタンスだけで賄える場合は、ART + 相対色領域補正 CTL スクリプト で補正をやったほうが簡単です。

 なお、相対色領域補正を使う場合、各編集レイヤー (インスタンス) は上のレイヤーで補正された結果を基にその下のレイヤーでの補正範囲が決まります。そのため、レイヤーの順番は重要です

 一方、黄変が単一の編集インスタンスで消しきれない場合は、出来なくはないのですがちょっと厄介になります。というのは、一度編集対象色領域を黄色で削除して、さらにそれで取り切れないので、同じ黄色を対象に編集インスタンスを作ると、前の編集インスタンスと次の編集インスタンスの境界領域がスムーズに遷移しないことがあるからです。これを調整するために、閾値の調整やガンマ値の指定を行うのですが、結構苦労します。追加で黄色を削減したい場合はむしろ、別の色を対象にして (例えば赤) その領域上で黄色味の追加削減を行ったほうが良いかもしれません。

 ただ、黄色を除去するという点だけ考えると、複数の編集インスタンスで苦労するより、急がば回れで、B チャンネル再建法を適用したほうが早いかもしれません。B チャンネル再建法だと徹底的に黄色味を除去しますので...

■一見難しそうだが、意外に簡単に補正できるケース

 今度は一見補正が難しそうですが、意外に簡単にしかも従来のツールを使って補正が可能なケースをお見せします。事例は以前にもお見せしたことのある以下の画像です。かなり黄変の濃度が濃く、一見補正が難しそうに見えます。

f:id:yasuo_ssi:20201030170448j:plain

オリジナル

 まず、空の黄色味をとるために、類似色マスクを使い、パラメータ指定マスクでぼかしを入れます。

空補正のためのマスク設定

 そのうえでカラーホイールを大きく青に動かして空の黄色味を除去します。

空の黄色味を除去

 上でハイライトのゲインを若干上げています。

 次に、ハイライトの不均等シアン被りを除去するためにパラメータ指定マスクを指定します。

シアン補正用マスク設定中 (パラメータ: 明度)

同 パラメータ: 色度

同 パラメータ: 色相

 次にカラーホイールを赤の方向に動かして、シアンの不均等被りを補正します。

シアン補正

 この時、ホイールを紫の方向に動かし、ハイライトのゲインを上げています。

 最後に全体的にマゼンタの除去を行います。

マゼンタ除去


 マスクは使用しません。そしてカラーホイールを黄色の方向に動かします。また色相をシフトさせています。

 ただこれではまだマゼンタに傾いています。そこでホワイトバランスを調整して黄色味を増します。

ホワイトバランス調整

 何とかうまくいきました。

 この事例の場合、黄変の濃度が濃くてダメージが激しく補正も難しいように思われます。しかし、濃度が濃いということは、非黄変部分との色の変化の傾斜がきついため、ΔE を使った類似色マスクとの、両者の色の変化の傾斜がマッチし、却ってうまくいったと言えるでしょう。

■既存のツールで不均等黄変の補正が難しい理由

 既存のツールでこのような不均等黄変の補正が難しい理由は、2つあり、1つ目は、いま述べたように、黄変の色の変化の傾斜と、画像処理ソフトウェア側の選択範囲や色を対象としたマスクの色の変化の傾斜が合わないことです。下は、黄変部分と黄変部分を選択しようとする選択ツールとの齟齬を模式図化したものです。

黄変と色の選択間の色変化の傾斜の齟齬による
典型的な補正残り現象の原理

 このため、色を補正したときに、補正周辺部分に補正残り (上の選択しきれない部分) が輪のように残ってしまいます(下図参照)。

 

黄変と色の選択範囲の齟齬による典型的な補正残り現象

 こちらは、類似色選択で黄変部分を選択して補正を掛けている事例ですが、ご覧のように、元々黄変の濃い部分は補正できていますが、薄い部分はうまく選択できず、補正残りとして補正領域の周辺に残ってしまっています。

 とは言え、上の事例で見たようにこの変化曲線の傾斜がたまたま既存の色選択ツールの変化曲線の傾斜とほぼ一致する場合があります。このような場合は既存の色選択ツールを使っても修復が可能ですが、そのようなケースは多くありません。似たような黄変画像であってもちょっとした条件の変化で、修復の難易度が大きく変わります。

 拙作の、相対色領域補正 CTL スクリプト ならびに ImageJ 用の相対RGB色マスク画像作成ツールは、色の範囲選択を、この変色の変化曲線になるべく合わせて作成するツールです。これらは、相対的な色の濃度の変化に補正量 (あるいはマスクの透過度) を比例させることで、色の補正量を極力、黄変の変化曲線に合わせるということを行っています。

相対色領域補正スクリプト等の色選択変化曲線

 ただし、相対色の原理を使った拙作のツールでもうまく黄変の変化曲線をフォローしきれない場合もありえます。そのための調整ツールとして CTL スクリプトには、ガンマ補正パラメータを導入しています。ガンマを調整して、このスロープを調整します。また ImageJ 対応の相対RGB色マスク画像作成ツールに GIMP を使って補正する場合は、GIMPトーンカーブ曲線を調整することでスロープ調整が可能です。しかしそれでも補正しきれない場合は B チャンネル再建法による補正をお勧めします。これを使うと徹底的に黄色味を除去しますので。

 もう1点の問題は、黄変が様々な色領域を横断してかかることです。既存の、画像処理ソフトウェア付属の色選択ツールは、様々な色領域を横断したこのようなうっすらとした色被りを全体として選択することが苦手です。このため、横断している各色領域ごとに分割して、それぞれに補正処理をやらなければならないという非常に面倒なことになります。

 これも拙作のツールでは、色の絶対値ではなく相対値に基づいたマスク or 補正量を設定することで、この問題を解決しようとするものです。