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

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

決定版! 不均等黄変・褪色ネガ写真のデジタル補正術 (5-3) (2021.6 GIMP用RGB合成プラグイン対応)

f:id:yasuo_ssi:20210310145522j:plain

この記事には、下記に改訂版があります

yasuo-ssi.hatenablog.com

目次

1. 本連載記事の概要 

2. 今まで紹介されてきた経年劣化による変褪色写真の補正術 

3. 写真補正の原理    

4. Bチャンネル再建法による不均等黄変・褪色ネガ写真補正の方法                

5-1. 具体的な補正実施手順 - 準備

5-2. 具体的な補正実施手順 - ImageJによる作業

5-3. 具体的な補正実施手順 - GIMPによる作業 (本記事) 

6-1. 追加マニュアル補正の実施 - 補正不完全の原因分析と追加補正方針の決定 

6-2. 追加マニュアル補正の実施 - 追加編集作業の実際

補足. GIMPの代わりにPhotoshopで不均等黄変画像の編集を行う

補足. 標準的なBチャンネル再建法(+汎用色チャンネルマスク作成ツール)による黄変写真補正過程

チュートリアルビデオ. 決定版! 不均等黄変・褪色ネガ写真のデジタル補正術・チュートリアルビデオ

 本記事は、2021.1.17公開(以降)のBチャンネル再建法用ImageJ, GIMPプラグイン、ならびに2021.6.12公開のBチャンネル再建法RGB合成サポートGIMP用プラグインの使用を前提とした、GIMP上での編集手順を記したものです。予め上記GIMPプラグインを導入の上ご覧ください。

 なお、マニュアルによる処理過程を記述したこの記事の前バージョン (2021.1公開) はこちらになります。

5. Bチャンネル補正法による具体的な補正実施手順

5.3 GIMPによる作業

編集作業ワークフロー

youtu.be

■ImageJで作成した素材ファイルのGIMPへの読み込み

 ImageJによる編集素材ファイルの作成が終わりましたら、GIMPを立ち上げます。私の作成したPlug-inのインストールが終わっていれば、GIMPのメニューに下図のように[My Plugins]という項目がありますので、その下の[黄変写真補正ツール Ver2]もしくは[Photo Adjustment Ver2]→[Load Files...] をクリックします。

f:id:yasuo_ssi:20210613234109p:plain

 

 するとファイル選択のダイアログが出ますので、ImageJによる編集素材ファイルを作る変換元のオリジナルファイルを指定します(例では変換元ファイル名がTarget.tifになっています)。

f:id:yasuo_ssi:20210614000311p:plain

 

 

f:id:yasuo_ssi:20210613235915p:plain

 

 ここでOKを押しますと、ImageJで作成したファイルを、GIMPの単一のファイルのレイヤーとして適切な順番で読み込み、近景補正レイヤー (オリジナルファイル名+ _B_foreground.tif)、遠景補正レイヤー(オリジナルファイル名+ _B_background.tif)、および周辺補正レイヤー(オリジナルファイル名+ _B_G+R.tif)に対して、マスク素材ファイルをマスクとして読み込むところまで実行します。なお、変換元ファイルは読み込みません。

f:id:yasuo_ssi:20210614001612p:plain

 

 なお、読み込み直後は、それぞれのレイヤーのマスク編集モードは有効になっていますが、マスク表示モードにはなっていないのでご注意ください。

f:id:yasuo_ssi:20210123152228j:plain

プラグイン実行直後 マスクまで読み込んでいる

 なお、ここで一点注意です。ImageJで処理した16bit画像をGIMPで読み込む際にエラーメッセージが出ます。この理由は、ImageJで16bit以上のカラー画像をTIFFファイルに保存すると、他のソフトウェアとは異なる独自の形で保存するからです。すなわちRGBチャンネルをチャンネルごとに異なるページのマルチページTIFFとして保存します。その際に、各ページの色チャンネル情報を独自のタグで保存します。このファイルをマルチページTIFFが読める通常の画像処理ソフトに読み込むとモノクロの3ページのTIFFとしてしか表示してくれず、またImageJが付した色チャンネル情報のカラータグも認識できません (マルチページ非対応の画像処理ソフトではRチャンネルのみがモノクロで表示されます)。このカラータグは、各チャンネルをばらばらのファイルに保存したときも付されます。ですのでこのImageJ独自の情報タグが読めないと、エラーメッセージが盛大に出るのです。

 従ってエラーメッセージは気にしなくて大丈夫です。OKを押してやり過ごしてください。

■カラープロファイルの変更

 ここで、一点注意する必要があります。ImageJにはカラーマネジメント機能がありません。これは生物研究用画像はガンマ補正がないことを前提としているためです。従って、ImageJの作成したTIFFファイルはiccプロファイルが埋め込まれていない画像です。これをGIMPに読み込むとデフォルトでsRGB画像と解釈します。もしオリジナルの画像が、sRGBでない場合は(例えばadobe RGBなど)、読み込んだところでカラープロファイルの割り当てを行わなくてはなりません。この割り当てはRGB合成を行った後でも構いません。

f:id:yasuo_ssi:20211125182249p:plain

カラープロファイルの割り当て

 指定する場合は、メニューの[画像]→[カラーマネジメント]→[カラープロファイルの割り当て] を選択し、適当なプロファイルを割り当てます。この時カラープロファイルの変換を選ばないように注意します。変換にしてしまうと、RGB値も変更されてしまいますが、RGB値を変えることなくプロファイルのみ変更・割り当てることが重要です。

■暗部補正レイヤーの作成

 ここまで終わったら、RおよびGチャンネル(上から1, 2番目のレイヤー)の表示を、レイヤーの左側の目のアイコンをクリックして、オフにします(目のアイコンが消えます)。そして[変換元ファイル名]_Dark.tifレイヤーが表示されている状態にして、最明部をツールボックスの[色域を選択] ([判定基準]はデフォルトの[Composite]で良いです) でクリックして選択し、Deleteキーを押して削除し透明化します。このとき[しきい値]はなるべく小さい値(1程度)にしてください。これが暗部補正レイヤーになります。なお、Bチャンネル画像を見て、暗部の情報飽和が起こっていないようであれば、暗部補正レイヤーは使わなくてもかまわないので、この過程はスキップして構いません。

f:id:yasuo_ssi:20210613205535p:plain

Dark.tifレイヤーの最明部を[色域の選択]で選択したところ
この後Deleteキーを押し、選択したところを透明化し、暗部補正レイヤーとする
なお必要に応じてペイントツールでさらに追加の画像編集を行うことも可

 暗部補正レイヤーの編集が終わったら、レイヤーダイアログの暗部補正レイヤーの左の目のアイコンをクリックして目の表示を消します。そして次の補正レイヤーの編集に移ります。

■周辺部情報抜け補正レイヤーの編集

 次は、周辺部分情報抜け補正レイヤーの編集です。下記の2枚の画像を見てください。

f:id:yasuo_ssi:20210101192438j:plain

周辺補正の必要性を検討 (右は必要)

 左側の画像は、周辺部の青紫化はあまり進んでいないようです。若干上部が青紫がかっているようですが、通常の遠景補正レイヤーで補正可能範囲かと思います。それに対し右側の画像は周辺部が右端部を除いて青紫色に変色しています。これはBチャンネルの周辺部が褪色によって明るくなり、情報抜けが起こっているのです。空が青紫になっているのはごまかしがききますが、特に下の茶色のバラストが青紫になっているのは近景補正レイヤーで補正しきれません。この右側の画像のようなケースは周辺部の情報抜けを補正する必要があります。周辺部補正が必要ない場合はやはりこのステップはスキップしてかまいません。

 周辺部補正レイヤーのレイヤー名は、"[変換元ファイル名]_G+R.tif"となっています(ImageJで作成した素材ファイル名に対応します)。このレイヤーに既にマスク素材画像 [ファイル名]_Periphery_Adjst_Mask.tif のイメージがマスクとして貼りついているはずです。そこで、コンテキストメニューを使って、マスク編集を行うレイヤーのマスクを表示させます。

f:id:yasuo_ssi:20210613205910p:plain

レイヤー上でマウス右ボタンをクリックして
コンテキストメニューを表示させ
さらにレイヤーマスクの表示にチェックを入れる
レイヤーマスクの表示、編集ともチェックが入っているのを確認する

 レイヤーマスクの表示&編集モードになると、レイヤーダイアログにあるマスクの部分が緑で縁取られます。

f:id:yasuo_ssi:20210613210231p:plain

レイヤーマスク編集&表示モードにはいったところ

 そして、周辺部を残して真ん中を塗りつぶします。

f:id:yasuo_ssi:20210101194114j:plain

周辺部補正マスクの編集

 最後に、レイヤーマスク表示のチェックを外します。すると周辺部補正マスクが表示されます。

f:id:yasuo_ssi:20210102114154j:plain

上の補正マスクに基づく、周辺補正レイヤー画像

 なお、レイヤーを重ねて表示させた時に、周辺部補正マスクの補正量が過大で、レイヤーの境界がはっきり分かる場合は、レイヤーの不透明度を調整して、境界が目立たなくなるよう調整してください。

f:id:yasuo_ssi:20210101195227j:plain

境界がはっきり分かるケース

f:id:yasuo_ssi:20210101195250j:plain

不透明度を下げ、境界を目立たなくした補正Bチャンネル画像

 上の周辺補正レイヤーを適用した補正Bチャンネル画像を使った、Bチャンネル再建法適用補正画像が下図になります。

f:id:yasuo_ssi:20210102114506j:plain

上の補正Bチャンネルを使ってRGB合成した補正結果

 補正結果を見るとバラストの変色部分が完璧に近いぐらいに補正されていることが分かると思います。これにさらに再調整を掛けて仕上げると下記になります。

f:id:yasuo_ssi:20210612083606p:plain

上図をさらに再調整した結果

  なお、以下のページで公開している拙作のレイヤーマスク編集モード切替プラグインを導入していますと、レイヤーの編集&表示モード同時切替が可能になりますので、便利です。

■遠景補正レイヤーの編集 

 ここまで終わったら、周辺補正レイヤーの表示をオフにして、次の遠景補正レイヤーのマスクの編集に入ります。遠景補正レイヤー(レイヤー名: [変換元ファイル名]+ _B_Background.tif )を選択して、マスクの表示 & 編集モードに入ります。
 このマスクの画像のうち、遠景補正の対象とならない近景部分をペイントツール等を使って黒で塗りつぶします。そんなに厳密でなくても大丈夫です。ササっと済ませましょう。マスク編集が終わったら、再びレイヤーマスク編集 & 表示モードを出ます。このレイヤーが遠景補正レイヤーになります。この過程は、遠景が一切写っていない場合を除いて必須になります。

 

f:id:yasuo_ssi:20210613211323p:plain

レイヤーマスク編集 & 表示モードに入ったところ

f:id:yasuo_ssi:20210613211128p:plain

レイヤーマスク編集中。近景を黒で塗りつぶしつつあるところ

f:id:yasuo_ssi:20210613211510p:plain

マスク編集の終わった遠景補正レイヤー
チェック模様のところが透明で補正されない部分

■近景補正レイヤーのマスクについて (この項 2022.5 補足)

 近景補正レイヤーには、R画像を明るくしたマスクをデフォルトで掛けています。これはGチャンネルと補正したBチャンネルの色彩の多様性を確保するために掛けています。通常はこのままで良いですが、黄変範囲が全面的に広く広がっており、かつ濃度もやや高い場合は、マスクを無効にしたほうが、より良い結果が得られる可能性があります。

■再建Bチャンネル画像の作成、およびRGB合成

  このように、近景補正レイヤー、遠景補正レイヤー、暗部補正レイヤー、周辺部補正レイヤーの4つがそろったら(なお、暗部補正レイヤーや周辺部補正レイヤーが必要ない場合は抜いて良い)、それにオリジナルBチャンネルレイヤー([変換元ファイル名]_B.tifレイヤー)を加えた補正に使うレイヤーのみを可視レイヤーとして指定します(目のアイコンが表示されるようにする)。

f:id:yasuo_ssi:20210101232944j:plain

f:id:yasuo_ssi:20210613211922p:plain

再建Bチャンネル画像に必要なレイヤーのみ可視化する
(目のアイコンを表示させる)

 ここで、2021年6月に公開した、再建Bチャンネル画像合成 → RGB合成を行うプラグインを起動します。プラグインのメニュー上の場所は下図の通りです。

f:id:yasuo_ssi:20210613212100p:plain

RGB合成プラグインを起動する

 起動するとまず、"New B"という名の新しいレイヤーとして、上のレイヤーを合成して再建されたBチャンネル画像を作成します。

f:id:yasuo_ssi:20210613212938p:plain

新たなレイヤーとして合成・作成された補正済みBチャンネル

 引き続き既存のR, GレイヤーとNew BレイヤーをRGB合成して、Bチャンネル再建法を適用済みの補正画像を新たな画像ファイルとして作成します。GIMP形式の、xcfファイルとTIFFファイルの2本を出力します。ファイル名は[変換元ファイル名]+ _補正1.tif (もしくはxcf) になります。

f:id:yasuo_ssi:20210613212809p:plain

RGB合成が終了したところ

 これで基本補正が完成しました。この後、汎用色チャンネルマスク作成ツール等を使って、追加色調補正を行っていきます。

 なお、オリジナルファイルが使っている色空間が、ガンマ補正済みsRGBファイル以外の場合は、一点注意が必要です。ImageJはカラーマネジメントを行いませんので、ImageJで作成した補正素材ファイルにも iccカラープロファイルが埋め込まれません。カラープロファイルのないファイルをGIMPで読み込むと、GIMPはデフォルトでガンマ補正済みsRGBファイルだと解釈します。それでもチャンネル合成までの編集作業では特に不都合はありませんが、チャンネル合成を行い、編集済みカラー画像を再構成したときに、GIMP上で、本来のカラープロファイルを再適用してください。その際、RGB値を動かしてはいけませんGIMPにおける色空間(カラースペース)の変換についてはこちらの記事をご参照ください。

 なお、上記の編集作業は、Photoshopでも代替可能です。編集の仕方は、「補足. GIMPの代わりにPhotoshopで不均等黄変画像の編集を行う」をご参照ください。

 

■Bチャンネル再建法の弱点とその対策

 ところで、本補正法のメインターゲットは、補正に手こずるやっかいな不均等黄変と、周辺部の青紫抜けの改善にあります。そして、Bチャンネルの再建に主としてGチャンネルの情報を流用します。この結果、ピクセルにおいてBチャンネルの値とGチャンネルの値が近づく傾向にあります。それを少しでも改善しようと近景補正レイヤーと遠景補正レイヤーを分けていますが、それでもまだ問題は残るケースがあります。例えば、本補正法で十分補正できない典型例として肌色や鮮やかな若葉の黄緑色表現があります。肌色の場合基本的に R > G > B の値を取り、かつ中程度の明るさの部分 (グレースケールで100~120前後) でGとBの値の落差が比較的大きいです (一般的に B が G より40~50低い値を取る)。また、新緑の場合、G > R > Bとなり、より鮮やかな新緑ほど、GとRの値が近くなる一方、B値は低くなります。新緑でなくても植物の緑はG > R > B となり、新緑でない場合は G > Rの差がやや開く一方、B とGやRの間隔がやや狭まりますが、G > R > Bという順は基本的に変わりません。しかし、この手法ではGとBの値が近づきますので、肌色や植物の緑はおおむねあまりきれいに出ません。以下に、このように本手法で補正を掛けただけではダメな典型例を掲げます。

 


 この写真は、以下のブログに補正困難な例として掲載されているものを、一旦本ブログで紹介している技法を使って補正を掛けたものです。このブログの筆者のudiさんのご厚意で許可をいただいて掲載しております (再転載はご遠慮ください)。

udimac.livedoor.blog

 オリジナル写真と比較すると、不均等黄変は消えているのはわかりますが、全般的に冴えません。本補正技法の必然的結果としてB値とG値が近接してしまうからです。このような部分については、本技法による補正結果をベースに、筆者が提供している汎用色チャンネルマスク作成ツールを使ったり、あるいはフォトレタッチソフトの色域選択機能とトーンカーブなどの色調補正機能を組み合わせて、個別に補正をかけることになります。ただ一番厄介な不均等黄変は取れていますので、補正作業はだいぶ楽になります。このサンプルではB > Gでなければならない領域と、G > Bでなければならない領域が半々混在しています。本技法を適用しただけではだめで、追加補正、いわばポストプロダクションが必要な典型的ケースです。次回はこの写真を例に、GIMPの色域指定選択機能を使ったポストプロダクション術を徹底解説します。また、汎用色チャンネルマスク作成ツールを使った一般的な追加補正手順は以下の記事をご覧ください。

yasuo-ssi.hatenablog.com

 

 なお、本連載記事で紹介した写真補正技法やソフトウェア (Plug-in) は個人的用途および非営利目的であれば自由に使っていただいて構いませんが、本技法を使って何らかの成果 (編集した写真等) を公表する場合は、本記事で紹介した技法を使った旨クレジットをつけて公表していただくことをお願いします。

 また、私の作成したPlug-inも自由に改変して使用していただいて構いませんが、その成果を公表する場合はご一報下さい (公表しない場合は特に連絡は必要ありません)。またその改良した結果を私の方で自由に利用させていただくこともご了承下さい。

 

f:id:yasuo_ssi:20201101115651p:plain