画像処理 05. Filters フィルタ

13  Download (0)

Full text

(1)

画像処理 05. Filters フィルタ

金 帝演

目次

What is a Filter?

Linear Filters

Formal Properties of Linear Filters

Nonlinear Filters

2020/11/20 jykim 2

線形フィルタの種類 Types of Linear Filter )

 線形フィルタの効果はフィルタマトリクスによって決定 されるために無数の線形フィルタが存在

 平滑化フィルタ

ボックスフィルタ(Box filter)

ガウシアンフィルタ(Gaussian filter)

差分フィルタ(Difference filter)

ボックスフィルタ( Box filter )

 一番簡単なフィルタ

 最適な平滑化フィルタとしては 程遠い

周波数空間での粗い処理

Sharp cutoff

(2)

ガウシアンフィルタ( Gaussian filter )

2

次元ガウス関数に対応する 平滑化フィルタ

𝜎

は標準偏差(釣鐘型関数の幅)

𝑟

は中心からの距離(半径)

 中心ピクセルが最大の重み

 離散フィルタ行列が十分大きい 場合はアナログガウスフィルタと 等方性を持つ

Box filterより優秀

2020/11/20 jykim 5

差分フィルタ( Difference filter )

, ∈

, ∈

𝑅

𝐻 𝑖, 𝑗 0

𝑅

𝐻 𝑖, 𝑗 0

 ラプラスフィルタ(

Laplace filter

 エッジ検出と画像鮮鋭化に利用

2020/11/20 jykim 6

線形フィルタの特性

(Formal Properties of Linear Filters)

 線形畳み込み(Linear Convolution)

 線形畳み込みの特定

Properties of Linear Convolution

 線形フィルタの可分性(

Separability of Linear Filter

 フィルタのインパルス応答

Impulse Response of a Filter

線形畳み込み( Linear Convolution )

 同じ次元の2つの関数の結合

 畳み込み演算

 フィルタ適用での式

5.5

と一致

𝐼 𝑢, 𝑣 𝐼 𝑢 𝑖, 𝑣 𝑗 · 𝐻 𝑖, 𝑗 5.14

*

は畳み込み演算子)

𝐼 𝑢, 𝑣 ← 𝐼 𝑢 𝑖, 𝑣 𝑗

, ∈

· 𝐻 𝑖, 𝑗 5.5

(3)

線形畳み込み( Linear Convolution )

 式

5.5

との違い

総和における変数

𝑖, 𝑗

の範囲

𝐼 𝑢 𝑖, 𝑣 𝑗

の座標系における負の符号

2020/11/20 jykim 9

𝐼 𝑢, 𝑣 𝐼 𝑢 𝑖, 𝑣 𝑗 · 𝐻 𝑖, 𝑗

, ∈

𝐼 𝑢 𝑖, 𝑣 𝑗 · 𝐻 𝑖, 𝑗

, ∈

𝐼 𝑢 𝑖, 𝑣 𝑗 · 𝐻

𝑖, 𝑗

, ∈

5.16

180回転

線形畳み込みの例

2020/11/20 jykim 10

線形畳み込みの特性

Properties of Linear Convolution

 可換性(Commutativity)

 線形性(

Linearity

 連想性(Associativity)

線形フィルタの可分性

(Separability of Linear Filter )

 が複数のカーネルの畳み込みカーネルの場合

 フィルタ操作 は

(4)

x/y- 可分性

 フィルタは1次元カーネル と で構成されている 場合

 画像 にフィルタを適用した場合

2020/11/20 jykim 13

𝐻 1 1 1 1 1 𝑎𝑛𝑑 𝐻 1 1 1

𝐻

分離可能なガウシアンフィルタ

 フィルタ関数 が つの 次元関数の外積で 表現可能であれば2次元フィルタは分離可能

2次元ガウシアン関数

2次元ガウシアンフィルタ

,

1次元ガウシアンフィルタ

, , により実現可能

2020/11/20 jykim 14

, , ,

フィルタのインパルス応答

Impulse Response of a Filter

 線形畳み込みは2つの関数を含むバイナリ演算で あり、単位元(

Neutral element

)を持つ

 インパルス(Impulse)またはDirac関数

インパルス応答

 関数をフィルタカーネルとして利用した場合、

その結果は入力画像(元画像)そのまま

入力

(5)

インパルス応答

 入力関数がインパルス の場合、フィルタ操作後の 結果はフィルタ そのまま

2020/11/20 jykim 17

入力

線形フィルタ

 平滑化またはノイズ除去時に画像の品質を均等に 低下

 特にノイズ除去のために利用

2020/11/20 jykim 18

線形フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I H

1    1    1    1    1

線形フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=(0*1+0*1+0*1+0*1+0*1)/5 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

(6)

線形フィルタ適用の例(インパルス)

2020/11/20 jykim 21

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

0=(0*1+0*1+0*1+0*1+0*1)/5 1    1    1    1    1

線形フィルタ適用の例(インパルス)

2020/11/20 jykim 22

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

2=(0*1+0*1+0*1+0*1+10*1)/5 1    1    1    1    1

線形フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

4=(0*1+0*1+0*1+10*1+10*1)/5 1    1    1    1    1

線形フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

4=(0*1+0*1+10*1+10*1+0*1)/5 1    1    1    1    1

(7)

線形フィルタ適用の例(インパルス)

2020/11/20 jykim 25

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

4=(0*1+10*1+10*1+0*1+0*1)/5 1    1    1    1    1

線形フィルタ適用の例(インパルス)

2020/11/20 jykim 26

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

4=(10*1+10*1+0*1+0*1+0*1)/5 1    1    1    1    1

線形フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

2=(10*1+0*1+0*1+0*1+0*1)/5 1    1    1    1    1

線形フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

0=(0*1+0*1+0*1+0*1+0*1)/5 1    1    1    1    1

(8)

非線形フィルタ( Nonlinear Filters )

 元のピクセル値がいくつかの非線形関数によって 結合される場合、そのフィルタを「非線形フィルタ」と 呼ぶ

 最大値と最小値フィルタ(

Max and Min Filter

 メディアンフィルタ(

Median Filter

 重み付けメディアンフィルタ(Weighted Median Filter)

2020/11/20 jykim 29

最大値と最小値フィルタ

Max and Min Filter

 一番簡単な非線形フィルタ

ここで、Rはフィルタの領域

2020/11/20 jykim 30

最小値フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I H

1    1    1    1    1

最小値フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,0,0) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

(9)

最小値フィルタ適用の例(インパルス)

2020/11/20 jykim 33

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,0,0) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(インパルス)

2020/11/20 jykim 34

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,0,1) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,1,1) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(インパルス)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,1,1,0) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

(10)

最小値フィルタ適用の例(インパルス)

2020/11/20 jykim 37

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,1,1,0,0) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(ステップ)

2020/11/20 jykim 38

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,0,0) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(ステップ)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,0,0) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(ステップ)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,0,10) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

(11)

最小値フィルタ適用の例(ステップ)

2020/11/20 jykim 41

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,0,10,10) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(ステップ)

2020/11/20 jykim 42

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,0,10,10,10) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(ステップ)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

0=min(0,10,10,10,10) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

最小値フィルタ適用の例(ステップ)

10

0    0    0    0    0    0    1    1    0    0    0    0    0    0    0

I

10=min(10,10,10,10,10) 10

0    0    0    0    0    0    1    1    1    1    0    0    0    0    0

I

1    1    1    1    1

(12)

2020/11/20 jykim 45 元画像

Minimumフィルタ 適用後

Maximumフィルタ 適用後

白の雑音は除去

(輝度値が高い雑音)

黒の雑音は除去

(輝度値が低い雑音)

メディアンフィルタ( Median Filter )

 中央値は順位序列の統計

 すべての画像のピクセル値をフィルタ領域

R

における ピクセルの中央値に入れ替え

2020/11/20 jykim 46

整列

メディアンフィルタの影響

 (教科書修正要)

ディアンフィルタ 適用後

(中央値)

Boxフィルタ 適用後

(平均値)

元画像

(13)

重み付きメディアンフィルタ

Weighted Median Filter

 フィルタ領域内の位置に個々の重みを割り当てる

対応するピクセル値の投票数として解釈

, ∈

 例えば、

L=15

L=5

2020/11/20 jykim 49

重み付きメディアンフィルタ

Weighted Median Filter

2020/11/20 jykim 50

課題

 下記の項目のプログラムを作成し、その結果を提示 してください。 ただし、フィルタの大きさは

5

×

5

平坦化(

lena_gray.bmp

を利用)

ボックスフィルタ

ガウシアンフィルタ

非線形フィルタ(lena_gray_noise.bmpを利用)

Minimumフィルタ

Maximumフィルタ

メディアンフィルタ(lena_gray_noise.bmpを利用)

 提出締め切り

次に授業開始前まで

Figure

Updating...

References

Related subjects :