一种基于穿戴式设备的运动状态识别方法及装置与流程

文档序号:31050079发布日期:2022-08-06 06:45阅读:90来源:国知局
一种基于穿戴式设备的运动状态识别方法及装置与流程

1.本发明涉及智能穿戴设备技术领域,具体涉及一种基于穿戴式设备的运动状态识别方法、装置、穿戴式设备及存储介质。


背景技术:

2.穿戴式设备可支持的运动方式多变,包括走、竞走、跑、骑行、游泳等,市面上大多数产品需要用户自主选择运动方式,自由运动状态下,无法及时对运动状态做出解算。现如今,机器学习的方法是常用的运动状态识别的算法,但是该类算法的模型构建(离线工作)需要大量的训练时间,且深度学习的前馈部署计算量庞大,导致系统负载较大,且实现难度高。


技术实现要素:

3.本发明的目的在于克服上述技术不足,提供一种基于穿戴式设备的运动状态识别方法、装置、穿戴式设备及存储介质,解决现有技术中采用深度学习法进行运动状态识别时导致的的系统负载大、实现难度高的技术问题。
4.为达到上述技术目的,本发明采取了以下技术方案:
5.第一方面,本发明提供一种基于穿戴式设备的运动状态识别方法,包括如下步骤:
6.获取短时域内的三轴加速度数据,并对所述三轴加速度数据进行低通滤波处理;
7.根据低通滤波处理后的三轴加速度数据,确定重力方向上的加速度轴,并根据重力方向上的加速度轴的加速度的功率占比,判断当前运动状态是否为第一状态;
8.当当前状态不是第一状态时,根据三轴加速度数据计算出短时域内的合加速度,并根据短时域内的合加速度的极差,判断当前运动状态是否为第二状态;
9.当当前状态不是第二状态时,计算出合加速度的频谱数据,根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态。
10.优选的,所述的基于穿戴式设备的运动状态识别方法中,所述运动状态至少包括游泳状态、骑行状态、行走状态、竞走状态和跑步状态,所述第一状态为游泳状态,所述第二状态为骑行状态。
11.优选的,所述的基于穿戴式设备的运动状态识别方法中,所述根据低通滤波处理后的三轴加速度数据,确定重力方向上的加速度轴,并根据重力方向上的加速度轴的加速度的功率占比,判断当前运动状态是否为第一状态,包括:
12.对低通滤波处理后的三轴加速度数据进行经验模态分解,得到三轴加速度的基线值;
13.根据三轴加速度的基线值,确定出重力方向上的加速度轴;
14.对低通滤波处理后三轴加速度数据进行快速傅里叶变换,得到三轴加速度的傅里叶级数;
15.基于三轴加速度的傅里叶级数计算出重力方向上的加速度轴的加速度的功率占
比;
16.基于所述重力方向上的加速度轴的加速度的功率占比,判断当前状态是否为第一状态。
17.优选的,所述的基于穿戴式设备的运动状态识别方法中,所述基于所述重力方向上的加速度轴的加速度的功率占比,判断当前状态是否为第一状态,包括:
18.判断所述重力上的加速度轴的加速度的功率占比是否超过第一预设值,如果是,则判定当前状态不是第一状态,否则判定当前状态是第一状态。
19.优选的,所述的基于穿戴式设备的运动状态识别方法中,所述当当前状态不是第一状态时,根据三轴加速度数据计算出短时域内的合加速度,并根据短时域内的合加速度的极差,判断当前运动状态是否为第二状态,包括:
20.当当前状态不是第一状态时,根据三轴加速度数据计算出短时域内的合加速度;
21.计算出短时域内的合加速度的极大值和极小值,计算出短时域内的合加速度的极差值;
22.当所述极差值小于第二预设值时,判定当前状态为第二状态,否则判定当前状态不是第二状态。
23.优选的,所述的基于穿戴式设备的运动状态识别方法中,所述当当前状态不是第二状态时,计算出合加速度的频谱数据,根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态,包括:
24.当当前状态不是第二状态时,对所述合加速度进行快速傅里叶变换,得到短时域内的合加速度的频谱数据;
25.根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态。
26.优选的,所述的基于穿戴式设备的运动状态识别方法中,所述根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态,包括:
27.当所述频谱数据在第一功率频段的功率占比最高时,判定当前运动状态为第三状态;
28.当所述频谱数据在第二功率频段的功率占比最高时,判定当前运动状态为第四状态;
29.当所述频谱数据在第三功率频段的功率占比最高时,判定当前运动状态为第五状态。
30.第二方面,本发明还提供一种基于穿戴式设备的运动状态识别装置,包括:
31.滤波模块,用于获取短时域内的三轴加速度数据,并对所述三轴加速度数据进行低通滤波处理;
32.第一判断模块,用于根据低通滤波处理后的三轴加速度数据,确定重力方向上的加速度轴,并根据重力方向上的加速度轴的加速度的功率占比,判断当前运动状态是否为第一状态;
33.第二判断模块,用于当当前状态不是第一状态时,根据三轴加速度数据计算出短时域内的合加速度,并根据短时域内的合加速度的极差,判断当前运动状态是否为第二状态;
34.第三判断模块,用于当当前状态不是第二状态时,计算出合加速度的频谱数据,根
据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态。
35.第三方面,本发明还提供一种穿戴式设备,包括加速度计和电子设备,所述电子设备包括处理器和存储器,所述加速度计与所述处理器电连接、并用于将采集的短时域内的三轴加速度数据发送给所述处理器;
36.所述存储器上存储有可被所述处理器执行的计算机可读程序;
37.所述处理器执行所述计算机可读程序时实现如上所述的基于穿戴式设备的运动状态识别方法中的步骤。
38.第三方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上所述的基于穿戴式设备的运动状态识别方法中的步骤。
39.与现有技术相比,本发明提供的基于穿戴式设备的运动状态识别方法、装置、穿戴式设备及存储介质,摒弃了机器学习的框架,创新性的利用各频段的功率比值作为判断运动状态的标准。首先,用户通过胸戴设备采集加速度数据,并对加速进行平滑滤波,得到信噪比较高的加速度时间队列;随后,解算加速度三轴的加速度功率占比,判断是否为第一状态;若为非第一状态,则先计算加速度极差,判断是否为第二状态,再对滤波平滑后的加速序列进行快速傅里叶变换,得到对应的频谱数据;然后,再根据频谱数据得到各频段的功率占比;最后,通过各频段的功率比值,识别用户的运动状态,实现了利用非机器学习框架进行运动状态识别,节省了离线训练参数的过程,而且具有较好的实时性,处理的时间序列最多两个运动状态周期,计算延时较短,而且不需要其他设备接入,只需要带有加速度计的穿戴式设备,节省了成本。
附图说明
40.图1是本发明提供的基于穿戴式设备的运动状态识别方法的一较佳实施例的流程图;
41.图2a是各种运动状态的重力轴功率占比的箱型图;
42.图2b是各种运动状态的重力轴功率占比的时序图;
43.图3是非游泳状态下的加速度幅值示意图;
44.图4a是快跑状态下的时域分析图;
45.图4b是竞走状态下的时域分析图;
46.图4c是行走状态下的时域分析图;
47.图5是快跑、竞走、慢走状态下的频域分析图;
48.图6是本发明提供的基于穿戴式设备的运动状态识别装置的一实施例的示意图;
49.图7是本发明基于穿戴式设备的运动状态识别程序的一实施例的运行环境示意图。
具体实施方式
50.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
51.请参阅图1,本发明实施例提供的基于穿戴式设备的运动状态识别方法,包括如下步骤:
52.s100、获取短时域内的三轴加速度数据,并对所述三轴加速度数据进行低通滤波处理;
53.s200、根据低通滤波处理后的三轴加速度数据,确定重力方向上的加速度轴,并根据重力方向上的加速度轴的加速度的功率占比,判断当前运动状态是否为第一状态;
54.s300、当当前状态不是第一状态时,根据三轴加速度数据计算出短时域内的合加速度,并根据短时域内的合加速度的极差,判断当前运动状态是否为第二状态;
55.s400、当当前状态不是第二状态时,计算出合加速度的频谱数据,根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态。
56.本实施例中,摒弃了机器学习的框架,创新性的利用各频段的功率比值作为判断运动状态的标准。首先,用户通过胸戴设备采集加速度数据,并对加速进行平滑滤波,得到信噪比较高的加速度时间队列;随后,解算加速度三轴的加速度功率占比,判断是否为第一状态;若为非第一状态,则先计算加速度极差,判断是否为第二状态,再对滤波平滑后的加速序列进行快速傅里叶变换,得到对应的频谱数据;然后,再根据频谱数据得到各频段的功率占比;最后,通过各频段的功率比值,识别用户的运动状态,实现了利用非机器学习框架进行运动状态识别,节省了离线训练参数的过程,而且具有较好的实时性,处理的时间序列最多两个运动状态周期,计算延时较短,而且不需要其他设备接入,只需要带有加速度计的穿戴式设备,节省了成本。
57.在一些实施例中,所述运动状态至少包括游泳状态、骑行状态、行走状态、竞走状态和跑步状态,所述第一状态为游泳状态,所述第二状态为骑行状态。通过上述运动状态识别方法,可精准的识别出运动状态。需要说明的是,本发明实施例所述的游泳状态、骑行状态、行走状态、竞走状态和跑步状态都是用户的行为动作状态,并非表示用户一定在进行游泳、骑行等动作,例如用户可通过跑步机模拟跑步状态,或者做出类似游泳的动作,但并非实际在游泳。
58.在一些实施例中,步骤s100是为了提高加速度信号的信噪比,从而得到信噪比较高的加速度信号,具体实施时,将得到的加速度序列(三轴数据)先进行5hz的低通采样处理,提高加速度信号的信噪比:
[0059][0060]
其中,y(n)为滤波输出的第n个加速度值,x为输入的加速度序列,为了对三个轴进行区分,计yi(i=1,2,3)表示三个加速度轴向。
[0061]
在一些实施例中,步骤s200是为了判断当前运动状态是否为游泳状态。具体的,步骤s200具体包括:
[0062]
对低通滤波处理后的三轴加速度数据进行经验模态分解,得到三轴加速度的基线值;
[0063]
根据三轴加速度的基线值,确定出重力方向上的加速度轴;
[0064]
对低通滤波处理后三轴加速度数据进行快速傅里叶变换,得到三轴加速度的傅里叶级数;
[0065]
基于三轴加速度的傅里叶级数计算出重力方向上的加速度轴的加速度的功率占比;
[0066]
基于所述重力方向上的加速度轴的加速度的功率占比,判断当前状态是否为第一状态。
[0067]
本实施例中,首先对三个轴的加速度yi做经验模态分解,经验模态分解是由黄锷(n.e.huang)在美国国家宇航局与其他人于1998年创造性地提出的一种新型自适应信号时频处理方法,特别适用于非线性非平稳信号的分析处理。通过经验模态分解可以得到三轴加速度的基线值,而基线值最接近g(重力加速度),则认为该轴方向与重力大致同向或反向,因此可以得到重力方向上的加速度轴。当确定了重力方向上你的加速度轴后,可以对三轴的加速度进行快速傅里叶变换,得到如下:
[0068][0069]
其中,f表示加速度的傅里叶级数序列,i为单位复数,i2=-1,n表示三个轴的标注。基于该级数序列,解算三个轴的功率比:
[0070]
fea=fea1+fea2+fea3[0071][0072][0073][0074]
由于在上一步中,已经确定了与重力加速度近似共线的轴,并且得到了该轴的加速占比,记与为p
per
,通过p
per
的大小即可快速判断出当前运动状态是否为游泳状态。
[0075]
在一些实施例中,所述基于所述重力方向上的加速度轴的加速度的功率占比,判断当前状态是否为第一状态,包括:
[0076]
判断所述重力上的加速度轴的加速度的功率占比是否超过第一预设值,如果是,则判定当前状态不是第一状态,否则判定当前状态是第一状态。
[0077]
请参阅图2a和图2b,本实施例中,通过大量的运动数据分析,得到一个经验数值,即上述的第一预设值,其优选为50%,当重力轴的功率占比阈值在50%以上时,可以判定当前运动状态为非游泳状态,否则可以判定当前运动状态为游泳状态。
[0078]
在一些实施例中,步骤s300是为了在当前运动状态不是游泳状态时,判断当前状态是否为骑行状态。具体的,步骤s300具体包括:
[0079]
当当前状态不是第一状态时,根据三轴加速度数据计算出短时域内的合加速度;
[0080]
计算出短时域内的合加速度的极大值和极小值,计算出短时域内的合加速度的极差值;
[0081]
当所述极差值小于第二预设值时,判定当前状态为第二状态,否则判定当前状态不是第二状态。
[0082]
本实施例中,如果判断出运动状态为非游泳状态,则系统进入下一级判断,首先判断加速度的极差,如果达不到判定阈值(即第二预设值),则为骑行状态,如果超出阈值则为走路、竞走或跑步状态。请参阅图3,从图3中可以看出,骑行状态的加速度极差在0.5g左右,而跑步、竞走、慢走运动在加速度幅值上有交叉,所以加速度幅值小于0.5g则判定为骑行状态,反之则为走路、竞走或跑步状态。
[0083]
在一些实施例中,步骤s400是为了在当前运动状态既不是游泳状态,也不是骑行状态时,判断出当前运动状态是行走状态、竞走状态或跑步状态的哪一种。具体的,步骤s400具体包括:
[0084]
当当前状态不是第二状态时,对所述合加速度进行快速傅里叶变换,得到短时域内的合加速度的频谱数据;
[0085]
根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态。
[0086]
本实施例中,同上述傅里叶变换一样,当当前状态不是骑行状态时,将和加速度进行快速傅里叶变换,可以得到短时域内的合加速度的频谱数据,解算出0.5~1.5hz、1.5~2.5hz、2.5~3.5hz、3.5~5hz的功率,如图4a、图4b、图4c和图5所示,短时域频谱分析如下:
[0087]

[0088]

[0089]

[0090]

[0091]
通过上述公式可以求解出0.5~1.5hz、1.5~2.5hz、2.5~3.5hz、3.5~5hz的功率在0.5~5hz功率的占比。接下来,求解比值向量与对角单位阵的相关系数,以此确定运动状态。
[0092]
在一些实施例中,所述根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态,包括:
[0093]
当所述频谱数据在第一功率频段的功率占比最高时,判定当前运动状态为第三状态;
[0094]
当所述频谱数据在第二功率频段的功率占比最高时,判定当前运动状态为第四状态;
[0095]
当所述频谱数据在第三功率频段的功率占比最高时,判定当前运动状态为第五状态。
[0096]
本实施例中,如果第

频段功率占比最高,则为行走状态;第

最大则为竞走状态;功率占比最大的频段为第

的话,运动状态则为跑步状态。
[0097]
本发明利用非机器学习框架进行运动状态识别,节省了离线训练参数的过程。本发明与传统的机器学习算法相比,运动状态识别的准确率相差不大,但系统轻量,能够极大的降低系统的实现难度。
[0098]
基于上述基于穿戴式设备的运动状态识别方法,本发明实施例还相应的提供一种
基于穿戴式设备的运动状态识别装置600,请参阅图6,该基于穿戴式设备的运动状态识别装置包括滤波模块610、第一判断模块620、第二判断模块630和第三判断模块640。
[0099]
滤波模块610用于获取短时域内的三轴加速度数据,并对所述三轴加速度数据进行低通滤波处理;
[0100]
第一判断模块620用于根据低通滤波处理后的三轴加速度数据,确定重力方向上的加速度轴,并根据重力方向上的加速度轴的加速度的功率占比,判断当前运动状态是否为第一状态;
[0101]
第二判断模块630用于当当前状态不是第一状态时,根据三轴加速度数据计算出短时域内的合加速度,并根据短时域内的合加速度的极差,判断当前运动状态是否为第二状态;
[0102]
第三判断模块640用于当当前状态不是第二状态时,计算出合加速度的频谱数据,根据所述频谱数据在预设的功率频段的功率占比,判断出当前的运动状态。
[0103]
本实施例中,摒弃了机器学习的框架,创新性的利用各频段的功率比值作为判断运动状态的标准。首先,用户通过胸戴设备采集加速度数据,并对加速进行平滑滤波,得到信噪比较高的加速度时间队列;随后,解算加速度三轴的加速度功率占比,判断是否为第一状态;若为非第一状态,则先计算加速度极差,判断是否为第二状态,再对滤波平滑后的加速序列进行快速傅里叶变换,得到对应的频谱数据;然后,再根据频谱数据得到各频段的功率占比;最后,通过各频段的功率比值,识别用户的运动状态,实现了利用非机器学习框架进行运动状态识别,节省了离线训练参数的过程,而且具有较好的实时性,处理的时间序列最多两个运动状态周期,计算延时较短,而且不需要其他设备接入,只需要带有加速度计的穿戴式设备,节省了成本。
[0104]
由于上文已对基于穿戴式设备的运动状态识别方法进行详细描述,基于穿戴式设备的运动状态识别方法具备的技术效果,基于穿戴式设备的运动状态识别装置同样具备,故在此不再赘述。
[0105]
如图7所示,基于上述基于穿戴式设备的运动状态识别方法,本发明还相应提供了一种穿戴式设备,包括加速度计和电子设备,所述电子设备包括处理器和存储器,所述加速度计与所述处理器电连接、并用于将采集的短时域内的三轴加速度数据发送给所述处理器。
[0106]
该电子设备可以是控制器、移动终端、桌上型计算机、笔记本、掌上电脑及服务器等计算设备。该电子设备包括处理器10、存储器20及显示器30。图7仅示出了电子设备的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0107]
存储器20在一些实施例中可以是该电子设备的内部存储单元,例如电子设备的硬盘或内存。存储器20在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,存储器20还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器20用于存储安装于电子设备的应用软件及各类数据,例如安装电子设备的程序代码等。存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有基于穿戴式设备的运动状态识别程序40,该基于穿戴
式设备的运动状态识别程序40可被处理器10所执行,从而实现本发明各实施例的基于穿戴式设备的运动状态识别方法。
[0108]
处理器10在一些实施例中可以是一中央处理器(central processing unit,cpu),微处理器或其他数据处理芯片,用于运行存储器20中存储的程序代码或处理数据,例如执行基于穿戴式设备的运动状态识别方法等。
[0109]
显示器30在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及oled(organic light-emitting diode,有机发光二极管)触摸器等。显示器30用于显示在所述电子设备的信息以及用于显示可视化的用户界面。电子设备的部件10-30通过系统总线相互通信。
[0110]
在一些实施例中,当处理器10执行存储器20中基于穿戴式设备的运动状态识别程序40时实现上述各实施例所述的基于穿戴式设备的运动状态识别方法的步骤。
[0111]
综上所述,本发明提供的基于穿戴式设备的运动状态识别方法、装置、穿戴式设备及存储介质,摒弃了机器学习的框架,创新性的利用各频段的功率比值作为判断运动状态的标准。首先,用户通过胸戴设备采集加速度数据,并对加速进行平滑滤波,得到信噪比较高的加速度时间队列;随后,解算加速度三轴的加速度功率占比,判断是否为第一状态;若为非第一状态,则先计算加速度极差,判断是否为第二状态,再对滤波平滑后的加速序列进行快速傅里叶变换,得到对应的频谱数据;然后,再根据频谱数据得到各频段的功率占比;最后,通过各频段的功率比值,识别用户的运动状态,实现了利用非机器学习框架进行运动状态识别,节省了离线训练参数的过程,而且具有较好的实时性,处理的时间序列最多两个运动状态周期,计算延时较短,而且不需要其他设备接入,只需要带有加速度计的穿戴式设备,节省了成本。
[0112]
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的存储介质中,该程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。
[0113]
以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所做出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1