P07 chapter7.ppt [호환 모드]dasan.sejong.ac.kr/~dihan/ip/P07_chapter7.pdf ·  ·...

Preview:

Citation preview

Image Processing

7. Image Transforms7. Image Transforms

Computer Engineering, Sejong Universityp g g, j g y

영상 처리( ) 분야영상 처리(Image processing) 분야

영상 처리 분야

• 공간 영역 처리(spatial domain processing)• 공간 영역 처리(spatial domain processing)− 영상 자체에 대한 처리− 히스토그램 처리(Histogram processing)히스토 램 처리(Histogram processing)− 산술/논리 연산 처리(Arithmetic/Logic operation), 등

• 주파수 영역 처리(frequency domain processing) −

− 저역 통과 필터(Low pass filter)− 고역 통과 필터(High pass filter), 등

2/60

주파수 영역 처리(Frequency Domain Processing)주파수 영역 처리(Frequency Domain Processing)

디지털 영상 신호를 주파수 영역의 신호로 변환하고 주파수 영역에서디지털 영상 신호를 주파수 영역의 신호로 변환하고 주파수 영역에서

처리를 한 후 다시 원래의 공간 영역의 디지털 신호로 복원

주파수 영역

• 수학적으로 표현되는 공간

주파수 영역 변환 종류주파수 영역 변환 종류

• 퓨리어(퓨리에) 변환(Fourier Transform)

이산(불연속) 퓨리어 변환(Discrete Fourier Transform)• 이산(불연속) 퓨리어 변환(Discrete Fourier Transform)

3/60

• 이산 여현(코사인) 변환(Discrete Cosine Transform), 등등

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

배경

• 프랑스의 수학자 Jean Baptiste Joseph Fourier가 1807년에개념을 정립하고 1822년에 출판한 “The Analytic Theory of 개념을 정립하고 1822년에 출판한 The Analytic Theory of Heat”에서 정리한 수학 이론

• 퓨리어 급수 -• 퓨리어 급수

• Fourier series - Any function that periodically repeats itself Fourier series Any function that periodically repeats itself can be expressed as the sum of sines and/or cosines of different frequencies, each multiplied by a different

ffi i tcoefficient.• 퓨리어 변환 -

• Fourier Transform – Even functions that are not periodic (but whose area is finite) can be expressed as the integral

4/60

(but whose area is finite) can be expressed as the integral of sines and/or cosines multiplied by a weighting function

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

5/60

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

연속 함수 f(x)의 퓨리어 변환(Fourier Transform) F(u)를 나타내는식은

2∞

j)}({)( 2)(=ℑ= −∫∞−

dxxfuF uxjexf π

F(u)의 퓨리어 역변환(Inverse Fourier Transform) f(x)는

.1−=jwhere

F(u)의 퓨리어 역변환(Inverse Fourier Transform) f(x)는

1∞

duuFxf uxjeuF π2)()}({1)( ∫∞−

=−ℑ=

위의 두 식을 퓨리어 변환쌍(Fourier Transform Pair)라고 함

u는 주파수를 나타내는 변수

6/60

u는 주파수를 나타내는 변수

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

오일러 공식(Euler’s formula)

θθθ ijj

x y 좌표계의 복소수 z = x + jy를 극좌표계로 변형

θθθ sincos jje +=

x,y 좌표계의 복소수 z = x + jy를 극좌표계로 변형.

θθθ jrejrjyxz =+=+= )sin(cos θθ jrejrjyxz =+=+= )sin(cos

imaginaryg y

y

r

θ

7/60

realx

θ

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

실변수 함수(real function) f(x)의 퓨리어 변환은 일반적으로 복소수함수

)()()( ujIuRuF +=

F( ))ff i( i dF i|F( )|h

|)(|

)()()()(euF

ujIuRuFuj=

+=φ

)}()({|)(|

F(u)) offunction (magnitudespectrumFourier |F(u)| where2/122 uIuRuF +=

=

)(tan)(

F(u) of angle phase)(

1 uIu

u

⎬⎫

⎨⎧

=

−φ

φ

F(u) of spectrumpower

)(

)(tan)(

uRu

⎭⎬

⎩⎨=φ

)()(

|)(|)(

( )pp

22

2

IR

uFup

+

=

8/60

)()( 22 uIuR +=

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

주파수 영역(Frequency domain) : 다양한 주파수 성분의 크기정보를 알 수 있게 해줌정 를 알 수 있게 해줌

Cosine wave and its Fourier transform

9/60

Cosine wave and its Fourier transform.

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

퓨리어 변환 예

uxjf π∫∞

2)( uxj dxxfuF exf π−∫∞−

=ℑ= 2)()}({)(

uxjX

dxeA π−= ∫ 2

0

uXjXuxj euj

Ae

uj

A ππ

ππ−− −

−=

−= ]1[

2][

22

02

0

uXjuXjuXj eeeuj

A πππ

π−−−= ][

2

uXjeuXu

A πππ

−= )sin(

10/60

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

퓨리어 스펙트럼(Fourier spectrum)

euXu

AuF uXjπ

ππ)sin()( = −

uX

uXAX

ππ )sin(

=

11/60

Fourier spectrum

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

2-D 퓨리어 변환 쌍

∫ ∫∞

+−

∞−

=ℑ= dxdyeyxfyxfvuF vyuxj )(2),()},({),( π

∫ ∫∞

+

∞−

− =ℑ= dudvevuFvuFyxf vyuxj )(21 ),()},({),( π

2/122 )]()([)( vujIvuRvuF +=Fourier Spectrum )],(),([),( vujIvuRvuF +

]),(

[tan)( 1 vuIvu −φ

Fourier Spectrum

Ph ]),(

[tan),(vuR

vu =φ

)()()()( 222IRFP +

Phase

P S t

12/60

),(),(),(),( 22 vuIvuRvuFvuP +==Power Spectrum

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

2-D 퓨리어 변환 예

∫ ∫∞

+ vyuxj )(2π∫ ∫ +−

∞−=ℑ= dxdyeyxfyxfvuF vyuxj )(2),()},({),( π

22

0

22

0

ee

dyedxeA

uyjuxj

Y vyjuxjX

ππ

ππ

−−

−−= ∫∫

1

]2

[]2

[ 00

A

vj

e

uj

eA Y

yjX

j

ππ=

)i ()i (

]1[2

1]1[

2e

vje

uj

A

vYjuXj

vYjuXj

ππππ

ππ −− −−

−−

=

])(

)sin(][

)(

)sin([

vY

evY

uX

euXAXY

vYjuXj

ππ

ππ ππ −−

=

13/60

퓨리어 변환(Fo ie T ansfo m)퓨리어 변환(Fourier Transform)

2-D 퓨리어 스펙트럼(Fourier spectrum)

|)(

)sin(||

)(

)sin(||),(|

vY

vY

uX

uXAXYvuF

ππ

ππ

=

( Fourier spectrum ) ( spectrum as an intensity )

14/60

( Fourier spectrum ) ( spectrum as an intensity )

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

이산 퓨리어 변환(Discrete Fourier Transform : DFT)

• 퓨리어 변환의 특별한 경우

• 대상 함수가 유한한 샘플 데이터의 주기 함수인 경우• 대상 함수가 유한한 샘플 데이터의 주기 함수인 경우

15/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

깁스 현상(Gibb’s phenomenon)

• 샘플링을 늘릴 경우 ringing의 너비가 감소

• Ringing의 크기(amplitude)는 줄어들지 않음• Ringing의 크기(amplitude)는 줄어들지 않음

=> 윈도우 함수(windowing function)을 이용하여 ringing을최소화최소화

16/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

1차원 윈도우 함수의 예1차원 윈도우 함수의 예

17/60

이산 퓨리어 변환(Discrete Fourier Transform)( )

윈도우 함수를 이용한 외곽부의 불연속성 감소

18/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

연속함수 f(x)가 Δx 주기로 N개 샘플링 되었다고 가정하면

)}]1[()2()()({ Nffff Δ+Δ+Δ+

이를 간단히 나타내면

)}]1[(,),2(),(),({ 0000 xNxfxxfxxfxf Δ−+Δ+Δ+ L

이를 간단히 나타내면

)}1(,),2(),1(),0({ −Nffff L

f(x)

)}(,),(),(),({ ffff

( )

19/60

0 1 2 …. n-1 x

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

DFT 변환 쌍

1...,,2,1,0)(1

)(1

0

/2 −== ∑−

=

− NuForexfN

uFN

x

Nuxj π

1...,,2,1,0)()(1

0

/2 −==∑−

=

NxForeuFxfN

u

Nuxj π

DFT 에서의 u = 0, 1, 2, …, N-1 값은 연속함수 퓨리어변환에서의 0, Δu, 2Δu, …, (N-1)Δu 에 해당한다.

Δu와 Δx의 관계는

Nu

Δ=Δ

1

20/60

xN Δ

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

DFT 변환 예

21/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

DFT 변환 식에 각각의 값을 대입

∑− −=1

0

/2)(1

)(N

NuxjexfN

uF π

03

)(1

)0( exfF ∑=

=0xN

0)(

4)0( exfF

x∑=

=

1

1

)]3()2()1()0([4

1+++= ffff

253

)4432(4

1+++=

22/60

25.3=

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

DFT 변환 식에 각각의 값을 대입

4/23

0)(

4

1)1( uxj

xexfF π−

=∑=

0x

)4432(4

1 2/32/0 eeee jjj +++= −−− πππ

)2(4

14

j+−=4

=)2(F

=)3(

)(

F

23/60

)(

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

퓨리어 스펙트럼

25.3)0( =F

4

5]

4

1

4

2[)1( 2/1

22

=⎟⎠⎞

⎜⎝⎛+⎟

⎠⎞

⎜⎝⎛=F

4

1)2( ==F

4

5)3( ==F

24/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

1 11 M N

2-D DFT 변환 쌍

∑ ∑−

=

=

+−=1

0

1

0

)//(2),(1

),(M

x

N

y

NvyMuxjeyxfMN

vuF π

∑ ∑− − +=1

0

1

0

)//(2),(),(M N

NvyMuxjevuFyxf π

= =0 0u v

공간 영역에서의 Δx, Δy 와 주파수 영역에서의 Δu, Δv의 관계는

yNv

xMu

Δ=Δ

Δ=Δ

11

25/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

1 1N N

2-D DFT 변환 쌍(if M = N)

1...,,2,1,0,),(1

),(1

0

1

0

)/)((2 −== ∑ ∑−

=

=

+− NyxForeyxfN

vuFN

x

N

y

Nvyuxj π

1...,,2,1,0,),(1

),(1

0

1

0

)/)((2 −== ∑ ∑−

=

=

+ NvuForevuFN

yxfN

u

N

v

Nvyuxj π

0 0= =u v

대칭성을 주기 위해서 F(u,v) 식에 N 항목에 곱해짐

두 개의 식이 부호만 다르기 때문에 순방향 변환과 역변환 식이

거의 유사

26/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)Display를 위한 위치의 보정•• Fourier 변환된 영상의 원점을 변경

• u = M/2• v = N/2

)2/2/(])1)(([ NMyxf +ℑ )2/,2/(])1)(,([ NvMuFyxyxf −−=+−ℑ

27/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)Display를 위한 F(u,v) 값의 보정•

• 일반적인 디스플레이 장치의 경우 디스플레이 할 수 있는 구간이1000:1 이하이므로(white 1000, black 0) 조정 필요일반적으로 사용하는 디스플레이를 위한 보정식은• 일반적으로 사용하는 디스플레이를 위한 보정식은

]),(1log[),( vuFcvuD +=

.constscalingaiscwhere

28/60General Image | F(u,v) | Log [ 1+ |F(u,v)| ]

이산 퓨리어 변환(Discrete Fourier Transform)( )

2-D DFT 변환 예

lena Lena의 DFT 결과 Center 보정 결과

29/60

lena Lena의 DFT 결과 Center 보정 결과

이산 퓨리어 변환(Discrete Fourier Transform)( )

분리성(Separability)

∑ ∑− − −−=1 1

/2/2 ),(1

),(N N

NvyjNuxj eyxfevuF ππ

For u, v = 0,1,2,…,N-1

∑ ∑= =0 0

),(),(x y

yfN

∑ ∑− −1 1

/2/2 )(1

)(N N

NvyjNuxj Ff ππ

F 0 1 2 N 1

∑ ∑= =

=0 0

/2/2 ),(),(u v

NvyjNuxj evuFeN

yxf ππ

For x,y = 0,1,2,…,N-1

30/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

분리성(S bili )분리성(Separability)

Computation of 2-D Fourier transform as a series of 1-D transforms

31/60

이산 퓨리어 변환(Discrete Fourier Transform)이산 퓨리어 변환(Discrete Fourier Transform)

분리성(Separability)분리성(Separability)

• 계산 과정

∑ ∑−

=

=

−−⎥⎦

⎤⎢⎣

⎡=

1

0

1

0

/2/2 ),(1

),(N

x

N

y

NvyjNuxj eyxfeN

vuF ππ

⎦⎣0 0x y

• First path: ∑−

=

−=1

0

/2),(),(N

y

NvyjeyxfvxF π

y

1N• Second path: ∑

=

−=1

0

/2),(1

),(N

x

NuxjevxFN

vuF π

32/60

고속 퓨리어 변환(Fast Fourier Transform)고속 퓨리어 변환(Fast Fourier Transform)이산 퓨리어 변환의 연산량의 감축 기법

•• MxM의 이차원 영상의 DFT => M4의 계산 횟수 필요

• 연산 횟수의 감축 기법으로 도출

고속 퓨리어 변환

• N개의 성분의 DFT 변환은 두 개의 N/2 길이의 DFT 변환의합으로 구성 가능하다합으로 구성 가능하다.

• 이 과정을 재귀적으로 구성하여 N=2인 경우의 DFT 변환의합으로 구성 가능합으로 구성 가능

•• 표 7.1, 7.2 참고표 7.1, 7.2 참고

33/60

필터링(Filtering)필터링(Filtering)

주파수 영역에서의 필터링 개념주파수 영역에서의 필터링 개념

34/60

필터링(Filtering)필터링(Filtering)

공간 영역에서의 영상과 회선 마스크와의 회선(convolution) 공간 영역에서의 영상과 회선 마스크와의 회선(convolution) 연산은 주파수 영역에서의 곱셈 연산으로 처리됨

)( yxf )(h )( yxg),( yxf ),( yxh ),( yxg

)()()( yxfyxhyxg ∗ ),(),(),( yxfyxhyxg ∗=

),( vuF ),( vuH )( vuG),( ),( vuH ),( vuG

),(),(),( vuFvuHvuG =

35/60

),(),(),(

필터링(Filtering)필터링(Filtering)

공간 영역과 주파수 영역에서의 필터 모양공간 영역과 주파수 영역에서의 필터 모양

36/60

필터링(Filtering)필터링(Filtering)

필터 마스크의 생성필터 마스크의 생성

• 공간 영역에서 사용하는 회선 마스크를 DFT를 통해서 주파수영역의 마스크로 변환하여 사용영역의 마스크로 변환하여 사용

- 마스크를 위한 DFT가 필요 없다.

- 개념적으로 단순하여 많이 사용

37/60

필터링(Filtering)필터링(Filtering)

1 D 필터 마스크의 특성1-D 필터 마스크의 특성

• 저역 통과 필터 : 입력 영상에서 저주파수 성분은 통과시키고고주파수 성분은 제거시킨다고주파수 성분은 제거시킨다.

• 고역 통과 필터 :

• 대역 통과 필터 :

• 대역 제한 필터 : 입력 영상에서 특정 주파수 성분만을• 대역 제한 필터 : 입력 영상에서 특정 주파수 성분만을제거한다.

• 차단 주파수(cutoff frequency) : H(f) 값이 1에서 0으로

38/60

변하는 주파수(혹은 ½이 되는 주파수)

필터링(Filtering)필터링(Filtering)실제적인 필터

이상적인 필터와 같이 급격한 t ff는 비현실적• 이상적인 필터와 같이 급격한 cut-off는 비현실적

• 대부분의 필터는 앞의 4개 필터의 조합으로 구성

• 저역 통과 필터 : 잡음 제거, 영상의 축소, 영상의 압축 등에 사용

• 고역 통과 필터 : • 고역 통과 필터 :

• 대역 제한/통과 필터 : NTSC 신호의 색 신호 분리 등에 사용

• 영상 처리에서 사용하는 보편적인 필터

- Butterworth 필터

- Gaussian 필터

39/60

Gaussian 필터

필터링(Filtering)필터링(Filtering)

이상적인 필터 예이상적인 필터 예

40/60

필터링(Filtering)필터링(Filtering)

테스트 영상테스트 영상

41/60

필터링(Filtering)필터링(Filtering)필터링 된 영상

ringing이매우커서비현실적

42/60

필터링(Filtering)필터링(Filtering)

Butterworth 저역 통과 필터

nDvuDvuH

2]/)([1

1),(

+=

Where

DvuD 0 ]/),([1 +

2/122 )(),( vuvuD +=

D0 = cutoff frequency

)(),( vuvuD +

43/60

필터링(Filtering)필터링(Filtering)

Butterworth 저역 통과 필터

n 값이커짐에따라ringing이발생ringing이발생

44/59

필터링(Filtering)필터링(Filtering)

Butterworth 저역 통과 필터의 차수 증가에 따른 ringing 발생g g

45/60

필터링(Filtering)필터링(Filtering)

Gaussian 저역 통과 필터

20

2 2/),(),( DvuDevuH −=

Where 2/122 )(),( vuvuD +=

D0 = cutoff frequency

46/60

필터링(Filtering)필터링(Filtering)

Gaussian 저역 통과 필터

butterworth에비해서고역제거특성이나쁨고역제거특성이나쁨

ringing의발생이없음

47/59

필터링(Filtering)필터링(Filtering)고역 통과 필터

영상의 고주파수 부분을 유지하면서 저주파수 부분을 제거• 영상의 고주파수 부분을 유지하면서 저주파수 부분을 제거

• 에지 부분 추출

• 고역 통과 필터와 저역 통과 필터의 관계

),(1),( vuHvuH lphp −= ),(),( lphp

48/60

필터링(Filtering)필터링(Filtering)고역 통과 필터

이상적인고역통과필터

Butterworth 고역통과필터

Gaussian 고역통과필터

49/60

필터링(Filtering)필터링(Filtering)고역 통과 필터의 공간 영역 특성(회선 마스크 계수)

Ideal Butterworth Gaussian

50/60

필터링(Filtering)필터링(Filtering)이상적인 고역 통과 필터링 결과 : ringing 이 심함

⎨⎧ ≤

= 0

)(

),(0),(

f

DvuDifvuH

⎩⎨ > 0),(1

),(DvuDif

51/60

필터링(Filtering)필터링(Filtering)Butterworth 고역 통과 필터링 결과 : ringing 이 존재, sharp함

vuH2

1),( =

nvuDDvuH

20 )],(/[1

),(+

52/60

필터링(Filtering)필터링(Filtering)Gaussian 고역 통과 필터링 결과 : 가장 smooth 함

20

2 2/),(1),( DvuDevuH −−=

53/60

응용 사례(Application Examples)응용 사례(Application Examples)저역 통과 필터

• 컴퓨터 비젼의 문자 인식 문제

• 모델 사진의 인쇄 기법 등 다양한 분야에 사용

54/60

응용 사례(Application Examples)응용 사례(Application Examples)• 에지 부분은 원영상

• 모델의 주름 등을 없애고 깨끗한 영상 제공

55/59

응용 사례(Application Examples)응용 사례(Application Examples)고역 통과 필터

영상의 에지 부분이나 디테일을 강조• 영상의 에지 부분이나 디테일을 강조

• 디지털 TV의 화질 개선 문제

56/60

압축과 관련된 영상의 주파수 영역 표현압축과 관련된 영상의 주파수 영역 표현

공간 영역 : 영상 정보가 전체적으로 분포

주파수 영역 :

57/60

이산 여현 변환(Discrete Cosine Transform)이산 여현 변환(Discrete Cosine Transform)

이산 여현 변환(Discrete Cosine Transform: DCT)이산 여현 변환(Discrete Cosine Transform: DCT)

• 결과적으로 어떤 종류의 영상이라도 기본 함수(basis function)의 합으로 표시할 수 있다.

장점 : DFT가 복소수 출력을 가지는 반면에 DCT는 실수 출력을가져서 계산이 단순해진다.

단점 : DCT 변환 결과가 주파수의 영역이 아님, 이론적인 필터링단점 : DCT 변환 결과가 주파수의 영역이 아님, 이론적인 필터링연산이 적용이 안됨.

• JPEG

58/60

• MPEG

이산 여현 변환(Discrete Cosine Transform)이산 여현 변환(Discrete Cosine Transform)

59/60

이산 여현 변환(Discrete Cosine Transform)이산 여현 변환(Discrete Cosine Transform)

1 1N N

2-D DCT 변환 쌍

++= ∑ ∑

=

=

)()(

]2

)12(cos[]

2

)12(cos[),()()(),(

1 1

1

0

1

0 N

vy

N

uxyxfvuvuC

N N

N

x

N

y

ππαα

++= ∑ ∑

=

=

]2

)12(cos[]

2

)12(cos[),()()(),(

1

0

1

0 N

vy

N

uxvuCvuyxf

N

u

N

v

ππαα

⎪⎪⎧

= 0,1

vuforN

⎪⎪⎩

⎪⎪⎨

−=

=

1,...,2,1,2

)(),(

NvuforN

fN

vu αα

⎪⎩ N

60/60

Recommended