Korzystam z FFT, aby przeanalizować, co jest zasadniczo obwiednią mocy sygnału (patrz tutaj, aby uzyskać informacje na temat zawierającego projekt), a ponieważ liczby mocy są zawsze dodatnie, aby wyeliminować składnik DC, chciałbym użyć okna funkcja, która jest 50/50 dodatnia i ujemna, w porównaniu do zwykłej funkcji całkowicie dodatniej.
Wziąłem funkcję „ płaskiego wierzchołka ”, usunąłem błąd a0
systematyczny i przekonwertowałem go z cosinusów na sinusoidy, ale nie jestem pewien, czy jest to optymalne (czy nawet znaczące).
Jakieś sugestie?
fft
window-functions
Daniel R. Hicks
źródło
źródło
Odpowiedzi:
Pierwsza pochodna najpopularniejszych funkcji ciągłego okna (von Hann, itp.) Odrzuci prąd stały, ale nadal będzie miała odpowiedź częstotliwościową wielkości zbliżoną do pierwotnej funkcji okna; więc nadal możesz używać oryginalnych kryteriów „dobroci” do wyboru okna, jeśli nie jest to związane z fazą.
źródło
Jeśli zajmujesz się analizą spektralną sygnału z dużą składową prądu stałego i chcesz stłumić ten szczyt prądu stałego, funkcja okna nie jest tym, czego potrzebujesz. Jak zauważyły niektóre inne odpowiedzi, filtr górnoprzepustowy (lub, inaczej patrząc, filtr wycinający z wycięciem na zerowej częstotliwości) jest odpowiednim rozwiązaniem.
Aby zrozumieć dlaczego, musisz pomyśleć o tym, co zastosowanie funkcji okna ma do odpowiedzi częstotliwościowej każdego wyjścia DFT. DFT jest zdefiniowany jako:
Jedną z interpretacji działania DFT jest zbiór filtrów wN. równomiernie rozmieszczone częstotliwości między -fas2) i fas2) . Przekształć powyższą sumę w następujący sposób:
gdzie:
Tak więck -te wyjście DFT jest generowane przez pobranie sygnału wejściowego x [ n ] i pomnożenie go przez złożony wykładniczy z częstotliwością - 2 πkN. w celu uzyskania sygnału poddanego konwersji w dół xk[ n ] . Otrzymany sygnał jest następnie sumowany nadN. -prób okno, aby uzyskać wynik DFT X[ k ] . Jest to skutecznie filtr średniej ruchomej (czasem nazywany filtrem boxcar), którego odpowiedź impulsową można opisać jako:
Odpowiedź wielkościową filtra boxcar można znaleźć, biorąc dyskretną transformatę Fouriera (DTFT) tej odpowiedzi impulsowej:
Jest to jądro Dirichleta i jest czasami określane jako „okresowy sinc”, ponieważ wygląda trochę jak funkcja sinc, ale okresowo się powtarza, czego nie robi sinc. To wyrażenie podaje odpowiedź wielkościową każdego wyjścia DFT, gdziefa jest mierzony jako przesunięcie częstotliwości od częstotliwości środkowej odpowiedniego przedziału wyjściowego. To ilustruje efekt wycieku widmowego ; każde wyjście DFT ma charakterystykę częstotliwościową, która pokrywa pewien ciągły pasmo widma sygnału wejściowego, a nie tylko dyskretną częstotliwość środkową każdego wyjścia.
Teraz zastanów się, jak to się zmieni, jeśli zastosujesz funkcję okna do sygnału wejściowegox [n ] przed wykonaniem DFT:
Po włączeniu funkcji okna konwertowany w dółxk[ n ] skutecznie przechodzi przez filtr FIR z odpowiedzią impulsową opisaną przez funkcję okna. Tak więc odpowiedź wielkości DFT na wyjście wynosi:
gdzieW.( f) DTFT funkcji okna w [ n ] . Teraz zauważ, że jeśli wybrałeś funkcję okna, która miała zero w DC i użyłeś jej do przedwczesnego użyciax [ n ] przed DFT, faktycznie spowodowałbyś niezamierzony efekt wyzerowania nie tylko DC w widmie wynikowym, ale częstotliwości środkowych każdego z wyjść DFT. Prawdopodobnie nie tego chcesz.
Tak więc, jeśli naprawdę chcesz po prostu anulować komponent DC sygnału, usunięcie go za pomocą innego rodzaju przetwarzania wstępnego, a nie okienkowania w dziedzinie czasu, jest dobrym rozwiązaniem. Możesz na przykład użyć liniowego filtra górnoprzepustowego o bardzo niskiej częstotliwości odcięcia lub odjąć najpierw szacunkową średnią od sygnału. Wybór między tymi metodami powinien opierać się na innych ograniczeniach systemu.
źródło
Nie sądzę, aby użycie funkcji okna było dobrym sposobem na usunięcie DC. Jak wspomniano w endolicie, powszechną metodą jest odjęcie średniej przed okienkowaniem. Inną opcją byłoby zastosowanie filtra górnoprzepustowego do sygnału przed analizą, powiedzmy, z częstotliwością odcięcia około 10 Hz.
źródło