이산푸리에변환

Download Report

Transcript 이산푸리에변환

디지털 신호처리
[email protected]
chapter
05.
Discrete Fourier Transform
주요내용
• 연속신호의 푸리에변환
• 이산신호의 푸리에변환
• 이산푸리에변환
5.1 연속신호의 푸리에변환
• 푸리에변환(Fourier transform)
 주기, 비주기함수의 주파수 영역에서 신호 해석시 이용.
- f(t) : 임의의 연속신호
- F(Ω) : 푸리에변환
 f(t)의 푸리에변환 F(Ω)가 주어졌을 경우
Circuits & Systems Lab.
4
5.1 연속신호의 푸리에변환
• 역푸리에변환(inverse Fourier transform)
 F(Ω)가 존재하기 위한조건
즉, 함수 f(t) 는 절대적분가능이어야 함.
• 함수 F(Ω)는 일반적으로 복소수임.
여기서, | F(Ω) | : f(t) 의 진폭스펙트럼 (magnitude spectrum)
 (Ω) : f(t) 의 위상스펙트럼 (phase spectrum)
Circuits & Systems Lab.
5
5.1 연속신호의 푸리에변환
예제 5.1 그림 5.1(a)에서 보이는 구형펄스의 푸리에변환을 구하라.
d

1
,
t



2
p( t )  
 0, t  d

2

(a)
(b)
그림 5.2 복잡한 시간신호의 푸리에변환
풀이) 푸리에 변환의 정의에 의해
F( )  F[p(t )] 



p(t )e  jtdt 
d
2
d

2

p(t )e  jtdt 
d
2
1  jt
e
d
 j

 d 
sin

1 jd / 2
2

d
2





[e
 e  jd / 2 ]  sin
  d
d
j
  Lab.
2 
Circuits & Systems
2
2
6
5.2 이산신호의 푸리에변환
1. 이산신호의 푸리에 변환 정의
 연속신호 x(t)를 표본화 하여 이산신호 x(nT) 로 바꾸어
주파수 스펙트럼을 구함. (그림 5.2)
그림 5.2 복잡한 시간신호의 푸리에 변환
 선형불변시스템의 주파수 특성을 구하는 식과 비교해보면,
임펄스응답 h(nT)를 일반 이산신호 x(nT)로 바꾸어 놓은 형태.
∴ 주파수 특성이 시스템의 주파수영역의 정보를 나타내는 것처럼,
이산신호의 x(nT) 푸리에변환도 그 주파수영역의 정보를 제공.
Circuits & Systems Lab.
7
5.2 이산신호의 푸리에변환
 이산신호의 역푸리에변환 정의
 주파수 스펙트럼X(j)로 부터이산신호 x(nT) 로 구하기 위한
역푸리에변환 식 ( 5.9 )
(5.9)
단, s= 2/T, T:sampling 주기
 이산신호의 유용성은 연속시간 푸리에변환과 유사.
 이산신호의 푸리에변환은 이산신호 x(n)의 주파수분포(specturm).
 변조, 필터링 등과 같은 처리에 자주 사용.
 이산신호의 푸리에변환 특성은 연속신호의 푸리에변환 특성과 동일함.
Circuits & Systems Lab.
8
5.2 이산신호의 푸리에변환
예제 5.2 다음 이산신호에 대한 푸리에변환을 구하라.
(a) x(nT) = (nT)
1, n  0,1,  , N  1
(b) x(nT )  
0, 기타
풀이
(a) 이산신호의 푸리에변환 정의식에 의해,
 임펄스신호의 주파수 스펙트럼은 모든 주파수대역에서
진폭값 1을 갖지만, 위상값을 가지지 않는다.
Circuits & Systems Lab.
9
5.2 이산신호의 푸리에변환
(b) 정의에 의해,
∴ T = 1 [sec] , N = 10 으로 했을 때의 각각의 특성을 그림 5.3(b)
Circuits & Systems Lab.
10
5.2 이산신호의 푸리에변환
2. 연속신호와 이산신호의 푸리에 변환 관
계 연속신호와 연속신호를 표본화하여 만든 이산신호와의 관계를
주파수개념에서 보자. (그림 5.4)
 연속신호 x(t)를 표본화주파수 fs =1/T[Hz]로, 즉 시간간격 T[sec]로
표본화한 이산신호를 x(nT)라 하자. 그리고 x(t) 및 x(nT)의 푸리에
변환은 각각 다음과 같이 표현한다.
그림 5.4 연속신호와 이산신호
Circuits & Systems Lab.
11
5.2 이산신호의 푸리에변환
 x(nT)는 시각 t = nT에서 x(t)의 값이므로 연속신호의 역푸리에변환의
정의식에 의해 t = nT로 두면,
 식(5.10) 적분을 2 / T[rad] 간격으로 적분의 총합을 구하면,
다음과 같다.
⇒ 단, m은 정수이며    +(2 m / T)로 변수치환하면,
Circuits & Systems Lab.
12
5.2 이산신호의 푸리에변환
 위식을 식 (5.11)의 식과 비교하면, 다음 식이 성립함.
 식 (5.11)은 연속신호와 연속신호를 표본화한 이산신호와의 관계를
주파수영역에서 표현하고 있다.
 이산신호의 주파수 스펙트럼 X(j )는, 연속신호의 주파수 스펙트럼
Xa (j  )가 진폭이 1/T배로 되어 표본화주파수 fs = 1/T[Hz]마다 반복
됨을 알 수 있다. (그림 5.5)
그림 5.5 연속신호와
Circuits & 이산신호의
Systems Lab.주파수 표현
13
5.3 이산 푸리에 변환
 주파수 분석
연속적인 방법
이산적인 방법
 연속적인 방법
- 대역필터 뱅크(band filter bank)를 이용한 주파수 분석 처리장치.
- 음성 분석에 널리 이용.
- 복잡한 신호의 주파수 분석은 곤란.
 연속푸리에변환에 대응하는 것으로 서로 유사한 관계를 가짐.
 컴퓨터를 사용하여 주파수 분석을 하고자 할때 중요한 도구가 됨.
 디지털필터 설계 또는 디지털 신호처리 알고리즘에서 중요한 역할을 함.
- 고속푸리에변환(fast Fourier transform) 알고리즘이 존재하기 때문.
 스펙트럼 분석기법으로도 유용.
 음성, 영상처리 분야에 널리 이용.
Circuits & Systems Lab.
14
5.3 이산 푸리에 변환
1. 이산 푸리에변환의 정의
 N개의 이산신호 x(n)(n = 0, 1,···,N-1)이 주어질 때 x(n)의 이산푸리에변환 정
의
 이산 역푸리에변환(inverse discrete Fourier transform)은
 회전인자(twiddle factor) WN
→ WN 은 복소 평면상 단위 원의 원주상을 1/N 원주만큼 움직이는 점.
kn
Circuits & Systems Lab.
15
5.3 이산 푸리에 변환
 회전인자를 이용한 이산푸리에변환 (그림 5.6)
그림 5.6 N = 8인 경우의 회전인자 값. W8
kn
 이산 역푸리에변환
→ 회전인자를 사용하면 고속 푸리에변환을 취급할 때 편리함.
Circuits & Systems Lab.
16
5.3 이산 푸리에 변환
예제 5.3 다음 그림과 같은 x(n)의 이산푸리에변환을 구하라.
그림 5.7 x(n)과
X(k)
풀이) 이산푸리에변환의 정의식으로부터
여기서, W4nk = e-j2 kn/4 = (– j)kn이므로 k = 0, 1, 2, 3에서
X(0) = 1+ 2(1) + 2(1)2 + 2(1)3 = 7
X(1) = 1+ 2(-j) + 2(-j)2 + 2(-j)3 = –1
X(2) = 1+2(-1) + 2(1) + 2(-1) = – 1
X(3) = 1 +2(j) + 2(-1) + 2(-j) = – 1
Circuits & Systems Lab.
17
5.3 이산 푸리에 변환
Circuits & Systems Lab.
18
5.3 이산 푸리에 변환
예제 5.4 다음과 같은 x(n)의 이산푸리에변환을 구하라.
풀이) 이산푸리에변환의 정의식으로부터
Circuits & Systems Lab.
19
5.3 이산 푸리에 변환
Circuits & Systems Lab.
20
5.3 이산 푸리에 변환
 z변환과 이산푸리에변환의 관계
이산신호 x(n)(n = 0, 1, …,N-1)의 z변환
Where z = e 로 두고,
j
2k

N
라고 하면 X(k)는
Where z = e j 는 z평면상의 단위원을 나타냄.
 식 (5.19)로부터 이산푸리에변환은 z변환의 특수한 경우에
해당 하는 것을 알 수 있다.
 x(n)을 z변환한 X(z)을 0을 중심으로 하여 반경이 1인 단위원상을
2  / N 분할한 곳을 샘플점으로 하고, z = 1로부터 시작하여 샘플화한
값은 X(k)와 같다는 것을 의미한다.
Circuits & Systems Lab.
21
5.3 이산 푸리에 변환
예제 5.5 다음과 같은 x(n)의 이산푸리에변환을 구하라.
단, N = 8이다. 그리고 z변환을 이용하여 구한 값과 비교하
라.
풀이) 이산푸리에변환의 정의식에 의해서
→ x(n)을 z변환하면
Circuits & Systems Lab.
22
5.3 이산 푸리에 변환
식 (5.13)에 의하여
Circuits & Systems Lab.
23
5.3 이산 푸리에 변환
Where
ze
j
2k
8 로
두면
Where, k를 0, 1, …, 7로 하면 X(0), X(1), … , X(7)을 구할 수 있다.
∴ 실제로 구해 보면 위의 값과 동일하다는 것을 확인할 수 있다.
Circuits & Systems Lab.
24
5.3 이산 푸리에 변환
 이산신호
이산푸리에급수(discrete Fourier series)
이산푸리에변환
 이산신호가 주기함수이면 이산푸리에급수도 이산주기함수로 되므로
→ x(n)을 주기함수 x(n+N)의 한 주기 즉, (5,20)이라면
이산푸리에 급수의 한주기⇒ 이산푸리에변환
Circuits & Systems Lab.
25
5.3 이산 푸리에 변환
2. 이산푸리에변환의 성질
1) 선형성(linearity)
2) 주기성(periodicity)
3) 추이정리(shift
theorem)
4) 순환 컨볼루션
5) 주파수영역 컨볼루션
6) 대칭성(symmetry)
Circuits & Systems Lab.
26
5.3 이산 푸리에 변환
1) 선형성(linearity)
 x(n)은 주기 N의 주기함수. 즉, x(n) = x(n+N)
 임의의 상수 a, b 신호의 이산 푸리에변환
↓
2) 주기성(periodicity)
→ r = 임의의 정수
→
Circuits & Systems Lab.
27
5.3 이산 푸리에 변환
3) 추이정리(shift theorem)
증명)
여기서, n – m = n´
우변의 괄호 제2항에 대입 l = n ´+ N
Circuits & Systems Lab.
28
5.3 이산 푸리에 변환
따라서,
→ (5.23)과 (5.24)로부터
여기서,  = 임의의 정수
Circuits & Systems Lab.
29
5.3 이산 푸리에 변환
4) 순환 컨볼루션
 주기적인 두 수열의 순환(circular) 컨볼루션
증명)
→m=n-l
Circuits & Systems Lab.
30
5.3 이산 푸리에 변환
→ y(m)과 WNkm의 주기성을 고려하면
 순환 컨볼루션을 구하는 방법
→ 두 수열 x(n)과 y(n)의 N점 DFT 구함.
→ 0 ≤ k ≤ N – 1에서 X(k) Y(k)의 역 DFT를 구함.
5) 주파수영역 컨볼루션
증명)
Circuits & Systems Lab.
31
5.3 이산 푸리에 변환
6) 대칭성(symmetry)
 이산 푸리에 변환 → X(N-k) = X(-k)=X* (k)
→ X* (k) = X(k)의 공액복소수
→ x(n) = 실수
→ 여기서, WNn = 1
Circuits & Systems Lab.
32
5.3 이산 푸리에 변환
 음성과 같은 실수 데이터에서 파워스펙트럼과 같은
스펙트럼의 크기가 문제가 되는 경우
→ 대칭 관계가 있기 때문에 k = 0,1, ㆍ ㆍ ㆍ,N/2까지만 X(k)를 구함.
 x(n) = x( N – n )과 대칭일 경우
→ x(n) = x(N-n)일 때는 X(k) = X* (k)이므로, Im[X(k)] = 0
→ x(n) = -x(N-n)일 때는 X(k) = -X* (k)이므로, Re [X(k)] =
0
Circuits & Systems Lab.
33
5.3 이산 푸리에 변환
3. 이산 푸리에 변환의 직접계산
 N점 이산 푸리에 변환(DFT)
- N점 수열(N-Point sequence) { x(0), x(1), …, x(N-1)} 의
이산 푸리에 변환이 {X(0), X(1), … , X(N-1)}일 때를 말함.
예) 8점(8-point DFT)
→ 식 (5.31)을 이용
Circuits & Systems Lab.
34
5.3 이산 푸리에 변환
- 회전인자 W
- 직접계산(direct computation)하는 경우흐름도(flow graph) (그림
5.8)
 N점 DFT인 경우
N×N=N2회 연산
그림 5.8 8점 DFT 직접계산법
Circuits & Systems Lab.
35
5.3 이산 푸리에 변환
4. 이산푸리에변환과 스펙트럼
 이산푸리에변환 X(k)에 대하여
k=0일 때
k=1일 때
k=2일 때
k=3일 때
X(k)는 직류성분
X(k)는 기본파 성분(혹은 제1고조파 성분)
X(k)는 제2고조파 성분
X(k)는 제3고조파 성분
 k값과 주파수의 관계
- T : 표본화 간격
- N : 디지털 신호 x(n)의 샘플수
- T0 : 해석시간(record lenth)
Circuits & Systems Lab.
36
5.3 이산 푸리에 변환
⊙ X(k)에서 k 간격에 따른 주파수 간격 : f
k=0일 때 주파수는 0[Hz]
k=1일 때 주파수는 0.5[Hz]
k=2일 때 주파수는 1[Hz]
 이산푸리에변환에서 진폭, 파워,위상 스펙트럼을 구할 수 있다.
 이산푸리에변환에서 추출한 신호를 주기신호라 가정하고
그에 따라 스펙트럼에 미치는 영향 ( 그림 5.9 )
Circuits & Systems Lab.
37
5.3 이산 푸리에 변환
그림 5.9 10[Hz] 정현파의 스펙트럼
 불연속점의 영향으로 생긴 오차를 줄이기위해 잘라낸 신호
의
Circuits & Systems Lab.
처음값과 마지막값을 같게 해줌.  창함수 (window
38
5.3 이산 푸리에 변환
예제 5.6 어떤 아날로그 신호를 다음과 같이 표본화한다고 하자.
해석시간:200[ms]
표본화 주파수:2.5[KHz]
(a) 신호를 표본화했을 때 에일리어싱이 없다면 이 신호의 상한주파수는 얼마인가?
(b) 이러한 신호를 이용하여 DFT를 실행할 때 주파수간격 및 위상간격을 구하라.
(c) DFT를 실행할 때 아날로그 주파수는 어떻게 표현되나?
풀이)
(a) 나이키스트(상한) 주파수 fmax = fs /2=1250[Hz]
(b) 주파수간격과 해석시간은 역의 관계가 있으므로 다음과 같이 된다.
f = 1/T0 = 5[Hz]
위상간격  = 2f T =(4)10-3[rad]
(c) 샘플수 N은
N = T0 / T = 500 [samples]이므로 주파수는 다음과 같이 표현된다.
f`= 0, 5, 10,… , 1250, -1245, -1240, … ,-5 [Hz]
Circuits & Systems Lab.
39