Berechnung des Maximal und Minimwalwertes einer Kurvenzahlreihe
-
Hallo, ich habe ein Signal welches wellenförmig Zahlen liefert, nun benötige ich den Maximal und den Minimalwert, damit ich anschließend bei jeder Periode (von max auf min) den Minimalwert vom Maximalwert abziehen kann. Kann mir da jemand helfen? Ich denke das geht irgendwie mit einer while Schleife? Zudem müsste das nach einem Maximalwert und einem Minimalwert wieder von vorne beginnen. Mein Signal sieht so aus: https://www.researchgate.net/publication/234067555/figure/fig11/AS:214024278024202@1428038772295/Calculation-of-SpO2-from-PPG-signal-using-4-LEDs-configuration-in-conjunction-with-FPGA.png
LG
-
Was du brauchst ist keine Schleife, sondern eine State-Machine.
States:- WaitForLocalMinimum
- WaitForLocalMaximum
Wenn du z.B. in WaitForLocalMinimum bist, und siehst dass der aktuelle Wert grösser als der vorige ist, dann war der vorige Wert ein lokales Minimum. Dann merkst du dir den, und wechselst in den State WaitForLocalMaximum.
Entsprechend umgekehrt bei WaitForLocalMaximum.
ps: Musst du natürlich mit den gefilterten Werten machen wenn was sinnvolles dabei rauskommen soll.
-
@hustbaer sagte in Berechnung des Maximal und Minimwalwertes einer Kurvenzahlreihe:
Was du brauchst ist keine Schleife, sondern eine State-Machine.
States:- WaitForLocalMinimum
- WaitForLocalMaximum
Wenn du z.B. in WaitForLocalMinimum bist, und siehst dass der aktuelle Wert grösser als der vorige ist, dann war der vorige Wert ein lokales Minimum. Dann merkst du dir den, und wechselst in den State WaitForLocalMaximum.
Entsprechend umgekehrt bei WaitForLocalMaximum.
ps: Musst du natürlich mit den gefilterten Werten machen wenn was sinnvolles dabei rauskommen soll.
Danke für deinen Tipp! Hättest du ev noch einen Beispielscode den ich mir ansehen kann? Ich bin irgendwie nicht fündig geworden und hatte es über einen anderen Tipp versucht zu lösen, das hatte aber leider nicht wie gewünscht geklappt, meinen Versuch stelle ich aber mal rein. https://pastebin.com/embed_js/ApdQSrKC