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

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

darktable における 高ISO画像に対する denoise (ノイズ低減) profileの調整

f:id:yasuo_ssi:20211128195339p:plain

 先日、オリンパス E-5で撮った高ISO画像を darktable その他でノイズ低減処理してみましたが、darktable にノイズ低減用のプロファイルがない E-5 ではNikon D5500 に劣る結果しか得られませんでした。そこで、今回センサーがE-5と同じパナソニックですが、darktableにノイズ低減プロファイルのある E-P3を使って高ISO高ノイズ画像を撮影し、darktableのプロファイルを使ったノイズ低減処理をいろいろ検証したいと思います。

 なお、オリジナルの画像は ISO 6400です。

f:id:yasuo_ssi:20211101090024p:plain

denoise 無効

 まず denoise 無効の状態から。当然ながら非常にざらつきが目立ちます。

f:id:yasuo_ssi:20211101091359p:plain

Olympus Workspace ノイズフィルタ強

 ここで比較のため、純正のOlympus Workspaceを使い、ノイズフィルタ強を掛けてみた結果を示します。デフォルトではノイズフィルたが標準でかかっていますが、強にしてみました(E-5の時はノイズフィルタは標準のままでした)。比較のため darktable に読み込んで提示します。純正ソフトの特徴として、粒子は見えていますが、その粒状が細かくなり、その粒子の大きさも比較的均一という点が挙げられます。粒状の大きさの均一性というのは Nikon の NX Studioによるノイズ低減でも共通していました。粒状が解消されるわけではないのですが、小さく均一な大きさになることにより目立たなくなっています。粒状ノイズは残っていますが、悪い感じではないので、このレベルで割り切るというのも十分あるかと思います。

 

 次にdarktableに読み込みます。denoiseを掛けると、ISO6400のプロファイルがマッチしますと出て、ISO6400のプロファイルが読み込まれます。またノイズ低減方式のデフォルトのモードは非局所平均になりますが、それを非局所平均自動に変えてみたのが下の図です。

f:id:yasuo_ssi:20211101090141p:plain

denoise 非局所平均自動 iso 6400プロファイル適用

 ただ、オリンパス純正のノイズフィルタを強く効かせたものに比べ粒状が粗いです。さらに暗い部分で粒の大きさが不均一で見にくく、オリンパス純正でノイズフィルターを強で掛けたものより劣る結果になってしまいました。ここで強さ (strength) を上げてぼやかすというのもあるのですが、ここでは、適用するプロファイルのISOを1段階上げて8000にしてみました。

f:id:yasuo_ssi:20211101090318p:plain

denoise 非局所平均自動 iso 8000プロファイル適用

 粒状の大きさが不均一な感じはやや残りますが、全般に粒状が細かくなりましたので、目立ちません。粒状自体も、プロファイルを使わない場合に比べて相対的に大きさが整っている印象です。おおむね純正ソフトでノイズフィルターを強めたより、良い印象です。のっぺりしすぎが嫌なら、ここで補正を打ち止め、というのも十分ありかと思います。6400で、強さ (strength) の値を増やして、粒状のぼかしを増やすよりいいと思います。

f:id:yasuo_ssi:20211101090446p:plain

denoise 非局所平均自動 iso 10000プロファイル適用

 掛けるプロファイルのISOをさらに1段階上げて10000にするとさらにスムーズになります。このあたりは細部が失われすぎ、と感じられる方もおられるかと思います。とはいえ、プロファイルがあることで、かなりスムーズに補正できているのは間違いありません。

 ISO6400と言っても今着目している領域はかなり暗い部分なので、この部分のノイズを改善しようとすると、ISO高めのプロファイルを適用するのが妥当なのではないかと思います。

 なお、darktableはモジュールを2重(多重)に掛けるということが可能かつ、それぞれのモジュールにマスクを掛けられますので、暗い部分と明るい部分で掛けるプロファイルを変えてノイズ低減をやる、ということも可能かと思います。

f:id:yasuo_ssi:20211101090828p:plain

denoise 非局所平均自動 iso 8000プロファイル適用
+ astrophoto denoise併用

 さらに、プロファイルを1段階落として、その代わりにastrophoto denoiseを併用してみました。ほぼISO10000のプロファイル適用と同様になりましたが、ISO10000のプロファイル適用の方がスムーズかもしれません。なお、astrophoto denoise のLUMAを上げると、さらにぼけてスムーズになります。

f:id:yasuo_ssi:20211101091039p:plain

denoise 非局所平均自動 iso 10000プロファイル適用
+ astrophoto denoise併用

 さらにiso10000プロファイルにastrophoto denoiseを併用しましたが、これはさすがに細部が失われすぎてやりすぎのような気がします。

 という訳で、ノイズ低減プロファイルが使えるのであれば、darktable の denoise機能はかなり有効であるということが明らかになりました。またD5500での補正結果から、Ver 3.4から3.6.1に変わった際に denoise のアルゴリズムも強化されているのではないかと推測されます。

 なお、Nikon D5500の高ISO Rawファイルで、darktable のノイズ低減プロファイルを使った補正を行った際は、粒状が残ったとしてもかなり均質な感じがあって良い感じでしたが、こちらでは純正ソフトでノイズ低減を掛けた結果より、やや均質感が劣るようです。それでもおそらくプロファイルなしよりはより均質なのではないかと思いますが...  やはり、画素数の少なさ、センサーサイズの小ささなどが影響しているのではないかと思います。以前、D5500の高ISOファイルを darktable 3.4で補正した結果を3.6.1で読み直したときは、かなり目を見張る改善、と思われましたが、今回の結果は、3.4との比較は行っていないものの、かなり良い線を行っているとは思いますが、目を見張る、というほどまではないか、という感じです。ただかなり健闘しているので、やはりフリーのRaw現像ソフトで高ISO画像を扱うなら、denoiseプロファイルが使えるとすれば 、darktable 3.6.1がベストというのは変わらないという印象です。

 なお、上でモジュールを二重に掛けることが可能と述べましたが、以下のように行います。各モジュールの右側に3つアイコンがありますが、そのうち、multiple instance actions というアイコンを使います。

 

f:id:yasuo_ssi:20211101101010p:plain

multiple instance actions

 アイコンの上にカーソルを乗せると、新しいインスタンスには右クリックしろとあるので、右クリックをすると、モジュールが増えます。また左クリックをすると、以下のようにメニューが出て、それ以外の動作 (モジュールの同じ設定での複写、削除、モジュールの位置の変更) が選べます。

f:id:yasuo_ssi:20211101101158p:plain

multiple instance actions (左クリック)

 そして、モジュールごとにマスクを掛ければ、明るいところと暗いところでパラメータを変えて適用する、ということが可能です。

 

 それから denoise のモードを非局所平均ではなく wavelet を使うと、ノイズ低減効果が弱まる場合があります。特にデフォルトのY0U0V0カラーモードではかなり弱まり、ノイズが目立ちます。逆に、denoiseが効きすぎて困る、という場合は waveletをY0U0V0カラーモードで使ってみてください。海外のオンライン・ディスカッションでもそのようなアドバイスが行われています。

f:id:yasuo_ssi:20211101102930p:plain

ノイズプロファイル ISO10000 でモードを wavelet 自動に変更

 かなり、粒状が目立ってしまいました。これを RGBカラーモードに変えると粒状が大幅に改善します。

f:id:yasuo_ssi:20211101102837p:plain

waveletのカラーモードを RGB に変更

 これもなかなか悪くありません。ISO10000プロファイル適用の場合は wavelet の方が非局所平均よりスムーズな印象です。粒状感はかなり減ります。一方、ISO8000のプロファイルでは、非局所平均の方が、粒状感の面で waveletよりは均質な感じがあって好ましいような結果です。やや粒状感を残したいなら、ISO8000のプロファイルで非局所平均モードを使い、若干 strength を上げるぐらいが適切のように思われます。wavelet +rgbカラーモード は粒状をぼかして滑らかにする方向、非局所平均+より高いISOプロファイルは、粒状をより細かくして滑らかにする方向、とまとめても良いかと思います。

 また、大まかな輪郭の維持はwaveletの方が、テクスチャの維持は非局所平均の方が有利なような印象です。この辺りはISOによっても、画像によっても向き、不向きがあると思います。さらにこの効果を追い込むツールがありますので、いろいろ試してみてください。

 因みにwaveletモードのその下のトーンカーブのようなツールですが、

f:id:yasuo_ssi:20211102082426p:plain

wavelet 効果調整ツール

 左の coarse は粒状が「粗い」右の fine は「細かい」、上の smoothは「滑らか (スムーズ)」下のnoisyは「ノイズあり」で、粒状の大きさによって、滑らかにする効果を変える調整ツールです。線を上に持ち上げると滑らかになる効果が上がり、線を下げると、効果も下がってノイズが残ります。ただ滑らかにしすぎるとテクスチャも失われるので、そのあたりは実際の画像を見ながら調整してください。

 なおこの辺りの原理的な話は、以下のページに解説を書きました。ご参照ください。

yasuo-ssi.hatenablog.com

 ここまでの印象としては、高ISO高ノイズ画像に関しては、denoiseプロファイルがあれば、darktable の方が ART より調整の余地や能力が大きいように思いました。またこのプロファイルを使ったノイズ低減という機能が、他ソフトに比べ一歩ノイズ低減の効果を高めているように思います。ただいろいろいじれる分、使い方も難しくなっていきます。最終的には、dtstyle形式のプリセットをいくつか作っておいて、それを好みや画像のパターンに応じて適用する、というあたりが現実的な解決策でしょう。

 とりあえず darktable を使った高ISO高ノイズ画像の、ノイズ低減の調整方針(ノイズ低減プロファイルがある場合)を簡単にまとめてみます。

1. ノイズ低減プロファイルのISOを変えてみる
 より高いISOのプロファイルの方が粒子が小さくなってより滑らかになる

2. モードを非局所平均 <> wavelet + RGBカラーモード で変更してみる
※但しどちらのモードがより良いかは一概に言えず、プロファイルによって左右される。waveletは粒状をぼかして滑らかにする方向。

3. astorophoto denoise の併用を考えてみる
※但し、輪郭が崩れ気味になる場合がある。また滑らかすぎてテクスチャが保持されにくい傾向にある。

 

 そしてさらに一歩踏み込んだ高度な調整として...

4. wavelet + rgbモードを使う場合は、粒状によってスムージングの適用量を変えてみる

5. denoiseモジュールを多重に使い、それぞれに別のマスクを掛け、明るい部分と暗い部分で、denoiseの掛け方を変えて調整する

というあたりでしょうか。

 なお、darktableにおけるマスクの掛け方は、以下のページに解説を書いておきました。よろしければご参照ください。

yasuo-ssi.hatenablog.com

yasuo-ssi.hatenablog.com

-------------

参考サイト

discuss.pixls.us

yasuo-ssi.hatenablog.com