0

Ich habe ein Signalpegel-Daten empfangen, die wie unten wie folgt aussieht:Entfernen Basissignal mit Wavelet-Transformation

Signal level data with time

Aus diesem Signal würde ich nur Spitzen aus dem Signal trennen mögen. Zum Beispiel können wir sehen, dass sich der Signalpegel ab dem Zeitschritt 47 verschlechtert und sich während 53 verschlechtert. Ich möchte dies vom ursprünglichen Signal trennen. Ich habe mich gefragt, dass Wavelet-Transformation eine mögliche Lösung für mein Problem sein könnte. Bitte teilen Sie mir Ihre Gedanken, wenn Sie andere bessere Algorithmen haben, um dieses Problem zu lösen.

Ihr Vorschlag hierzu wird sehr geschätzt.

Antwort

1

Sie können Wavelet sicher verwenden, obwohl ich nicht sicher bin, ob es notwendig ist. Wenn Sie nur versuchen, die Zeitpunkte zu identifizieren, in denen diese zwei Peaks auftreten, sind sie für die direkte Identifizierung ziemlich verschieden. Wenn Sie eine sauberere Trennung wünschen, können Sie das Signal durch einen Wavelet-Filter leiten, die Spitzen in Zeit und Frequenz identifizieren, einen Schwellenwert für die Amplitudentrennung definieren (da aber andere Spitzen folgen, gibt es bestimmt eine Mischung) und schließlich invers-transformieren, um das gefilterte Signal zu erhalten.

+0

Dank @Melanie Kan, ich versuche zu überprüfen, ob diese Methode ein verbessertes Ergebnis liefert. Es gibt einige frühere Literatur, in denen sie versucht haben, nur lineare Bypass-Filter zu verwenden, die bereits ein verbessertes Ergebnis haben, so dass ich hoffe, dass dies helfen wird, bessere Ergebnisse zu erzielen. – PUJA

+0

Jeder hat eine Idee, wie ich das in Python implementieren kann, um die Basislinie zu entfernen ... – PUJA