【问题标题】:Accelerometer signal segmentation加速度计信号分割
【发布时间】:2010-12-03 00:04:23
【问题描述】:

我有一个一维加速度计信号(仅一个轴)。我想创建一个强大的算法,它能够识别信号中的某些形状。

首先,我将移动平均滤波器应用于原始信号。在附图中,原始信号为红色,平均信号为黑色。从图片中可以看出,从平均(黑色)信号中可以看到一些趋势 - 该信号包含 10 次重复的峰值模式,其中加速度攀升至最大值,然后回落。我用十字标记了这些模式的开始和结束。

所以我的目标是自动找到标记的位置。使模式提取困难的问题是:

  • 模式开始的 y 值可能与模式的结束不同
  • 模式可能有多个峰
  • 我没有任何具体的时间信息(从模式的开始到结束需要 A 时间单位)

我尝试了不同的方法,这些方法几乎都是自制的,所以我不会提及它们 - 我不希望你对我的思维方式有偏见。是否有一些标准或书籍方法可以进行这种模式提取?或者也许有人知道如何以稳健的方式解决这个问题?

任何想法都会受到赞赏。

【问题讨论】:

    标签: accelerometer signals pattern-recognition


    【解决方案1】:

    保持简单!
    移动平均线似乎是一个足够好的阻尼装置;保持原样,如果您注意到它分别留下太多噪声或去除太多信号,可能只会增加或减少其样本数。然后,您只需要处理这个平均信号。

    您寻找的模式标记似乎相对容易检测。用英语表示,这些标记是:
    目标 = 平均读数曲线中的拐点,当斜率显着从负变为正时。
    因此,您应该能够通过比较与移动平均值一起计算的斜率值来检测这种情况,因为每个新的读数值都可用(当然有很短的延迟,当然斜率只有在下一个 [few] point[s] 的平均读数可用时才能计算给定点的读数)

    但是,为了避免错误检测,您需要定义一些旨在过滤不良模式的参数。这些参数将更准确地定义上述目标定义中“显着”的含义。

    暂时检测兴趣点的公式可以像这样简单
    (-1 * S(t-1) + St ) > Min_delta_Slope
    在哪里
    S 分别是时间 t-1 和 t 的斜率(更多信息)
    Min_delta_Slope 是一个参数,它定义了我们希望的坡度变化的“急剧”程度。
    假设归一化 t 和 Y 单位,我们可以将 Min_delta_Slope 参数设置为接近甚至超过 1。直观地,值 1(再次以归一化单位表示)将表明我们以曲线“到达”的点为目标,下降斜率为 50 % 并以 50% 的向上斜率离开该点(或 40% + 60% 或 .. 10% 即几乎平坦,90% 即几乎垂直)。
    为了避免在这只是曲线中的小幅下降的情况下检测点,我们可以考虑更多的点,使用更高级的公式,例如 say

       (Pm2 * S(t-2) + Pm1 * S(t-1) + P0 * St + Pp1 S(t+1) ) > Min_delta_Slope
    在哪里
    Pm2、Pm1、P0 和 Pp1 是对感兴趣点前后各个点的斜率给予相对重要性的系数。 (Pm2 和 Pm1 通常为负值,除非我们仅使用正参数并在公式中使用负号)
    St +/- n 是不同倍的斜率
    而 Min_delta_Slope 是一个参数,它定义了我们希望的最小斜率变化有多“急剧”。
    直观地说,这个 4 点公式将考虑曲线的形状,该点在两个读数之前和两个读数超过兴趣点(除了考虑它之前和之后的点)。给定适当的参数值,该公式将要求曲线在两个时间片内稳定地“下降”,然后在接下来的两个时间片内稳定地上升,从而避免在曲线中标记较小的下降。
    实现此目的的另一种方法可能是通过使用 两个(或更多)时间片之前的 [平均] 读数与当前 [平均] 读数之间的 Y 值差异来计算斜率阅读。这两种方法相似,但会产生略微不同的结果;通常我们会通过 Pm2、Pm1、P0 和 P1 参数对所需的曲线形状有更多的发言权。

    【讨论】:

    • 非常感谢您的回答。我会尝试这种方法。
    【解决方案2】:

    您可能想查看分水岭分割,它会做一些相关的事情(将景观划分为不同的集水盆地)。奇怪的是,我实际上正在写一篇博士论文,该论文目前大量使用分水岭(说真的:))

    【讨论】:

    • 谢谢!当您正在攻读该主题的博士学位时,您是否有一些关于一维流域分割的参考资料?
    • 不幸的是,我看到的大多数文献都是关于 2D 和 3D 分水岭分割的,但是 1D 分水岭应该相当简单——只要看看 2D 在 n x 1 网格上会做什么。我记得一篇关于 2D 分水岭的有用论文是 Meijster 和 Roerdink 的“分水岭变换的不相交集算法”。
    • 谢谢,我去看看论文。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 2013-04-29
    • 2013-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多