Thursday 21 September 2017

Moving Average Fft Matlab


Ein einfacher (ad hoc) Weg ist, nur einen gewichteten Durchschnitt (abstimmbar durch alpha) an jedem Punkt mit seinen Nachbarn: oder einige Variation davon. Ja, um anspruchsvoller zu sein, können Sie Fourier transformieren Sie Ihre Daten zuerst, dann schneiden Sie die hohen Frequenzen. So etwas wie: Dies schneidet die höchsten 20 Frequenzen. Achten Sie darauf, sie symmetrisch auszuschneiden, sonst ist die inverse Transformation nicht mehr real. Sie müssen sorgfältig wählen Sie die Cutoff-Frequenz für die richtige Ebene der Glättung. Dies ist eine sehr einfache Art der Filterung (Box-Filterung im Frequenzbereich), so können Sie versuchen, sanft abschwächen hohe Ordnung Frequenzen, wenn die Verzerrung inakzeptabel ist. Antwortete FFT ist nicht eine schlechte Idee, aber sein vermutlich overkill hier. Laufende oder sich bewegende Durchschnitte geben allgemein schlechte Ergebnisse und sollten für alles außer späten Hausaufgaben (und weißem Rauschen) vermieden werden. Id verwenden Savitzky-Golay-Filterung (in Matlab sgolayfilt (.)). Dies gibt Ihnen die besten Ergebnisse für das, was Sie suchen - einige lokale Glättung unter Beibehaltung der Form der Kurve. Frequenzantwort des laufenden Mittel-Filter Der Frequenzgang eines LTI-System ist die DTFT der Impulsantwort, Die Impulsantwort Eines gleitenden Mittelwertes von L. Da das gleitende Mittelfilter FIR ist, reduziert sich der Frequenzgang auf die endliche Summe. Wir können die sehr nützliche Identität verwenden, um den Frequenzgang zu schreiben, wo wir ae minus jomega haben lassen. N 0 und M L minus 1. Wir können an der Größe dieser Funktion interessiert sein, um zu bestimmen, welche Frequenzen durch den Filter ungedämpft werden und welche gedämpft werden. Unten ist ein Diagramm der Größe dieser Funktion für L 4 (rot), 8 (grün) und 16 (blau). Die horizontale Achse reicht von Null bis pi Radiant pro Probe. Man beachte, daß der Frequenzgang in allen drei Fällen eine Tiefpaßcharakteristik aufweist. Eine konstante Komponente (Nullfrequenz) im Eingang durchläuft das Filter ungedämpft. Bestimmte höhere Frequenzen, wie z. B. pi / 2, werden durch das Filter vollständig eliminiert. Wenn es aber die Absicht war, ein Tiefpassfilter zu entwerfen, dann haben wir das nicht sehr gut gemacht. Einige der höheren Frequenzen werden nur um einen Faktor von etwa 1/10 (für den 16-Punkte-gleitenden Durchschnitt) oder 1/3 (für den vier-Punkte-gleitenden Durchschnitt) gedämpft. Wir können viel besser als das. Der oben genannte Plot wurde durch den folgenden Matlab-Code erzeugt: omega 0: pi / 400: pi H4 (1/4) (1-exp (-iomega4)) ./ (1-exp (-Iomega)) H8 (1/8 ) (1-exp (-iomega)) - (1-exp (-iomega)) - Geispiel (Omega , Abs (H4) abs (H8) abs (H16) Achse (0, pi, 0, 1) Copyright - 2000 - Universität von Kalifornien, Berkeley

No comments:

Post a Comment