DFT
Transkrypt
DFT
CPS 2006 DYSKRETNE PRZEKSZTAŁCENIE FOURIERA – C.D. Twierdzenie o przesunięciu Istnieje ważna właściwość DFT, znana jako twierdzenie o przesunięciu. Mówi ono, że: Przesunięcie w czasie okresowego ciągu wejściowego x(n) powoduje stałe przesunięcie fazowe DFT. Jeśli zdecydujemy się próbkować x(n) począwszy od n równego pewnej wartości n = k, w przeciwieństwie do n = 0, to DFT tych przesuniętych w czasie wartości próbek stanowi X k ( m ) = e j 2π km / N X ( m ) (1) Z równania (1) widać, że jeśli punkt, w którym rozpoczynamy próbkowanie x(n) jest przesunięty w prawo o k próbek, to wyjściowe widmo Xk(m) DFT wyraża się jako X(m), o każdym zespolonym składniku X(m) przemnożonym przez liniowe przesunięcie fazowe e j 2π km / N , które jest przesunięciem fazy o 2πkm/N Na odwrót, jeśli punkt, w którym rozpoczynamy próbkowanie x(n) jest przesunięty w lewo o k próbek, to widmo Xk(m) wyraża się jako X(m) mnożone przez e− j 2π km / N CPS 2006 Przykład2 ( patrz Przykład 1 z poprzedniego wykładu - DFT ) Dokonano próbkowania sygnału wejściowego z przykładu poprzedniego DFT x ( t ) = sin ( 2π ⋅1000 ⋅ t ) + 12 sin ( 2π ⋅ 2000 ⋅ t + 34π ) z opóźnieniem o k = 3 próbki. Na rysunku 1 pokazano oryginalną wejściową funkcję czasu 1.5 0 1 7 1 0.5 5 0 6 4 -0.5 2 -1 3 -1.5 0 0.2 0.4 0.6 0.8 1 1.2 1.4 x 10 -3 Rysunek 1. Próbkowanie sygnału x(t) w obu przykładach Nowy, przesunięty ciąg x(n) stanowi wartości reprezentowane grubymi czarnymi kropkami na rys. 1., których wartości to: x(0) =1,0607, x(2) = - 1,0607, x(4) = - 0,3535, x(6) = 0,3535, x(l) =0,3535 , x(3) = - 1,3535, x(5) = 0,3535, x(7) = 0,6464 CPS 2006 Wyznaczając DFT ciągu , Xk(m) ma postać: m amplituda faza 0 1 2 3 4 5 6 7 0 4 2 0 0 0 2 4 0 +45 -45 0 0 0 +45 -45 4 część część urojona rzeczywista 0 0 2,8284 2,8284 1,4141 -1,4141 0 0 0 0 0 0 1,4141 -1,4141 2,8284 -2,8284 4 MODUŁ 3 2 2 0 1 -2 0 0 2 4 6 8 3 -4 FAZA 0 4 6 8 6 8 4 CZ. RZECZYWISTA CZ. UROJONA 2 2 1 0 0 -2 -1 2 0 2 4 6 8 -4 0 2 4 Rysunek 2. Wyniki DFT z przykładu 2: (a) moduł Xk(m), (b) faza Xk(m), (c) część rzeczywista Xk(m), (d) część urojona Xk(m). CPS 2006 Z obliczeń wynika, że amplituda Xk(m) amplitudy X(m). jest nie zmieniona względem Amplituda DFT względem oryginalnego sygnału okresowego nie uległa zmianie chociaż próbkowaliśmy sygnał w innym przedziale. Jednak, faza DFT zmienia się w zależności od chwili, w której zaczęliśmy próbkować sygnał x(n). Patrząc na składową DFT Xk(m), odpowiadającą m = 1 sprawdzimy wartości fazy sygnału przesuniętego: Pamiętając, że X(1) z przykładu 1 DFT miała amplitudę 4 przy kącie fazowym -90 mamy dla k = 3 oraz N = 8: X 3 (1) = e j 2π k m N ⋅ X (1) = e j 2π 3 − jπ 8 ⋅ 4e 2 = 4e jπ 4 (2) Zatem X3(m) ma amplitudę równą 4 i kąt fazowy +45o. Odwrotne dyskretne przekształcenie Fouriera Wyrażeniami standardowymi dla IDFT są x ( n) = 1 N −1 X ( m ) e j 2π mn / N ∑ N m =0 (3) x ( n) = ⎡ ⎛ ⎛ 1 N −1 n⎞ n ⎞⎤ X m cos 2 m j sin 2 m π + π ( ) ⎢ ⎥ ⎜ ⎜ N m∑ N ⎟⎠ N ⎠⎟ ⎦⎥ ⎝ ⎝ =0 ⎣⎢ (4) i jednocześnie CPS 2006 Sygnał dyskretny w dziedzinie czasu można traktować jako sumę składowych sinusoidalnych o różnych częstotliwościach, a wartości X(m) DFT tworzą zbiór N wartości zespolonych, określających amplitudę i fazę każdej ze składowych tworzących tę sumę. Przykład Jeśli wyznaczymy IDFT wstawiając wyniki z przykładu 1 do równania (3), przejdziemy z powrotem z dziedziny częstotliwości do dziedziny czasu i otrzymamy wartości próbek oryginalnego sygnału x(n). 1 N −1 X m e j 2π m2/8 ∑ ( ) x ⎡⎣ 2⎤⎦ = 8 m =0 x ⎡⎣ 2⎤⎦ = 1 ( X ( 0 ) e jπ 0/8 + X (1) e jπ 4/8 + X ( 2 ) e jπ 6/8 X ( 3) e jπ 8/8 + ... + X ( 7 ) e jπ 14/8 ) 8 x[2] = 0,6464 oraz x[0] = 0,3535, x[1] = 0,3535, x[2] = 0,6464, x[3] = 1,0607, x[4] = 0,3535, x[5] = -1,0607, x[6] = -1,3535, x[7] = -0,3535 Zauważmy, że wyrażenie dla IDFT, określone równaniem (3), różni się od równania dla DFT jedynie czynnikiem skalującym 1/N oraz zmianą znaku wykładnika. Oprócz różnicy w skalowaniu wartości, wszystkie właściwości dotyczące DFT, jakimi dotąd zajmowaliśmy się, stosują się również do IDFT. CPS 2006 Przeciek DFT Poprzednie przykłady DFT przyniosły poprawne wyniki, ponieważ wejściowe ciągi x(n) stanowiły starannie dobrane przebiegi sinusoidalne. Jak się okazuje, DFT próbkowanych sygnałów rzeczywistych prowadzi do wyników w dziedzinie częstotliwości, które mogą być mylące. Właściwość DFT, znana jako przeciek widma, powoduje, że wyniki DFT stanowią jedynie aproksymację widma sygnałów wejściowych poddanych próbkowaniu. Istnieją sposoby minimalizacji przecieku, nie można jednak wyeliminować go całkowicie. DFT ograniczają się do operowania na skończonych zbiorach N wartości wejściowych, próbkowanych z częstotliwością fp, dając w wyniku N- punktową transformatę, której dyskretne wartości wyjściowe są związane częstotliwościami: fm = mf p ; N m = 0,1,2,..., N − 1 dla których wyznaczamy kolejne próbki DFT. DFT daje prawidłowe wyniki tylko wtedy, kiedy ciąg danych wejściowych zawiera energię rozłożoną dokładnie przy częstotliwościach, dla których dokonujemy analizy określonych równaniem (5), będących całkowitymi wielokrotnościami częstotliwości podstawowej fp/N. Przykład (5) CPS 2006 Jeśli sygnał wejściowy zawiera składową o pewnej częstotliwości pośredniej, np.:1,5 fp / N to pomiędzy częstotliwościami mfp / N, dla których wyznaczamy wartości DFT, ta składowa sygnału wejściowego ujawni się w pewnym stopniu przy wszystkich N wyjściowych wartościach częstotliwości DFT, dla których przeprowadzamy częstotliwościową analizę tego sygnału! Wyznaczamy 64 punktową DFT dla ciągu, który otrzymano w wyniku próbkowania 3 okresów sinusoidy (rys.3). Obliczona transformata pokazuje, że ciąg nie zawiera składowej o częstotliwości innej niż m=3. Korelacja ciągu wejściowego oraz składowych sinusoidalnych dla m różnego od 3 jest równa zero. 1.5 35 3 OKRESY DFT 30 1 25 0.5 20 0 15 -0.5 10 -1 -1.5 5 0 2 4 6 8 10 12 14 16 18 20 22 0 0 5 10 15 20 25 30 35 Rysunek 3. 64-punktowa DFT (a) ciąg wejściowy, (b) moduł wartości wyjściowych DFT, pierwsza połowa wyniku Mamy teraz ciąg wejściowy sinusoidalny mający 3,4 okresu dla 64 próbek. Ponieważ ten ciąg wejściowy nie ma całkowitej liczby okresów w przedziale 64 próbek, energia wejściowa przecieka do wszystkich innych próbek DFT, jak to pokazano na rys. 4(b). CPS 2006 1.5 30 3,4 OKRESÓW DFT 1 25 0.5 20 0 15 -0.5 10 -1 5 -1.5 0 2 4 6 8 10 12 14 16 18 20 22 0 0 5 10 15 20 25 30 35 Rysunek 4. 64-punktowa DFT (a) ciąg wejściowy, (b) moduł wartości wyjściowych DFT, pierwsza połowa wyniku Próbka DFT np. dla m = 4 nie jest równa zeru, ponieważ suma iloczynów ciągu wejściowego i składowej odpowiadającej analizie częstotliwości dla m= 4 nie jest już równa zeru. Jest to przeciek — powoduje on. że dowolny sygnał wejściowy, którego częstotliwość nie jest dokładnie równa częstotliwości, dla której jest wyznaczana dana próbka DFT, przecieka do wszystkich innych wyznaczanych próbek DFT. Przeciek jest nie do uniknięcia, kiedy wyznaczamy DFT rzeczywistego ciągu czasowego o skończonej długości. Jak należy przewidywać i minimalizować skutki przecieku ? Dla rzeczywistego przebiegu sinusoidalnego, zawierającego k okresów w N- punktowym wejściowym ciągu czasowym, wartości prążków N-punktowej DFT w funkcji indeksu m są aproksymowane za pomocą funkcji sinc ⎡ ⎤ N sin ⎣π ( k − m ) ⎦ X ( m) = ⋅ 2 π ( k − m) (6) CPS 2006 a 1 0.8 Widmo ciągłe 0.6 DFT X ( m) = 0.4 ⎡ ⎤ N sin ⎣π ( k − m ) ⎦ ⋅ 2 π ( k − m) 0.2 0 -0.2 -0.4 -5 -4 -3 -2 -1 0 1 2 3 4 5 b 1 Widmo amplitudowe 0.5 DFT X ( m) = 0 -5 -4 -3 -2 -1 0 1 2 3 ⎡ ⎤ N sin ⎣π ( k − m ) ⎦ ⋅ 2 π ( k − m) 4 5 Rysunek 5. DFT dla N-punktowego ciągu wejściowego, zawierającego k okresów rzeczywistej sinusoidy: (a) widmo jako funkcja m-tej próbki DFT, (b) widmo amplitudowe. CPS 2006 Krzywą na rys. 5 (a), zawierającą listek główny oraz okresowe szczyty i doliny, znane jako listki boczne, możemy traktować jako N-punktowe widmo, rzeczywistego czasowego ciągu sinusoidalnego, mającego k pełnych okresów w wejściowym N- punktowym przedziale czasowym. Wartości DFT są dyskretnymi próbkami, które znajdują się na krzywych z rys. 5: to jest, DFT będzie spróbkowaną wersją widma ciągłego. Jeśli ciąg wejściowy ma dokładnie całkowitą liczbę k okresów, przeciek nie pojawia się, ponieważ jeśli kąt w liczniku równania (6) jest niezerową całkowitą wielokrotnością π, to sinus tego kąta jest równy zeru. Jeśli wejściowa sinusoida ma całkowitą liczbę okresów w przedziale N próbek sygnału wejściowego w dziedzinie czasu, to wartości wyjściowe DFT są położone na krzywej widma ciągłego dokładnie w punktach przejść przez zero tej krzywej. Przykład: Rzeczywista sinusoida o częstotliwościach 8 kHz,8,5 kHz,8,75 kHz, o amplitudzie 1, została spróbkowana częstotliwością 32kHz. Dla 32 punktowej DFT odległość między próbkami wynosi fp/N=1kHz. DFT pokazuje rysunek. a 20 18 8kHz DFT 16 14 12 10 8 6 4 2 0 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000 CPS 2006 bic 20 18 8,5kHz DFT 16 14 12 10 8 6 4 2 0 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000 20 18 8,75kHz DFT 16 14 12 10 8 6 4 2 0 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000 Rysunek 6. DFT dla 32-punktowego ciągu wejściowego sinusoidalnego częstotliwość sygnału f=8kHz, (b) f=8,5kHz, (c) f=8,75kHz (a) CPS 2006 Skutki przecieku widma DFT są kłopotliwe, ponieważ wartości prążków odpowiadające sygnałom o małej amplitudzie będą zakłócane przez poziomy listków bocznych z sąsiednich prążków odpowiadających sygnałom o dużej amplitudzie. Ważna technika, znana jako okienkowanie jest najbardziej powszechnym sposobem redukcji przecieku. Okienkowanie zmniejsza przeciek DFT przez zminimalizowanie amplitudy listków bocznych funkcji sinc z równania (6). 1 0 -1 -20 0 20 40 60 80 100 0 20 40 60 80 100 0 20 40 60 80 100 1 0 -1 -20 1 0 -1 -20 Rysunek 9.1. Minimalizacja nieciągłości w punktach końcowych przedziału próbkowania: (a) wejściowa sinusoida o nieskończonym czasie trwania; (b) okno prostokątne odpowiadające przedziałowi próbkowania, (c) iloczyn okna prostokątnego i wejściowej sinusoidy CPS 2006 1 0 -1 -2 0 0 20 40 60 80 100 0 20 40 60 80 100 0 20 40 60 80 100 1 0 -1 -2 0 1 0 -1 -2 0 Rysunek 9.2. (a) wejściowa sinusoida o nieskończonym czasie trwania; (b) trójkątna funkcja okna, (c) iloczyn okna trójkątnego i wejściowej sinusoidy; 1 0 -1 -2 0 0 20 40 60 80 100 0 20 40 60 80 100 0 20 40 60 80 100 1 0 -1 -2 0 1 0 -1 -2 0 Rysunek 9.3. (a) wejściowa sinusoida o nieskończonym czasie trwania(b) funkcja okna Hanninga, (c) iloczyn okna Hanninga i wejściowej sinusoidy, CPS 2006 Rozważmy sygnał o nieskończonym czasie trwania w dziedzinie czasu, pokazany na rys. 9.1(a). DFT może być przeprowadzona jedynie na przedziale próbkowania o skończonym czasie, takim jak pokazany na rys. 9.1(c). Możemy traktować DFT sygnału wejściowego z rys. 9.1(c) jako DFT iloczynu sygnału wejściowego o nieskończonym czasie trwania z rys. 9(a), i okna prostokątnego, którego amplituda wynosi 1 w przedziale próbkowania pokazanym na rys. 9.1(b). Za każdym razem, kiedy wyznaczamy DFT ciągu wejściowego o skończonym czasie trwania, w sposób domyślny mnożymy ten ciąg przez okno samych jedynek i mnożymy wartości wejściowe poza tym przedziałem przez zera. Jak się okazuje, kształt funkcji sinc=sin(x)/x jest spowodowany przez to okno prostokątne, ponieważ ciągła transformata Fouriera okna prostokątnego jest funkcją sinc. Aby zminimalizować przeciek widma spowodowany przez te listki boczne musimy zmniejszyć ich amplitudy używając funkcji okna innych niż okno prostokątne. Wyobraźmy sobie, że przemnożyliśmy nasz sygnał wejściowy z rys. 9.2(a) przez okno trójkątne pokazane na rys. 9.2(b), aby otrzymać okienkowany sygnał wejściowy pokazany na rys. 9.2(c). Zauważmy na rys. 9.2, że wartości tego wynikowego sygnału wejściowego stają się takie same na początku i końcu przedziału próbkowania. Zredukowana nieciągłość zmniejsza poziom względnie wysokich składowych częstotliwościowych w całym zbiorze wartości całej DFT; to znaczy. że poziomy prążków DFT listków bocznych mają zmniejszoną amplitudę, dzięki użyciu okna trójkątnego. Istnieją inne funkcje okien, które zmniejszają przeciek nawet bardziej, niż okno trójkątne, takie jak okno Hanninga z rys. 9.3 (b). Iloczyn okna z rys. 9.3(b) i ciągu wejściowego daje sygnał pokazany na rys. 9.3(c), stanowiący sygnał wejściowy DFT. CPS 2006 Typy okien Zakładając, że N oryginalnych próbek sygnału wejściowego jest indeksowanych przez n, gdzie 0 ≤ n ≤ N − 1 oznaczmy N współczynników okna jako w(n); to znaczy, że ciąg wejściowy x(n) jest mnożony przez odpowiadające współczynniki okna w(n), zanim jest wyznaczona DFT. Zatem DFT Xw(m) okienkowanego ciągu wejściowego x(n) przyjmuje postać N −1 XW ( m ) = ∑ w ( n ) ⋅ x ( n ) e j 2π m n N (7) n =0 Okno prostokątne w ( n ) = 1, dla n = 0,1,2,..., N −1 (zwane także oknem jednostajnym lub — w języku angielskim — boxcar) Okno trójkątne ⎧ n ; n = 0,1,2,..., N / 2 ⎪⎪ N / 2 w(n) = ⎨ ⎪2 − n ; n = N / 2 + 1, N / 2 + 2,..., N − 1 ⎪⎩ N /2 (bardzo podobne do okien Bartletta i Parzena ) ⎛ 1 1 n⎞ w ( n ) = − cos ⎜ 2π ⎟ , n = 0,1, 2,..., N − 1 2 2 N⎠ ⎝ (zwane także oknem podniesionego cosinusa. Hanna lub von Hanna) Okno Hanninga: ⎛ Okno Hamminga: w ( n ) = 0,54 − 0,46cos ⎜ 2π ⎝ n⎞ ; n = 0,1,2,..., N − 1 N ⎟⎠ CPS 2006 Widmo amplitudowe okna prostokątnego stanowi miarę, jakiej zazwyczaj używamy aby porównać inne okna. Definiuje się logarytmiczną odpowiedź amplitudową jako unormować widma różnych okien: pozwalającą Szerokości listków głównych różnych okien nie prostokątnych degradują rozdzielczość częstotliwościową okienkowanych DFT prawie dwukrotnie. Jednak istotne korzyści zmniejszenia przecieku zazwyczaj przeważają nad stratą w częstotliwościowej rozdzielczości DFT. 0 10 Prostokątne Trójkątne Hamminga -1 10 Hanninga -2 10 -3 10 -4 10 0 50 100 150 200 250 300 Rysunek 10. Moduły odpowiedzi okien w unormowanej skali logarytmicznej CPS 2006 Zauważmy zmniejszenie się poziomu pierwszego listka bocznego i gwałtowny spadek listków bocznych okna Hanninga. Okno Hamminga ma nawet mniejsze poziomy pierwszego listka, lecz listki boczne tego okna opadają wolniej w porównaniu z oknem Hanninga. Oznacza to. że przeciek w odległości trzech lub czterech prążków od prążka środkowego jest mniejszy dla okna Hamminga, niż dla okna Hanninga, ale przeciek dla kilkunastu prążków od prążka środkowego jest mniejszy dla okna Hanninga, niż dla okna Hamminga. Przykład: Jeśli zastosujemy okno Hanninga do przykładu 3,4 okresu w przedziale próbkowania, otrzymamy wartości wyjściowe DFT dla tego okienkowanego przebiegu na rys. 11 wraz z wynikami DFT bez okienkowania, tj. przy oknie prostokątnym. 1.5 30 okno Hanninga DFT 1 25 0.5 20 0 15 -0.5 10 okno prostokątne okno Hanninga -1 -1.5 5 0 2 4 6 8 10 12 14 16 18 20 22 0 0 5 10 15 20 25 30 35 okno prostokątne Rysunek 11. Porównanie DFT dla okna prostokątnego i Hanninga Jak oczekiwaliśmy, widmo amplitudowe dla okna Hanninga jest szersze i ma mniejszą wartość maksymalną, lecz przeciek listków bocznych jest zauważalnie zmniejszony w porównaniu z przeciekiem dla okna prostokątnego. Możemy zatem stwierdzić, iż wybór okna stanowi kompromis pomiędzy rozszerzeniem listka głównego, poziomami pierwszego listka bocznego, oraz tego, jak szybko maleją listki boczne wraz ze wzrostem częstotliwości. Użycie każdego szczególnego okna zależy od zastosowań. CPS 2006 Rozdzielczość DFT, uzupełnianie zerami i próbkowanie w dziedzinie częstotliwości Jedną z popularnych metod poprawy rozdzielczości częstotliwościowej DFT, jest metoda znana jako uzupełnianie zerami. Proces ten wymaga dodania do oryginalnego ciągu wejściowego DFT próbek o zerowej wartości w celu zwiększenia całkowitej liczby próbek danych wejściowych. Kiedy próbkujemy funkcję ciągłą w dziedzinie czasu, mającą ciągłą transformatę Fouriera i wyznaczamy DFT tych próbek, wówczas DFT daje w wyniku próbkowaną aproksymację transformaty ciągłej w dziedzinie częstotliwości. Można się spodziewać, że im więcej jest punktów w DFT, tym lepiej wartości wyjściowe tej DFT aproksymują transformatę ciągłą. Próbki wejściowe 1 Moduł DFT 8 0.8 7 0.6 6 0.4 Niezerowa próbka DFT 5 0.2 0 4 -0.2 3 -0.4 2 -0.6 1 -0.8 -1 0 5 10 15 0 0 1 2 3 4 5 6 7 Rys 13. Próbkowanie DFT w dziedzinie częstotliwości: (a) 16 próbek danych wejściowych i N = 16; CPS 2006 1 8 Moduł DFT Próbki wejściowe 0.8 7 0.6 6 0.4 5 0.2 0 4 -0.2 3 -0.4 2 -0.6 3x16 zerowych próbek 1 -0.8 -1 0 10 20 30 40 50 60 70 0 0 5 10 15 Rys 14. Próbkowanie DFT w dziedzinie częstotliwości: wejściowych, 3x16 dołączonych zer; 1 20 25 30 35 16 próbek danych 8 Próbki wejściowe 0.8 Moduł DFT 7 0.6 6 0.4 5 0.2 0 4 -0.2 3 -0.4 2 -0.6 10x16 zerowych próbek 1 -0.8 -1 0 20 40 60 80 100 120 140 160 180 0 0 10 20 30 40 Rys 15. Próbkowanie DFT w dziedzinie częstotliwości: wejściowych, 10x16 dołączonych zer, 50 60 70 80 90 16 próbek danych Dodawanie zer do ciągu wejściowego poprawia rozdzielczość wyniku DFT, ale istnieje praktyczna granica określająca, jak wiele możemy zyskać przez dodanie większej liczby zer. W praktyce, jeśli chcemy przeprowadzić zarówno uzupełnienie zerami, jak i okienkowanie ciągu próbek danych wejściowych, musimy uważać, aby nie zastosować okna do całego sygnału wejściowego, po dołączeniu próbek o wartościach zerowych.