写真道>機材活用
<前 次>

Photoshopで高感度ノイズの低減を

Photoshopの標準機能で、ノイズを低減したい

 以前、OLYMPUS Viewerにオプションとして含まれるノイズフィルタの効果を調べました。ノイズ低減の効果はあるものの、効き具合を変更できません。そのため、ISO 400で撮影した画像なら大丈夫ですが、ISO 800以上で撮影した画像には効果が不足していました。

 より大きなノイズ低減効果を求めるなら、Photoshop CSに付属のCamera Rawを使って現像します。しかし、生成されたJPEG画像の色は、E-1本体やOLYMPUS Viewerの生成画像より劣ります。できれば使いたくない方法です。

 別な方法として、外部のノイズ低減ソフトが考えられます。中には非常に優秀なソフトもあり、劇的な低減効果が得られます。これなら、E-1やOLYMPUS Viewerで生成したJPEG画像に使えるため、もともとの素晴らしい色を失わないで済みます。ただし、そのソフトのほとんどがWindows用なので、私のようなMac使いには役立ちません。また、優秀なソフトほど有料ですし。

 色々と悩んでいるうちに、別な方法を思い付きました。Photoshopの標準的な機能で、ノイズを低減する方法です。その方法を、簡単に紹介しましょう。

Labカラーに変換してノイズを減らす

 まず最初に、Photoshopを用いたノイズ低減の考え方を取り上げます。簡単に言うと、Labカラーに変換してノイズを減らす方法です。

 我々が普段使う画像ファイルは、カラーモデルがRGBカラーです。デジカメが生成するJPEG画像も、このカラーモデルを用いてます。このモデルが選ばれているのは、コンピュータ上で画像データを扱いやすいからでしょう。

 色を表すカラーモデルには、RGBカラー以外に何種類かあります。その代表格がLabです。輝度(明暗)を表すLに加え、色を表すaとbという値で色を表現します。この形式で大事なのは、輝度を表すLが独立している点です。

 デジカメを高感度で撮影したノイズは、輝度と色として現れます。また、ノイズ低減の基本は、画像をぼかすことです。RGBカラーでぼかすと、色と輝度の両面からぼかすことになります。しかし、Labカラーに変換すれば、輝度と色を別々にぼかせます。輝度と色で、ぼかし具合を変えることが可能なのです。

 輝度と色では、画像に与える効果が異なります。輝度は、解像感を決める要素であり、大きくぼかすほど解像感が低下します。色は、色を決める要素であり、大きくぼかしても解像感があまり低下しません。

 高感度ノイズの中には、1ピクセルだけ周囲と異なる色になるものもあります。こうしたノイズは、輝度を変えずに色だけぼかすことで、効果的に取り除けます。輝度を変えないので、解像感がほとんど低下しません。実際には、輝度に含まれるノイズもあるため、輝度も少しぼかす必要があり、最終的な解像感は低下します。

 つまり、輝度情報であるLレイヤーを少しぼかし、色情報であるaとbのレイヤーを強くぼかして、解像感を低下させずにノイズを減らそうという方法です。どの程度ぼかすかは、画像に含まれるノイズの特徴によって決まります。そのため、得られる効果も様々ですが、RGBカラーでぼかすよりは良い結果が得られるはずです。

余計な画質低下を防ぐために、各色16ビットで作業

 具体的なノイズ低減方法を採り上げる前に、Labカラーで作業するときに大事な点に触れておきます。今回のような作業では、RGBカラーからLabカラーに変換したり、その逆に変換して戻したり、各種フィルターを加えたり、レベル補正したりします。このように何度も加工する場合は、加工による演算の誤差が無視できません。何しろ、各色256階調しかないのですから。

 こうした影響を少しでも減らすためには、各色8ビットの画像データを、各色16ビットに変換して加工します。Photoshop CSになって、各色16ビットに対応する機能が増えたため、こうした方法が容易になりました。

 具体的な作業手順としては、まず最初に各色16ビットへ変換します。最終的には各色8ピットへ戻すのですが、それを一番最後に実行することで、演算の誤差を最小限にします。その途中には、いろいろな処理でノイズを減らしたり、レベル補正で画像を整えたりします。整理すると、次のような流れになります。

・各色8ビットを16ビットに変換
     ↓
・RGBカラーをLabカラーに変換
     ↓
・< いろいろ:ノイズを減らす処理 >
     ↓
・LabカラーをRGBカラーに戻す(変換)
     ↓
・< いろいろ:RGBカラーでの補正:レベル補正など >
     ↓
・各色16ビットを8ビットに戻す(変換)

 この中で、レベル補正のように、RGBカラーで実行しなければならない処理は、RGBカラーに戻した後で実行します。それらも、各色16ビットカラーで行なった方が良いので、8ビットへ戻すのは一番最後となります。

 以上の流れは、最終的にJPEGで保存することを前提としています。JPEGが各色16ビットで保存できないため、各色8ビットに戻すわけです。でも、Photoshop書類のままで構わないなら、各色16ビットで保存できます。画質を優先する人は、オリジナルをPhotoshop書類として保存し、ウェブ用などに使う画像は、JPEGで別名保存するとよいでしょう。

ぼかし具合による、画像の違いを調べる

 Photoshop CSには、ぼかし用のフィルタが何種類も含まれています。このうち今回は、「ぼかし(ガウス)」だけを用いました。効果を数値で変えられるとともに、ぼかした様子が自然になるからです。

 ぼかしの大きさによる画質の違いを調べるために、複数のぼかし具合でどのようになるか調べてみました。より大きくぼかしたいaとbのレイヤー(色情報)では、ぼかしの値を2、4、8と変化させます。より小さくぼかしたいLレイヤー(輝度情報)では、0.5、1、2と変化させます。また、両方のレイヤーとも、ぼかしフィルタを使わない条件も含めます。

 こうして処理した結果を表で整理すると、次のようになります。横軸がLレイヤーの変化、縦軸がa&bレイヤーの変化です。用いた画像は、E-1のISO 800で撮影したもので、ピクセル等倍の表示です。

ab
L(無修正)
L(ガウズ0.5)
L(ガウズ1.0)
L(ガウズ2.0)


2
4
8

 見て分かるように、画像全体の解像感はLレイヤーで決まります。Lレイヤーを大きくぼかすほど、解像感が低下していきます。その代わりに、輝度に含まれるノイズも減っていきます。解像感と輝度ノイズは、トレードオフの関係にあります。

 aとbのレイヤーをぼかすと、ある程度で色ノイズが消えます。今回のサンプルでは、値が2になると消えました。それ以上ぼかしても、色が混ざって薄くなるだけですから、意味がなさそうです。面積が狭い箇所では、色がほとんど消えてしまいました。以上を整理すると、次のような特徴が見えてきます。

・Lレイヤーをぼかすほど、解像感が低下する
・Lレイヤーをぼかすほど、輝度に含まれるノイズが減る
・a&bレイヤーをぼかしていくと、ある程度で色ノイズが消える
・a&bレイヤーをぼかすと、面積が狭い箇所の色が消える

 これらを参考にすると、ノイズの上手な消し方が求められそうです。

より色が乗った箇所を見てみると

 ぼかしたときの特徴をもっと調べるために、同じ画像の別な箇所も見てみましょう。今度は、色がハッキリと乗っている箇所です。前の表と同じように並べると、次のようになります。

ab
L(無修正)
L(ガウズ0.5)
L(ガウズ1.0)
L(ガウズ2.0)


2
4
8

 前の箇所で挙げてない特徴だけを、簡単に取り上げましょう。aとbのレイヤーを大きくぼかすほど、色が薄くなっているのが分かります。面積の狭い箇所では色がほとんど消えましたが、広い箇所でも影響を受け、色が薄くなってます。

 ぼかし(ガンマ)で設定したのは、どれも小さい値です。この程度の値では、形が完全になくなるようにはぼけないみたいです。芯を残してぼける感じなので、輪郭が不明確になったように見えます。形がなくならないので、少しぐらい大きな値に設定しても大丈夫そうです。以上を整理すると、次の特徴が加わります。

・a&bレイヤーを大きくぼかすと、色が薄くなる
・全レイヤーとも、数値を極端に大きくしない限り、芯を残してぼける

 前回の一覧にこれらを加えたものが、Labカラーでのぼかしを利用した、ノイズ低減効果の特徴となります。

ISO 100の画像と比べてみると

 ぼかした画像を表の形で並べたものを見る限り、今回のサンプル画像に対するノイズ低減に関しては、次の設定が最適だと思われます。Lレイヤーの設定値は0.5、aとbレイヤーが設定値は2.0が。

 これらISO 800画像の補正前と補正後に加え、ISO 100の画像を並べてみましょう。そうすれば、ノイズ低減の効果が見えてきます。最初の箇所では、次のようになります。

ISO 100
ISO 800 補正前
ISO 800 補正後
 L(ガウス0.5)
 a&b(ガウス2)

 全体の解像感は低下してますが、ノイズはまあまあ減っています。ノイズをもっと減らすことも可能ですが、代わりに解像感が低下します。この辺の味付けは、好みで決めるしかないでしょう。もう1つの箇所も、同じように並べました。

ISO 100
ISO 800 補正前
ISO 800 補正後
 L(ガウス0.5)
 a&b(ガウス2)

 こちらも、補正によりノイズは減っていますが、全体がぼけた感じになってます。ぼかしを使っている以上、仕方のない結果です。色が薄くなることに関しては、それほどでもありません。ノイズが多くないので、ぼかし具合が大きくないためでしょう。もっと高感度で撮影した画像なら、ノイズが多いので大きくぼかす必要があり、色はかなり薄くなるはずです。

個々の画像に最適なノイズ低減設定を、見付け出す手順

 今回の実験により、Labカラーでのノイズ低減効果が、かなり使えると判明しました。ただし、前述のような画像一覧表を毎回作るのは大変です。もっと簡単に最適な補正値が見付けられる方法が必要でしょう。

 というわけで、最適な設定値を見付けだすための手順を作ってみました。次のような手順で作業を進めると、寄り道せずに最適値が求まるはずです。

・Lレイヤーを非表示に
     ↓
・a&bレイヤーに、最適な「ぼかし(ガウス)」を探す(試行錯誤)
     ↓
・Lレイヤーを表示させる
     ↓
・Lレイヤーに、最適な「ぼかし(ガウス)」を探す(試行錯誤)
     ↓
(RGBからに戻してから)
・レベル補正や彩度補正などで、薄くなった色を濃くする

 大事な点だけ、簡単に補足しましょう。まず最初に、aとbのレイヤーでの最適値を求めます。輝度情報が邪魔になるので、レイヤーパレットを操作して、Lレイヤーを非表示にします。その後、aとbのレイヤーに「ぼかし(ガウス)」フィルタを試し、最適なぼかし具合を求めます。操作を取り消すための機能を使って、フィルタ適用前の状態に戻しながら、試行錯誤するとよいでしょう。

 aとbのレイヤーの最適値が求まったら、Lレイヤーを表示させます。今度は、Lレイヤーの最適値を求めるために、「ぼかし(ガウス)」フィルタで試行錯誤します。解像感とノイズ感はトレードオフの関係にあるので、補正後の画像を見ながら、自分の好みの設定を探します。

 最適値を上手に見付けるためには、ノイズが目立つ箇所(ノイズが消えてほしい箇所)をピクセル等倍で表示したまま、作業するのが一番です。ぼかした効果が明確に分かりますから、最適値を求めやすいでしょう。

 ノイズ低減の補正を大きく加えるほど、どうしても色が薄くなります。少しでも良い画像に近づけるためには、レベル補正や彩度補正などで整えなければなりません。レベル補正はLabカラーのままでは使いにくいので、RGBカラーに戻してから行ないます。

凝った方法ではないが、実用性は十分

 今回のノイズ低減方法は、それほど凝ったものではありません。でも、かなり実用的に使える方法だと感じました。この方法の良い点を挙げるなら、次のようになるでしょう。

・個々の画像に適した補正ができる
・解像感とノイズ感のバランスを、自分の好みで選べる

 それと、注意点を1つだけ。ピクセル等倍で表示させながら作業すると、どうしてもノイズを多めに減らしたくなります。最終的に印刷するなら、細かなノイズはあまり目立たなくなるものです。解像感を大きく低下させるほどノイズを減らすよりも、ノイズを少し残して解像感を確保した方が、印刷した画像は良くなるでしょう。この辺のバランスは、実際に印刷した結果を見ながら判断してください。

 ここまでの話は、今回の方法の基本です。実は、もう少し工夫するオプションもあります。整理する時間ができたときにでも、追加したいと思います。

(作成:2004年8月11日)
<前 次>