Moving Durchschnitt Filter Matlab Image
Erstellt am Mittwoch, den 08. Oktober 2008 um 20:04 Uhr Zuletzt aktualisiert am Donnerstag, den 14. März 2013 um 01:29 Uhr Geschrieben von: Batuhan Osmanoglu Zugriffe: 38925 Moving Average In Matlab Oft finde ich die Notwendigkeit, die Daten zu mitteln, die ich habe, um das Rauschen etwas zu reduzieren Bit. Ich schrieb paar Funktionen, um genau das tun, was ich will, aber Matlabs in Filter-Funktion gebaut funktioniert auch ziemlich gut. Hier schreibe ich über 1D und 2D Mittelung von Daten. 1D-Filter kann mit der Filterfunktion realisiert werden. Die Filterfunktion erfordert mindestens drei Eingangsparameter: den Zählerkoeffizienten für den Filter (b), den Nennerkoeffizienten für den Filter (a) und natürlich die Daten (X). Ein laufender Mittelwertfilter kann einfach definiert werden: Für 2D-Daten können wir die Funktion Matlabs filter2 verwenden. Für weitere Informationen, wie der Filter funktioniert, können Sie eingeben: Hier ist eine schnelle und schmutzige Implementierung eines 16 von 16 gleitenden durchschnittlichen Filters. Zuerst müssen wir den Filter definieren. Da alles, was wir wollen, gleicher Beitrag aller Nachbarn ist, können wir einfach die Funktion verwenden. Wir teilen alles mit 256 (1616), da wir nicht den allgemeinen Pegel (Amplitude) des Signals ändern wollen. Zur Anwendung des Filters können wir einfach sagen, die folgenden Unten sind die Ergebnisse für die Phase eines SAR-Interferogramms. In diesem Fall ist der Bereich in der Y-Achse und der Azimut auf der X-Achse abgebildet. Der Filter war 4 Pixel breit im Bereich und 16 Pixel breit im Azimut. Login SearchThe Wissenschaftler und Ingenieure Leitfaden für digitale Signalverarbeitung Von Steven W. Smith, Ph. D. Wie der Name andeutet, arbeitet das gleitende Mittelfilter durch Mittelung einer Anzahl von Punkten von dem Eingangssignal, um jeden Punkt im Ausgangssignal zu erzeugen. In Gleichung ist dies geschrieben: Wo ist das Eingangssignal, ist das Ausgangssignal und M ist die Anzahl der Punkte im Mittelwert. Beispielsweise ist bei einem 5-Punkt-Gleitmittelfilter Punkt 80 im Ausgangssignal gegeben durch: Alternativ kann die Gruppe von Punkten aus dem Eingangssignal symmetrisch um den Ausgangspunkt gewählt werden: Dies entspricht der Änderung der Summation in Gl . 15-1 von: j 0 bis M -1, bis: j - (M -1) / 2 bis (M -1) / 2. Zum Beispiel wird in einem 10-Punkt-gleitenden Durchschnittsfilter der Index j. Kann von 0 bis 11 (einseitige Mittelung) oder -5 bis 5 (symmetrische Mittelung) laufen. Symmetrische Mittelung erfordert, dass M eine ungerade Zahl ist. Die Programmierung ist etwas einfacher mit den Punkten auf nur einer Seite, jedoch ergibt sich eine relative Verschiebung zwischen den Eingangs - und Ausgangssignalen. Sie sollten erkennen, dass das gleitende Durchschnittsfilter eine Faltung mit einem sehr einfachen Filterkern ist. Zum Beispiel hat ein 5-Punkt-Filter den Filterkern: 82300, 0, 1/5, 1/5, 1/5, 1/5, 1/5, 0, 08230. Das heißt, das gleitende Mittelfilter ist eine Faltung Des Eingangssignals mit einem Rechteckimpuls mit einer Fläche von Eins. Tabelle 15-1 zeigt ein Programm zum Implementieren des gleitenden Durchschnittsfilters. Der beste Weg, dies zu tun (meiner Meinung nach) wäre, einen Kreispuffer zu verwenden, um Ihre Bilder zu speichern. In einem Kreis - oder Ringpuffer wird das älteste Datenelement im Array durch das neueste Element, das in das Array eingeschoben wird, überschrieben. Die Grundlagen der Herstellung einer solchen Struktur werden in dem kurzen Mathworks-Video beschrieben, das einen einfachen kreisförmigen Puffer implementiert. Für jede Iteration Ihrer Hauptschleife, die ein einziges Bild behandelt, laden Sie einfach ein neues Bild in den Zirkular-Puffer und verwenden Sie dann MATLAB s gebaut in der mittleren Funktion, um den Durchschnitt effizient zu nehmen. Wenn Sie eine Fensterfunktion auf die Daten anwenden müssen, dann machen Sie eine temporäre Kopie der Frames multipliziert mit der Fensterfunktion und nehmen Sie den Durchschnitt der Kopie bei jeder Iteration der Schleife. Beantwortet Aug 6 12 at 10:11 berechnet eine Art von Moving Average für jede der 10 Bands über alle Ihre Bilder. Diese Zeile berechnet einen gleitenden Mittelwert des Mittelwertes über Ihre Bilder: Für beide wird eine Pufferstruktur hinzugefügt, die nur die letzten 10 Bilder enthält. Um es zu vereinfachen, können Sie auch einfach alles im Gedächtnis behalten. Hier ist ein Beispiel für Yout: Ändern Sie diese Zeile: (Eine Dimension hinzufügen) Und ändern Sie diese: Dann zur Anzeige verwenden Sie würden sth. Ähnlich für Mittelwert beantwortet Ihre Antwort 2016 Stack Exchange, IncMean Filter oder durchschnittliche Filter Kategorie. Digitale Signal - und Bildverarbeitung (DSP und DIP) Softwareentwicklung. Abstrakt. Der Artikel ist ein praktischer Leitfaden für durchschnittliche Filter oder durchschnittliche Filter Verständnis und Umsetzung. Artikel enthält Theorie, C-Quellcode, Programmieranleitung und Beispielanwendung. 1. Einführung in das Mittelfilter oder Mittelfilter Mittelwertfilter. Oder Durchschnittsfilter ist ein Fensterfilter der linearen Klasse, der das Signal glättet (Bild). Der Filter arbeitet als Tiefpaß. Die Grundidee hinter dem Filter ist für jedes Element des Signals (Bild) nehmen einen Durchschnitt über seine Nachbarschaft. Um zu verstehen, wie das in der Praxis gemacht wird, beginnen wir mit der Fensteridee. 2. Filter Fenster oder Maske Lassen Sie uns vorstellen, sollten Sie einen Brief lesen und was Sie sehen im Text durch Loch in spezielle Schablone wie diese eingeschränkt. Also, das Ergebnis des Lesens ist Sound t. Ok, lassen Sie uns den Brief wieder lesen, aber mit Hilfe einer anderen Schablone: Jetzt ist das Ergebnis des Lesens t ist Sound 240. Lassen Sie uns den dritten Versuch machen: Jetzt lesen Sie Buchstaben t als Ton 952. Was passiert hier Zu sagen, dass In der mathematischen Sprache, machen Sie eine Operation (Lesen) über Element (Buchstabe t). Und das Ergebnis (Ton) hängt von der Elementnachbarschaft (Buchstaben neben t) ab. Und diese Schablone, die hilft, Elementnachbarschaft aufzuheben, ist Fenster Ja ist Fenster nur eine Schablone oder ein Muster, durch das Sie das Elementnachbarschaft 0151 einen Satz von Elementen um das gegebene 0151 vorwählen, um Ihnen zu helfen, Entscheidung zu treffen. Ein anderer Name für Filter-Fenster ist Maske 0151 Maske ist eine Schablone, die Elemente, die wir nicht darauf achten, versteckt. In unserem Beispiel ist das Element, das wir auf der linken Seite des Fensters betätigen, in der Praxis jedoch seine übliche Position die Mitte des Fensters. Lassen Sie uns einige Fenster Beispiele sehen. In einer Dimension. Feige. 4. Fenster oder Maske der Größe 5 in 1D. In zwei Dimensionen. Feige. 5. Fenster oder Maske der Größe 3times3 in 2D. In drei Dimensionen. Denken Sie über Gebäude. Und jetzt mdash über Raum in diesem Gebäude. Der Raum ist wie 3D-Fenster, das ausschneidet einige Unterraum aus dem gesamten Raum des Gebäudes. Sie finden 3D-Fenster in Volumen (Voxel) Bildverarbeitung. 3. Verständnis der mittleren Filter Nun wollen wir sehen, wie man einen Durchschnitt über Elemente neighborhoodrdquo. Die Formel ist einfach 0151 Summe Elemente und dividieren die Summe durch die Anzahl der Elemente. Wir wollen z. B. einen Durchschnitt für den Fall berechnen, der in Abb. Fig. 7 Feige. 7. Durchschnittlich. Und das ist alles. Ja, wir haben nur 1D-Signal durch Mittelfilter gefiltert Lassen Sie uns fortsetzen und schreiben Sie Schritt für Schritt Anleitungen für die Verarbeitung durch Mittelfilter. Mittleren Filter oder durchschnittlichen Filter-Algorithmus: Platzieren Sie ein Fenster über Element Nehmen Sie eine durchschnittliche 0151 Summe Elemente und dividieren Sie die Summe durch die Anzahl der Elemente. Nun, wenn wir den Algorithmus haben, ist es Zeit, schreiben einige Code mdash lass uns auf die Programmierung kommen. 4. 1D-Mittelfilter-Programmierung In diesem Abschnitt entwickeln wir 1D-Mittelfilter mit Fenster der Größe 5. Wir haben 1D-Signal der Länge N als Eingang. Der erste Schritt ist die Platzierung der Fenster 0151 wir tun, dass durch Änderung der Index der führenden Element: Achten Sie darauf, dass wir mit dem dritten Element beginnen und Finishing mit den letzten zwei. Das Problem ist, dass wir nicht mit dem ersten Element beginnen können, da in diesem Fall der linke Teil des Filterfensters leer ist. Wir werden unten diskutieren, wie dieses Problem zu lösen. Der zweite Schritt ist die durchschnittliche, ok: Nun, schreiben Sie uns den Algorithmus als Funktion: Typ-Element könnte definiert werden als: 5. Behandlung von Kanten Für alle Fenster-Filter gibt es ein Problem. Das ist Kante behandeln. Wenn Sie Fenster über das erste (letzte) Element platzieren, ist der linke (rechte) Teil des Fensters leer. Um die Lücke zu schließen, sollte das Signal verlängert werden. Für Mittelfilter ist es sinnvoll, Signal - oder Bildsymmetrie so zu verlängern: So, bevor das Signal an unsere mittlere Filterfunktion weitergegeben wird, sollte das Signal verlängert werden. Lassen Sie uns aufschreiben die Hülle, die alle Vorbereitungen macht. Wie Sie sehen können, berücksichtigt unser Code einige praktische Fragen. Zuerst prüfen wir unsere Eingangsparameter 0151 Signal sollte nicht NULL sein und Signallänge sollte positiv sein: Zweiter Schritt 0151 prüfen wir Fall N1. Dieser Fall ist ein spezieller Fall, denn um eine Erweiterung zu bauen, brauchen wir mindestens zwei Elemente. Für das Signal von 1 Elementlänge ergibt sich das Signal selbst. Wie auch darauf achten, unsere mittlere Filter arbeitet an Ort und Stelle, wenn Ausgangsparameter Ergebnis NULL ist. Lassen Sie uns jetzt Speicher für Signalverlängerung zuteilen. Und überprüfen Sie die Speicherzuweisung. Moving-Average Filter von Traffic-Daten Dieses Beispiel zeigt, wie die Datenverkehr mit einem gleitenden durchschnittlichen Filter mit einem 4-Stunden-Schiebefenster zu glätten. Die folgende Differenzgleichung beschreibt einen Filter, der die aktuelle Stunde und die drei vorhergehenden Datenstunden mittelt. Importieren Sie die Verkehrsdaten und ordnen Sie die erste Spalte der Fahrzeugzählungen dem Vektor x zu. Erstellen Sie die Filterkoeffizientenvektoren. Berechnen Sie den 4-Stunden-gleitenden Durchschnitt der Daten und zeichnen Sie die ursprünglichen Daten und die gefilterten Daten. MATLAB und Simulink sind eingetragene Warenzeichen von The MathWorks, Inc. Siehe auch www. mathworks / trademarks für eine Liste anderer Marken, die Eigentum von The MathWorks sind. Weitere Produkt - oder Markennamen sind Warenzeichen oder eingetragene Warenzeichen der jeweiligen Eigentümer. Wähle dein Land
Comments
Post a Comment