我正在寻找一些关于从哪里开始阅读以及从哪里开始阅读以学习解决这个问题的建议。
我有一个动物在开阔地(只是一个笼子)中的位置坐标(x,y)的时间序列。我想检测动物停止或开始“行走”的时刻(即:从一个地方移动到另一个地方,而不是在同一个地方)。我认为这不会那么困难,但我发现解决它有些麻烦。
所以,我正在寻找信号平坦的时间,或者信号开始从平坦变化的时刻:

我认为这件事可能与步骤检测有关,但我不确定。为简单起见,我将从一个坐标开始。似乎步检测可能是我正在寻找的,但是:我的信号“基线”每次都会不同。动物会移动并停在其他地方,依此类推。湾。信号可能非常“嘈杂”,因为动物可以而且会在同一个地方移动很多(即:梳理毛发) c。这种变化可以是慢的,也可以是快的,我都需要。
首先,如果我可以只用一个坐标解决这个问题,我会很高兴,尽管我必须在两个坐标系中寻找这种变化。
所以,我的问题是:1.步检测是解决这个问题的好方法吗?如果没有,还有什么?2.对(x,y)坐标都这样做有什么建议吗?
提前致谢
编辑:我通过用相机获取头顶图像并跟踪连接到动物头部的 LED 来获得 (x,y) 坐标。跟踪是通过颜色过滤完成的。
EDIT2:数据的副本:
https://www.dropbox.com/s/oph33szu891rgrl/data_sample.txt
https://www.dropbox.com/s/idulfdr965eeh7i/data_sample.mat
数据格式为 (x,y,t)
EDIT3:我一直在尝试平滑数据,但这并不是我所期望的。我需要清理的不是高频,而是低振幅。我寻找的运动可以是快的,也可以是慢的,但幅度很大。在这里,带有 matlab 函数 smooth() 的信号示例请注意,我正在寻找绿色时刻,在平滑时会丢失
