2017-09-15 11 views
-2

Ich schreibe Code, der ein Signal von einem Beschleunigungsmesser nimmt, und ich benutze den TVD-Algorithmus, um das Signal zu entschärfen. Wie wir in der folgenden Grafik sehen können, habe ich es geschafft, das zu tun:findchangepts erkennt einige Änderungen nicht

Denoising

Aber ich will die Spitzen erkennen, und ich denke, dass ich die findchangepts Funktion in MATLAB verwenden könnte, aber wenn ich es ich laufen folgende Voraussetzungen erfüllt sein:

findchangepts function run

Da wir es nicht die Spitzen erkennt sehen können. Kennt jemand irgendeine Einstellung in der Funktion oder eine Möglichkeit, innerhalb der Spitze zu entweihen?

+0

Von der [docs] (https://uk.mathworks.com/help/signal/ref/findchangepts.html): "' findchangepts (x) 'gibt den ** Index ** zurück, bei dem der Mittelwert von x ändert sich am signifikantesten Spezifizieren Sie mehr als einen Punkt mit 'findchangepts (x, 'MaxNumChanges', 5)'. Oder benutze 'findpeaks'. Machen Sie immer eine einfache Dokumentationssuche, bevor Sie hier nachfragen ... – Wolfie

+0

Danke @Wolfie Ich habe diese Suche auch gemacht, aber das Problem damit ist, dass ich nicht in der Lage bin, jetzt die genaue Anzahl von Änderungen, da der Code für mehrere Signale verwendet wird, und mehrere Änderungen in den Signalen, die sich voneinander unterscheiden können. Auch wenn ich die Findpeaks-Funktion verwende, gibt es mir alle Peaks, die in dem Signal auf dem Foto zu sehen sind, obwohl es nicht scheint, 5402 Peaks, deshalb habe ich nach einer besseren Filterung gefragt. –

Antwort

0

I verwalten, die mit der findpeaks Funktion zu tun, wie folgt:

[pks, locs] = findpeaks(x,'MinPeakProminence',0.25*max(x),'MinPeakDistance',50); 

ist und x Gang throght eine Reihe von Umschlagfiltern und Tiefpassfilter als:

[yupper,ylower] = envelope(x) 

hoffen, dass es sein, usseful für jemanden

+0

Ich glaube nicht, dass dies * für alle * sehr nützlich sein wird, es ist eine sehr breite Antwort ("Hier ist, wie ich fand, war gut, meine spezifischen Daten so zu filtern, wie ich wollte") zu einer sehr breiten Frage ("Ich möchte filtere diese Daten in irgendeiner Weise, dieses Ding, das ich versuchte, funktionierte nicht, hier ist ein Bild ohne Beispieldaten "). Sie könnten versuchen, die Frage zu verbessern, um klarer zu machen, was Sie erreichen möchten, warum, wie, Beispieldaten, Code, den Sie ausprobiert haben ... – Wolfie

Verwandte Themen