|
|
Verlauf glätten unter Beibehaltung der Peaks |
|
Boingenau |

Forum-Anfänger
|
 |
Beiträge: 22
|
 |
|
 |
Anmeldedatum: 16.09.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 04.01.2017, 12:58
Titel: Verlauf glätten unter Beibehaltung der Peaks
|
 |
Hallo zusammen,
ich habe etwas Probleme mit der Auswertung von Versuchsdaten und wäre über Hilfe sehr dankbar.
Aus Versuchen habe ich Messdaten erhalten, die leider etwas rauschen und daher so nicht für weitere Berechnungen verwendet werden können. Die Messdaten sind im Anhang (blaue Linie) beigefügt.
Für weitere Berechnungen sollte der Verlauf kontinuierlich zwischen den einzelnen Peaks steigen bzw. fallen. Ich habe das erstmal ziemlich simpel mit einer Glättung mit smooth (orangene Linie) versucht, allerdings werden dabei die Peaks auch geklättet, was auf jeden Fall vermieden werden soll.
Kann mir vielleicht jemand nen Tipp geben, wie ich den Verlauf glätten kann, ohne dabei die Peaks zu verringern? Vielen Dank.
Grüße
Beschreibung: |
|
 Download |
Dateiname: |
Bild.pdf |
Dateigröße: |
45.01 KB |
Heruntergeladen: |
349 mal |
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 04.01.2017, 13:48
Titel: Re: Verlauf glätten unter Beibehaltung der Peaks
|
 |
Hallo Boingenau,
Dazu musst Du zunächst mathematisch eindeutig definieren, was du als "Peak" bezeichnest.
Gruß, Jan
|
|
|
Boingenau |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 22
|
 |
|
 |
Anmeldedatum: 16.09.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 04.01.2017, 15:41
Titel:
|
 |
Hallo Jan,
vielen Dank für deine Antwort. Das Bild zeigt einen Ausschnitt aus einer zyklischen Kraft, welche abwechselnd positive und negative Werte annimmt. Mit Peaks meine ich das jeweilige Maximum, bzw. Minimum, welches im jeweiligen Abschnitt zwischen dem Vorzeichenwechsel auftritt. Als Code könnte man das für einen kontinuierlichen Verlauf so formulieren:
Dieser Code funktioniert hier jedoch nicht, da es infolge des Rauschens jeweils zu mehreren Nulldurchgängen im selben Bereich kommt. Hoffe ich habe mich verständlich ausgedrückt.
Grüße
Beschreibung: |
|
 Download |
Dateiname: |
Bild.pdf |
Dateigröße: |
26.34 KB |
Heruntergeladen: |
360 mal |
|
|
|
Epfi |

Forum-Meister
|
 |
Beiträge: 1.134
|
 |
|
 |
Anmeldedatum: 08.01.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 04.01.2017, 16:15
Titel:
|
 |
Wenn es nicht in Echzeit funktionieren muss, guck Dir vielleicht mal den Douglas-Peucker-Algorithmus an. Da gibt es auch schon fertige Implementierungen im Matlab-Fileexchange. Zum Beispiel hier: https://de.mathworks.com/matlabcent.....21132-line-simplification
Ich habe das irgendwann mal noch so umgebaut, dass ich die Länge des reduzierten Vektors übergeben konnte und per fminsearch die dazu passende Toleranz gefunden wurde. Das kann bei vielen Datenreihen sonst in ein ziemliches gefummel ausarten. Wenn Du nur zwei, drei Messungen hast, kannst Du Dir das aber auch sparen...
Die Funktionsweise ist bei Wikipedia ganz gut beschrieben: https://de.wikipedia.org/wiki/Douglas-Peucker-Algorithmus
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 04.01.2017, 16:54
Titel:
|
 |
Hallo Boingenau,
Stimmt, die Daten sind verrauscht. Deswegen ist "Peak" nicht eindeutig definiert. Wenn Du die Maximal-Werte nicht geglättet bekommen möchtest (was aber aus messtechnischer Sicht sinnvoll wäre, da es sich ja offensichtlich um Rauschen handelt), musst Du irgendwie eindeutig definieren, welche Werte Du als Peak betrachten willst. Meine Frage bleibt also:
Wie ist in Deinem Fall "Peak" genau definiert?
Vielleicht ist es das Maximum über eine gewisse Dauer des Signals. Diese Dauer müsstest Du allerdings vorgeben basierend auf dem Wissen über die Natur des Signals, z.B. die Periodenlänge.
Auch mit dem Douglas-Peuker wird diese Aufgabe nicht eindeutig gelöst:
Zitat: |
Für weitere Berechnungen sollte der Verlauf kontinuierlich zwischen den einzelnen Peaks steigen bzw. fallen |
Gruß, Jan
|
|
|
Epfi |

Forum-Meister
|
 |
Beiträge: 1.134
|
 |
|
 |
Anmeldedatum: 08.01.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 04.01.2017, 16:58
Titel:
|
 |
Jan S hat Folgendes geschrieben: |
Auch mit dem Douglas-Peuker wird diese Aufgabe nicht eindeutig gelöst:
Zitat: |
Für weitere Berechnungen sollte der Verlauf kontinuierlich zwischen den einzelnen Peaks steigen bzw. fallen |
|
Das kannst Du dann mit der Toleranz (=Abbruchkriterium) einstellen. Im Extremfall bleiben nur noch Start- und Endpunkt übrig und dazwischen fällt oder steigt der Verlauf streng monoton...
Aber ohne eine greifbare Definition eines "Peaks" ist das Problem tatsächlich nur schwer lösbar...
|
|
|
Boingenau |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 22
|
 |
|
 |
Anmeldedatum: 16.09.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 04.01.2017, 20:52
Titel:
|
 |
Hallo,
vielen Dank für eure Antworten!!!
Hatte das mit der Definition des Peaks wohl etwas falsch verstanden. Ein Extremalpunkt tritt in jedem 42. Messpunkt auf. Ich habe mir die ganze Thematik auch nochmal durch den Kopf gehen lassen und bin jetzt doch zu dem Entschluss gekommen, dass ich die Maximalwerte auch mitteln kann. Würdet ihr mir für ein kontinuierliches Ansteigen und Abfallen des Verlaufes trotzdem den Douglas-Peucker-Algorithmus empfehlen, oder sollte ich mir dafür ein anderes Verfahren anschauen?
Grüße
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|