pnmnlfilt から派生したプログラムであり、 平滑化とノイズ除去とシャープ化強調の各機能を合わせもっています。 選択範囲ではなくレイヤー全体で作用します。
は Unix 系のThis is something of a swiss army knife filter. It has 3 distinct operating modes. In all of the modes each pixel in the image is examined and processed according to it and its surrounding pixels values. Rather than using 9 pixels in a 3×3 block, it uses a hexagonal block whose size can be set with the Radius option.
This filter is found in the main menu under
→ → .The filter does not work if the active layer has an alpha channel. Then the menu entry is disabled.
プレビュー オプションを有効にしておれば画像に実際にフィルターをかける前からダイアログ上で調節したとおりに即座に効果のようすが見て判るようになっています。
The Operating Mode is described below.
フィルターの適用量を調節できます。 指定できる範囲は 0.00 から 1.00 です。 この値の具体的な意味は選択される操作モードによって変化します。 ちなみにこのパラメーターは pnmnlfilt プログラムで使われる alpha
と関係があるものの同一ではありません。
Controls the size of the effective sampling region around each pixel. The range of this value is 0.33-1.00, where 0.33 means just the pixel itself (and thus the filter will have no effect), and 1.00 means all pixels in the 3×3 grid are sampled.
このフィルターはいろいろな互いに異なる機能をもっています。
中央の画素の値が六角形内の 7 個の画素の値の平均値で置き換えられることになっていますが、 7 つの値はその大きさ順に並び換えられ、 その先頭と最後の「アルファ
」の部分が平均から除外されます。 つまりこれは「アルファ
」に 0.0 を設定すれば「半径
」がフィルター強度を司る (平均化とか平滑化のような) 標準的コンボリューションの出力と同じことになります。 このフィルターをちょっとだけかけたいときは「アルファ
」 = 0.0、 「半径
」 = 0.55 の設定から始めましょう。 派手にかけたいときは「アルファ
」 = 0.0、 「半径
」 = 1.0 と設定してみましょう。
「アルファ
」の設定値を 1.0 としたときは六角形内の周辺 7 個の画素の値の中間値が中央の画素の値に置き換わります。 このようなフィルターなら画像の突出した汚れや 1 画素だけのノイズを、 薄く撒き散らしたりぼかしてにじませることなく取り去るのに適します。 慎重に「半径
」パラメーターを扱えばフィルターを精密に調節できます。
中間的な値を「アルファ
」に設定したときは平滑化効果と突出ノイズの除去効果の折衷的なはたらきをします。 このようなフィルターをちょっとだけかけたいときは「アルファ
」 = 0.8、 「半径
」 = 0.6 の設定から始めましょう。 派手にかけたいときは「アルファ
」 = 1.0、 「半径
」 = 1.0 と設定してみましょう。
このような型のフィルターは画像に適応した平滑フィルターの効果を与えます。 画素をひとつずつ辿りその周囲の六角形の範囲内の値を計算してこれに反比例する値を平滑化する量とします。 これはばらつきが小さければ画像にノイズがあるものと考え、 ばらつきが大きければ画像の「あるべき」様相が反映したものと考えるやり方です。 いつも通り「半径
」パラメーターが効果を調節するのに使えますが、 ばらつきの計算が意味のある値になるよう 0.8 から 1.0 の間の値にとどめておいた方がよさそうです。 「アルファ
」パラメーターはノイズのしきい値を設定し、 この値を下回ると平滑化が起こるようになります。 つまり「アルファ
」に小さな値を設定するとフィルターの効果はかすかなものとなり、 大きな値を設定すると画像全部が平滑化されそうになります。 まずは「アルファ
」 = 0.2、 「半径
」 = 1.0 ぐらいの値からはじめ、 徐々に「アルファ
」パラメーターを増減して望みの効果が得られるのを探ってみるとよいでしょう。 この型のフィルターはビットマップやカラー画像のディザリングノイズをとり除くのに最適です。
これは平滑化フィルターとは逆の型です。 画像状の物体の縁を強調します。 「アルファ
」パラメーターが縁強調の量をちょっとだけ (0.1) から派手 (0.9) までの範囲で調節します。 「半径
」パラメーターはいつも通り効果調整の役割を担いますが、 有効な値は 0.5 から 0.9 までです。 まずは「アルファ
」 = 0.3、 「半径
」 = 0.8 の値から始めてみましょう。
操作モードは画像に望ましい結果が出るまでいろいろ変えて重ねて利用できます。 たとえばディザリングがかかったモノクロ画像をグレースケール画像に変えたければ、 平滑化フィルターにして 1 回か 2 回通し、 最適化フィルターをかけたうえで、 ちょっとだけ縁を強調するのです。 ちなみに縁強調は非線形フィルターの他の機能 (「透明度を用いた平均」か「最適化」) を実行したあとだけしか効果がないようです。 というのも縁強調は平滑化の対極にある機能だからです。
色の量子化ノイズ (.gif
ファイルを 24 ビット RGB 画像に変換した場合に発生します) を低減させるには「最適化」フィルター (「アルファ
」 = 0.2、 「半径
」= 1.0) に通し、 折衷型フィルター (「アルファ
」 = 1.0、 「半径
」 = 0.55) に通し、 必要なら「縁強調」フィルターに通してみてはどうでしょう。 最適化フィルターは始めから「アルファ
」に大きな値を設定して一度に済ませるのではなく、 徐々に「アルファ
」の設定値を減らしながら何度か通してやるともっと効果が高まります。 よくあることですが、 フィルターの効果が増すと画像の細部が損なわれてしまう相反関係になっています。 実験されることを推奨します。