Ich dachte über das Thema DFT-Fensterung nach und kam mir in den Sinn. Eine DFT liefert das Spektrum eines Signals, das mit dem Spektrum des verwendeten Fensters gefaltet ist und daher Haupt- und Nebenkeulen aufweist.
Ich dachte, es wäre möglich, den Fenstereffekt auf das Spektrum des Signals zu entfernen, indem sowohl das Signal als auch die Größe des Fensterspektrums erneut gefaltet werden, und es funktionierte tatsächlich, wie Sie auf dem folgenden Bild sehen können.
Links ist das ursprüngliche Spektrum, das mit einem Hanning-Fenster erzeugt wurde. Rechts ist das Spektrum, das durch die DFT eines Hanning-Fensters gefaltet wird. Oben ist das Spektrum selbst, unten ist das MATLAB- findpeaks
Ergebnis.
Ich habe nie etwas über diese Technik gelesen, aber ich bin mir ziemlich sicher, dass ich dort nichts erfunden habe. Ich frage mich also, ob es einen Vorteil hat, diese Verarbeitung im Spektrum durchzuführen, oder ob es einen Nachteil gibt, den ich nicht sehe.
Soweit ich weiß, könnte dies zur Erkennung von Spitzenwerten beitragen, wie wir auf dem vorherigen Bild sehen können. Es sieht auch so aus, als ob das Spektrum etwas verzerrt ist, wie wir auf den beiden folgenden Bildern sehen können. ::
Wobei der blaue Graph das Spektrum und der rote Graph das nachgefaltete Spektrum ist.
- Hast du darüber nachgedacht?
- Gibt es ein Problem, das sich aus dieser Faltung nach der FFT ergeben könnte?
- Irgendein Papier, das das Thema behandelt?
BEARBEITEN
Sie können ein Skript finden hier , dass die folgende Grafik erzeugen:
quelle
Antworten:
Ihr Vorschlag hat in der Tat einen Nachteil: Die von Ihnen angezeigten Signale sind alle sehr klar in ihre Frequenzkomponenten unterteilt, aber im Allgemeinen sind reale Signale tendenziell verrauscht.
Je nach Anwendung möchten Sie möglichst viel Leckdämpfung (höhere Hauptkeulen / kleinere Nebenkeulen einer Signalfrequenz im transformierten Spektrum) oder als weiteres Beispiel die engstmögliche Hauptkeule.
In Ihren Darstellungen ist zu sehen, dass das Glätten der Magnitudenspektren mit einem Fenster das Gegenteil davon bewirkt: Die Hauptkeulen werden breiter und kleiner, während Leckageprodukte durch die Umwandlung eines endlichen Zeitsignalgewinns an Leistung entstehen. Bei verrauschten Signalen würde dies einen erheblichen Nachteil ergeben.
Ihr Vorschlag ist jedoch immer noch sehr nützlich für die Identifizierung von Spitzenwerten!
quelle
Ich bleibe dem Thema "Entfernen des Fenstereffekts im Frequenzbereich durch Faltung" treu (obwohl das OP vielleicht etwas anderes oder ähnliches erreichen wollte) und möchte meinen Kommentar hinzufügen, der persönliche Erfahrungen mit diesem speziellen Thema hat.
Oft habe ich die Notwendigkeit, ein Hann-Fenster im Frequenzbereich zu entfernen, indem ich in einem STFT-Framework arbeite, das standardmäßig Hann-Fensterrahmen verwendet, um eine erweiterte Spektralverarbeitung durchzuführen, bei der das Eingangsspektrum stattdessen als NON-Fenster erwartet wird (z. B. überlappungssichernde Faltung oder Filterung).
Mit einem Wort: Ja, das kannst du. Obwohl das mathematische Entfernen eines Fensters (entweder im Zeit- oder im Frequenzbereich) die Rekonstruktion von Daten impliziert, die für immer verloren gehen, können Sie dies in der Praxis mit einem wahrscheinlich minimalen Verlust tun.
Nehmen wir ein Hann-Fenster (Rised Cosine). Seine Zeitbereichsformel lautet y = (1-cos (pi * x)) / 2, wobei x von null bis eins bis eins reicht. Die entsprechende Frequenzbereichsdarstellung ist bin0 = (0,5,0i), bin1 = (- 0,5,0i). Um seinen Effekt im Zeitbereich zu entfernen, möchten Sie das Signal möglicherweise einfach durch die oben genannte Fensterfunktion teilen. Um dasselbe im Frequenzbereich zu tun, können Sie einfach das Spektrum, das nicht mit Fenstern versehen ist, mit dem Spektrum des Kehrwerts dieser Funktion falten. Da diese Funktion an beiden Enden Null ist (tatsächlich ist sie nur am ersten Punkt mathematisch Null, es sei denn, es handelt sich um Rundungsfehler), können Sie zur Vermeidung der Unendlichkeit einfach die Unendlichkeit mit einem großen Wert wie etwa 10000 austauschen. Das Ergebnis einer solchen Faltung ist das Spektrum ohne Fenster. Durch Konvertieren in den Zeitbereich zurück,
Vielleicht können Sie ein rechteckiges Fenster jedoch nicht entfernen, da die Datenmenge, die durch Multiplizieren großer Bereiche des Signals mit Null verloren geht, theoretisch nicht wiederhergestellt werden kann. Aber ich denke, das hängt vom Spektruminhalt ab. Wenn es sich beispielsweise um das Spektrum einer einfachen Sinuskurve handelt, entfernen Sie das rechteckige Fenstermuster, indem Sie es mit dem Spektrum einer Funktion falten, die einen hohen Wert aufweist, bei dem das Rechteck Null war, und einen Wert, bei dem es Eins war (dh seinen Kehrwert). Sie können vielleicht immer noch (im Wesentlichen) das Spektrum einer Sinuskurve erhalten, um das gesamte Signal zu rekonstruieren.
quelle
Es ist eine gute Frage und ein guter Einblick, von dem ich mir ziemlich sicher bin, dass andere ihn hatten. die de -convolution in der Frequenzdomäne ist in der Zeitdomäne wie Multiplikation , und wenn Sie die Wirkung eines Hann - Fenster in der Frequenzdomäne sind Entfalten, es ist wie Ihre Dividieren durch die Wirkung des Hann - Fensters im Zeitbereich. An den Schwänzen, an denen das Hann-Fenster auf Null geht, wird durch eine zu kleine Zahl geteilt, um sich Sorgen zu machen.
Normalerweise bleibt der Fenstereffekt erhalten, da Sie beim Zurücktransformieren möglicherweise den Fenstereffekt im Zeitbereich wünschen. oder wenn Sie nie zurück transformieren (dies ist eine Analyse- oder Modellierungsalge und keine Modifikationsalge), dann interessieren Sie sich nur für Parameter, die Eigenschaften dieser Peaks sind, und Sie beschäftigen sich nur mit dem bekannten Effekt der Faltung mit einem bekannten Kernel und das könnte einen extrahierten Parameter auf deterministische Weise modifizieren. dann kompensieren Sie dies einfach in Ihrem extrahierten Parameter.
Je nachdem, was Sie tun, sollten Sie ein Guassian-Fenster für die Analyse verwenden. hat nur ein sehr geringes Nebenkeulenproblem und unter linearen Bedingungen (wie bei einem Filter) behält jede Sinuskurve mit Fenster die Fensterform bei, wenn sie in den Zeitbereich zurücktransformiert wird. Dieses Fenster kann rückgängig gemacht und ein Hann-Fenster angewendet werden, nachdem es wieder in den Zeitbereich umgewandelt wurde.
quelle
Die Technik, mit der Sie das Spektrum geglättet haben, wird häufig bei der Analyse des Spektrums selbst verwendet, und Sie kümmern sich nicht um die Auswirkungen im Zeitbereich (z. B. frequenzbasierte Signalerkennung oder Bandbreitenmessung). Es ist nicht einmal erforderlich, dass das zum Glätten verwendete Fenster mit dem im Zeitbereich verwendeten Fenster übereinstimmt. Einer der Hauptgründe für die Verwendung eines Zeitbereichsfensters vor der DFT besteht darin, die Diskontinuität in der Umlaufbahn zu minimieren, die die DFT an den Enden des Signals annimmt (die DFT ist von Natur aus kreisförmig). Der Zweck der Glättung im Frequenzbereich besteht darin, Analysen wie die Peakerkennung oder die Bandbreitenmessung zu erleichtern. Das "beste" Fenster für das eine ist möglicherweise nicht das "beste" Fenster für das andere. Tatsächlich habe ich noch nie die DFT eines Fensters gesehen, das zur spektralen Glättung verwendet wird.
quelle