获得信号峰值之间的时间

时间:2013-04-03 19:33:42

标签: ios signals

所有

我需要帮助,我有一个像这样的信号

                          /\
     /\                  /  \
    /  \      /\        /    \
0 ---------------------------------------
  /      \  /    \    /        \    /
          \/      \  /          \  /
                   \/            \/

我需要检测所有峰值(阴性和阳性)。所有值都是浮点数,我得到所有66毫秒。我想知道两个峰值之间的时间。我需要帮助才能实现它,我想我需要将所有值存储在一个数组中,其中包含来自最后一个峰值的时间戳,任何人都有最好的方法来做到这一点吗?

感谢。

1 个答案:

答案 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

希望这有帮助!