[[cg:start|CG用語集トップ]] > [[cg:image_processing:start|第5章 画像処理]] ====== 非線形フィルタ ====== ===== 概要 ===== 非線形フィルタは、周辺画素の[[cg:image_processing:pixel_value_no282|画素値]]を単純な加重和ではなく、並べ替え、比較、選択などによって処理するフィルタである。代表例は[[cg:image_processing:median_filter|メディアンフィルタ]]で、注目画素の周囲の値を並べ、その中央値を出力に使う。[[cg:image_processing:linear_filter|線形フィルタ]]では表しにくいノイズ除去や特殊な画像加工に使われる。 ===== 詳しい説明 ===== 線形フィルタは、係数を掛けて足すという計算で出力を決める。一方、非線形フィルタは値の順序や条件によって出力を決めるため、同じ入力値の組でも処理の考え方が異なる。メディアンフィルタでは、極端に明るい点や暗い点があっても、並べた中央の値を採用するため、点状ノイズの影響を受けにくい。輪郭を保ったままノイズを抑えたい場合などに有効だが、処理の性質はフィルタの種類によって大きく変わる。 ===== CG制作との関係 ===== CG制作では、スキャン画像や写真素材の細かいノイズを抑えるときに非線形フィルタの考え方が役立つ。単純なぼかしでは輪郭まで弱くなることがあるが、メディアンフィルタのような処理では、孤立したノイズを減らしながら形の境界を比較的残しやすい。 ===== ゲーム開発との関係 ===== ゲーム開発では、カメラ入力や生成画像を扱う処理、ノイズを含むマスク画像の補正などで非線形フィルタが使われることがある。リアルタイムに使う場合は、並べ替えや比較のコストが線形フィルタより高くなることに注意する。 ===== 制作・実装での例 ===== 3×3範囲のメディアンフィルタでは、9個の画素値を小さい順に並べ、5番目の値を出力する。このように、係数を掛けて合計するのではなく、値の選択で結果を決める点が非線形フィルタの特徴である。 ===== 検定対策ポイント ===== 非線形フィルタは、加重和で表せないフィルタである。検定では、[[cg:image_processing:linear_filter|線形フィルタ]]と[[cg:image_processing:median_filter|メディアンフィルタ]]の違いを押さえる。中央値を使う処理は非線形フィルタである。 ===== 関連用語 ===== * [[cg:image_processing:spatial_filtering|空間フィルタリング]] * [[cg:image_processing:linear_filter|線形フィルタ]] * [[cg:image_processing:median_filter|メディアンフィルタ]] * [[cg:image_processing:smoothing|平滑化]] * [[cg:image_processing:edge_no309|エッジ]] * [[cg:image_processing:edge_extraction_filter|エッジ抽出フィルタ]] * [[cg:image_processing:pixel_value_no282|画素値]] ===== タグ ===== * CGエンジニア検定 * 第5章 ---- [[cg:image_processing:start|← 第5章 画像処理 の目次に戻る]] [[cg:start|← CG用語集トップに戻る]]