画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3...

39
1 画像のフィルタリング処理 講義内容 実空間フィルタリング 平滑化(LPF) エッジ強調(HPF) Laplacian of Gaussian (LOG)フィルタ(BPF) 周波数空間フィルタリング LPF,HPF,BPF 周波数選択的フィルタ 線形シフトインバリアントシステムと劣化画像復元 線形システム 劣化画像の復元

Upload: others

Post on 19-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

1画像のフィルタリング処理

講義内容

実空間フィルタリング平滑化(LPF)エッジ強調(HPF)Laplacian of Gaussian (LOG)フィルタ(BPF)

周波数空間フィルタリングLPF,HPF,BPF周波数選択的フィルタ

線形シフトインバリアントシステムと劣化画像復元線形システム劣化画像の復元

Page 2: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

2

ノイズ除去(1)平滑化処理 -1次元-

・ノイズは減少

・波形はなまる

5つの値の平均値で置き換えていく1/5 1/5 1/5 1/5 1/5*

・・・

5点の平滑化の場合

)(xg35

15 2112

27

42

29

45 49

19処理後

x

処理前

ノイズフリーの連続信号

4538

15 141217

50

19

46 49)(xf

xKernel

∑−=

+++−− =++++=2

22112 5

1)(51

iinnnnnnn ffffffg

Page 3: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

3デジタル画像に対するコンボリューション処理

k1

原画像1画素ずつずらしながら処理

コンボリューション核 (kernel)

k2 k3

k4 k5 k6

k7 k8 k9

f1 f2 f3

f4 f5 f6

f7 f8 f9

9922115 fkfkfkg +++= 処理画像

対応する画素ごとに積をとり,最後に和をとって処理画像の対応する位置に入れていく

Page 4: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

4

ノイズ除去(1)平滑化処理 - 2次元-

コンボリューション核(kernel)

k1 k2 k3

k4 k5 k6

k7 k8 k9

×91

1 1 1

1 1 1

1 1 1

このエリアの平均値を用いる

3×3の平滑化の場合

Page 5: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

5

エッジ強調 -1次元-

エッジやノイズを強調処理後

ノイズフリーの連続信号

3126

-21

5

28

-1

)(xg

x

-1 0 1

1

-1

*

11 −+ −= nnn ffg

差分フィルタ:近傍領域の差分値で置き換えていく方法

処理前

ノイズフリーの連続信号

4538

15 141217

50

19

46 49)(xf

xKernel

Page 6: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

6

エッジ強調 -1次元-

差分フィルタ:近傍領域の差分値で置き換えていく方法

エッジやノイズを強調処理後

53 3

26

-1

)(xg

x

-1 1 0

-4

3

*

1−−= nnn ffg23

-24

2

処理前

ノイズフリーの連続信号

4538

15 141217

50

19

46 49)(xf

xKernel

Page 7: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

7

エッジ強調 -1次元-

差分フィルタ:近傍領域の差分値で置き換えていく方法

エッジやノイズを強調処理後

53 3

26

-1

)(xg

x

-1 1 0

-4

3

*

1−−= nnn ffg23

-24

2

処理前

ノイズフリーの連続信号

4538

15 141217

50

19

46 49)(xf

xKernel

Page 8: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

8

エッジ強調-1次元- ラプラシアンフィルタ

差分フィルタ:近傍領域の2階微分(ラプラシアン)で置き換えていく方法

処理後

)(xg

x

処理前

ノイズフリーの連続信号

4538

15 141217

50

19

46 49)(xf

x

nnn

nnnnnfff

ffffg2

)()(11

11−+=

−−−=−+

−+

Kernelは?

Page 9: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

9

ノイズ除去-1次元- メディアンフィルタ

差分フィルタ:近傍領域の中央値(メディアン)で置き換えていく方法

処理後

)(xg

x

},,,,{ 2112 ++−−= nnnnnn fffffmediang

処理前

ノイズフリーの連続信号

4538

15 141217

50

19

46 49)(xf

x

注:この処理は線形演算ではなく,コンボリューション処理とは呼ばない

Page 10: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

10

ノイズ除去-1次元- メディアンフィルタ

差分フィルタ:近傍領域の中央値(メディアン)で置き換えていく方法

処理後

)(xg

x

},,,,{ 2112 ++−−= nnnnnn fffffmediang

処理前

ノイズフリーの連続信号

4538

15 141217

50

19

46 49)(xf

x

注:この処理は線形演算ではなく,コンボリューション処理とは呼ばない

15 17 19 19 45 46

Page 11: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

11

0 1 0

1 -4 1

0 1 0

エッジ強調フィルタ -2次元-

Sobel filterLaplacian filter

-1 0 1

-2 0 2

-1 0 1

中央と周辺との差分

f1 f2 f3

f4 f5 f6

f7 f8 f9

)()( 2558 ffff −−−y方向の2回差分

x方向の2回差分 )()( 4556 ffff −−−

x

y

x

y

x方向には差分y方向には平滑化

Page 12: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

12

Laplacian of Gaussian (LoG) フィルタ

1次元信号に対するLOG処理の模式的説明

原信号

Gaussianをコンボシューション

1次微分

さらに微分(計2次微分)

ぼかし処理によりノイズが低減する

エッジの立上がり,や立下りが,山や谷になる.

エッジの山や谷が0近辺の値になる.

⇒ ゼロクロス法を使って検出すればよい

1

-1

1

-1

1

-2

1参考:ラプラシアン演算子

Page 13: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

13

3x3 kernel

5x5 kernel 7x7 kernel

平滑化 フィルタ(移動平均法)

Kernel:

11

111

2

n n

n

オリジナル画像

Page 14: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

14

0

5

10

15

0

5

10

15

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

Sigma = 1

平滑化 フィルタ(Gaussian kernel)

オリジナル画像

フィルタ処理画像

Page 15: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

15

0

5

10

15

0

5

10

15

0

0.002

0.004

0.006

0.008

0.01

0.012

0.014

0.016

0.018

0.02

0

5

10

15

0

5

10

15

0

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

Sigma = 2

Sigma = 3 フィルタ処理画像

フィルタ処理画像

平滑化 フィルタ(Gaussian kernel)

Page 16: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

16

Laplacianフィルタ

オリジナル画像 フィルタ処理画像

(フィルタ処理の後,負の値も発生する.

画像として表示するために,値が0から255の範囲になるような階調変換を行っている)

Page 17: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

17

GaussianKernel size:

7x7

LOGフィルタ後画像オリジナル画像

エッジ画像(ゼロクロス法) オリジナル画像+エッジ画像(赤)

LOG フィルタ(Gaussian Kernel size: 7x7)

Page 18: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

18

GaussianKernel size:

13x13

LOGフィルタ後画像

エッジ画像(ゼロクロス法) オリジナル画像+エッジ画像(赤)

LOG フィルタ(Gaussian Kernel size: 13x13)

Page 19: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

19

0

5

10

15

20

0

5

10

15

20

-4

-3.5

-3

-2.5

-2

-1.5

-1

-0.5

0

0.5

1

x 10-3

GaussianKernel size:

19x19

LOGフィルタ後画像

エッジ画像(ゼロクロス法) オリジナル画像+エッジ画像(赤)

LOG フィルタ(Gaussian Kernel size: 19x19)

Page 20: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

20Prewittフィルタ

-1 -1 -1

0 0 0

1 1 1

y

-1 0 1

-1 0 1

-1 0 1

y

オリジナル画像水平方向のエッジ強調画像

垂直方向のエッジ強調画像 2方向強調画像を用いたエッジ抽出

Page 21: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

212次元フーリエ変換

講義内容

空間周波数の概念2次元フーリエ変換代表的な2次元フーリエ変換対2次元離散フーリエ変換

Page 22: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

22画像のフィルタリング処理

講義内容

実空間フィルタリング平滑化(LPF)エッジ強調(HPF)Laplacian of Gaussian(LOG)フィルタ(BPF)

周波数空間フィルタリングLPF,HPF,BPF周波数選択的フィルタ

線形シフトインバリアントシステムと劣化画像復元線形システム劣化画像の復元

MATLABを用いたデモ

Page 23: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

23

フーリエ面での処理

周波数成分に対する自在なフィルタリングが可能

LPF,BPF,HPF, 部分的なフィルタ(特定周波数成分の除去,周期構造をもつノイズの除去)Wiener フィルタ (周波数ごとのSN比を考慮した復元フィルタ)

処理の流れ

特徴

フーリエ変換フーリエスペクトル

フィルタ演算

処理画像

原画像

フーリエ逆変換

),( yxf ),( vuF

),(),(),(

vuHvuFvuG

=),( yxg

Page 24: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

24

コンボリューション定理

),(*),(),( yxhyxfyxg = ),(),(),( vuHvuFvuG ⋅=

実空間 フーリエ空間

コンボリューション 積

),( yxf

),( yxh

),( yxg

),(),(),( yxhyxfyxg ⋅= ),(*),(),( vuHvuFvuG =

積 コンボリューション

),( vuF

),( vuH

),( vuG

Page 25: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

25

処理の等価性

Fourier Transform pair フーリエスペクトル

F(u,v)

フィルタH(u,v)

処理画像g(x,y)

フィルタ演算

G(u,v)

原画像f(x,y)

コンボリューション核

h(x,y)

Fourier Transform pair

Fourier Transform pair

Page 26: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

26

平滑化フィルタ

×91

1 1 1

1 1 1

1 1 1

実空間でのフィルタ(コンボリューション核)

空間周波数フィルタ

uv

(フィルタ特性の絶対値をとって表示)

uv

Page 27: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

27

0 10 20 30 40 50 60 70-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Width = 3 Width = 5 Width = 7

Frequency

Mod

ulat

ion

Averaging filter

平滑化フィルタの周波数特性

Low pass filter

Width=3Width=5Width=7

Page 28: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

28

Laplacianフィルタ

空間周波数フィルタ

uv

0 − α 0

− α 4 − α

0 −α 0

実空間でのフィルタ(コンボリューション核)

1=α

uv

Page 29: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

29

ラプラシアンフィルタの周波数特性

0 10 20 30 40 50 600

0.5

1

1.5

2

2.5

3

3.5

4

alpha = 1

alpha = 0.5

alpha = 0.25

Frequency

Mod

ulat

ion

Laplacian filter

High pass filter

Page 30: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

30

Sobel フィルタ

空間周波数フィルタ

uv

-1 0 1

-2 0 2

-1 0 1

実空間でのフィルタ(コンボリューション核)

x

y

uv

Page 31: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

31

0 10 20 30 40 50 60 700

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

sigma = 1 sigma = 2 sigma = 3

Frequency

Mod

ulat

ion

Laplacian of Gaussian filter

LOGフィルタの周波数特性

Band pass filter

Sigma=3 Sigma=2 Sigma=1

Page 32: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

32

空間周波数フィルタとコンボリューション核の例

空間周波数フィルタSharp-cut LPF

フーリエ空間

コンボリューション核

実空間

uvxy

Page 33: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

33

周期性のあるノイズの低減

周波数空間の一部にノイズのパワーが集中しているようなとき

オリジナル画像 スペクトル画像

ノイズパターン 処理画像

Digital Image Processing, R. C. Gonzalez and R. E. Woodsから引用

),( yxf ),( vuF

)},(),({),( 1 vuGvuHyxp −ℑ= ),(),(),(),(ˆ yxpyxwyxgyxf −=重みw(x,y)は(x,y)の近

傍で推定画像の分散が最小になるように決定.

Page 34: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

34画像のフィルタリング処理

講義内容

実空間フィルタリング平滑化(LPF)エッジ強調(HPF)Laplacian of Gaussian(LOG)フィルタ(BPF)

周波数空間フィルタリングLPF,HPF,BPF周波数選択的フィルタ

線形シフトインバリアントシステムと劣化画像復元線形システム劣化画像の復元

MATLABを用いたデモ

Page 35: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

35

x x

Linear,time-invariantsystem

In Out

ディラックのデルタ関数:インパルス関数

デルタ関数入力に対する応答:インパルス応答

x

入力信号

x

出力信号

τ x

0 0

出力信号は入力信号とインパルス応答とのコンボリューションで表される.

線形時不変システムまた線形シフトインバリアントシステム

)(xh)(xδ

)(xf)(xg

x

)(*)(

)()()(

xfxh

dfxhxg

=

−= ∫∞

∞−

τττ

Page 36: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

36

シフトインバリアント:インパルス応答が,シフトによらないこと.

x0

)(xh

x0

)(xh

シフトインバリアントシステム

)( axh −

a

)( axh −≠

a

シフトインバリアント

シフトバリアント

2次元(画像)の場合 インパルス応答=点光源に対するレンズによる像(点像分布関数point spread functionとよぶ)

レンズ物体面 像面

f x y x y( , ) ( , )= δ g x y h x y( , ) ( , )=

シフトインバリアント

シフトバリアント

レンズ物体面 像面

PSFが場所によって異なる場合

Page 37: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

37

線形システム:重ね合わせの原理が成り立つこと

)}({)}({)}()({)(

)}({)(

)()(

2211

2211

xfSaxfSaxfaxfaSxg

xfSxg

xgxf

+=+=

=

ことである.以下の関係が成り立つ

あるとは,このシステムが線形で

に定義する.システムを以下のよう

を出力するに対して,入力

線形システム

x

入力信号)(xf

x

出力信号

τ

x

)(xg

+−+−+= )2()()()( 210 dxfdxfxfxf δδδ

)2()}2({)()}({

)()}({

22

11

00

dxhfdxfSdxhfdxfS

xhfxfS

−=−−=−

=

δδ

δ

+−+−+= )2()()()( 210 dxhfdxhfxhfxg

入力関数:

出力関数:

0

0f1f

2f

Page 38: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

38

入力信号のスペクトル:

出力信号のスペクトル:

:伝達関数 Transfer function

コンボリューション 掛け算

F u( )

u

H u( )

u

G u( )

u

×

実空間 フーリエ空間

G u H u F u( ) ( ) ( )=

H u G uF u

( ) ( )( )

= =outputInput

)(*)()()()(

xfxhdfxhxg

=−= ∫

∞−τττ

周波数空間で考える

∫∞

∞−−= dxuxjxfuF )2exp()()( π

[ ])()(

)2exp()()(

)2exp()()(

uFuHdxuxjdfxh

dxuxjxguG

=−−=

−=

∫ ∫∫∞

∞−

∞−

∞−

πτττ

π

∗)(xh

x

x

x

)(xf

)(xg

インパルス応答

Page 39: 画像のフィルタリング処理 講義内容haneishi/class/iyogazokougaku/...3 デジタル画像に対するコンボリューション処理 k1 原画像 1画素ずつずら

39

Wiener Filter

劣化画像の復元などに用いられる

),( yxf

),(),(),(),( vuNvuHvuFvuG +=

),(),(),(),( yxnyxhyxfyxg +∗=

),( yxh理想画像:

劣化の点像分布関数:

劣化画像:),(

1vuH

),(/),(),(1

vuPvuPvuH SN+

u

)(uH

u

)(uF

Inverse filter:

Wiener filter:u

u

×

ノイズパワー 信号パワー

0

0

フーリエ変換は:

),(/),(),(),(/),(

vuHvuNvuFvuHvuG

+=

左辺(取得データ)GをHで割ると、