[[cg:start|CG用語集トップ]] > [[cg:image_processing:start|第5章 画像処理]] ====== 線形フィルタ ====== ===== 概要 ===== 線形フィルタは、周辺画素の[[cg:image_processing:pixel_value_no282|画素値]]に一定の係数を掛け、その和で出力画素を決める[[cg:image_processing:spatial_filtering|空間フィルタリング]]である。画像全体を明るくする処理ではなく、注目画素の近くにある画素を使って、ぼかし、ノイズ低減、輪郭の強調などを行う。計算規則が加算と定数倍で表せるため、処理の意味を数式やフィルタ係数として整理しやすい。 ===== 詳しい説明 ===== 線形フィルタでは、注目画素を中心とした小さな範囲を取り出し、各画素に係数を掛けて合計する。係数の並びをフィルタやカーネルと呼び、係数の設計によって処理の性質が変わる。たとえば、すべての係数を均等にすると[[cg:image_processing:averaging_filter|平均化フィルタ]]になり、中心付近を重くすると[[cg:image_processing:weighted_averaging_filter|加重平均化フィルタ]]や[[cg:image_processing:gaussian_filter|ガウシアンフィルタ]]に近い考え方になる。一方、値の大小関係で出力を決める[[cg:image_processing:median_filter|メディアンフィルタ]]は線形フィルタではない。 ===== CG制作との関係 ===== CG制作では、レンダリング画像やテクスチャにぼかしを加えたり、細かいノイズを目立ちにくくしたりするときに線形フィルタの考え方が使われる。フィルタ係数を変えることで、滑らかな画像にする処理と、輪郭を目立たせる処理の両方に応用できる。 ===== ゲーム開発との関係 ===== ゲーム開発では、ポストエフェクト、影のぼかし、低解像度画像の補正、画面全体のフィルタ処理などで線形フィルタの考え方が現れる。リアルタイム処理では、処理品質だけでなく、参照する画素数と計算回数による負荷も重要である。 ===== 制作・実装での例 ===== 3×3のフィルタなら、注目画素と周囲8画素を読み取り、それぞれに係数を掛けて合計する。係数の合計を1にしておくと、画像全体の明るさを大きく変えずにぼかしをかけやすい。 ===== 検定対策ポイント ===== 線形フィルタは、画素値の加重和で出力を決めるフィルタである。[[cg:image_processing:nonlinear_filter|非線形フィルタ]]との違いは、中央値や最大値のような選択処理ではなく、係数を掛けて足す処理で表せる点である。 ===== 関連用語 ===== * [[cg:image_processing:spatial_filtering|空間フィルタリング]] * [[cg:image_processing:nonlinear_filter|非線形フィルタ]] * [[cg:image_processing:smoothing|平滑化]] * [[cg:image_processing:averaging_filter|平均化フィルタ]] * [[cg:image_processing:weighted_averaging_filter|加重平均化フィルタ]] * [[cg:image_processing:gaussian_filter|ガウシアンフィルタ]] * [[cg:image_processing:gradient_filter|微分フィルタ]] * [[cg:image_processing:sobel_filter|ソーベルフィルタ]] * [[cg:image_processing:pixel_value_no282|画素値]] ===== タグ ===== * CGエンジニア検定 * 第5章 ---- [[cg:image_processing:start|← 第5章 画像処理 の目次に戻る]] [[cg:start|← CG用語集トップに戻る]]