所有
我需要帮助,我有一个像这样的信号
/\
/\ / \
/ \ /\ / \
0 ---------------------------------------
/ \ / \ / \ /
\/ \ / \ /
\/ \/
我需要检测所有峰值(阴性和阳性)。所有值都是浮点数,我得到所有66毫秒。我想知道两个峰值之间的时间。我需要帮助才能实现它,我想我需要将所有值存储在一个数组中,其中包含来自最后一个峰值的时间戳,任何人都有最好的方法来做到这一点吗?
感谢。
答案 0 :(得分:0)
要发现高峰,您可能希望发现方向的变化。
您不一定要将值存储在数组中。
伪代码:
//every frame:
frameIncrement++;
currentDir = currentVal - prevVal
if( (prevDir < 0 && currentDir > 0) || (prevDir > 0 && currentDir < 0)) {
//change in direction!
time = frameIncrement * 66
frameIncrement = 0
}
prevDir = currentDir
prevVal = currentVal
希望这有帮助!