• Nie Znaleziono Wyników

3. Metoda liniowej interpolacji DFT

3.4. Uzupełnianie zerami w metodzie LIDFT

Rozwinięcie metody LIDFT, uzyskane po uwzględnieniu techniki uzupełniania zerami [60–62], umożliwiło zastosowanie w tej metodzie okien czasowych z klasycz-nej analizy widma (omówioklasycz-nej w rozdziale 1). Punktem wyjścia tej modyfikacji jest uwzględnienie parametru R (krotności uzupełniania zerami – zgodnie z (1.114)) w definicji (3.1) odpowiadające aproksymacji charakterystyki widmowej okna czaso-wego W( ) przez funkcje ˆ ( )Wk  ak dla bk [ / , (k R k1) / ]R (rys. 3.13):

( 1)/ /2 1 2 /2 / ˆ | ( ) ( ) | k R NR k k NR k R Q WWd 

 

 (3.28)

skąd, w podobny sposób jak w rozdz. 3.2 (przyrównując pochodne Q względem ak, k

b do zera) uzyskuje się zależności (3.4)–(3.5) z tą różnicą, że zamiast xn π /n N

zachodzi xnπ / (n NR), co umożliwia zmniejszenie błędu aproksymacji (3.28) przez zwiększenie wartości R . Wzrost R dwukrotnie zmniejsza wartość Q 16 razy (na podstawie (3.4) i rys. 3.14).

Ponadto zamiast (3.8) zachodzi: ( 1 / 2)

k R k k

     , k [k(k1 / 2)] /R, k [ 1 / 2,1 / 2] (3.29)

Metoda liniowej interpolacji DFT 85

Następnie, podobnie jak w rozdz. 3.2 dla przypadku pierwszej wersji metody LIDFT, uzyskuje się [60–62] zmodyfikowane liniowe równanie macierzowe uwzględ-niające technikę uzupełniania zerami:

2 2 2 1 2 1 i k i k k i i k i k P P k P i P r s B u s t C v                     , Ck kBk, i k S,  1{ , ...,k1 kP} (3.30)

Rys. 3.11. Błąd min   w funkcji d k  oraz |Bi| / |Bk|

Rys. 3.12. Optymalna dla min   wartość parametru d k w funkcji  oraz |Bi| / |Bk|

86 Rozdział 3 gdzie: π / FFT { 2 2} j m R m m n n NR rew (3.31) π / FFT { 2} j m R m m n n n NR sjeβ w (3.32) π / FFT { 2 2} j m R m m n n NR tew (3.33) π / FFT { 2 jxn} j m R m m n n n NR ue y we (3.34) π / FFT { 2 jxn} j m R m m n n n NR vje y we (3.35) (sin ) / n xn xn   , n 6[cosxn(sinxn) /xn] /xn, xn π / (n NR) (3.36) 0, ..., 1 mNR , n N/ 2, ...,N/ 2 1 (3.37)

a { }zn NR oznacza uzupełnianie zerami N-elementowego zbioru próbek { }zn N przez dołączenie próbek zerowych na końcu sygnału (wg wzoru (1.116)). Można jednak uprościć podane zależności, stosując uzupełnienia według (1.115) zamiast (1.116) i eliminując w ten sposób konieczność mnożenia przez funkcję ej m Rπ / , co uwzględ-niono po rozszerzeniu metody LIDFT przedstawionej w rozdz. 4.

Rys. 3.13. Linearyzacja charakterystyki widmowej W( ) okna czasowego w metodzie LIDFT z uwzględnieniem uzupełniania

zerami – przykład dla okna trójkątnego i R2

Rys. 3.14. Wartości R c dla 4 n c według (3.5) n

Metoda liniowej interpolacji DFT 87

Równania (3.29)–(3.37) wyznaczają algorytm metody LIDFT uwzględniającej technikę uzupełniania zerami, który można podzielić na następujące etapy:

1. Próbkujemy sygnał ( )y t , uzyskując próbki yn indeksowane, zgodnie z (3.37) w zakresie n N/ 2, ...,N/ 2 1 .

2. Wybieramy okno czasowe i obliczamy współczynniki rm, sm, tm, um, vm na pod-stawie (3.31)–(3.37).

3. Jako wstępną lokalizację składowych w widmie wybieramy zbiór S{ , ...,k1 kK}, co oznacza, że sygnał składa się z K składowych sinusoidalnych o częstotliwościach

unormowanych [( 1) / , / ]

m

k km R km R

   . Biorąc pod uwagę składowe sprzężone

przyjmujemy, że i k S,  1{ , ...,k1 kP}{ , ...,k1 k NR kK,  K 1, ...,NR k  . 1 1} 4. Na podstawie wyznaczonych wartości i ,

k

z punktu 3 obliczamy Bk, Ck z

rów-nania (3.30), a stąd kCk/Bk i na podstawie (3.29) częstotliwości unormowane k

 . Amplitudę i fazę każdej składowej sinusoidalnej wyznacza się z równania 2

k

j

k k

A ejB .

5. Sprawdzamy wartość Imk i w razie potrzeby powtarzamy pkt 3–5 algorytmu w celu lepszego doboru zbioru S , uzyskując zmniejszenie Imk. W idealnym przypadku Imk  . 0

W tym przypadku warunki początkowe metody LIDFT stanowią: wstępna lokali-zacja składowych w widmie (dobór zbioru S ), wybór okna czasowego i parametru R . W porównaniu do pierwszej wersji metody LIDFT (rozdz. 3.2) pojawia się pewna niedogodność. Dokładność wstępnej lokalizacji składowych w widmie musi być

R-krotnie większa (k[(k1) / , / ]R k R zamiast k [k 1, ]k ), co w praktyce czę-sto nie jest możliwe do spełnienia dla dużych wartości R . Trudności te można wyeli-minować, stosując algorytm LIDFT iteracyjnie. Wówczas można poprzestać na do-tychczasowym warunku k[(k1), ]k , a nawet jeszcze mniej wymagającej lokalizacji składowych w widmie. Pokazuje to następująca analiza. Załóżmy, że wstępną lokalizację składowej j kn N/

k

B e przyjmujemy z błędem k R/ (w bin), gdzie k jest liczbą całkowitą, tzn. k[(kk1) / ,(R kk) / ]R zamiast

[( 1) / , / ]

k k R k R

  . Załóżmy, że sygnał składa się z jednej takiej składowej i że taki sygnał poddajemy analizie metodą LIDFT, uzyskując estymatory ˆB , ˆk C oraz k

ˆ ˆ ˆk B Ck/ k   , 1 2 ˆ ( Reˆ ) / k k k k R

      . Istotna jest zależność Reˆk/R w funk-cji

k R/

, którą dla okna trójkątnego przedstawiono na rysunku 3.15. Dla k  0 oraz k R/  ( 1,5;1,5) zachodzi Reˆk/Rk R/ , a dla innych wartości k

z zakresu [ 0,5; 0,5] następuje przesunięcie charakterystyki o wartość z zakresu [ 0,5 / ; 0,5 / ] R R bin (rys. 3.15b).

88 Rozdział 3

a) b)

Rys. 3.15. Wpływ niedokładnej wstępnej lokalizacji składowej w widmie w metodzie LIDFT z użyciem techniki uzupełniania zerami i oknem trójkątnym na wyniki estymacji częstotliwości

– symulacje dla sygnału złożonego z jednej oscylacji: a) zależność Reˆk/R w funkcji błędu k R/ lokalizacji składowej, b) przybliżony zakres k R/

wyznaczający możliwość iteracyjnego stosowania algorytmu LIDFT

Jeśli błąd wstępnej lokalizacji składowej nie przekracza ok. (–1,5;1,5) bin (ten zakres nie zależy od wartości R , a od szerokości listka głównego okna czasowego), to można zastosować algorytm LIDFT dwukrotnie: pierwszy raz z błędem lokalizacji składowej k R/ (1,5:1,5) bin, otrzymując ˆkCˆk /Bˆk i drugi raz dokonując ko-rekty wstępnej lokalizacji składowej o wartość round(Re ) /ˆk R (gdzie funkcja

( )

round x zaokrągla wartość x do najbliższej liczby całkowitej). Na przykładzie

sy-gnału zdefiniowanego w tabeli 3.1 pokazano jednak, że dla sysy-gnału wieloczęstotliwo-ściowego potrzebnych może być kilka kolejnych iteracji. Pozostaje jeszcze odpowie-dzieć na pytanie, czy dla innych okien czasowych uzyskamy podobne jak na rysunku 3.15 charakterystyki. Na rysunku 3.16a przedstawiono przykładowe charakterystyki dla okien spełniających warunek z równań (1.36), (1.37), a na rysunku 3.16b dla okien niespełniających tego warunku.

Na rysunku 3.16b dla okna Hanninga i Kaisera (z parametrem

3

) pokazano, że dla pewnych wartości k oraz k R/ otrzymuje się duże wartości | Reˆk / |R rów-nocześnie ze zmianą znaku Reˆk /R dla małej zmiany k R/ (dla niektórych całko-witych wartości k R/ , gdy transformata okna zmienia znak). Dlatego przy iteracyj-nym stosowaniu metody LIDFT korzystniejsze będą okna o właściwościach pokazanych na rysunku 3.16a. Tego zalecenia nie spełnia okno wprowadzone w pierwszej wersji metody (rozdz. 3.3).

Dla pokazania możliwości zastosowania techniki uzupełniania zerami i klasyczne-go okna czasoweklasyczne-go w metodzie LIDFT przeanalizowano sygnał złożony z K 3 składowych sinusoidalnych o parametrach zdefiniowanych w tabeli 3.1.

Metoda liniowej interpolacji DFT 89

a) b)

Rys. 3.16. Wpływ niedokładnej wstępnej lokalizacji składowej w widmie w metodzie LIDFT z użyciem techniki uzupełniania zerami i różnymi oknami czasowymi na wyniki estymacji częstotliwości – symulacje dla sygnału złożonego z jednej oscylacji: a) dla okien z nieujemną

transformatą wg rów. (1.36), (1.37), b) dla okien niespełniających rów. (1.36), (1.37) Tabela 3.1. Parametry sygnału analizowanego w rozdziale 3.4

i ki f NTki [bin] i k A i k [rad] 1 10,2 1 0,5 2 12,3 0,02 1,0 3 15,4 0,004 1,5 sin(2π10, 2 / 0,5) 0, 02sin(2π12,3 / 1, 0) 0, 004sin(2π15, 4 / 1,5) dla 32, , 31 n y n N n N n N n  

Zastosowanie okna trójkątnego do 64 próbek tego sygnału i uzupełnienie zerami do 512 próbek oraz wykonanie algorytmu FFT (klasyczna analiza DFT) nie daje możli-wości poprawnej estymacji dwóch spośród trzech składowych sinusoidalnych, tj. dru-giej i trzeciej (rys. 3.17).

W zastosowaniu dla tego sygnału metody LIDFT założono nieznajomość dokładnej lokalizacji składowych, przyjęto na początek stały ich odstęp co 3 bin w zakresie od 10 do 16 bin. Wybór tych trzech wartości (10, 13, 16 bin), wybór okna trójkątnego oraz R to określenie warunków początkowych metody LIDFT. Po kolejnym za-8 stosowaniu algorytmu LIDFT koryguje się o wartości (round(Re )) /ˆk R lokalizację składowych w widmie, aż do momentu kiedy | Reˆk| 0,5 dla wszystkich składo-wych. Wyniki czterech kolejnych realizacji algorytmu LIDFT dla wszystkich trzech składowych sinusoid są przedstawione na rysunku 3.18, wraz z definicjami błędów. Wstępna lokalizacja składowych dla pierwszej iteracji wynosi (w bin): { 80/R , 104/R , 128/R }, dla drugiej: { 82/R , 96/R , 125/R }, dla trzeciej: { 82/R , 100/R , 124/R } i dla

90 Rozdział 3

czwartej: { 82/R , 99/R , 124/R }. Analiza wyników z rysunku 3.18 pokazuje, że za-dowalające wyniki można uzyskać np. po dwóch lub trzech iteracjach, jednak pełne możliwości metody LIDFT można uzyskać po wszystkich iteracjach.

Rys. 3.17. Sygnał wieloczęstotliwościowy (3 sinusoidy) z tabeli 3.1 przedstawiony w postaci 3 prążków: a) moduł widma sygnału uzyskany

algorytmem FFT dla 64 próbek sygnału pomnożonych przez okno trójkątne i uzupełnionych zerami do 512 próbek, b) analogiczny moduł

widma z zastosowaniem okna prostokątnego, c) błąd aproksymacji widma pierwszego prążka funkcjami liniowymi

Rys. 3.18. Wyniki czterech iteracji metody LIDFT dla sygnału wieloczęstotliwościowego (3 sinusoidy) zdefiniowanego

w tabeli 3.1 oraz uzyskane błędy estymacji amplitud, częstotliwości i faz składowych sinusoidalnych

Metoda liniowej interpolacji DFT 91

Dla metody LIDFT rozszerzonej o technikę uzupełniania zerami błąd estymacji amplitudy, dla przypadku składowych wystarczająco odległych od siebie w widmie (dla których można pominąć dodatkowe efekty wynikające z ograniczenia rozdziel-czości częstotliwościowej metody) jest sumą dwóch składników:

1 2

max | Bk| |Bk| |Bk| (3.38)

gdzie w przypadku stosowania okna trójkątnego składowe błędu (3.38) są wyznaczone przez: 2 1|Bk| 0,0823 /R   (3.39) 2 | | | ( ) | | | 0,4 | | | (0) | i k i k k B W B B W      (3.40)

a  W( ) jest obwiednią błędu aproksymacji charakterystyki widmowej okna czaso-wego, która jest odwrotnie proporcjonalna do R . 2

Porównując (3.38)–(3.40) z tradycyjną metodą uzupełniania zerami (okno czasowe + uzupełnianie zerami + FFT), tj. równaniami (1.121)–(1.123) zauważyć można za-sadniczą różnicę. Przez zwiększenie wartości R następuje zmniejszenie obu składo-wych błędu z (3.38), a więc i błędu całkowitego, co nie jest możliwe dla metody tra-dycyjnej.

Pominięto część przekształceń zależności matematycznych i wyników szczegóło-wych dotyczących rozszerzenia metody LIDFT o technikę uzupełniania zerami, przedstawionych w [60–62], ograniczając się jedynie do przedstawienia najważniej-szych aspektów, ponieważ pełne wyprowadzenie odpowiednich zależności uwzględ-niających uzupełnianie zerami w metodzie LIDFT jest zawarte w rozdz. 4. Wyprowa-dzenia i analizy z rozdz. 4 uwzględniają również pewne szczegółowe modyfikacje przedstawionej metody, jak np. eliminację konieczności mnożenia przez funkcję

π /

j m R

e w (3.31)–(3.35), eliminację konieczności mnożenia przez funkcję ejxn

w (3.34), (3.35), uwzględnienie indeksowania próbek w zakresie n0, ...,N (lub 1 jak dotychczas n N/ 2, ...,N/ 2 1 ) czy parametryzacja funkcji n, n z (3.36) wprowadzająca parametr  wpływający na stopień nieciągłości funkcji aproksymują-cej charakterystykę widmową okna czasowego. Jednak przede wszystkim rozdz. 4 wprowadza inną postać funkcji n, n, definiując uniwersalną aproksymację okręgu jednostkowego odpowiednim wielokątem oraz uogólnia metodę LIDFT na metodę wykorzystującą parę okien czasowych. Wszystkie modyfikacje poprawiają właściwo-ści obliczeniowe metody LIDFT oraz dokładność estymacji.

4. Metoda LIDFT jako interpolacja z zastosowaniem

Powiązane dokumenty