Co robi ten sinc w moim wyjściu filtra z włączonym LP?

10

Próbuję odfiltrować sygnał HP, filtrując go i odejmując sygnał wyjściowy od oryginalnego filtra. Aby uzyskać sygnał filtrowany LP, filtrowałem wstecznie do przodu, stosując filtr Butterwortha trzeciego rzędu dla sygnału 16 000 próbek. Częstotliwość odcięcia wynosiła 0,5 Hz @ 250 Hz. Nie użyto okna.

W pierwszych 85% próbek wynik tej metody wydaje się całkowicie pokrywać z faktycznie przefiltrowanym przez HP sygnałem. Jednak na końcu danych wyjściowych występuje zjawisko nadprzyrodzone jak sinc.

  • Co to powoduje?
  • Co mogę zmienić, aby ta metoda była wykonalna?

Oto dwa nałożone sygnały. Niebieski jest filtrowany przez HP, a czerwony otrzymywany przez odejmowanie.

Sygnały HP i orig-LP

Oto bezwzględna różnica na próbkę. Nigdy nie są dokładnie równi; minimalna różnica wynosi 8e-12. 87% wartości jest poniżej 0,01.

różnica między dwiema metodami

(Jeśli istnieje lepszy sposób na uzyskanie filtra HP z filtra LP , chętnie się go nauczę.)H.(z)

Andreas
źródło
Czy możesz dołączyć kod MATLAB, którego używasz do generowania wykresów? Dane nie są ważne; w razie potrzeby możesz po prostu symulować go losowymi próbkami.
Jason R

Odpowiedzi:

0

Methinks @ hotpaw2 jest na dobrej drodze. Domyślam się, że filtfilt nie obsługuje warunków początkowych dla filtra odwrotnego. To brzmi jak naprawdę trudny problem - nie sądzę, żebym mógł obwiniać Mathworks za to, że popełniłem błąd ...

Poprawka wydaje mi się dość łatwa: zeruj dopełnienie końca sygnału, aż sinc zniknie, i usuń (teraz niezerowe!) Dopełnianie po filtrze.

rtollert
źródło
0

Dla jednego robisz filtr wstecz, a dla drugiego filtr tylko do przodu. W ten sposób dwa filtry będą zachowywać się różnie na jednej lub obu krawędziach.

Jeśli twój sygnał jest silnie stacjonarny i dokładnie okresowy w długości okna danych, możesz spróbować owinąć dane dookoła i rozpocząć filtry od ich długości odpowiedzi impulsowej.

hotpaw2
źródło
Przepraszam, jeśli nie byłem wystarczająco jasny. Sygnał, który porównuję do (niebieski) jest również filtrowany do przodu i do tyłu ( filtfilti butter(3,0.5/250,high)). Sygnał pochodzi z EKG, którego nie spodziewam się, że będzie okresowy.
Andreas,
Czy coś nie rozumiem? Nie rozumiem opinii, ponieważ pierwszy akapit jest wyraźnie błędny.
Andreas,