Jaka jest zaleta filtru plików MATLAB


30

MATLAB filtfiltwykonuje filtrowanie do przodu i do tyłu, tj. Filtruje, odwraca sygnał, filtruje ponownie, a następnie ponownie do tyłu. Najwyraźniej zrobiono to w celu zmniejszenia opóźnień fazowych? Jakie są zalety / wady korzystania z takiego filtrowania (wydaje mi się, że spowodowałoby to efektywny wzrost kolejności filtrów).

Czy lepiej byłoby filtfiltzawsze używać zamiast filter(tj. Tylko filtrowanie do przodu)? Czy są jakieś aplikacje, w których jest to konieczne i których nie należy używać?


Nie używaj filtrowania fazy zerowej dla dźwięku, ponieważ powoduje to „wstępne dzwonienie”, które brzmi dziwnie. Filtrowanie w fazie minimalnej jest bardziej naturalne. ccrma.stanford.edu/~jos/filters/Linear_Phase_Really_Ideal.html
endolit

Odpowiedzi:


34

Najlepiej możesz na to spojrzeć w dziedzinie częstotliwości. Jeśli jest sekwencją wejściową, a jest odpowiedzią impulsową filtra, to wynikiem pierwszego przejścia filtra jestx[n]h[n]

X(ejω)H(ejω)

z i przekształcenia Fouriera odpowiednio i . Odwrócenie czasu odpowiada zastąpieniu przez w dziedzinie częstotliwości, więc po odwróceniu czasu otrzymujemyX(ejω)H(ejω)x[n]h[n]ωω

X(ejω)H(ejω)

Drugi przebieg filtra odpowiada kolejnemu pomnożeniu przez :H(ejω)

X(ejω)H(ejω)H(ejω)

co po odwróceniu czasowym ostatecznie daje widmo sygnału wyjściowego

(1)Y(ejω)=X(ejω)H(ejω)H(ejω)=X(ejω)|H(ejω)|2

ponieważ dla współczynników filtra o wartościach rzeczywistych mamy . Równanie (1) pokazuje, że widmo wyjściowe uzyskuje się przez filtrowanie za pomocą filtra o odpowiedzi częstotliwościowej , który ma wyłącznie wartość rzeczywistą, tj. Jego faza jest równa zero, a zatem występują bez zniekształceń fazowych.H(ejω)=H(ejω)|H(ejω)|2

To jest teoria. W przetwarzaniu w czasie rzeczywistym występuje oczywiście dość duże opóźnienie, ponieważ odwrócenie czasu działa tylko wtedy, gdy zezwolisz na opóźnienie odpowiadające długości bloku wejściowego. Ale to nie zmienia faktu, że nie ma zniekształceń fazowych, to tylko dodatkowe opóźnienie danych wyjściowych. W przypadku filtrowania FIR to podejście nie jest szczególnie przydatne, ponieważ równie dobrze można zdefiniować nowy filtr i uzyskać ten sam wynik przy zwykłym filtrowaniu. Bardziej interesujące jest stosowanie tej metody z filtrami IIR, ponieważ nie mogą one mieć fazy zerowej (lub fazy liniowej, tj. Czystego opóźnienia).h^[n]=h[n]h[n]

W sumie:

  • jeśli masz lub potrzebujesz filtra IIR i chcesz zniekształceń zerowej fazy, ORAZ opóźnienie przetwarzania nie stanowi problemu, ta metoda jest przydatna

  • jeśli opóźnienie przetwarzania jest problemem, nie należy go używać

  • jeśli masz filtr FIR, możesz łatwo obliczyć nową odpowiedź filtru FIR, która jest równoważna z użyciem tej metody. Zauważ, że dzięki filtrom FIR zawsze można zrealizować fazę dokładnie liniową.


Utworzyłem tag o nazwie maximum-aposteriori-estimation. Czy możesz zmienić nazwę na maximum-a-posteriori-estimation? Przez pomyłkę zapomniałem -po a. Dziękuję Ci.
Royi

15

Uważam, że ten film jest bardzo, bardzo pomocny (rozwija się w odpowiedzi Matta).

Oto kilka kluczowych pomysłów z filmu:

  • Faza zerowa nie spowoduje zniekształceń fazowych, ale spowoduje filtr nie przyczynowy. Oznacza to, że jeśli dane są filtrowane podczas gromadzenia, nie będzie to możliwe (dotyczy tylko przechowywanych danych, które możemy przetworzyć).wprowadź opis zdjęcia tutaj
  • Gdy zaimplementujesz filtr nie przyczynowy, stany przejściowe są rozmazane do przodu i do tyłu (np. Jeśli chcemy tętnienia o 2 dB, fakt, że będziemy wykonywać bieg do przodu i do tyłu za pomocą filtra oznacza, że ​​będziemy chcieli te mają 1dB).wprowadź opis zdjęcia tutaj
  • Wykorzystuje właściwość odwracania w czasie transformacji Fouriera w czasie dyskretnym. wprowadź opis zdjęcia tutaj
  • Efektywna odpowiedź częstotliwościowa wywołana przez FILTFILT jest równa kwadratowi tej wielkości w jednym kierunku. Bierzesz sygnał wejściowy x[n], filtrujesz go, odwracasz wynik, filtrujesz go ponownie i odwracasz (krok odwrócenia czasu wymaga, aby wszystkie dane były dostępne).wprowadź opis zdjęcia tutaj
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.