すでに、不十分ながらもカラーネガの光被り補正プログラムは作成しています。この場合、主にRチャンネルが光被りで明るくなるので、そこにGチャンネルのデータをミキシングして補正を試みるということをやってみました。
しかし、モノクロ画像に関しては1チャンネルしかないので、他チャンネルの情報を活用することができません。
それでとりあえずマニュアルでの補正を試みました。材料とした画像は、すでに公開した写真ですが、以下の写真です。
後ろの方と、運転台付近がうっすら光被りしています。これを補正しようとしましたが、かなり悪戦苦闘することになりました。
まず、考えたのは、下のページでお示しした。カビ取り技法の応用です。
yasuo-ssi.hatenablog.com ただ、明るくなったところを透過させるマスクを掛けて、そこの明度を引き下げていくと、マスクを掛けた部分のテクスチャが結構のっぺりとしてしまいます。
そこで、マスクを掛けた部分の明度をトーンカーブで引き下げるのではなく、そこにオリジナル画像を暗くした画像にマスクを掛けるようにしてみました。
すると少しはましになります。ただ場所場所によってマスクの基準となる明るさを変えたマスクを掛ける必要があります。上の図の場合、腰板の部分は補正されましたが、床下はうまくいっていません。明るさを変えた画像と、マスクを組み合わせた補正レイヤーを重ねていく必要があります。なお、最初は手動で明るさを変えた画像を作っていますが、面倒になったので、前回紹介した複数の明るさの画像を作るImageJ用のツールも作りました。
場所によってはマスクを使わず、下記の技法に倣った部分もありました。
yasuo-ssi.hatenablog.com つまり似たようなコンテクストの健全な部分を、光被りの影響の出た部分に貼り付けてしまうというものです。時にやや暗くした画像を健全なコンテキストの代わりに貼り付けた場合もあります。
ただ、明るくなった部分を単純に暗くするだけで、元のコンテキストがきちんと再現するかというとそうとも言えません。場合によると暗くしては見たもののかなり画像が荒れるケースがあります。例えば下図の場合、暗くした画像を貼り付けてみましたが、コンテクストがかなりのっぺりしてしまっています。
例えば、上図の場合、プレスドアのプレスのテクスチャがかなり失われてしまっています。しょうがないので、2番目のドアのプレスの部分をコピーして貼り付けようとしますが、当然遠近が違いますので、大きさが合いません。
この場合は、レイヤーの拡大縮小を使ってサイズを調整し...
さらに、レイヤーの角度も回転で調整します。
そしてレイヤーの不透明度も調整します。
かなりでっち上げで、細部を細かく見ると粗が見えますが、やや遠くから見る分には誤魔化せます。いわば手動の画像レジストレーションのようなことをやっています。
あとは必要に応じてResynthesizerのスマート消去を使ったりとか、かなり大変です。まだ光被りがはっきり分かりますが、一応下の図の程度には誤魔化しました。
しかしとても手法を標準化できません。いろいろな手法を場所に応じて総動員する必要があります。時間も数時間かかる覚悟がいります。