Chuong 8-1 - Chương 5 BIẾN ĐỔI FOURIER RỜI RẠC...

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Chương 5 BIẾN ĐỔI FOURIER RỜI RẠC (DFT) T.S. Đinh Đức Anh Vũ Giới thiệu về DFT Biến đổi Fourier liên tục x(n) = 0.8nu(n) x(n) Miền thời gian F X (ω) = ∞ ∑ x(n)e Miền tần số − jωn n = −∞ Vấn đề: X(ω) liên tục theo tần số ω → không thích hợp cho việc tính toán trên máy tính Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 2 Lấy mẫu miền tần số X(ω) Lấy mẫu N=10 X (k ) ≡ X (ω = 2π N N=10 k) Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 3 Lấy mẫu miền tần số X (ω ) ω = 2πk / N = X ( X (k ) = L + = 2π N −1 k) = π − j 2N kn n=− N ∑ ∑ ∑ x ( n )e − j 2πkn / N k = 0,1,..., N − 1 n = −∞ ∑ x ( n )e ∞ lN + N −1 ∞ x ( n )e N −1 + ∑ x ( n )e π − j 2N kn + n =0 2 N −1 ∑ x ( n)e π − j 2N kn n= N +L π − j 2N kn l = −∞ n =lN ∞ − j 2π kn = ∑ ∑ x(n − lN ) e N n = 0 l = −∞ N −1 N −1 ⇒ X ( k ) = ∑ x p ( n)e π − j 2N kn Thay n bằng (n-lN) với n =0 x p ( n) = ∞ ∑ x(n − lN ) l = −∞ T/h xp(n) – lặp chu kỳ của x(n) mỗi N mẫu – là t/h tuần hoàn với chu kỳ cơ bản N N −1 x p (n) = ∑ ck e j 2πkn / N n = 0,1,...N − 1 k =0 1 ck = N N −1 ∑x n=0 p (n)e − j 2πkn / N k = 0,1,..., N − 1 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 4 Lấy mẫu miền tần số 1 X (k ) N 1 N −1 j 2 π kn x p ( n) = ∑ X ( k )e N N k =0 ck = k = 0,1,K , N − 1 n = 0,1,K , N − 1 Có thể phục hồi t/h xp(n) từ các mẫu của phổ X(ω) x p ( n) x ( n) = 0 x(n) n 0 0 ≤ n ≤ N −1 others L xp(n) N>L n 0 L N xp(n) N<L 0 alias n Khi N≥L, x(n) có thể được khôi phục từ các mẫu phổ tần số tại ωk=2πk/N N Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 5 Lấy mẫu miền tần số Có thể phục hồi X(ω) từ các mẫu X(k) với k=0,1,…,N-1 – Giả sử N≥L → x(n) = xp(n) khi 0≤n≤N-1 x ( n) = 1 N N −1 ∑ X ( k )e j 2πkn / N k =0 1 N −1 X (ω ) = ∑ x(n)e = ∑ ∑ X (k )e j 2πkn / N e− jωn n =−∞ n =0 N k =0 N −1 1 N −1 = ∑ X (k ) ∑ e− j (ω −2πk / N ) n k =0 N n =0 ∞ − jωn N −1 1 N −1 − jωn 1 1 − e− jωN P(ω ) = ∑ e = N n =0 N 1 − e− jω sin(ωN / 2) − jω ( N −1) / 2 = e N sin(ω / 2) 1 π P ( 2N k ) = 0 N −1 π X (ω ) = ∑ X (k ) P(ω − 2N k ) N≥L k =0 k =0 k = 1,2, K , N − 1 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 6 Lấy mẫu miền tần số Tóm tắt 1 x ( n) = N x(n) có chiều dài L≤N N −1 ∑ X ( k )e π j 2N kn k =0 BĐ F ∞ ∑ x ( n )e X (ω ) = − jωn n = −∞ X (ω ) = ∑ X (k ) P(ω − ωk ) k =0 1 P(ω ) = N Lấy mẫu N −1 N −1 X (k ) = ∑ x(n)e N −1 ∑e − jωn k =0 π − j 2N kn ωk = 2π N k Phục hồi n =0 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 7 Lấy mẫu miền tần số Ví dụ: x(n)=anu(n), 0<a<1 – Phổ t/h được lấy mẫu tại các tần số ωk=2πk/N, k=0, 1, …, N-1 ∞ X (ω ) = ∑ a n e − jωn = n =0 x p ( n) = = 1 1 − ae − jω X (k ) = X ( 2πk 1 )= N 1 − ae − j 2πk / N ∞ ∑ x(n − lN ) l = −∞ 0 ∑ a n−lN = l = −∞ an 1− aN a=0.8 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 8 Biến đổi Fourier rời rạc (DFT) Chuỗi không tuần hoàn, năng lượng hữu hạn x(n) Các mẫu tần số X(2πk/N), k=0, 1,…,N-1 không đặc trưng cho x(n) khi x(n) có chiều dài vô hạn Nó đặc trưng cho chuỗi tuần hoàn, chu kỳ N xp(n) xp(n) là lặp tuần hoàn của x(n) nếu x(n) có chiều dài hữu hạn L ≤ N Do đó, các mẫu tần số X(2πk/N), k=0, 1,…,N-1 đặc trưng cho chuỗi chiều dài hữu hạn x(n); i.e. X(n) có thể được phục hồi từ các mẫu tần số {X(2πk/N)} x(n)=xp(n) trên một chu kỳ N (được đệm vào N-L zero). Mặc dù L mẫu của X(ω) có thể tái tạo lại được X(ω), nhưng việc đệm vào N-L zero giúp việc tính toán DFT N điểm của X(ω) đồng nhất hơn DFT N −1 X ( k ) = ∑ x ( n )e IDFT π − j 2N kn n =0 k = 0,1,K , N − 1 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số 1 N −1 j 2π kn x ( n) = ∑ X ( k )e N N k =0 n = 0,1,K , N − 1 Side 9 Biến đổi Fourier rời rạc (DFT) Ví dụ: xác định DFT N điểm của chuỗi x(n) có độ dài L hữu hạn (N≥L) ∞ L −1 0 ≤ n ≤ L −1 1 X (ω ) = ∑ x(n)e − jωn = ∑ e − jωn x ( n) = others n = −∞ n =0 0 1 − e − jωL sin(ωL / 2) − jω ( L −1) / 2 = = e 1 − e − jω sin(ω / 2) Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 10 Biến đổi Fourier rời rạc (DFT) Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 11 DFT – BĐ tuyến tính DFT N −1 X ( k ) = ∑ x ( n )e IDFT 1 N −1 j 2π kn x ( n) = ∑ X ( k )e N N k =0 n = 0,1,K , N − 1 π − j 2N kn n =0 k = 0,1,K , N − 1 WN = e− j 2π / N N −1 X (k ) = ∑ x(n)W n =0 kn N k = 0,1, K, N − 1 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Nghiệm thứ N của đơn vị 1 N −1 − x(n) = ∑ X (k )WN kn N n =0 n = 0,1, K , N − 1 Side 12 DFT – BĐ tuyến tính x(0) x(1) xN = M x( N − 1) 1 1 WN = 1 M 1 X ( 0) X (1) XN = M X ( N − 1) 1 L Các mẫu miền thời gian 1 2 WN 4 WN M WN 2 WN M WNN −1 2 WN ( N −1) Các mẫu miền tần số WNN −1 2 WN ( N −1) M ( N −1)( N −1) WN 1 L L L Ma trận BĐ tuyến tính BĐ DFT N điểm X N = WN x N − x N = WN 1 X N − * 1 WN 1 = N WN xN = W X N WNW = NI N 1 N * N WN là ma trận đường chéo * N Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 13 DFT – Quan hệ với các phép BĐ khác Với hệ số Fourier của chuỗi chu kỳ Chuỗi {xp(n)} tuần hoàn chu kỳ N N −1 x p ( n ) = ∑ ck e DFT N điểm của chuỗi x(n) π j 2N kn k =0 −∞ ≤ n ≤ ∞ X(k) = Nck 1 N −1 − j 2 π kn ck = ∑ x p ( n ) e N DFT N điểm cho chính xác N n =0 phổ vạch của chuỗi k = 0,1, K, N − 1 tuần hoàn chu kỳ N 1 N −1 j 2 π kn x ( n ) = ∑ X ( k )e N N n =0 n = 0,1, K , N − 1 N −1 X ( k ) = ∑ x ( n )e π − j 2N kn n =0 k = 0,1, K , N − 1 Với BĐ Fourier của chuỗi không chu kỳ – DFT N điểm cho phổ vạch của chuỗi không chu kỳ x(n) nếu x(n) hữu hạn có độ dài L ≤ N SV xem thêm mối quan hệ giữa DFT và BĐ Z; giữa DFT và hệ số Fourier của t/h LTTG Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 15 DFT – Biểu diễn tín hiệu Dạng thẳng Dạng vòng Âm Chiều dương Dương n n=1 -2 -1 0 1 2 n=0 n=-1 Chiều âm x(n) = {1 2 3 4} x(n) x(1) 4 3 2 x(2) 1 x(0) x(n) n 0 1 2 3 x(3) Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 16 DFT – Biểu diễn tín hiệu theo vòng x p ( n) = Chuỗi tuần hoàn chu kỳ N, mở rộng từ x(n) x 'p (n) = x p ( n − k ) = Chuỗi dịch xp(n) đi k mẫu ∞ ∞ ∑ x(n − lN ) n = −∞ ∑ x(n − lN − k ) l = −∞ x ( n) 0 ≤ n ≤ N − 1 x ' ( n) = 0 otherwise ' p Chuỗi có chiều dài hữu hạn từ x’p(n) Quan hệ giữa x(n) và x’(n): dịch vòng x’(n) = x(n-k, MOD N) ≡ x((n-k))N x(n) 1 2 3 4 1 0 1 2 3 3 xp(n) 2 3 4 1 1 2 4 1 2 3 4 -4 -3 -2-1 0 1 2 3 4 5 6 7 xp(n-2) 1 2 3 4 1 2 3 4 1 4 x(n) 1 x(0) x’(2) 1 x’(n) 4 3 x’(0) 2 x(3) 0 1 2 3 4 x’(1) 2 x(2) 3 2 3 -2 -1 0 1 2 3 4 5 6 7 8 9 x(1) x’(n) 4 2 3 x’(3) Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 17 DFT – Tính đối xứng vòng Phép dịch vòng của một chuỗi N điểm tương đương với phép dịch tuyến tính của chuỗi mở rộng tuần hoàn của nó Chuỗi N điểm là chẵn theo vòng nếu nó đối xứng qua điểm 0 trên vòng tròn – i.e. x(N-n) = x(n), 0 ≤ n ≤ N-1 Chuỗi N điểm là lẻ theo vòng nếu nó phản đối xứng qua điểm 0 trên vòng tròn – i.e. x(N-n) = -x(n), 0 ≤ n ≤ N-1 Đảo theo thời gian của chuỗi N điểm: đảo các mẫu của chuỗi quanh điểm 0 trên vòng tròn – i.e. x((-n))N = x(N-n), 0≤n≤N-1 – Phép đảo được thực hiện bằng cách vẽ x(n) theo chiều kim đồng hồ Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 18 DFT – Tính đối xứng vòng Giả sử x(n) và BĐ DFT X(k) là t/h phức – x(n) = xR(n) + jxI(n), 0≤n≤N-1 – X(k) = XR(k) + jXI(k), 0≤k≤N-1 N −1 X R (k ) = ∑ [xR (n) cos 2πkn + xI (n) sin 2πkn ] N N n =0 N −1 X ( k ) = − [x ( n) sin 2πkn − x (n) cos 2πkn ] ∑ R I N N I n =0 1 N −1 xR ( n) = ∑ [X R (k ) cos 2πkn − X I ( k ) sin 2πkn ] N N N k =0 N −1 x ( n) = 1 ∑ [X R (k ) sin 2πNkn + X I (k ) cos 2πNkn ] I N k =0 Nếu x(n) thực: X(N-k) = X*(k) = X(-k) X ( N − k ) = X ( k ) và ∠X ( N − k ) = −∠X (k ) Nếu x(n) thực và chẵn: x(n) = x(N-n) → XI(k) = 0 N −1 X (k ) = ∑ x(n) cos n =0 2πkn N Nếu x(n) thực và lẻ: x(n) = -x(N-n) → XR(k) = 0 N −1 X ( k ) = − j ∑ x( n) sin n =0 2πkn N Nếu x(n) thuần ảo: x(n) = jxI(n) N −1 X R (k ) = ∑ xI (n) sin n =0 2πkn N Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số 1 x ( n) = N N −1 ∑ X (k ) cos k =0 1 x ( n) = j N 2πkn N N −1 ∑ X (k ) sin k =0 2πkn N N −1 X I (k ) = ∑ xI (n) cos 2πkn N n =0 Side 19 DFT – Tính chất Tuần hoàn DFT x(n) ← N → X (k ) x ( n) = x ( n + N ) ⇒ X (k ) = x(k + N ) ∀n ∀k Tuyến tính DFT x1 (n) ← N → X 1 (k ) DFT x2 (n) ← N → X 2 (k ) DFT ⇒ a1 x1 (n) + a2 x2 (n) ← N → a1 X 1 (k ) + a2 X 2 (k ) Tổng chập vòng DFT x1 (n) ← N → X 1 (k ) DFT x2 (n) ← N → X 2 (k ) DFT N ⇒ x1 (n) ⊗ x2 (n) ← N → X 1 (k ) X 2 (k ) N Tổng chập vòng N điểm N x1 (n) ⊗ x2 (n) N −1 = ∑ x1 (k ) x2 ((n − k )) N n = 0,1, K , N − 1 k =0 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 20 DFT – Tổng chập vòng DFT x1 ( n) ← N → X 1 (k ) DFTN x2 (n) ← → X 2 (k ) DFT x(m) ← N → X (k ) = X 1 (k ) X 2 (k ) x ( m) a =1 N N −1 k N ∑ a = 1 − a a ≠ 1 k =0 1− a Trong do a=e π j 2N = IDFT { X (k )} = = = ( m − n −l ) N −1 1 N ∑ X ( k )e 1 N N −1 ∑ X (k ) X 1 N N −1 − j 2 π kn − j 2 π kl j 2 π km x1 ( n)e N ∑ x1 (l )e N e N ∑ ∑ k =0 n =0 l =0 1 = N a = 1, khi : m − n − l = pN , p ∈ Z π j 2N km k =0 1 k =0 2 ( k )e π j 2N km N −1 N −1 N −1 N −1 N −1 ∑ x (n)∑ x (l )∑ e n =0 1 l =0 2 π j 2N k ( m − n − l ) k =0 a ≠ 1 ⇒ a N = e j 2π ( m − n −l ) = 1 ⇒ 1 − a N = 0 N −1 N ⇒ ∑ ak = k =0 0 m − n − l = pN ⇔ l = ((m − n)) N otherwise N −1 x(m) = ∑ x1 ( n) x2 ((m − n)) N n =0 N −1 x(n) = ∑ x1 (k ) x2 ((n − k )) N k =0 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số m = 0,1, K , N − 1 n = 0,1, K , N − 1 Side 21 DFT – Tính chất Đảo theo thời gian DFT x(n) ← N → X (k ) DFT ⇒ x((−n)) N = x( N − n) ← N → X ((− k )) N = X ( N − k ) Dịch vòng theo thời gian DFT x(n) ← N → X (k ) DFT ⇒ x((n − l )) N ← N → X (k )e − j 2πkl / N Dịch vòng theo tần số DFT x(n) ← N → X (k ) DFT ⇒ x(n)e j 2πnl / N ← N → X ((k − l )) N Liên hợp phức DFT x(n) ← N → X (k ) DFT x* (n) ← N → X * ((−k )) N = X * ( N − k ) ⇒ * DFT x ((−n)) N = x* ( N − n) ← N → X * (k ) Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 24 DFT – Tính chất Tương quan vòng DFT x(n) ← N → X (k ) DFT y (n) ← N → Y (k ) ~ ~ ~ ⇒ r xy (l ) ← → R xy (k ) = X (k )Y (k ) DFTN * với N −1 r xy (l ) = ∑ x(n) y * ((n − l )) N n =0 Nhân 2 chuỗi DFT x1 (n) ← N → X 1 ( k ) DFT x2 (n) ← N → X 2 (k ) DFT ⇒ x1 (n) x2 (n) ← N → N X 1 (k ) ⊗ X 2 (k ) 1 N Định lý Parseval DFT x(n) ← N → X (k ) DFT y (n) ← N → Y (k ) N −1 N −1 ⇒ ∑ x(n) y (n) = ∑ X (k )Y * (k ) n =0 * k =0 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 25 DFT – Lọc tuyến tính Y(ω) = H(ω)X(ω) – Hàm liên tục theo tần số ω – Khó thực hiện trên các máy tính số → DFT: một cách tính hiệu quả của tổng chập miền thời gian Lọc tuyến tính x(n) y(n) h(n) – Tín hiệu ngắn M −1 y ( n ) = ∑ h( k ) x ( n − k ) x(n) chiều dài = L (n=0,1,…,L-1) h(n) chiều dài = M (n=0,1,…,M-1) k =0 y(n) chiều dài N = M+L-1 Số mẫu phổ (tần số) cần thiết để biểu diễn duy nhất chuỗi y(n) ≥ L+M-1 Y(k) = H(k)X(k), k=0,1,…,N-1 H(k), X(k): DFT N điểm của h(n), x(n) (các số 0 được đệm vào để tăng kích thước chuỗi lên N) y(n) = IDFTN{Y(k)} • Tổng chập vòng N điểm của h(n) và x(n) tương đương với tổng chập tuyến tính của h(n) với x(n). • DFT có thể được dùng để lọc tuyến tính (bằng cách đệm thêm các số 0 vào chuỗi tương ứng) Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 26 DFT – Lọc tuyến tính Tín hiệu nhập dài: chia nhỏ x(n) thành từng block có độ dài cố định – Overlap-Save Bộ lọc có h(n): chiều dài M T/h nhập x(n): được chia nhỏ thành từng block – Overlap-Add có chiều dài L >> M PP Overlap-Save – DFTN và IDFTN với N = L+M-1 – Mỗi block dữ liệu được xử lý bao gồm M-1 điểm của block trước và L điểm mới của t/h nhập M-1 điểm của block đầu tiên được set bằng 0 – Đáp ứng xung của bộ lọc được đệm thêm L-1 số 0 để tăng chiều dài lên N DFT của N điểm của h(n) được tính một lần duy nhất Input Add M-1 zeros M-1 x1(n) M-1 L M-1 x2(n) x3(n) Output L L L L M-1 M-1 L M-1 L L M-1 Discard Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số L Side 29 DFT – Lọc tuyến tính PP Overlap-Add – Đệm thêm M-1 số không vào mỗi block dữ liệu đầu vào Input x1(n) L zeros M-1 L x2(n) x3(n) M-1 L L Output M-1 + L M-1 + M-1 L M-1 Phương pháp hiệu quả hơn dùng để xác định bộ lọc tuyến tính được trình bày trong chương 6 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 31 DFT – Phân tích tần số T/h ngắn – Tính DFT từ x(n) T/h dài – Cửa sổ hoá x(n): t/h cần phân tích Giới hạn chiều dài chuỗi một khoảng L mẫu ⇔ Nhân chuỗi với cửa sổ chiều dài L xw(n) = x(n)w(n) w(n): hàm cửa sổ Hàm cửa sổ có chiều dài L chỉ phân biệt được nếu các tần số cách nhau ít nhất một đoạn π ∆ω = 2L Cửa sổ chữ nhật 1 w(n) = 0 Cửa sổ Hanning 0 ≤ n ≤ L −1 otherwise 2π 1 (1 − cos L −1 n) 0 ≤ n ≤ L − 1 2 w( n) = otherwise 0 Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 32 DFT – Phân tích tần số Ví dụ 1 w(n) = 0 x(n) = cos ω1n + cos ω 2 n 0 ≤ n ≤ L −1 otherwise ^ X (ω ) = 1 [W (ω − ω1 ) + W (ω − ω 2 ) + W (ω + ω1 ) + W (ω + ω 2 )] 2 L=25 L=50 L=75 L=100 ω1=0.2π ω2=0.22π Rò rỉ công suất Khoa Công Nghệ Thông Tin - Đại Học Bách Khoa Tp. HCM Bài Giảng Môn: Xử Lý Tín Hiệu Số Side 33 ...
View Full Document

This note was uploaded on 01/18/2012 for the course INFORMATIK 2011 taught by Professor Phanthuongcang during the Winter '11 term at Cornell University (Engineering School).

Ask a homework question - tutors are online