基于姿势数据检测俯卧撑

数据挖掘 机器学习 时间序列 熊猫 麻木的
2022-03-04 21:28:50

我一直在玩 Google 的 MLKit,并决定检测俯卧撑。

作为一个快速测试,我取了左肩的位置,并绘制了 Y 轴。以下是各种试验的样子:

五个俯卧撑

五个俯卧撑

6 微距

6个俯卧撑,离手机稍微远一点

没有俯卧撑

完全没有俯卧撑

6在一边

6个俯卧撑,远见且方向不同

好消息

如果我查看这些图表,我可以直观地直观地看出某人做了多少俯卧撑。

挑战

我不太确定如何通过算法检测到这一点。

我考虑过使用“坡度变化”之类的东西,但这样我也会检测到很多噪音。我考虑过使用傅立叶变换,但从一些基本的演奏中,我无法清楚地区分“俯卧撑”信号与其他信号。

我认为的两个大问题是:

  • 一种。“俯卧撑”波的宽度和高度可能不同,具体取决于用户与手机的距离
  • 湾。我不能仅仅依靠斜坡来解决这个问题,需要某种“波”检测器

当前计划

目前,我正在考虑做一些特殊的启发式:

  • 也许我可以使用其他信息,例如:
    • 臀部坐标(确保它们与肩膀在同一纬度范围内)
    • X坐标信息
  • 我可以使用以上两条信息来“删除”坏区域
    • (任何在 X 坐标上有很大运动的地方,或者臀部没有对齐,都不能做俯卧撑),也许我可以依靠像“显着”坡度变化这样的东西。

问题

现在我处于一个有很多我不知道我不知道的东西的位置。您如何看待我的“当前计划”?你会以不同的方式处理它吗?你有什么方法可以研究吗?

目前的探索:https ://github.com/stopachka/pushups-data-exploration/blob/main/exploration.ipynb

0个回答
没有发现任何回复~