Professional Documents
Culture Documents
Biến Đổi Fourier Rời Rạc (Dft) Và Giải Thuật Biến Đổi Fourier Nhanh (Fft)
Biến Đổi Fourier Rời Rạc (Dft) Và Giải Thuật Biến Đổi Fourier Nhanh (Fft)
1 N −1 (IDFT)
x(n) =
N
∑
k =0
X (k )e j 2π kn / N
; n = 0 , ..., N − 1
DFT đóng vai trò quan trọng trong xử lý số tín hiệu (ví dụ: phân tích phổ, lọc tín
hiệu,..) do tồn tại các cách tính DFT hiệu quả (chẳng hạn như giải thuật FFT).
2
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT(tt)
sin Ω L / 2
⇒ | X ( Ω ) |= ; ∠ X ( Ω ) = −Ω ( L − 1) / 2
sin Ω / 2
3
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT(tt)
4
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT(tt)
N −1
1
x(n) =
N
∑ X ( k )W
k =0
N
− kn
; n = 0,..., N − 1
; ;
1
xN = W N* X N (IDFT)
N
Æ Cho X(k) tìm x(n) dùng DFT ????
5
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT(tt)
Ví dụ 2: Cho tín hiệu: x(n) = {0,1,2,3}. Tìm DFT 4 điểm ?
Lời giải: k+N
¾ Dùng trực tiếp định nghĩa: W N = W N
k
c. Dịch vòng:
− j 2 π kn 0 / N
⎧
⎪ x (( n − n )) ←⎯ ⎯
D FT
→ X ( k ) e
x ( n ) ←⎯ ⎯
D FT
→ X (k ) ⇒ ⎨ 0 N
j 2π k0 n / N
⎪⎩ x ( n ) e ←⎯D FT
⎯→ X (( k − k 0 )) N
Khái niệm dịch vòng: x’(n) = x((n-n0))N = x[(n - n0)modN]
7
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.1.2 Các tính chất của DFT:
d. Tích chập vòng:
x ( n ) ←⎯ ⎯
DFT
→ X (k ) ⎫
⎬ ⇒ z ( n ) = x ( n ) ⊗ y ( n ) ←⎯ ⎯
DFT
→ Z ( k ) = X ( k )Y ( k )
y ( n ) ←⎯ ⎯
DFT
→ Y (k ) ⎭
x(n) DFT
X(k)
N điểm
IDFT z(n)=x(n) y(n)
X
N điểm
DFT
y(n) N điểm Y(k)
8
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.1.3 Lọc tuyến tính dựa vào DFT:
¾ Ngõ ra hệ thống LTI: tích chập thông thường giữa tín hiệu vào và đáp ứng xung
Tích 2 DFT <=> tích chập vòng trong miền thời gian.
Æ dùng DFT để tính đáp ứng ngõ ra của hệ thống LTI ?????
¾ Xét bộ lọc FIR có đáp ứng xung h(n), chiều dài M.
Tín hiệu ngõ vào x(n), chiều dài L.
Khi đó, tín hiệu ngõ ra y(n) có chiều dài L+M-1.
Tín hiệu vào Hệ thống Tín hiệu ra
rời rạc
x(n) y(n)=h(n)*x(n)
X(Ω) Y(Ω)=X(Ω)H(Ω)
Số mẫu cần để biểu diễn phổ Y(Ω) là: N≥L+ M – 1 Æ cần lấy DFT N điểm.
Lấy DFT N điểm cho 2 chuỗi x(n) và h(n).
9
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.1.3 Lọc tuyến tính dựa vào DFT (tt):
¾ Sơ đồ thực hiện:
Chèn zeros vào 2 chuỗi x(n) và h(n) để có chiều dài N.
x(n) X(k)
Chèn M-1 DFT
zeros N điểm
IDFT y(n)=x(n)*y(n)
X
N điểm
¾ Bằng cách tăng chiều dài từng chuỗi (thêm zeros), tích chập vòng sẽ cho kết
quả tương tự tích chập tuyến tính, hay nói cách khác, DFT có thể được dùng
để lọc tuyến tính (tính đáp ứng ngõ ra của hệ thống tuyến tính).
¾ Trường hợp, tín hiệu ngõ vào dài, dùng phương pháp cộng chồng lấp.
Việc tính toán cho từng khối sẽ thực hiện như trên.
10
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.1.4 Phân tích phổ tín hiệu dùng DFT:
¾ Xét chuỗi tín hiệu cần phân tích x(n), -∞ ≤ n ≤ ∞.
¾ Quan sát tín hiệu trong L mẫu, nghĩa là 0 ≤ n ≤ L-1.Tín hiệu quan sát lúc đó:
⎧1 , 0 ≤ n ≤ L − 1
xx ( n ) = x ( n ) w( n ), w( n ) = ⎨
⎩ 0 , otherwise
Hiện tượng rò phổ:
¾ Giả sử x(n) = cos Ω0n, -∞ ≤ n ≤ ∞. Lúc đó, xx(n) = cos Ω0n, 0 ≤ n ≤ L-1.
Phổ của tín hiệu (biểu thức giải tích) dùng DTFT:
X (Ω) = πδ (Ω − Ω0 ) + πδ (Ω + Ω0 ) W(Ω)
1
XX (Ω) = [W (Ω − Ω0 ) + W (Ω + Ω0 )]
2
trong đó, W(Ω) là biến đổi DTFT của hàm cửa sổ w(n).
sin Ω L / 2 − j Ω ( L −1) / 2
W (Ω ) = e -2π/L 2π/L
sin Ω / 2 11
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.1.4 Phân tích phổ tín hiệu dùng DFT (tt):
|X(Ω)| XX(Ω)
-Ω0 0 Ω0
Phổ của tín hiệu dùng DFT: dán thêm N-L zeros vào x(n) rồi lấy DFT N
điểmÆ phổ XX(k).
Nhận xét:
¾ Phổ XX(Ω) không nằm tại một vị trí như X(Ω) mà bị trải ra trong
miền tần số do đặc tính của cửa số w(n)Æ hiện tượng rò phổ.
¾ Như vậy, việc cửa sồ hóa (cắt cụt tín hiệu) sẽ làm sai lệch kết quả
ước lượng phổ.
12
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
Độ phân giải tần số:
¾ Xét tín hiệu gồm 2 thành phần tần số: x(n) = cos Ω1n + cos Ω2n, -∞ ≤ n ≤ ∞.
Lúc đó, xx(n) = x(n)w(n) = cos Ω1n + cos Ω2n, 0 ≤ n ≤ L-1.
¾ Phổ của tín hiệu (biểu thức giải tích) dùng DTFT:
X (Ω) = πδ (Ω − Ω1 ) + πδ (Ω + Ω1 ) + πδ (Ω − Ω 2 ) + πδ (Ω + Ω 2 )
1
XX (Ω) = [W (Ω − Ω1 ) + W (Ω + Ω1 ) + W (Ω − Ω 2 ) + W (Ω + Ω 2 )]
2
|X(Ω)|
-Ω2 -Ω1 0 Ω1 Ω2
2π
¾ Nếu: | Ω1 − Ω 2 |< : W(Ω - Ω1) và W(Ω - Ω2) sẽ chồng lấn lên nhau
L
Æ không phân biệt được 2 vạch phổ
2π
¾ Nếu: | Ω1 − Ω 2 |≥ : W(Ω - Ω1) và W(Ω - Ω2) được hiển thị tách biệt
L nhauÆ phân biệt được 2 vạch phổ
13
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
¾ Giá trị : ΔΩ = 2π được gọi là độ phân giải phổ. Như vậy, hàm của sổ có chiều
L
dài L chỉ phân biệt được các thành phần tần số cách nhau
2π
một đoạn ít nhất là: ΔΩ = .
L
¾ Phổ tín hiệu dùng DFT: (Ω1 = 0.2π; Ω2 = 0.22π)
N 1
T0 = N × TS =
fS
fS =
TS
N = T0 f S
0 Ts 2Ts 3Ts …… t
18
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.2.1 FFT cơ số 2 phân chia theo thời gian (tt):
Trong đó: G(k): biến đổi DFT N/2 điểm của chuỗi g(l)
H(k): biến đổi DFT N/2 điểm của chuỗi h(l)
Æ Như vậy, X(k) có thể được tính từ các DFT N/2 điểm G(k) và H(k). Cụ thể là:
X(0) = G(0) + W80H(0); WNk + N = WNk
X(1) = G(1) + W81H(1);
WNk + N / 2 = −WNk
……..
X(4) = G(0) + W84H(0)= G(0) - W80H(0);
X(5) = G(1) + W85H(1)= G(1) - W81H(1);
……….. G(k) và H(k): N/2 điểm
Tính X(k) đòi hỏi N điểm
ÆDùng tính chất tuần hoàn:
G(k+N/2) = G(k)
H(k+N/2) = H(k)
19
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
¾ Tiếp tục thực hiện cho g(l) và h(l) như x(n) cho đến khi chỉ còn tính DFT 2
điểm Æ cần log2N lần chia.
20
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
Sơ đồ FFT 8 điểm phân chia theo thời gian:
21
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
Khối thực hiện cơ bản:
j 2π 0 /8
W 80 = e − = 1
j 2π 1/8 2 2
W 81 = e − = − j
2 2
j 2π 2 /8
W 82 = e − = − j
j 2π 3 /8 2 2
W 83 = e − = − − j
2 2
Nhận xét:
¾ Việc tính toán DFT N điểm dùng giải thuật FFT cơ số 2 cần có:
log2N: tầng tính toán
Mỗi tầng yêu cầu: N/2: phép nhân phức và N: phép cộng phức.
Æ Việc tính toán DFT N điểm dùng giải thuật FFT cần có:
(N/2)log2N: phép nhân phức ( >< N2: phép nhân phức)
Nlog2N: phép cộng phức ( >< N(N-1): phép cộng phức)
22
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.2.2 FFT cơ số 2 phân chia theo tần số: (chứng minh tương tự)
Sơ đồ giải thuật FFT 8 điểm phân chia theo tần số
23
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
7.2.2 FFT cơ số 2 phân chia theo tần số:
Khối thực hiện cơ bản:
Nhận xét:
¾ Số lượng phép nhân phức và phép cộng phức giống như FFT phân chia
theo thời gian.
¾ Sự khác nhau cơ bản giữa hai giải thuật là ở thứ tự sắp xếp dữ liệu ngõ
vào, ngõ ra.
Tính IDFT dùng giải thuật FFT:
*
1 ⎡ N −1 * kn ⎤ 1
∑ X ( k )W N ⎥⎦ = N ⎣ D F T ( X ( k )) ⎦
*
x(n) = ⎡ *
⎤
N ⎣⎢ k = 0
hay: 1 *
x(n) = ⎡⎣ F F T ( X * ( k )) ⎤⎦
N
24
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
Ví dụ 5: Cho tín hiệu: x(n)={4, 2, 0, -2, -4, 2, 0, -2}
a. Tìm phổ X(k) dùng giải thuật FFT 8 điểm phân chia theo thời gian
Lời giải: X(k) = {0, 8, -j8, 8, 0, 8, j8, 8}
25
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
Ví dụ 5: Cho tín hiệu: x(n)={4, 2, 0, -2, -4, 2, 0, -2}
b. Tìm phổ X(k) dùng giải thuật FFT 8 điểm phân chia theo tần số
Lời giải: X(k) = {0, 8, -j8, 8, 0, 8, j8, 8}
26
5/22/2010
Bài giảng: Xử lý số tín hiệu
Chương 7 BIẾN ĐỔI DFT VÀ GIẢI THUẬT FFT (tt)
Bài tập:
27
5/22/2010