Ich frage mich, welche Techniken verfügbar sein könnten, um das folgende Beispiel-Zeit-Frequenz-Bild, das mit der Welch-Methode erstellt wurde, zu entrauschen . Das folgende Diagramm wurde aus einem Robotersensor erstellt. (Dies ist KEIN Farbbild - es ist ein Graustufenbild - Farben, die nur zu visuellen Zwecken hinzugefügt wurden).
Tor:
Mein Ziel ist es letztendlich, die Impulsabstände zu schätzen, die Sie hier sehen, falls solche Impulse existieren. Dies könnte ein bisschen wie ein Huhn und ein Ei sein. Zu diesem Zweck frage ich mich: "Gibt es Impulse mit dieser Wiederholungsrate von +/- 10%?" Und erkenne sie. Was Sie hier sehen, ist das Signal (Impulse), aber zusammen mit anderen unerwünschten Interferenzen. Wie Emre vorgeschlagen hat, haben sie jedoch eine Struktur, wenn auch im Zeit-Frequenz-Raum. Gibt es Zeit-Frequenz-Filter als solche?
Ich würde mir sehr wünschen, dass hier Bildverarbeitungslösungen angewendet werden, bin aber für jede Lösung offen.
Also: Das Ziel ist es, alle Signale hoher Intensität mit Ausnahme der sich wiederholenden Impulse (die nahe dem Index 300 auf der y-Achse liegen) zu entfernen, wie zu sehen ist. Alle anderen hochintensiven Signale können als "Interferenz" angesehen werden.
Annahmen, die Sie machen können:
Sie können davon ausgehen, dass Sie die Pulslängen, die Sie hier sehen , ungefähr kennen. (Sagen wir innerhalb von +/- 10%). Anders ausgedrückt, Sie haben beschlossen, nach Impulsen dieser Länge zu suchen. (+/-)
Sie können davon ausgehen, dass Sie auch die Wiederholungsraten der Impulse ungefähr kennen (sagen wir noch einmal +/- 10%).
Leider kennen Sie ihre Frequenz nicht genauer. Das heißt, in diesem Bild liegen die Impulse bei 300, aber sie könnten genauso gut bei 100, 50, 489 oder was auch immer liegen. Die gute Nachricht ist jedoch, dass die hier gezeigten Frequenzen sehr nahe beieinander liegen (in der Größenordnung von beispielsweise 10 Hz).
Einige Gedanken von mir:
Bildverarbeitung POV:
Mir sind morphologische Operationen eingefallen, aber ich kenne diese nicht so gut, um zu wissen, ob sie funktionieren könnten oder nicht. Ich nehme an, die Idee könnte sein, die "größeren" Flecken zu "schließen" und damit zu entfernen.
Zeilengroße DFT- Operationen geben möglicherweise an, welche Zeilen auf Null gesetzt werden sollen, basierend auf den interessierenden Zeilen mit dem höchsten Wiederholungsmuster. Dies ist jedoch möglicherweise keine praktikable Lösung, wenn die Impulse gering und weit voneinander entfernt sind oder wenn das Bild verrauscht ist.
Wenn Sie sich nur das Bild ansehen, möchten Sie fast die Isolation „belohnen“ und die Konnektivität „bestrafen“. Gibt es eine oder mehrere Bildverarbeitungsverfahren, die diese Art von Operation ausführen? (Wieder morphologisch).
Welche Methoden könnten hier helfen?
Signalverarbeitung POV:
Der hier gezeigte Frequenzbereich ist bereits extrem eng, daher bin ich mir nicht sicher, ob Kerbfilterungsvorgänge helfen werden. Darüber hinaus ist die genaue Frequenz der in diesem engen Bereich gezeigten Impulse a priori nicht bekannt.
Durch die fundierten Vermutungen über die Impulse hier von Interesse, (ihre Längen und Wiederholungen) könnte ich in der Lage sein , das zu berechnen 2-dimensionalen DFT meiner ‚Vorlage‘, und nutze dies als einen 2-D - Cepstral-zeitlichen Filter , auf dem Ich multipliziere einfach das oben gezeigte Welch-Bild mit und führe dann eine inverse 2-D-DFT durch.
OTOH, würden Gabor-Filter hier vielleicht gut zusammenpassen? Schließlich handelt es sich um orientierungsempfindliche Filter, ähnlich wie bei unseren eigenen integrierten visuellen V1-Prozessoren . Wie könnten sie hier ausgebeutet werden?
Welche Methoden könnten in diesem Bereich hilfreich sein?
Danke im Voraus.
Antworten:
Ich habe keine Erfahrung auf diesem Gebiet, aber ich sehe, dass es untersucht wurde: Minimaler Entropieansatz zum Entrauschen von Zeit-Frequenz-Verteilungen
Im Wesentlichen liegt Ihr Problem in der Signal- / Quellentrennung . das additive Entmischen einer Reihe strukturierter Signale. Um fortzufahren, müssen Sie Ihre Signale modellieren. Offensichtlich ist die interessierende periodisch und um eine bestimmte Frequenz zentriert. Daher müssen Sie die Periode (entlang der x-Achse) und die Mittenfrequenz (auf der y-Achse) schätzen. Dann können Sie die anderen charakterisieren (Rauschen). Für den Anfang scheint es, dass sie in schönen Kurven kommen.
Mit einem Modell in der Hand würde ich ein Buch wie Handbook of Blind Source Separation: Unabhängige Komponentenanalyse und Anwendungen konsultieren .
quelle
Von einem rein technischen POV aus wäre die offensichtliche Lösung für das "Einrasten" dieses Impulses eine Phasenregelschleife (PLL).
Eine PLL ist nur ein freilaufender Oszillator, dessen Frequenz basierend auf der wahrgenommenen Phasenbeziehung zu einem anderen Signal eingestellt werden kann. Wenn das andere Signal reines Rauschen oder Impulse mit einer völlig anderen Frequenz ist, ist die Phasenbeziehung zufällig und der Oszillator wird in keiner Richtung stark eingestellt (und läuft weiter "frei"). Wenn jedoch ein Signal vorhanden ist, auch ein relativ verrauschtes, das ungefähr mit der gleichen Frequenz wie der Oszillator läuft, erkennt der Phasensensor der PLL dies und passt die Oszillatorfrequenz an das andere Signal an. Dies setzt natürlich voraus, dass das Spiel zunächst auf halbem Weg ist. (Ein Problem - obwohl auch ein nützliches Merkmal - von PLLs besteht darin, dass sie sich gerne an Harmonische oder Subharmonische des Zielsignals halten, wenn die anfängliche Frequenzfehlanpassung zu groß ist.)
Ich habe in meiner eigenen Arbeit noch nie PLLs verwendet, aber der Begriff gibt es schon seit ungefähr 40 Jahren (das Konzept zumindest seit den 30er Jahren), und es gibt vorgefertigte PLLs, die als einzelne ICs oder Einzelkartenmodule verfügbar sind. Es gibt auch "digitale PLLs", die das analoge Konzept unter Verwendung digitaler Komponenten nachahmen. (Dies ist ungefähr der Umfang meines Wissens, aber es gibt leicht 100 Referenzen, die von Google gefunden wurden.)
quelle