Sunday, February 12, 2017

Moving Average Filter Geschwindigkeit

Die Wissenschaftler und Ingenieure Leitfaden für digitale Signalverarbeitung Von Steven W. Smith, Ph. D. Kapitel 15: Verschieben von Durchschnittsfiltern Verwandte des Moving Average Filters In einer perfekten Welt müssten Filter-Designer nur mit Zeitdomänen - oder frequenzbereichskodierten Informationen umgehen, aber niemals eine Mischung aus beiden im selben Signal. Leider gibt es einige Anwendungen, bei denen beide Domains gleichzeitig wichtig sind. Zum Beispiel, Fernsehsignale fallen in diese fiese Kategorie. Die Videoinformation wird im Zeitbereich kodiert, dh die Form der Wellenform entspricht den Mustern der Helligkeit in dem Bild. Während der Übertragung wird das Videosignal jedoch entsprechend seiner Frequenzzusammensetzung, wie etwa seiner Gesamtbandbreite, behandelt, wie die Trägerwellen für die Tonampelfarbe addiert werden, die Eliminierungsampere-Wiederherstellung der Gleichspannungskomponente usw. Als weiteres Beispiel ist eine elektromagnetische Interferenz Wird am besten im Frequenzbereich verstanden, auch wenn die Signalinformation im Zeitbereich codiert wird. Zum Beispiel könnte die Temperaturüberwachung in einem wissenschaftlichen Experiment mit 60 Hertz von den Stromleitungen, 30 kHz von einem Schaltnetzteil oder 1320 kHz von einer lokalen AM-Funkstation verunreinigt sein. Verwandte des gleitenden Durchschnittsfilters weisen eine bessere Frequenzbereichsleistung auf und können in diesen gemischten Domänenanwendungen nützlich sein. Multiple-Pass-Gleit-Durchschnittsfilter beinhalten, daß das Eingangssignal zweimal oder mehrmals durch einen gleitenden Durchschnittsfilter geleitet wird. Abbildung 15.3a zeigt den Gesamtfilterkern, der aus einem, zwei und vier Durchgängen resultiert. Zwei Durchläufe entsprechen der Verwendung eines dreieckigen Filterkerns (eines rechteckigen Filterkerns, der mit sich selbst konstruiert wurde). Nach vier oder mehr Pässen sieht der äquivalente Filterkernel wie ein Gaußscher (Rückruf des zentralen Grenzwertsatzes) aus. Wie in (b) gezeigt, erzeugen mehrere Durchgänge eine s-förmige Sprungantwort im Vergleich zu der geraden Linie des einzigen Durchgangs. Die Frequenzantworten in (c) und (d) sind durch Gl. 15-2 multipliziert mit sich für jeden Durchlauf. Das heißt, jede Zeitbereichs-Faltung führt zu einer Multiplikation der Frequenzspektren. Abbildung 15-4 zeigt den Frequenzgang zweier anderer Verwandter des gleitenden Durchschnittsfilters. Wenn ein reiner Gaußscher als Filterkern verwendet wird, ist der Frequenzgang auch ein Gaußscher, wie in Kapitel 11 erläutert. Der Gaußsche ist wichtig, weil er die Impulsantwort vieler natürlicher und künstlicher Systeme ist. Beispielsweise wird ein kurzer Lichtimpuls, der in eine lange faseroptische Übertragungsleitung eintritt, aufgrund der unterschiedlichen Pfade, die von den Photonen innerhalb der Faser aufgenommen werden, als ein Gauss-Puls austreten. Der Gaußsche Filterkernel wird auch weitgehend in der Bildverarbeitung verwendet, da er einzigartige Eigenschaften hat, die schnelle zweidimensionale Windungen ermöglichen (siehe Kapitel 24). Der zweite Frequenzgang in Fig. 15-4 entspricht der Verwendung eines Blackman-Fensters als Filterkernel. (Der Begriff Fenster hat hier keine Bedeutung, er ist einfach Teil des akzeptierten Namens dieser Kurve). Die genaue Form des Blackman-Fensters ist in Kapitel 16 gegeben (Gleichung 16-2, Abb. 16-2), sie sieht jedoch sehr ähnlich wie ein Gaußscher. Wie sind diese Verwandten des gleitenden Durchschnittsfilters besser als der gleitende Mittelfilter selbst? Drei Wege: Erstens, und am wichtigsten, haben diese Filter eine bessere Stopbanddämpfung als das gleitende Mittelfilter. Zweitens verjüngen sich die Filterkerne zu einer kleineren Amplitude nahe den Enden. Es sei daran erinnert, dass jeder Punkt in dem Ausgangssignal eine gewichtete Summe einer Gruppe von Abtastungen von dem Eingang ist. Wenn sich der Filterkern verjüngt, werden die Abtastwerte im Eingangssignal, die weiter entfernt sind, weniger Gewicht als die in der Nähe befindlichen. Drittens sind die Schrittantworten glatte Kurven, und nicht die abrupte gerade Linie des gleitenden Durchschnitts. Diese letzten beiden sind in der Regel von begrenztem Nutzen, obwohl Sie Anwendungen finden könnten, wo sie echte Vorteile sind. Der gleitende Durchschnittsfilter und seine Verwandten sind alle ungefähr gleich, wenn man zufälliges Rauschen reduziert, während eine scharfe Sprungantwort beibehalten wird. Die Mehrdeutigkeit besteht darin, wie die Anstiegszeit der Sprungantwort gemessen wird. Wenn die Anstiegszeit von 0 bis 100 des Schritts gemessen wird, ist der gleitende Durchschnittsfilter das beste, was Sie tun können, wie zuvor gezeigt. Im Vergleich dazu misst die Messung der Risse von 10 bis 90 das Blackman-Fenster besser als das gleitende Mittelfilter. Der Punkt ist, das ist nur theoretische Squabbeln betrachten diese Filter gleich in diesem Parameter. Der größte Unterschied in diesen Filtern ist die Ausführungsgeschwindigkeit. Unter Verwendung eines rekursiven Algorithmus (beschrieben als nächstes) läuft der gleitende Durchschnittfilter wie ein Blitz in Ihrem Computer. In der Tat ist es die schnellste digitale Filter zur Verfügung. Mehrere Durchgänge des gleitenden Durchschnitts werden entsprechend langsamer, aber immer noch sehr schnell sein. Im Vergleich dazu sind die Gauß - und die Blackman-Filter quälend langsam, weil sie die Faltung verwenden müssen. Denken Sie einen Faktor von zehnmal die Anzahl der Punkte im Filterkernel (basierend auf der Multiplikation, die etwa zehnmal langsamer als die Addition ist). Beispielsweise erwarten Sie, dass ein 100-Punkt-Gaussian 1000-mal langsamer als ein gleitender Durchschnitt mit Rekursion ist. Double Exponential Moving Average Filter 8211 Beschleunigung der EMA Manchmal haben Sie ein Rauschen, das Sie Tiefpaßfilter auf ein weniger verrauschtes Signal umwandeln möchten. Der exponentielle Moving Average Filter (EMA) ist ein schöner und einfacher Filter für das eingebettete System. Lesen Sie hier mehr über den EMA-Filter. Allerdings kann manchmal die EMA zu langsam sein. Der Kompromiss zwischen Geräuschunterdrückung und Geschwindigkeit könnte einfach nicht gut genug sein. Entweder bewegt sich das gefilterte Signal nicht schnell genug oder das Signal ist zu laut. Dies ist kein sehr gutes Vergleichsbild zwischen EMA und DEMA. Wir wollten nur ein cooles Bild hier. Lesen Sie weiter unten für einen richtigen Vergleich 8230die DEMA ist untergedämpft, während die EMA überbeansprucht wird. Eine Lösung hierfür könnte der Double Exponential Moving Average (DEMA) Filter sein. Bei einer gegebenen der DEMA hat schnellere Reaktion als die EMA, während immer noch die Aufrechterhaltung der gleichen Rauschunterdrückung. Ein möglicher Nachteil beim DEMA-Filter besteht darin, dass Sie ein Überschwingen erhalten. Mit anderen Worten, die DEMA wird unterdrückt, während die EMA überbeansprucht wird. Schauen Sie sich diesen Beitrag an, um herauszufinden, was wir damit meinen. Der Algorithmus ist ziemlich direkt: Die heikelste Sache hier ist das letzte Wort, wo Sie die EMA der EMA. Um dies zu erreichen, müssen wir zwei globale Variablen anstelle von einem haben. Implementierung Hierbei handelt es sich um eine schnelle Implementierung des DEMA-Filters auf Arduino. Beachten Sie, dass wir zwei globale Variablen für die Filterung anstelle von eins verwenden. Blaue Linie: ursprüngliches Signal, orange Linie: reguläre EMA, rote Linie: DEMA. Wie Sie hier sehen können, gelingt es der DEMA, dem Originalsignal besser ohne Lärm zu folgen. Beachten Sie auch das Überschwingen bei der Sprungantwort. Das Kapitel an der Unterseite Die DEMA wurde im Seesaw-Projekt mit positiven Ergebnissen nach dem Schreiben des letzten Blogposts getestet. Dies ist ein Szenario, in dem wir die hohe Geschwindigkeit benötigen, die die DEMA bereitstellen kann. Es gibt auch etwas, das als Triple Exponential Moving Average (TEMA) bezeichnet wird. Dieser Filter verwendet die gleichen Prinzipien wie DEMA, aber nehmen sie noch weiter. Zugehörige ArtikelFrequenzantwort des laufenden Mittelfilters Der Frequenzgang eines LTI-Systems ist die DTFT der Impulsantwort, die Impulsantwort eines L-Sample-gleitenden Mittels Da der gleitende Mittelwert FIR ist, verringert 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 110 (für den 16-Punkte-gleitenden Durchschnitt) oder 13 (für den vier-Punkte-gleitenden Durchschnitt) gedämpft. Wir können viel besser als das. (1-exp (-iomega)) H8 (18) (1-exp (- & omega; & sub4; (1-exp (-iomega)) (1-exp (-iomega)) (1-exp (& ndash; H16)) Achse (0, pi, 0, 1) Copyright - 2000 - Universität von Kalifornien, Berkeley


No comments:

Post a Comment