Dyskretna transformata Fouriera Dyskretna transformata Fouriera Discrete Fourier Transform DFT Fourierowskie przedstawienie ciągów o skończonej długości (lub ciągów okresowych dla próbek w jednym okresie) Discrete Fourier Transform - DFT Discrete Fourier Transform - DFT Definicja DFT dla skończonego ciągu x(n) o długości N j 0 d" n d" N -1 próbek dla i jego DTFT , jest to X (e ) j równomiernie spróbkowana transformata wzdłuż X (e ) 0 d" d" 2Ą k = 2Ąk/ N osi , w przedziale w punktach dla . 0 d" k d" N -1 (1) Definicja DFT 0 d" k d" N -1 dla . 2 Interpretacja Interpretacja Ciąg x(n) o skończonej długości N traktowany jako ciąg okresowy xN(n) o okresie N, który w ramach jednego okresu jest identyczny z ciągiem o skończonej długości (pomijamy na razie wycinanie fragmentu sygnału tzw. okienkowanie, gdy xN(n) = x(n)wN(n) ). W przeciwieństwie do szeregu Fouriera okresowej funkcji ciągłej x(t) = fT (t) " " " " fT (t) = Ł Fk exp(jk0t), gdzie 0 = 2Ą / T (2a) k = -" " " " T (2b) Fk = 1/T +" fT (t) exp(-jk0t)dt , 0 szereg Fouriera ciągu (szeregu) okresowego ma tylko N różnych zespolonych wyrazów wykładniczych, gdyż k-ta dyskretna harmoniczna jest okresowa z okresem N e j(2Ą/)kn = e j(2Ą/) (k+rN)n 3 Rozważmy wyrażenie exp(-jk0t)dt we wzorze (2b) na współczynniki Fouriera rozkładu funkcji w przedziale T dla przypadku czasu dyskretnego, tzn. t = nTs i dt=Ts . k0tćłt=nTs = knTs 2Ą /T = knTs 2Ą / NTs = 2Ą kn / N Wtedy całka (2b) , przy podstawieniu dt =Ts i T = NTs przechodzi w szereg (1). T ! ! ! ! Fk = 1/T +" fT (t) exp(-jk0t)dt 0 4 Uwagi Uwagi " X(k) nazywamy dyskretną transformatą Fouriera skończonego ciągu x(n) o długości N próbek (wyrazów). " X(k) również długość N próbek w dziedzinie dyskretnej pulsacji (częstotliwości). WN = e- j2Ą / N " Stosując notację DFT można zapisać w postaci N -1 k (3) X[k] = x[n]WNn, 0 d" k d" N -1 " n=0 Próbek widma jest tyle, ile próbek sygnału. Zespolone, czy to 2 razy więcej? 5 DTFT 6 Odwrotna transformata DFT - IDFT Odwrotna transformata DFT - IDFT Odwrotne przekształcenie do DFT dane jest wzorem N -1 1 -kn (4) x[n] = X[k]WN , 0 d" n d" N -1 " N k=0 Aby wykazać słuszność wzoru (4) (chodzi też o współczynnik N) wykonamy WNn DFT postaci (4). W tym celu pomnóżmy obustronnie (4) przez 0 d" n d" N -1 dla i zsumujmy dla . 7 Otrzymamy N -1 N -1 N -1 ł ł 1 -kn ł ł x[n]WNn = X[k]WN łWNn " " " ł N ł łł n=0 n=0 k=0 N -1N -1 1 - = X[k]WN(k- )n " " N n=0 k=0 N -1N -1 1 - = X[k]WN(k- )n " " N k=0 n=0 ? 8 Wykorzystując zależność N -1 r całkowite for k - = rN, N, - ńł WN(k- )n = " ł 0, otherwise ół n=0 otrzymujemy, że prawa strona poprzedniej równości wynosi X [ ] (wybierając k = l z przedziałów i ), 0 d" k d" N -1 N -1 a zatem x[n]WNn = X [ ] " n=0 co jest poprawną zależnością na DFT ciągu x(n) otrzymanego z (4). 9 6 1,5 3 1 itd. 4 0 2, 6 0, 4 itd. 7 5 N = 8 2 3, 7 k - l = 3 k - l = - 6 (ujemne, w prawo 3/2 Ą) (dodatnie, w lewo co Ą ) WN = e- j2Ą / N N -1 r całkowite for k - = rN, N, - ńł WN(k- )n = " ł 0, otherwise ół 10 n=0 Interpretacja sygnału w czasie przez DFT Interpretacja sygnału w czasie przez DFT 11 Okresowość widma DFT Okresowość widma DFT 12 Przyczyna okresowości DFT Przyczyna okresowości DFT Dla jakich pulsacji w całym przedziale t"(-" ," ) zachodzi exp(j1t)=exp(j2t)? Tylko dla 2 = 1 , co nie wymusza okresowości widma sygnału ciągłego w czasie. Dla jakich pulsacji (liczb k) dla całkowitych n w całym przedziale n"(-" ," ) zachodzi exp(j2Ąk1n/N)=exp(j2Ąk2n/N)? Dla wszystkich k2 = k1 + rN , gdzie r" C, co powoduje okresowości widma dyskretnego dla sygnału dyskretnego w czasie (szeregu, ciągu próbek czasowych). Dla jakich pulsacji ciągłych i dla całkowitych n w całym przedziale n"(-" ," ) zachodzi exp(j1nTs)= exp(j2nTs) dotyczy tzw. DTFT ? Dla wszystkich 2 = 1 + rs = 1 + r2Ą/Ts , co powoduje okresowość widma ciągłego dla sygnału dyskretnego w czasie . Przyczyną okresowości widma jest dyskretyzacja w czasie. Granice sumowania w DFT -1 - komentarz Dlaczego? x(n) N -1 1 -kn x[n] = X[k]WN , 0 d" n d" N -1 " N k=0 xa(t) 1( N -1)m -kn x[n] = X[k]WN , 0 d" n d" N -1 " m N k=0 Przykłady DFT Przykłady DFT Dyskretny impuls w zerze (n) w skończonym przedziale czasu n 1, n = 0 ńł x[n] = ł 0, 1d" n d" N -1 ół i jego DFT N -1 kn 0 X [k] = x[n]WN = x[0]WN =1 " n=0 dla 0 d" k d" N -1 15 Przykłady DFT cd. Przykłady DFT cd. Przesunięty impuls 1, n = m ńł y[n] = ł 0, 0 d" n d" m -1, m +1d" n d" N -1 ół i jego DFT dla N -1 kn km km Y[k] = y[n]WN = y[m]WN = WN " 0 d" k d" N -1 n=0 Dla stałej c widmo X(k) jest zerowe, za wyjątkiem prążka X(0) = Nc, gdyż& .. 16 Przykłady DFT cd. Przykłady DFT cd. Ciąg N próbek cosinusa dla o okresie N/r (r-ta harmoniczna) dla 0 d" n d" N -1 g[n] = cos(2Ąrn/ N), 0 d" r d" N -1 WN = e- j2Ą/ N Korzystając ze wzoru Eulera, otrzymamy dla przyjętej notacji 1 j2Ąrn / N g[n] = (e + e- j2Ąrn / N) 2 17 DFT ciągu g(n) obliczamy zatem jako N -1 N -1 N -1 1 ł kn -(r-k)n ( G[k] = g[n]WN = WN + WNr+k)n ł, " " " ł ł 2ł n=0 łł n=0 n=0 a wykorzystując już poprzednio stosowaną tożsamość N -1 for k - = rN , N , - ( k - )n ńł r całkowite W = " ł N 0, otherwise ół n = 0 otrzymujemy for k = r ńł łN / 2, G[k] = for k = N - r łN / 2, ł 0, otherwise ół 18 Dla N =16 i r =3 wykresy DTFT (linia ciągła) i DFT (prążki o) są następujące f=13/16 = 0,812 brak, gdyż& .. jest natomiast minus 0,1875 f=3/16 = 0,1875 f 0,5 2Ą Ą 0 1 2 3 4 N k N/2 Wykresy są przedstawiane w funkcji znormalizowanej częstotliwości f (przy czym 1= fs), znormalizowanej pulsacji (przy czym Ts=1s, s= 2Ą) lub numerów harmonicznych k . Najczęściej rysowana jest tylko pierwsza połowa wykresu od 0 łącznie z punktem środkowym. Jeżeli w okresie obserwacji N nie mieści się całkowita liczba okresów harmonicznej o okresie L próbek, to pulsacja tej harmonicznej wypada pomiędzy punktami k = 2Ą k / N. W sygnale z rys b) istnieje składowa 12/8 = 1.5 20 DFT w zapisie macierzowym DFT w zapisie macierzowym Wyrażenie na wartości transformaty X(k) w postaci definicji (1) możemy zapisać w postaci macierzowej jako (5) X = DNx gdzie odpowiednie wektory i macierz D są zdefiniowane jako ..... X = [X [0] X[1] X [N -1]]T ..... x = [x[0] x[1] x[N -1]]T 21 Dla zapisu (5), przekształcenie odwrotne (4) możemy zapisać jako (6) x = D-1X N gdzie przyjęto oznaczenie k n 0 1 2 . . . N-1 0 1 1 D-1 = D* N N N . . . N-1 22 Tworzenie macierzy DN z wektorów na kole jednostkowym dla N=8 Skok o kąt 2Ą/N = Ą/4 " obrót w kierunku ujemnym (w prawo) dla prostego DFT, w celu konstrukcji macierzy DN " obrót w kierunku dodatnim (w lewo) dla odwrotnej DFT, w celu konstrukcji macierzy DN-1 23 Tworzenie macierzy DN z wektorów na kole jednostkowym cd. próbki widma - prążki Próbki sygnału 24 Fast Fourier Transform (FFT) Fast Fourier Transform (FFT) Idea wykorzystania cząstkowych wyników mnożenia wartości próbek przez elementy macierzy DN oraz zależności WN(rN + k) = WNk i WN(N/2 + k) = -WNk wynikających z okresowości WNk . MOTYLEK X[5] = x0WN0 + x1W85 + x2W810 + x3W815 + x4W820 + x5W825 + x6W830 + x7W835 = = x0WN0- x1W81 + x2W82 - x3W83 - x4W80 + x5W81 - x6W82 + x7W83 - - - - - - - - - - - - Próbkowanie transformaty DTFT a oryginał Próbkowanie transformaty DTFT a oryginał j X (e ) " rozważamy nieograniczony ciąg x(n) i jego DTFT w postaci , j " próbkujemy w N równomiernie rozłożonych punktach X (e ) dla otrzymując zbiór próbek k = 2Ąk/ N 0 d" k d" N -1 jk {X (e )}, k " rozważamy otrzymany ciąg jako DFT ciągu czasowego y(n), " wyznaczając IDFT porównujemy otrzymany ciąg y(n) z oryginalnym x(n). 26 Skoro " j X (e ) = x[ ]e- j " (7) =-" a zatem jk j2Ąk/ N Y[k] = X (e ) = X (e ) " " k = x[ ]e- j2Ąk / N = x[ ]WN " " =-" =-" i z odwrotnej dyskretnej transformaty IDFT otrzymujemy N -1 1 -kn y[n] = Y[k]WN " N k=0 27 czyli N -1 " 1 k -kn y[n] = x[ ]WN WN " " N k=0 =-" " N -1 ł łł 1 -k(n- ) = x[ ]ł WN " " śł łN ł =-" k=0 a posługując się tożsamością N -1 1 1, for r = n + mN - k ( n - r ) ńł W = " ł N 0, otherwise N ół n = 0 otrzymujemy zależność na y(n) w zależności od oryginału x(n) w postaci " (8) y[n] = x[n + mN], 0 d" n d" N -1 " m=-" 28 Na podstawie (8) wnosimy, że w wyniku dyskretyzacji j X (e ) ciągłego widma DTFT ciągu x(n) otrzymujemy w wyniku odwrotnej dyskretnej transformaty DFT ciąg y(n) będący nieskończoną sumą poprzesuwanych o okres N ciągów pierwotnych x(n). Jest to analog zjawiska próbkowania sygnału x(t), którego widmo jest sumą poprzesuwanych widm sygnału analogowego (przypomnienie). 29 Z zależności (8) wynika, że jeżeli ciąg x(n) ma ma skończoną liczbę wyrazów M mniejszą niż liczba próbek widma N, to wypadkowy ciąg okresowy " (8) y[n] = x[n + mN], 0 d" n d" N -1 " m=-" będzie w ramach każdego okresu N powtórzeniem ciągu nieokresowego (9) M d" N dla i . y[n] = x[n] 0 d" n d" N -1 W przypadku, gdy M > N zachodzi tzw. time-domain aliasing. 30 Time-domain aliasing - przykład Time-domain aliasing - przykład Niech {x[n]} = {0 1 2 3 4 5} ę! j X (e ) k = 2Ąk/ 4 Próbkując DTFT w punktach i stosując czteropunktową IDFT otrzymujemy sekwencję y(n) w postaci dla y[n] = x[n]+ x[n + 4]+ x[n - 4] 0 d" n d" 3 czyli {y[n]} = {4 6 2 3} ę! co przedstawiono schematycznie na kolejnym rysunku 31 n -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 x(n) ...... 0 1 2 3 4 5 ....... x(n-4) 0 1 2 3 4 5 x(n+4) 0 1 2 3 4 5 ____________________________________________________ y(n) = Ł kolumn 4 6 2 3 4 6 2 3 Ciąg x(n) nie może być odtworzony z ciągu y(n). 32 Inny przykład y12(n) y7(n) 33 Kołowe przesunięcie ciągu splot kołowy Kołowe przesunięcie ciągu splot kołowy Rozpatrzmy ciąg x(n) o długości N zdefiniowany dla . 0 d" n d" N -1 Próbki dla n < 0 i są równe zeru. n e" N Definiujemy kołowe przesunięcie ciągu jako operację modulo N xc[n] = x[)#n - no*#N ] (10) no > 0 (jest to tzw. kołowe przesunięcie ciągu w prawo) otrzymujemy Dla x[n - no], for no d" n d" N -1 ńł xc[n] = ł x[N - no + n], for 0 d" n < no ół 34 Dla przykładu, dla N = 6 n0 = 1 n0 = 4 x[)#n - 1*#6 ] x[)#n - 4*#6 ] x[n] 35 Inny przykład dla N = 6 i n0 = -2 (jest to tzw. kołowe przesunięcie ciągu w lewo) 36 Splot liniowy ciągów o długości N-próbek dany jest wzorem (zakłada się, że poza tym przedziałem ciągi przyjmuję zerowe wartości) N -1 (11) yL[n] = g[m]h[n - m], 0 d" n d" 2N - 2 " m=0 Pytanie: Z czego wynika taka długość splotu liniowego? Splot kołowy (circular convolution) definiuje się jako N -1 (12) yC[n] = g[m]h[)#n - m*#N ], 0 d" n d" N -1 " m=0 i oznacza symbolem N y[n] = g[n] h[n] 37 Przykład splotu kołowego Niech dane będą czteropunktowe ciągi g(n) i h(n) w postaci {g[n]} = {1 2 0 1}, {h[n]} = {2 2 1 1} ę! ę! 2 2 h[n] g[n] 1 1 n n 0 1 2 3 0 1 2 3 Splot kołowy o długości N = 4 zapisujemy dla jako 0 d" n d" 3 3 4 yC[n] = g[n] h[n] = g[m]h[)#n - m*#4], " m=0 38 a kolejne wartości splotu kołowego wynoszą 3 yC[0] = g[m]h[)#-m*#4] " m=0 = g[0]h[0] + g[1]h[3] + g[2]h[2] + g[3]h[1] = (1 2) + (21) + (01) + (1 2) = 6 3 yC[1] = g[m]h[)#1- m*#4] " m=0 = g[0]h[1]+ g[1]h[0]+ g[2]h[3]+ g[3]h[2] = (1 2) + (2 2) + (01) + (11) = 7 2 2 h[n] g[n] 1 1 itd. n n 39 0 1 2 3 0 1 2 3 Inny przykład Ostatecznie yC[n] N-1 x3[n] = "x [m]x2[((n - m)) ] 1 N 40 m=0 Jeszcze inny przykład 41 Splot liniowy a kołowy Splot liniowy a kołowy Rozpatrzmy ciągi o długości L= N / 2 uzupełnione zerami do długości N 42 Obliczanie splotu kołowego metodą DFT Obliczanie splotu kołowego metodą DFT Rozpatrzmy ponownie ciągi g(n) i h(n) 2 2 h[n] g[n] 1 1 n n 0 1 2 3 0 1 2 3 oraz ich splot kołowy yC(n) w postaci m funkcje 0 1 2 3 n y(n) g(m) 1 2 0 1 0 h (0-m) 2 1 1 2 6 1 h (1-m) 2 2 1 1 7 2 h (2-m) 1 2 2 1 6 3 h (3-m) 1 1 2 2 5 43 Cykliczny rejestr przesuwający Czteropunktowe DFT ciągów odpowiednio wynoszą G[k] = g[0]+ g[1]e- j2Ąk/ 4 + g[2]e- j4Ąk/ 4 + g[3]e- j6Ąk/ 4 =1+ 2e- jĄk/ 2 + e- j3Ąk/ 2, 0 d" k d" 3 G[0] =1+ 2 +1 = 4, G[1] =1- j2 + j =1- j, G[2] =1- 2 -1 = -2, G[3] =1+ j2 - j =1+ j 44 H[k] = h[0]+ h[1]e- j2Ąk/ 4 + h[2]e- j4Ąk/ 4 + h[3]e- j6Ąk/ 4 = 2 + 2e- jĄk/ 2 + e- jĄk + e- j3Ąk/ 2, 0 d" k d" 3 H[0] = 2 + 2 +1+1 = 6, H[1] = 2 - j2 -1+ j =1- j, H[2] = 2 - 2 +1-1 = 0, H[3] = 2 + j2 -1- j =1+ j 45 Poprzednie transformaty łatwiej obliczyć używając zapisu macierzowego. łg[0]łł 1 1 4 łG[0]łł ł1 1 łł ł łł ł1łł ł śł g[1] 1 - j -1 j 1- j łG[1]śł ł śł 2 ł śł ł śł = D4 łg[2]śł = = łG[2]śł ł śł 0 ł śł 1 -1 1 -1 ł śł - 2 łg[3]śł łG[3]śł ł śłł ł ł śł ł1śł j -1 - jł ł1 ł1+ jł ł ł ł ł 1 1 6 łH[0]łł łh[0]łł ł1 1 łł ł łł ł2łł 1 - j -1 j 1- j ł H[1]śł ł śł 2 ł śł ł śł = D4 łh[1]śł = = łH[2]śł łh[2]śł ł śł 1 ł śł 1 -1 1 -1 ł śł 0 łH[3]śł łh[3]śł ł śłł ł ł śł ł1śł j -1 - jł ł1 ł1+ jł ł ł ł ł 46 Iloczyn widm YC[k] = G[k]H[k], 0 d" k d" 3 wynosi łYC[0]łł łG[0]H[0]łł 24 ł łł ł śł ł śł YC[1] G[1]H[1] - j2 ł śł = = łYC[2]śł łG[2]H[2]śł ł śł 0 łY [3]śł łG[3]H[3]śł ł śł j2 ł ł ł ł ł ł C a czteropunktowa odwrotna DFT 47 łyC[0]łł łYC[0]łł ł śł ł śł 1 yC[1] = D*łYC[1]śł 4 łyC[2]śł Y [2] 4 ł łYC yC[3]śł [3]śł ł ł ł ł C 1 1 24 ł1 1 łłł łł ł6łł 1 1 j -1 - j - j2 ł śłł śł 7 ł śł = = ł śłł śł 6 1 -1 1 -1 0 ł śł 4 ł śłł śł ł5śł j j2 ł ł ł1 - j -1 łł ł 48 Splot liniowy wyznaczany metodą DFT Splot liniowy wyznaczany metodą DFT " Niech g[n] i h[n] będą ciągami o długościach odpowiednio N i M próbek " Splot liniowy ma długość L = N + M -1 " Zdefiniujmy odpowiednie wydłużone sekwencje uzupełnione zerami do długości L próbek g[n], 0 d" n d" N -1 ńł ge[n] = ł 0, N d" n d" L -1 ół ńłh[n], 0 d" n d" M -1 he[n] = ł 0, M d" n d" L -1 ół 49 wtedy yL[n] = g[n] h[n] = yC[n] = g[n] L h[n] * e e Zero-padding g[n] ge[n] (N+M-1)- with point DFT Length-N yL[n] (M-1) zeros (N+M-1)-
point IDFT Zero-padding h[n] he[n] (N+M-1)- with point DFT Length- Length-M (N +M -1) (N-1) zeros Problem w przypadku liczenia tą metodą funkcji korelacji należy odpowiednio przyporządkować próbki z tablicy IDFT odpowiednim wartościom argumentu m korelacji wartości dla m e" 0 leżą prawidłowo, dla m< 0 znajdują się na pozycji (m+L) (dla splotu wszystkie próbki są prawidłowo ułożone) - przykład. 50 Splot liniowy metodą DFT przykład Splot liniowy metodą DFT przykład Dane są ciągi x(n) o długości N =2 i y(n) długości M =3. Ich splot linowy wyznaczony w dziedzinie czasowej o długości L=N+M-1 = 4 przedstawiono poniżej. m ciągi n -2 -1 0 1 2 3 x(n)" y(n) " " " x (m) 1 1 0 y (0-m) 2 2 1 1 1 y (1-m) 2 2 1 3 2 y (2-m) 2 2 1 4 3 y (3-m) 2 2 1 2 51 Wyznaczmy teraz DFT ciągów g(n) i h(n) uzupełnionych zerami do długości splotu liniowego L=4 i oznaczonych jako xe(n) i ye(n). Xe (k) Ye (k) 52 Splot liniowy (równy kołowemu) wyznaczamy jako IDFT [Xe(k)Ye(k)] = Wartości próbek otrzymanego wektora odpowiadają wartościom splotu liniowego x y. " " " " 53 Estymator funkcji korelacji wyznaczany metodą DFT Estymator funkcji korelacji wyznaczany metodą DFT Definicje korelacji wzajemnej (przypomnienie): korelacja sygnału x(n) z y(n) (13a) Rxy (m) = E[x(n+m) y(n)] = E(x(n) y(n-m)] korelacja sygnału y(n) z x(n) (13b) Ryx (m) = E[y(n+m) x(n)] = E[y(n) x(n-m)] Zajmiemy się estymatą korelacji w postaci (13b), rzadziej prezentowaną w podręcznikach, a wykorzystywaną przecież do identyfikacji odpowiedzi impulsowej układu liniowego przy pobudzeniu szumem białym. Estymatą odpowiedzi impulsowej g(n) jest wtedy estymata korelacji wzajemnej sygnału na wyjściu układu y(n) z sygnałem wejściowym u(n). 54 Estymator funkcji korelacji wyznaczany metodą DFT cd. Estymator funkcji korelacji wyznaczany metodą DFT cd. Estymator obciążony korelacji wzajemnej lub skrośnej (13b) ciągów y(n) z x(n) o długościach równych N próbek dany jest wzorem N-m-1 1 __ x(n) y(n + m) dla m e" 0 ( y przesuwane w lewo) Ł N n=0 N-1 1 __ dla m < 0 ( y przesuwane w prawo) x(n) y(n+m) Ł N n=ćłmćł lub najczęściej m y(n) ! y(n) ! ! ! N-1 '" '" '" '" 1 __ x(n) y(n+m) Ryx = dla -(N-1) d" m d" (N-1) (14) Ł N n=0 kiedy to zakłada się, że brak próbki y(i + m) dla występującej w sumie (14) kolejnej próbki x(i) oznacza, że jest ona równa zeru. 55 Bez względu na współczynnik przed sumą w (13) decydujący o obciążeniu estymaty, zawsze należy wyznaczyć (2N-1) razy sumę N-1 N-1 x(n) y(n+m) = y(n) x(n - m) (15) Cyx(m) = Ł Ł n=0 n=0 Wyznaczenie wartości (14) w dziedzinie czasu charakteryzuje się złożonością obliczeniową O(N2). Wyznaczenie wartości (14) w dziedzinie widmowej poprzez zastosowanie DFT (a właściwie jej szybkiego algorytmu Fast Fourier Transform (FFT) obniża złożoność do postaci Nlog2N. Porównując (15) ze wzorem na splot liniowy (16) N-1 (16) y(m) x(m - n) sL(m) = y(m)" x(m) = Ł n=0 otrzymujemy bardzo wygodną obliczeniowo zależność (17a) Cyx(m) = y(m)" x(-m) oraz analogicznie (17b) x(m)" y(-m) Cxy(m) = 56 Obliczenie wartości (16) w dziedzinie widmowej odbywa się według procedury Cyx(m) = IDFT [Ye(k) Xe*(k)] , (18) Ye(k)] X* (k) gdzie i oznaczają odpowiednio DFT uzupełnionego zerami e ciągu y(n) i sprzężoną DFT uzupełnionego zerami ciągu x(n), na przykład jak na rysunku poniżej (uzupełnienie do długości L = M + N 1 = 4) M =2 L = 4 N =3 L = 4 57 Estymator funkcji korelacji metodą DFT - przykład Estymator funkcji korelacji metodą DFT - przykład Estymaty korelacji (14) wyznaczana w dziedzinie czasu wynosi n ciągi przesunięcie m -2 -1 0 1 2 3 c yx (m) x (n) 1 1 w prawo -1 y (n-1) 1 2 2 1 bez 0 y (n) 1 2 2 3 w lewo 1 y (n+1) 1 2 2 4 w lewo 2 y (n+2) 1 2 2 2 Natomiast dyskretne transformaty ciągów ye(n) i xe(n) są równe X* (k) Ye (k) Xe (k) e 58 Ostatecznie IDFT [Ye(k) Xe*(k)] = W kolumnie kolejno występują: cyx(0) = 3 cyx(1) = 4 cyx(2) = 2 cyx(-1) = IDFT(L-1) = IDFT(3) = 1 59 DFT iloczynu ciągów splot kołowy widm DFT DFT iloczynu ciągów splot kołowy widm DFT Rozpatrzmy iloczyn ciągów g(n) i h(n) w postaci 2 2 h[n] g[n] 1 1 n n 0 1 2 3 0 1 2 3 i ich iloczyn y(n) = g(n)h(n) , przedstawione w Tab.1 Tab. 1 Wartości próbek ciągów i ich iloczynu n 0 1 2 3 g(n) 1 2 0 1 h(n) 2 2 1 1 y(n) 2 4 0 1 60 Wyznaczmy splot kołowy uprzednio wyznaczonych widm G(k) i H(k) zgodnie ze wzorem definiującym splot kołowy widm w postaci m =N-1 1 __ Y(k) = G(m) H[(k-m)N ] . Ł N m =0 Dla N = 4 otrzymujemy następującą tabelkę wyznaczania splotu kołowego widm G(k) i H(k) oraz wynik IDFT ze splotu, równy y(n). 61 m funkcje 0 1 2 3 k Y(k) G(m) 4 1 - j -2 1 + j 0 H (0-m)|4 6 1 + j 0 1 - j 7 1 H (1-m)|4 1 - j 6 1 + j 0 2 - 3j 2 H (2-m)|4 0 1 - j 6 1 + j -3 3 H (3-m)|4 1 + j 0 1 - j 6 2 + 3j Transformata odwrotna IDFT z wyniku splotu kołowego widm Y(k) wynosi Otrzymany wynik równy jest próbkom iloczynu y(n)=g(n)h(n) z tabeli 1. 62 Podstawowe własności DFT Podstawowe własności DFT 63