デジタル画像処理入門 by maznaga 2008.5.15
 2.8 シャープネスフィルター

 画像をシャープにするにはシャープフィルターとアンシャープマスクを使う方法があります。シャープフィルターはエッジを強調する小さなマトリックスを使って画像全体に折りたたみ(Convolution)計算を行い、色変化が急勾配になるように調整するフィルターです。(GIMPメニューのフイルター=>汎用=>カスタムでマトリックスが表示されます。たとえば中央の数字を5にし、上下左右を−1にすれば中央の色数字を5倍にし、上下左右の色数字を引算します。)。しかし このフィルタは輪郭のみならず徐々に移る色変わりの部分にノイズを発生させます。これに対してアンシャープマスクは色の変化部分だけを抽出し、それをマスクとして元の画像に操作することでエッジを強調する方法です。

色の変化部分だけを検出しする方法として、元の画像とぼかした(アンシャープ操作)画像の差を演算します。差のないところはゼロ(黒)となり差のあるところが色つきとなります。これをマスクとして元の画像に加算してエッジを強調する方法です。この演算でぼかしの範囲をピクセルで、加算するかしないかの差限界値と加算するときの感度倍率をセットします。

GIMPにはレイヤーの差分と加算の操作があるのでアンシャープマスクがどのよう作られ、どうのように適用されるかを見てみましょう。まず図1の原画像を二つレイヤーに複製しておき、ガウシアンぼかしを30ピクセルで操作したものが図2です。次にレイヤー間で(原画ーぼかし)の差分演算を行い、そのレイヤーを結合しマスク画像を作ります。それを図3のようにトーンカーブで4倍に増感します。でき上がったマスクが図4です。これをレイヤー間演算で原画に加算したものが図5です。以上がアンシャープマスクの仕組みですが少し極端になってしまいました。それでこの仕組みとは別に図6の画像をアンシャープネスマスクをぼかし2px,重み、感度1.5で作ってみました。

1.元の画像 2.ガウシアンぼかし画像(30px)
3.(元画像ー30pxぼかし画像)x4倍増感 4.アンシャープマスク
 
レイヤーを複製演算    トーンカーブで増感
5.元画像にアンシャープマスクを加算 6.元画像に感度1.5でアンシャープマスクを適応

アンシャープマスクの仕組みをレイヤー演算で試みましたが、実際のアンシャープマスクには図6のように、レイヤー操作は必要ありません。フイルターツールから選ぶだけでよいのです。ただし上記図4のようにマスクを作れば、部分強調はマスクを筆ツールで修正することでも可能になります。

参考1:Adobe Photoshop ではさらに画像をシャープにする優れたやり方が可能です。Adobe PhotoShopでは画像をRGB空間からLabカラー空間に変換ができます。Labカラー空間では色をあらわすαとβチャネルのほかに色と関係なく濃淡だけのLチャネルがあります。これを利用してLチャネルだけにアンシャープマスクを適応し、αとβチャネルには色変化をスムースにするためにガウシアンぼかしを適応します。最後にそれらのチャネルを合成してからRGB空間に変換します。(PhotoshopElementsにはLab空間はありません)

参考2:Photoshop CS2からはフイルター=>シャープのメニューにスマートシャープが加わりました。またGIMPにもRewfocusのプラグインをフイルターメニューに追加できます。これらはアンシャープマスクよりさらに有効だといわれています。

始に前へ