CN115645886A - 健身运动检测方法、电子设备和存储介质 - Google Patents
健身运动检测方法、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115645886A CN115645886A CN202211316775.0A CN202211316775A CN115645886A CN 115645886 A CN115645886 A CN 115645886A CN 202211316775 A CN202211316775 A CN 202211316775A CN 115645886 A CN115645886 A CN 115645886A
- Authority
- CN
- China
- Prior art keywords
- data
- motion
- user
- displacement
- periodic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 576
- 238000001514 detection method Methods 0.000 title claims abstract description 144
- 238000006073 displacement reaction Methods 0.000 claims abstract description 179
- 238000000034 method Methods 0.000 claims abstract description 49
- 230000000737 periodic effect Effects 0.000 claims description 127
- 238000013136 deep learning model Methods 0.000 claims description 26
- 238000013507 mapping Methods 0.000 claims description 21
- 230000003068 static effect Effects 0.000 claims description 18
- 230000004927 fusion Effects 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 238000007499 fusion processing Methods 0.000 claims description 6
- 230000001133 acceleration Effects 0.000 description 27
- 238000004422 calculation algorithm Methods 0.000 description 25
- 230000000875 corresponding effect Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 238000001914 filtration Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000011218 segmentation Effects 0.000 description 7
- 230000036541 health Effects 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 239000006185 dispersion Substances 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 2
- 238000005452 bending Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000008280 blood Substances 0.000 description 2
- 210000004369 blood Anatomy 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 229910052760 oxygen Inorganic materials 0.000 description 2
- 239000001301 oxygen Substances 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 210000003403 autonomic nervous system Anatomy 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000000748 cardiovascular system Anatomy 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000035790 physiological processes and functions Effects 0.000 description 1
- 230000035485 pulse pressure Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 210000002345 respiratory system Anatomy 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000002792 vascular Effects 0.000 description 1
Images
Landscapes
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本公开提供了一种健身运动检测方法、电子设备和存储介质。该方法包括:通过终端设备的运动传感器采集用户在第一时间段的原始运动数据;基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据;基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果。由此,可基于用户的原始运动数据,得到用户在世界坐标系中的位移数据,并综合考虑到原始运动数据和位移数据,来确定运动检测结果,提高了运动检测结果的准确性。
Description
技术领域
本公开涉及运动检测技术领域,特别涉及一种健身运动检测方法、电子设备和存储介质。
背景技术
目前,随着人工智能技术的发展,运动检测在智能手表、智能手机等电子设备中得到了广泛应用。比如,智能手机可对用户的步数进行检测,还可对用户的动作类别进行检测,以获取用户的运动情况。然而,相关技术中的运动检测方法存在准确性低的问题。
发明内容
本公开旨在至少在一定程度上解决上述技术中的技术问题之一。
第一方面,本公开实施例提出一种健身运动检测方法,包括:通过终端设备的运动传感器采集用户在第一时间段的原始运动数据;基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据;基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果。
在一些实施例中,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:对所述原始运动数据和所述位移数据进行融合处理,得到融合数据;通过对所述融合数据进行处理,得到所述运动检测结果。
在一些实施例中,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:基于所述原始运动数据和所述位移数据,利用深度学习模型得到所述用户的目标运动类别,所述运动检测结果包括所述目标运动类别。
在一些实施例中,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:基于所述原始运动数据和所述位移数据,得到多个周期数据片段;基于所述多个周期数据片段中的每个周期数据片段,得到所述运动检测结果,所述运动检测结果包括运动计数。
在一些实施例中,所述基于所述多个周期数据片段中的每个周期数据片段,得到所述运动检测结果,包括:基于所述多个周期数据片段中的每个周期数据片段,从所述多个周期数据片段中选取至少一个有效周期数据片段;将所述至少一个有效周期数据片段的数量确定为所述运动计数。
在一些实施例中,所述基于所述多个周期数据片段中的每个周期数据片段,从所述多个周期数据片段中选取至少一个有效周期数据片段,包括:将所述多个周期数据片段中与所述用户的目标运动类别匹配的至少一个周期数据片段确定为所述有效周期数据片段。
在一些实施例中,所述基于所述多个周期数据片段中的每个周期数据片段,从所述多个周期数据片段中选取至少一个有效周期数据片段,包括:确定所述多个周期数据片段中每个周期数据片段的运动分类结果;将所述多个周期数据片段中除第一周期数据片段以外的至少一个周期数据片段确定为所述有效周期数据片段,所述第一周期数据片段的运动分类结果指示非运动。
在一些实施例中,所述基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据,包括:基于所述原始运动数据,确定所述第一时间段内的至少一个目标时刻,其中,所述终端设备在所述至少一个目标时刻处于静止状态;基于所述终端设备在所述至少一个目标时刻的姿态和所述原始运动数据,确定所述位移数据。
在一些实施例中,所述基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据,包括:基于所述原始运动数据,识别所述用户在所述第一时间段内的第一时刻是否处于静止状态;响应于所述用户在所述第一时刻处于静止状态,基于所述原始运动数据,确定所述终端设备在所述第一时刻的姿态;基于以所述第一时刻作为起点的第二时间段的所述原始运动数据和所述终端设备在所述第一时刻的姿态,确定所述用户在所述第二时间段内在世界坐标系中的位移数据,其中,所述第二时间段以所述终端设备再次处于静止状态的第二时刻作为终点。
在一些实施例中,所述基于所述终端设备在所述至少一个目标时刻的姿态和所述原始运动数据,确定所述位移数据,包括:基于所述至少一个目标时刻中第一时刻的姿态,对所述终端设备的姿态进行更新处理,得到更新处理后的所述终端设备的姿态;基于所述更新后的所述终端设备的姿态和所述原始运动数据中对应于所述第一时刻以后的运动数据,得到所述终端设备在所述第一时刻以后的位移数据。
在一些实施例中,所述基于所述至少一个目标时刻中第一时刻的姿态,对所述终端设备的姿态进行更新处理,包括:基于所述终端设备在所述第一时刻的姿态以及所述第一时刻与第三时刻之间的时间间隔,对所述终端设备的姿态进行更新处理,所述第三时刻为所述至少一个目标时刻中位于所述第一时刻之前的上一目标时刻。
在一些实施例中,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:基于所述终端设备在所述第一时间段内的至少一个目标时刻的姿态,获取所述原始运动数据在世界坐标系中的映射运动数据;基于所述原始运动数据、所述位移数据和所述映射运动数据,确定所述运动检测结果。
第二方面,本公开实施例还提出了一种电子设备,包括存储器、处理器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码,以实现本公开第一方面任意可能实施例所述的健身运动检测方法。
第三方面,本公开实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,该程序被计算机设备执行时实现本公开第一方面任意实施例所述的健身运动检测方法。
第四方面,本公开实施例还提出了一种计算机程序产品,所述计算机程序产品包括计算机可读指令,该计算机可读指令被计算机设备执行时实现本公开第一方面任意实施例所述的健身运动检测方法。
本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。
附图说明
本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据一些实施例的系统的方框示意图;
图2为根据一些实施例的健身运动检测方法的流程示意图;
图3为根据一些实施例的健身运动检测方法中3轴加速度传感器数据的示意图;
图4为根据一些实施例的健身运动检测方法中3轴陀螺仪传感器数据的示意图;
图5为根据一些实施例的健身运动检测方法中z轴位移数据的示意图;
图6为根据一些实施例的健身运动检测方法的流程示意图;
图7为根据一些实施例的健身运动检测方法的流程示意图;
图8为根据一些实施例的健身运动检测方法中x轴加速度传感器数据、z轴位移数据、多个周期数据片段的示意图;
图9为根据一些实施例的健身运动检测方法的流程示意图;
图10为根据一些实施例的健身运动检测方法的流程示意图;
图11为根据一些实施例的健身运动检测方法的流程示意图;
图12为根据一些实施例的健身运动检测方法的示意图;
图13为根据一些实施例的健身运动检测装置的方框示意图;
图14为根据一些实施例的电子设备的方框示意图。
具体实施方式
下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。
可穿戴设备越来越多地用于监测用户的生理信息,例如心率、血氧水平等。许多可穿戴设备记录生理测量值以响应用户输入,例如用户点击可穿戴设备的按钮或其他界面元素以引起测量。可穿戴设备可以是腕戴式设备、头戴式设备、足部穿戴设备或其他可穿戴设备,本公开实施例对此不做限定。
目前,随着人工智能技术的发展,运动检测在智能手表、智能手机等电子设备中得到了广泛应用。比如,智能手机可对用户的步数进行检测,还可对用户的动作类别进行检测,以获取用户的运动情况。然而,相关技术中的运动检测方法存在准确性低的问题。
在相关技术中,直接使用加速度计或陀螺仪的数据进行运动识别,其中,通过识别采集到的信号中是否包含周期性信号,以及信号所包含的特征信息进行运动分类和运动计数,但对于一些复合型运动,长周期运动不满足周期性判断标准,直接使用传感器数据并不能准确的给出判断。
本公开实施例提出了一种健身运动检测方法,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据,基于原始运动数据,得到用户在世界坐标系中的位移数据,基于原始运动数据和位移数据,确定用户的运动检测结果。由此,可基于用户的原始运动数据,得到用户在世界坐标系中的位移数据,将复杂的信号转换为更为简单的位移信息,并综合考虑到原始运动数据和位移数据,来确定运动检测结果,提高了运动检测结果的准确性。
为了更详细地描述一些实现,首先参考用于健身运动检测方法的硬件和软件结构的示例。图1是示出用于检测健康状况、运动状况、睡眠状况或其组合中的一个或多个的系统100的示例的框图。系统100包括可穿戴设备102、服务器设备104和中间设备106,中间设备106是分别与可穿戴设备102和服务器设备104具有通信连接的设备。
可穿戴设备102是一种计算设备,被配置为在操作期间由人类用户佩戴。可穿戴设备102可以实现为手表、手环、手镯、支架、腕带、臂带、腿带、戒指、头带、项链或耳机,或者以另一可穿戴设备的形式实现。可穿戴设备102包括一个或多个传感器108,用于检测指示可穿戴设备102的用户的生理参数。传感器108可包括光容积图(Photo Plethysmo Graphy,PPG)传感器、心电图(Electrocardiogram,ECG)传感器、电极、脉压传感器、血管特性传感器、另一传感器或其组合中的一个或多个。生理参数是指可穿戴设备的用户的一个或多个生理参数。生理参数表示与可穿戴设备102的用户的身体的一个或多个重要系统(例如,心血管系统、呼吸系统、自主神经系统或另一系统)相关的可测量的生理参数。例如,生理参数可以是可穿戴设备102的用户的心率、心率变异性、血氧水平、血压或另一生理参数中的一个或多个。
可穿戴设备102上运行程序110,用于处理基于传感器108采集的生理参数而产生的生理信号数据。程序110可以是应用程序。
服务器设备104上运行服务器程序112以处理生理信号数据的计算设备。服务器设备104可以是或包括硬件服务器(例如,服务器设备)、软件服务器(例如,web服务器和/或虚拟服务器)或两者。例如,在服务器设备104是或包括硬件服务器的情况下,服务器设备104可以是位于机架中的服务器设备,例如数据中心的机架。
服务器程序112是用于检测可穿戴设备102的用户的健康状况、运动状况、睡眠状况或其组合中的一个或多个的软件,以使用生理信号数据检测可穿戴设备102的用户的健康状况、运动状况、睡眠状况或其组合中的一个或多个。例如,服务器程序112可以从中间设备106接收生理信号数据,然后可以使用接收的生理信号数据来检测可穿戴设备102的用户的健康状况、运动状况、睡眠状况或其组合中的一个或多个。例如,服务器程序112可以使用生理信号数据来确定用户生理状态的变化,然后基于所确定的变化来检测可穿戴设备102的用户的健康状况、运动状况、睡眠状况或其组合中的一个或多个。
服务器程序112可以访问服务器设备104上的数据库114,以执行服务器程序112的至少一些功能。数据库114是用于存储、管理或以其他方式提供用于交付服务器程序112的功能的数据的数据库或其他数据存储。例如,数据库114可以存储服务器设备104接收的生理信号数据,通过生理信号数据而产生或以其他方式确定的信息。例如,数据库114可以是关系数据库管理系统、对象数据库、XML数据库、配置管理数据库、管理信息库、一个或多个平面文件、其他合适的非瞬态存储机制或其组合。
中间设备106是用于促进可穿戴设备102和服务器设备104之间的通信的设备。具体而言,中间设备106从可穿戴设备102接收数据,并将接收到的数据直接或经过一种或多种处理后发送到服务器设备104,例如供服务器程序112使用。中间设备106可以是计算设备,例如移动终端(例如,智能手机、平板电脑、笔记本电脑或其他移动设备)或其他计算机(例如,台式计算机或其他非移动计算机)。或者,中间设备106可以是或包括网络硬件,例如路由器、交换机、负载平衡器、另一网络设备或其组合。作为另一备选方案,中间设备106可以是另一个网络连接设备。例如,中间设备106可以是可穿戴设备102的联网电源充电器。
例如,根据中间设备106的特定实现,中间设备106可以运行应用程序118,应用程序118可以是安装在中间设备106上的一个或多个应用软件。在一些实现中,应用软件可以是中间设备106的用户(通常是与可穿戴设备102的用户相同的人,但在某些情况下可能是与可穿戴设备102的用户不同的人)在购买中间设备106后安装在中间设备106上,也可以是中间设备106的制造商在中间设备106出厂前预装在中间设备106上。应用程序118将中间设备106配置为向可穿戴设备102发送数据或从可穿戴设备102接收数据,和/或,向服务器设备104发送数据或从服务器设备104接收数据。应用程序可以从中间设备106的用户接收命令。应用程序118可以通过应用程序118的用户界面接收来自其用户的命令。例如,在中间设备106是具有触摸屏显示器的计算设备的情况下,中间设备106的用户可以通过触摸与应用程序中的用户界面元素相对应的显示器的一部分来接收命令。
例如,应用程序118从中间设备106的用户接收的命令可以是将在中间设备106接收(例如,从可穿戴设备102接收)的生理信号数据传送到服务器设备104的命令。中间设备106响应于这样的命令将生理信号数据发送到服务器设备104。在另一示例中,应用程序118从中间设备106的用户接收的命令可以是检查从服务器设备104接收的信息的命令,例如,与检测出的可穿戴设备102的用户的健康状况、运动状况、睡眠状况或其组合中的一个或多个有关的信息。
在一些实现中,客户端设备被赋予访问服务器程序112的权限。例如,客户端设备可以是移动终端,例如智能手机、平板电脑、笔记本电脑等。在另一示例中,客户端设备可以是台式计算机或另一非移动计算机。客户端设备可以运行客户端应用程序以与服务器程序112通信。例如,客户端应用程序可以是能够访问服务器程序112的部分或全部功能和/或数据的移动应用。例如,客户端设备可以通过网络116与服务器设备104通信。在一些这样的实现中,客户端设备可以是中间设备106。
在一些实现中,服务器设备104可以是虚拟服务器。例如,可以使用虚拟机(例如,Java虚拟机)实现虚拟服务器。虚拟机的实现可以使用一个或多个虚拟软件系统,例如,HTTP服务器、java servlet容器、hypervisor或其他软件系统。在一些这样的实现中,用于实现虚拟服务器的一个或多个虚拟软件系统可以改为在硬件中实现。
在一些实现中,中间设备106使用短距离通信协议从可穿戴设备102接收数据。例如,短距离通信协议可以是蓝牙低能、红外、Z波、ZigBee、其他协议或其组合。中间设备106通过网络116将从可穿戴设备102接收的数据直接或经过一种或多种处理后发送到服务器设备104。例如,网络116可以是局域网、广域网、机器对机器网络、虚拟专用网络或另一公共或专用网络。网络116可以使用远程通信协议。例如,远程通信协议可以是以太网、传输控制协议(Transmission Control Protocol,TCP)、网际互连协议(Internet Protocol,IP)、电力线通信、无线保真(wireless fidelity,Wi-Fi)、通用无线分组业务(General packet radio service,GPRS)、全球移动通讯系统(Global Systemfor Mobile Communications,GSM)、码分多址(Code Division Multiple Access,CDMA)、其他协议或其组合。
系统100用于将生理信号数据从可穿戴设备102连续传输到服务器设备104。传感器108可以连续地或以其他方式频繁地周期性地采集可穿戴设备102的用户的生理信号数据。
系统100的实现可能不同于关于图1所示和描述的。在一些实现中,可以省略中间设备106。例如,可穿戴设备102可以被配置为通过网络116直接与服务器设备104通信。例如,可穿戴设备102和服务器设备104之间通过网络116的直接通信可以包括使用远程、低功率系统或另一通信机制。在一些实现中,中间设备106和服务器设备104都可以省略。例如,可穿戴设备102可以被配置为执行如上所述的关于服务器设备104的功能。在这样的实现中,可穿戴设备102可以独立于其他计算设备来处理和存储数据。
下面结合附图来描述本公开实施例的健身运动检测方法、装置、电子设备、计算机可读存储介质和计算机程序产品。健身运动检测方法可以由任意合适的设备执行,例如,可以由可穿戴设备执行,或者由中间设备执行,如与可穿戴设备无线通信的智能手机、平板电脑、笔记本电脑等移动终端,或者由云端的服务器设备执行,本申请实施例对此不做限定。
图2为根据一些实施例的健身运动检测方法的流程示意图。
S201,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据。
本公开的实施例中,用户持有或者佩戴有终端设备,终端设备包括运动传感器。应说明的是,对终端设备、运动传感器均不做过多限定,例如,终端设备可以是用户佩戴的可穿戴设备,或者是用户携带或握持的移动终端,再例如,运动传感器可包括3轴加速度传感器、3轴陀螺仪传感器、3轴地磁传感器中的至少一个。
需要说明的是,第一时间段可为任意时间段,比如,第一时间段可为用户运动过程中的任意时间段,或者为启动运动检测后的任意时间段。
在一些实施例中,可以在设备的缓存空间中设置缓存数据队列,该缓存数据队列中存储有运动传感器采集到的数据。此时,可以将缓存数据队列中存储的数据作为第一时间段的原始运动数据。如果该缓存数据队列已满,则可以将队列中最早的数据删除,并将运动传感器最新采集到的运动数据存入缓存数据队列。
需要说明的是,原始运动数据可以是运动传感器采集的到的且未经处理的运动数据,或者仅经过简单预处理的运动数据,其中,该预处理包括但不限于以下中的一种或任意多种:中值滤波、高通滤波、滑动平均,以去除传感器中的高频噪声干扰以及传感器本身存在的基线漂移,或者也可以进行其他类型的预处理。对原始运动数据包括的数据类型不做过多限定。比如,原始运动数据包括但不限于加速度、角速度、角度、磁场强度、磁场方向等。
在一些可选实现方式中,运动传感器为6轴惯性测量单元(Inertial MeasurementUnit,IMU)传感器,6轴IMU传感器集成3轴加速度传感器和3轴陀螺仪传感器。可通过6轴IMU传感器采集3轴加速度、3轴角速度、3轴角度等。
在一些可选实现方式中,运动传感器为9轴IMU传感器,9轴IMU传感器集成3轴加速度传感器、3轴陀螺仪传感器和3轴地磁传感器。可通过9轴IMU传感器采集3轴加速度、3轴角速度、3轴角度、3轴磁场强度、3轴磁场方向等。
在一些可选实现方式中,可按照设定周期获取终端设备在第一时间段的原始运动数据。对设定周期不做过多限定,比如,设定周期为5毫秒。
在一些可选实现方式中,终端设备的运动传感器可以一直用于检测原始运动数据。在另一些可选实现方式中,响应于当前满足设定条件,通过运动传感器采集原始运动数据。对设定条件不做过多限定。比如,设定条件包括但不限于接收运动检测指令、当前时间达到设定运动检测时间等。
终端设备在通过运动传感器采集到运动数据之后,可以在本地进行原始运动数据的处理以及运动检测,得到运动检测结果。在另一些例子中,终端设备在通过运动传感器采集到运动数据之后,也可以将得到的运动数据传输至中间设备或服务器设备,并且由中间设备或服务器设备来进行运动检测,得到运动检测结果后将其反馈给终端设备。
S202,基于原始运动数据,得到用户在世界坐标系中的位移数据。
需要说明的是,对在世界坐标系中的位移数据(以下简称“位移数据”)不做过多限定,比如,位移数据包括x、y、z轴的位移数据,其中,x、y、z轴可自行设置,比如,z轴为竖直方向。
在一些可选实现方式中,可以将原始运动数据输入第一设定算法或模型,由第一设定算法或模型输出位移数据。应说明的是,对第一设定算法或模型不做过多限定,比如,第一设定算法或模型可以是通过训练得到的机器学习算法或模型,或者也可以是实时生成或确定的。
在一些例子中,可以直接将原始运动数据输入第一设定算法或模型,也可以对原始运动数据进行至少一种预处理,并将预处理后的运动数据输入第一设定算法或模型,这里不做过多限定。预处理可以包括过滤处理或其它类型的处理,对预处理不做过多限定,比如,预处理包括但不限于中值滤波、高通滤波、滑动平均、标准化、去极值、缺失值填充等。
比如,原始运动数据包括3轴加速度传感器数据、3轴陀螺仪传感器数据,其中,3轴加速度传感器数据包括设备坐标系中三个坐标轴的加速度传感器数据,3轴陀螺仪传感器数据包括设备坐标系中三个坐标轴的陀螺仪传感器数据。3轴加速度传感器数据、3轴陀螺仪传感器数据分别如图3、4所示。位移数据可以是通过对加速度数据进行两次积分处理,或对速度数据进行一次积分处理得到的。在一个例子中,位移数据可以包括三维向量,即[d1,d2,d3],其中,d1表示x轴的位移数据,d2表示y轴的位移数据,d3表示z轴的位移数据,z轴位移数据的一个例子如图5所示。
在一些实现方式中,可以基于原始运动数据,检测终端设备在各个时间窗口内是否处于静止状态,并且基于对各个时间窗口的状态识别结果来得到位移数据。
S203,基于原始运动数据和位移数据,确定用户的运动检测结果。
需要说明的是,对运动检测结果不做过多限定,比如,运动检测结果包括但不限于运动类别、运动计数等。其中,运动类别包括但不限于波比跳、哑铃、深蹲、俯卧撑等,运动计数包括总动作数量,或者包括总动作数据和总动作包括的子动作数量。比如,总动作为波比跳,波比跳的子动作包括但不限于俯身趴地、俯卧撑、站立、跳跃等,运动计数可以包括波比跳的动作数量,也可以进一步包括俯身趴地的动作数量、俯卧撑的动作数量、站立的动作数量和跳跃的动作数量中的至少一种。
在一些可选实现方式中,可以将原始运动数据和位移数据输入第二设定算法或模型,由第二设定算法或模型输出运动检测结果。
在一些可选实现方式中,可以将原始运动数据和位移数据输入第三设定算法或模型,由第三设定算法或模型输出动作类别,其中,第三设定算法或模型可以为深度学习模型,也可以为波峰检测模型,等等,并将原始运动数据和位移数据输入第四设定算法或模型,由第四设定算法或模型输出运动计数,其中,第四设定算法或模型可以为深度学习模型,也可以为波峰检测模型,等等。
在一些例子中,可以基于原始运动数据和位移数据,利用深度学习模型得到用户的目标运动类别。比如,可将原始运动数据和位移数据输入深度学习模型,由深度学习模型输出用户在第一时间段内的目标运动类别。再比如,将原始运动数据和位移数据中的至少一种进行一种或多种处理后输入到深度学习模型,输出目标运动类别。再比如,将原始运动数据的至少一部分和位移数据中的至少一部分直接或经过预处理后输入到深度学习模型进行处理,得到目标运动类别,该至少一部分可以指其中一个维度或两个以上维度的数据。由此,可以利用深度学习模型,对原始运动数据和位移数据进行处理,得到目标运动类别。
在一些例子中,基于原始运动数据和位移数据,利用深度学习模型得到用户的运动计数。比如,可将原始运动数据和位移数据输入深度学习模型,由深度学习模型输出用户在第一时间段内的运动计数。再比如,将原始运动数据和位移数据中的至少一种进行一种或多种处理后输入到深度学习模型,输出运动计数。再比如,将原始运动数据的至少一部分和位移数据中的至少一部分直接或经过预处理后输入到深度学习模型进行处理,得到运动计数,该至少一部分可以指其中一个方向或两个以上维度的数据。由此,可以利用深度学习模型,对原始运动数据和位移数据进行处理,得到运动计数。
在一些例子中,基于原始运动数据和位移数据,利用波峰检测模型确定目标运动类别。例如,通过对原始运动数据、位移数据以及原始运动数据和位移数据的融合数据中的至少一种进行波峰检测,进行数据分段,得到多个周期数据片段,并通过对多个周期数据片段分别进行处理,得到目标运动类别。
在一些例子中,基于原始运动数据和位移数据,利用波峰检测模型确定运动计数。例如,通过对原始运动数据、位移数据以及原始运动数据和位移数据的融合数据中的至少一种进行波峰检测,进行数据分段,得到多个周期数据片段,并通过对多个周期数据片段分别进行处理,得到运动计数。
在一些例子中,在得到目标运动类别后,可以基于目标运动类别,得到运动计数。例如,利用深度学习模型对目标运动类别以及原始运动数据、位移数据、融合数据中的至少一种进行处理,得到运动计数。再例如,利用波峰检测模型对目标运动类别以及原始运动数据、位移数据、融合数据中的至少一种进行处理,得到运动计数,其中,以上例子中的融合数据可以是通过对原始运动数据的至少一部分与位移数据的至少一部分进行融合得到的。
综上,根据本公开实施例的运动检测方法,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据,基于原始运动数据,得到用户在世界坐标系中的位移数据,基于原始运动数据和位移数据,确定用户的运动检测结果。由此,可以基于用户的原始运动数据,得到用户在世界坐标系中的位移数据,并综合考虑到原始运动数据和位移数据,来确定运动检测结果,提高了运动检测结果的准确性。
图6为根据一些实施例的健身运动检测方法的流程示意图。
S601,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据。
S602,基于原始运动数据,得到用户在世界坐标系中的位移数据。
需要说明的是,步骤S601-S602的相关内容,可参见上述实施例,这里不再赘述。
S603,对原始运动数据和位移数据进行融合处理,得到融合数据。
这里可以采用多种方式进行数据融合数据,比如,可采用PCA(PrincipalComponent Analysis,主成分分析)、SVD(Singular Value Decomposition,奇异值分解)等算法对原始运动数据和位移数据进行融合处理。
在一些可选实现方式中,对原始运动数据中包括的所有数据与位移数据中包括的所有数据进行融合,得到融合数据。在另一些实现方式中,对原始运动数据中包括的部分数据与位移数据中包括的所有数据进行融合,或者对原始运动数据中的所有数据与位移数据中包括的部分数据进行融合,或者对原始运动数据中的部分数据与位移数据中的部分数据进行融合,得到融合数据。其中,以上部分数据可以是部分时间段的数据,也可以是部分维度的数据。作为一个例子,对第一维度的原始运动数据和第二维度的位移数据进行融合处理,得到融合数据。应说明的是,第一维度可以包括至少一个传感器和/或传感器的至少一个第一坐标轴,第二维度可以包括至少一个第二坐标轴,第一坐标轴与第二坐标轴可能不同,也可能相同。
在一些例子中,还包括从原始运动数据中确定第一维度的原始运动数据,以及从位移数据中确定第二维度的位移数据。第一坐标轴和第二坐标轴可以依据各个坐标轴的数据对运动检测的贡献来确定。例如,在腕戴式手表中,可以将z轴确定为第二坐标轴,但本公开实施例不限于此。
在一个例子中,原始运动数据包括设备坐标系中三轴加速度传感器数据、三轴陀螺仪传感器数据和三轴地磁传感器数据,可以从以上九个维度的传感器数据中选择至少一个维度的数据进行融合处理。位移数据包括世界坐标系中的三轴位移数据,可以从三轴位移数据中选择一个或两个以上坐标轴的位移数据进行融合处理。
比如,可以对3轴加速度传感器数据、3轴陀螺仪传感器数据、z轴位移数据进行融合处理,得到融合数据。
比如,可以对x、y轴加速度传感器数据、z轴陀螺仪传感器数据、z轴位移数据进行融合处理,得到融合数据。
S604,通过对融合数据进行处理,得到运动检测结果。
在一些可选实现方式中,可以将融合数据输入第五设定算法或模型,由第五设定算法或模型输出运动检测结果。
在一些例子中,可以基于融合数据,利用深度学习模型得到用户的目标运动类别和/或运动计数。比如,可将融合数据输入深度学习模型,由深度学习模型输出目标运动类别和/或运动计数。再比如,融合数据是由深度网络模型的前一层或多层进行处理得到的,利用深度网络模型的后一层或多层对该融合数据进行处理,输出目标运动类别和/或运动计数。由此,可以利用深度学习模型,对融合数据进行处理,得到目标运动类别和/或运动计数。
在另一些例子中,可以基于融合数据,利用波峰检测模型得到用户的目标运动类别和/或运动计数。比如,利用波峰检测模型对融合数据进行波峰检测处理,得到多个周期数据片段,并利用多个周期数据片段得到目标运动类别和/或运动计数。
在一些可选实现方式中,可以基于融合数据得到多个周期数据片段。比如,对融合数据进行特征提取,并基于提取到的特征进行数据分段,得到多个周期数据片段。
综上,根据本公开实施例的运动检测方法,对原始运动数据和位移数据进行融合处理,得到融合数据,通过对融合数据进行处理,得到运动检测结果。由此,可对原始运动数据和位移数据进行融合处理,得到融合数据,进而通过融合数据得到运动检测结果,可综合考虑到原始运动数据和位移数据,来得到运动检测结果,提高了运动检测结果的准确性。
图7根据一些实施例的健身运动检测方法的流程示意图。
S701,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据。
S702,基于原始运动数据,得到用户在世界坐标系中的位移数据。
需要说明的是,步骤S701-S702的相关内容,可参见上述实施例,这里不再赘述。
S703,基于原始运动数据和位移数据,得到多个周期数据片段。
周期数据片段可以为用户进行重复性运动的一次运动动作对应的数据片段,例如进行一次波比跳的数据片段。
在一些可选实现方式中,可以基于原始运动数据得到多个第一周期数据片段,并基于位移数据得到多个第二周期数据片段,并基于多个第一周期数据片段和多个第二周期数据片段,得到最终的多个周期数据片段。
在一些可选实现方式中,可以基于原始运动数据,确定位移数据的多个切分点,基于每个切分点对位移数据进行切分,得到多个周期数据片段。应说明的是,对切分点不做过多限定,比如,切分点包括但不限于位移数据的波峰、波谷等。
比如,x轴加速度传感器数据、z轴位移数据、多个周期数据片段如图8所示,可基于z轴位移数据的多个波谷,对z轴位移数据进行切分,得到多个周期数据片段。
在一些可选实现方式中,可以基于原始运动数据的至少一部分与位移数据的至少一部分的融合数据,得到多个周期数据片段。比如,对融合数据进行特征提取,并基于提取到的特征进行数据分段,得到多个周期数据片段。
在一些例子中,还可以从位移数据中确定目标方向的位移数据,并基于目标方向的位移数据,得到多个周期数据片段。比如,目标方向的位移数据为最大位移所在方向的位移数据。
S704,基于多个周期数据片段中的每个周期数据片段,得到运动检测结果,运动检测结果包括运动计数。
在一些可选实现方式中,可以将周期数据片段的数量,确定为运动计数。继续以图8为例,多个周期数据片段包括编号1至8的周期数据片段,即周期数据片段的数量为8个,则运动计数为8个。
在一些可选实现方式中,可以基于多个周期数据片段中的每个周期数据片段,从多个周期数据片段中选取至少一个有效周期数据片段,将至少一个有效周期数据片段的数量确定为运动计数。由此,该方法中可选取至少一个有效周期数据片段,将至少一个有效周期数据片段的数量确定为运动计数,可避免对非有效周期数据片段进行运动计数,提高了运动计数的准确性。
继续以图8为例,多个周期数据片段包括编号1至8的周期数据片段,若从编号1至8的周期数据片段中选取的有效周期数据片段包括编号5至8的周期数据片段,即有效周期数据片段的数量为4个,则运动计数为4个。
在一些例子中,响应于至少一个有效周期数据片段的数量大于设定阈值,表明有效周期数据片段数量较多,则可以将至少一个有效周期数据片段的数量确定为运动计数。由此,可以在至少一个有效周期数据片段的数量大于设定阈值时,将至少一个有效周期数据片段的数量确定为运动计数,可避免运动计数的误识别,提高了运动计数的准确性。
继续以图8为例,多个周期数据片段包括编号1至8的周期数据片段,若从编号1至8的周期数据片段中选取的有效周期数据片段包括编号5至8的周期数据片段,即有效周期数据片段的数量为4个,设定阈值为3,则运动计数为4个。
作为另一种可能的实施方式,响应于至少一个有效周期数据片段的数量小于或者等于设定阈值,表明有效周期数据片段较短,将多个周期数据片段标记为误识别。由此,该方法中可在至少一个有效周期数据片段的数量小于或者等于设定阈值时,将多个周期数据片段标记为误识别,可避免运动计数的误识别,提高了运动计数的准确性。
继续以图8为例,多个周期数据片段包括编号1至8的周期数据片段,若从编号1至8的周期数据片段中选取的有效周期数据片段包括编号7至8的周期数据片段,即有效周期数据片段的数量为2个,设定阈值为3,则将编号1至8的周期数据片段标记为误识别。
在一些例子中,从多个周期数据片段中选取至少一个有效周期数据片段,包括如下几种可能的实施方式:
方式1、将多个周期数据片段中与用户的目标运动类别匹配的至少一个周期数据片段确定为有效周期数据片段。
具体例子中,获取目标运动类别对应的运动模板,获取每个周期数据片段与上述运动模板之间的相似度或相关性,响应于相似度或相关性大于设定阈值,表明该周期数据片段与目标运动类别匹配,则将该周期数据片段确定为有效周期数据片段。应说明的是,对设定阈值不做过多限定。
可以理解的是,可预先为各个运动类别建立运动模板,并基于该运动模板对周期数据片段进行识别。
在一种实施方式中,可以基于原始运动数据和位移数据,利用深度学习模型得到用户的目标运动类别。
在一种实施方式中,可以获取多个周期数据片段中每个周期数据片段的片段运动类别,获取每个片段运动类别对应的周期数据片段的数量,将上述数量最多的片段运动类别确定为目标运动类别。
具体例子中,可以获取多个设定运动类别分别对应的运动模板,获取各个周期数据片段与每个上述运动模板之间的相似度,响应于某个周期数据片段与目标运动模板之间的相似度大于设定阈值,表明该周期数据片段与目标运动模板对应的设定运动类别匹配,则将该周期数据片段的片段运动类别确定为目标运动模板对应的设定运动类别。或者,针对某个周期数据片段,可以将多个运动模板中与该周期数据片段的相似度最大的运动模板确定为目标运动模板,并将目标运动模板对应的设定运动类别作为该周期数据片段的运动类别。
在一种实施方式中,若上述数量最多的片段运动类别为至少两个,则可从上述数量最多的片段运动类别对应的周期数据片段中确定时间最晚的周期数据片段,将时间最晚的周期数据片段对应的片段数据类别确定为目标运动类别。或者,可以基于数量最多的至少两个片段运动类别对应的周期数据片段的连续性、相似度等一种或多种信息,来确定最终的目标运动类别。
继续以图8为例,若编号1至8的周期数据片段的片段运动类别分别为A2、A1、A1、A1、A1、A3、A1、A1,则片段运动类别A1至A3对应的周期数据片段的数量分别为6、1、1,数量最多的片段运动类别为片段运动类别A1,则可将片段运动类别A1确定为目标运动类别。
继续以图8为例,若编号1至8的周期数据片段的片段运动类别分别为A2、A2、A2、A3、A3、A1、A1、A1,则片段运动类别A1至A3对应的周期数据片段的数量分别为3、3、2,数量最多的片段运动类别包括片段运动类别A1、A2,且编号8的周期数据片段时间最晚,则可将片段运动类别A1确定为目标运动类别。
由此,该方法中将多个周期数据片段中与用户的目标运动类别匹配的至少一个周期数据片段确定为有效周期数据片段。
方式2、确定多个周期数据片段中每个周期数据片段的运动分类结果,将多个周期数据片段中除第一周期数据片段以外的至少一个周期数据片段确定为有效周期数据片段,第一周期数据片段的运动分类结果指示非运动。
在本实现方式中,运动分类结果用于指示运动或非运动,其中,如果指示运动,运动分类结果可以仅指示运动,或者也可以进一步指示具体的运动类别。
在一个例子中,获取多个设定运动类别分别对应的运动模板,并确定各个周期数据片段与每个上述运动模板之间的相似度,响应于某个周期数据片段与至少一个上述运动模板之间的最大相似度大于设定阈值,表明该周期数据片段与至少一个设定运动类别匹配,则将该周期数据片段的运动分类结果确定为运动;或者,响应于某个周期数据片段与每个上述运动模板之间的相似度都小于或者等于设定阈值,表明该周期数据片段与所有的设定运动类别均未匹配,则将该周期数据片段的运动分类结果确定为非运动。
在另一个例子中,可以仅设置指示运动的运动模板,并将各个周期数据片段与该运动模板进行匹配,以确定该周期数据片段是否指示运动。如某个周期数据片段与该运动模板之间的相似度达到设定阈值,则可以将该周期数据片段的运动分类结果确定为运动,反之,则将该周期数据片段的运动分类结果确定为非运动。
由此,该实现方式中将多个周期数据片段中除第一周期数据片段以外的至少一个周期数据片段确定为有效周期数据片段,即将运动分类结果指示运动的周期数据片段确定为有效周期数据片段,可避免将非运动的周期数据片段确定为有效周期数据片段。
综上,根据本公开实施例的运动检测方法,基于原始运动数据和位移数据,得到多个周期数据片段,基于多个周期数据片段中的每个周期数据片段,得到运动检测结果,运动检测结果包括运动计数。
图9为根据一些实施例的健身运动检测方法的流程示意图。
S901,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据。
S902,基于原始运动数据,得到用户在世界坐标系中的位移数据。
S903,基于原始运动数据和位移数据,利用深度学习模型得到用户的目标运动类别。
S904,基于原始运动数据和位移数据,得到多个周期数据片段。
S903和S904可以并行执行,或以任意先后顺序执行。然后,可以基于多个周期数据片段和目标运动类别,得到运动计数。例如,作为一个例子,可以通过S905和S906确定运动计数。
S905,将多个周期数据片段中与目标运动类别匹配的至少一个周期数据片段确定为有效周期数据片段。
S906,将至少一个有效周期数据片段的数量确定为运动计数。
需要说明的是,步骤S901-S906的相关内容,可参见上述实施例,这里不再赘述。
综上,根据本公开实施例的运动检测方法,可利用深度学习模型,对原始运动数据和位移数据进行处理,得到目标运动类别,并基于原始运动数据和位移数据,得到多个周期数据片段,将多个周期数据片段中与目标运动类别匹配的至少一个周期数据片段确定为有效周期数据片段,将至少一个有效周期数据片段的数量确定为运动计数,可实现目标运动类别和运动计数这两种运动检测结果的获取。
在一些实现方式中,可以基于所述原始运动数据,确定终端设备的姿态,并基于该终端设备的姿态和原始运动数据,得到终端设备的位移数据。
在本申请实施例中,可以通过多种方式确定终端设备的姿态。作为一个例子,可以基于原始运动数据,确定终端设备在各个时刻或各个候选时间段是否处于静止状态。如果在某个时刻或某个候选时间段处于静止状态,则基于原始运动数据中与该时刻或该候选时间段对应的数据,得到所述终端设备的姿态。例如,基于该时刻或该候选时间段的原始加速度数据得到终端设备的姿态。再例如,基于该时刻或该候选时间段的原始加速度数据对终端设备的原始姿态进行更新,得到终端设备的姿态。
在本申请实施例中,可以通过多种方式确定终端设备的位移数据。例如,可以基于所述终端设备的姿态,对原始运动数据进行坐标映射,得到映射运动数据,并基于映射运动数据,得到所述位移数据。作为一个例子,可以基于终端设备的姿态,确定旋转矩阵,并利用旋转矩阵对原始运动数据进行坐标映射,得到映射运动数据。然后,对映射运动数据进行积分处理,得到位移数据。例如,可以候选时间段的映射运动数据进行积分处理,得到位移数据。再例如,可以从某个目标时刻开始,对映射运动数据进行积分处理,直到检测到下一个静止状态。
图10为根据一些实施例的健身运动检测方法的流程示意图。
S1001,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据。
需要说明的是,步骤S1001的相关内容,可参见上述实施例,这里不再赘述。
S1002,基于原始运动数据,确定第一时间段内的至少一个目标时刻,其中,终端设备在至少一个目标时刻处于静止状态。
需要说明的是,第一时间段内包括至少一个目标时刻,对第一时间段的时间长度不做过多限制。对静止状态的确定不做过多限制,比如,静止状态包括但不限于静止不动的状态、运动幅度较小的状态、运动速度较慢的状态等。
在一些可选实现方式中,将第一时间段划分为多个候选时间段,例如可以通过滑窗的方式将第一时间段划分为多个候选时间段,获取候选时间段对应的原始运动数据集的统计参数,并基于该统计参数确定该候选时间段是否处于静止状态。作为一个例子,统计参数与原始运动数据集的离散程度正相关,统计参数包括但不限于方差、标准差、差分等。响应于某个候选时间段对应的原始运动数据集的统计参数小于或者等于设定阈值,表明该原始运动数据集的离散程度较低,可以确定终端设备在该候选时间段内处于静止状态,并将该候选时间段内的至少一个时刻确定为目标时刻,例如将该候选时间段的开始时刻、结束时刻和中间时刻中的至少一个确定为目标时刻;或者,响应于统计参数大于设定阈值,表明原始运动数据集的离散程度较高,确定终端设备在该候选时间段并非处于静止状态。
S1003,基于终端设备在至少一个目标时刻的姿态和原始运动数据,确定位移数据。
在一些可选的实现方式中终端设备的姿态可以通过姿态角来表示。终端设备的姿态角可以指终端设备的设备坐标系与世界坐标系之间的夹角。在一些例子中,姿态角可以包括围绕x轴旋转的姿态角(即俯仰角,pitch)、围绕y轴旋转的姿态角(即翻滚角,roll)、围绕z轴旋转的姿态角(即偏航角,yaw)中的至少一个。
在一些可选实现方式中,基于原始运动数据,确定终端设备在至少一个目标时刻的姿态。
在一些例子中,将原始运动数据输入第六设定算法或模型,由第六设定算法或模型输出姿态。比如,第六设定算法或模型包括姿态解算算法或模型,姿态解算算法或模型包括但不限于互补滤波、卡尔曼滤波算法或模型。
在一些实现方式中,以原始运动数据包括三轴加速度传感器数据为例,可以获取目标时刻所属的候选时间段内各个方向的加速度传感器数据的平均值,并基于各个方向的加速度传感器数据的平均值,确定终端设备在该目标时刻的姿态。例如,姿态角可以包括来表示。其中,θ为俯仰角,为翻滚角。其中,候选时间段内各个方向的加速度传感器数据的平均值可以表示为Accx,Accy,Accz,终端设备在目标时刻的姿态可以通过以下式子来确定:
在一些例子中,可以利用互补滤波,Mahony滤波,magiwick滤波等模型得到目标时刻的设备坐标系与世界坐标系之间的夹角。
在一些可选实现方式中,可以将至少一个目标时刻的姿态和原始运动数据输入第七设定算法或模型,由第七设定算法或模型输出位移数据。
在一些实施例中,可以基于终端设备在目标时刻的姿态,将原始运动数据进行坐标映射,得到世界坐标系中的映射运动数据,然后基于映射运动数据,得到位移数据。
例如,可以基于终端设备在目标时刻的姿态,确定旋转矩阵,并利用旋转矩阵对该候选时间段内的原始运动数据进行坐标映射,得到世界坐标系中的映射运动数据。
在一些可选实现方式中,原始运动数据包括加速度传感器数据,映射运动数据包括映射加速度数据,可以对世界坐标系下的映射加速度数据进行积分处理,得到世界坐标系下的映射速度数据,并对世界坐标系下的映射速度数据进行积分处理,得到世界坐标系下的位移数据。比如,可对候选时间段内的任一方向的映射加速度直接积分或进行高通滤波后积分,得到世界坐标系下的该方向的映射速度。比如,可对候选时间段内的任一方向的映射速度直接积分或进行高通滤波后积分,得到世界坐标系下的该方向的位移数据。再例如,基于终端设备在两个相邻的静止状态在世界坐标系下的映射速度以及时间间隔,得到终端设备在世界坐标系下的位移数据。
S1004,基于原始运动数据和位移数据,确定用户的运动检测结果。
需要说明的是,步骤S1004的相关内容,可参见上述实施例,这里不再赘述。
综上,根据本公开实施例的运动检测方法,基于原始运动数据,确定第一时间段内的至少一个目标时刻,其中,终端设备在至少一个目标时刻处于静止状态,基于终端设备在至少一个目标时刻的姿态和原始运动数据,确定终端设备在各个候选时间段的位移数据。由此,可综合考虑到终端设备处于静止状态时的姿态和原始运动数据,来确定位移数据,提高了位移数据的准确性,进而提高了运动检测结果的准确性。
图11根据一些实施例的健身运动检测方法的流程示意图。
S1101,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据。
S1102,基于原始运动数据,识别用户在第一时间段内的第一时刻是否处于静止状态。
S1103,响应于用户在第一时刻处于静止状态,基于原始运动数据,确定终端设备在第一时刻的姿态。
需要说明的是,步骤S1101-S1103的相关内容,可参见上述实施例,这里不再赘述。
S1104,基于以第一时刻作为起点的第二时间段的原始运动数据和终端设备在第一时刻的姿态,确定用户在第二时间段内在世界坐标系中的位移数据,其中,第二时间段以终端设备再次处于静止状态的第二时刻作为终点。
比如,在第一时间段内,终端设备在目标时刻t1、t2处于静止状态。则可以基于以t1为起点,以t2为终点的第二时间段B1的原始运动数据和终端设备在t1的姿态和/或t2的姿态,确定用户在第二时间段B1内在世界坐标系中的位移数据。
S1105,基于原始运动数据和位移数据,确定用户的运动检测结果。
需要说明的是,步骤S1105的相关内容,可参见上述实施例,这里不再赘述。
综上,根据本公开实施例的运动检测方法,基于以第一时刻作为起点的第二时间段的原始运动数据和终端设备在第一时刻的姿态,确定用户在第二时间段内在世界坐标系中的位移数据,其中,第二时间段以终端设备再次处于静止状态的第二时刻作为终点,终端设备的姿态可随着时间而更新,提高了姿态的准确性,进而提高了位移数据、运动检测结果的准确性。
在一些实现方式中,为了避免传感器的基线漂移对检测准确度造成影响,如果在第一时间段内仅使用最开始处于静止状态时的姿态进行位移确定,可能会有一定的误差。因此,可以在检测到静止状态时进行终端设备的姿态更新或修正。其中,姿态更新的参数可以是固定的,也可以依赖于当前检测到静止状态的时刻与上一次检测到静止状态的时刻之间的时间间隔。
在一些实施例中,终端设备的姿态可以通过一下方式更新或修正:若当前检测到静止状态的时刻为ts,上一次检测到静止状态的时刻为ts-1,终端设备在ts的姿态为在ts-1的姿态为则可以基于终端设备在ts的姿态为和时间间隔Δt,更新终端设备的姿态其中,Δt=ts-ts-1。
θcurrent(t)=(1-a)·θcurrent(t-1)+a·θnew(t) (3)
a=Δt/T (5)
在一些例子中,T为固定值,在另一些例子中,T通过相邻两次运动的时间间隔来确定,例如,T为相邻两次运动的时间间隔的特定倍数,例如1到5倍中的任意数值,具体可以根据实际需求来确定。作为一个例子,可以首先对第一时间段的原始运动数据进行初略切分,得到两次运动的时间差,然后基于该时间差进行姿态更新,得到位移数据,并利用位移数据进行更为精细的分段,得到多个周期数据片段。
在另一些实施例中,如果长时间没有更新,即当前检测到静止状态的目标时刻ts与上一次检测到静止状态的时刻为ts-1之间的时间间隔大于一定数值,则可以直接将终端设备的姿态更新为终端设备在目标时刻ts的姿态。例如,如果式(5)得到的a>1,则可以将a确定为1。
在另一些实施例中,如果更新过于频繁,则可以不做更新。例如,如果式(5)得到的a<0,则可以将a确定为0。
在一些实施例中,基于所述至少一个目标时刻中第一时刻的姿态,对所述终端设备的姿态进行更新处理,得到更新处理后的所述终端设备的姿态;基于所述更新后的所述终端设备的姿态,对所述原始运动数据中对应于所述第一时刻以后的运动数据,得到所述终端设备在所述第一时刻以后的位移数据。例如,可以确定第一时刻与第二时刻之间的位移数据。
在一些实施例中,可以基于所述终端设备在所述第一时刻的姿态以及所述第一时刻与第三时刻之间的时间间隔,对所述终端设备的姿态进行更新处理,其中,所述第三时刻为所述至少一个目标时刻中位于所述第一时刻之前的上一目标时刻。
在上述任一实施例的基础上,步骤S203中基于原始运动数据和位移数据,确定用户的运动检测结果,包括基于终端设备在第一时间段内的至少一个目标时间的姿态,获取原始运动数据在世界坐标系中的映射运动数据,基于原始运动数据、位移数据和映射运动数据,确定运动检测结果。
需要说明的是,获取映射运动数据的相关内容,可参见上述实施例,这里不再赘述。
在一些可选实现方式中,基于原始运动数据、位移数据和映射运动数据,确定运动检测结果,具体实现可以参照以上实施例的描述。例如,对原始运动数据、位移数据和映射运动数据进行融合处理,得到融合数据,通过对融合数据进行处理,得到运动检测结果。再例如,可以对原始运动数据、位移数据和映射运动数据中的至少一部分利用深度学习模型进行处理,得到运动检测结果。
由此,该方法中可综合考虑到原始运动数据、位移数据和映射运动数据,来得到运动检测结果,提高了运动检测结果的准确性。
在上述任一实施例的基础上,如图12所示,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据,对原始运动数据进行数据预处理,得到预处理后的运动数据,基于原始运动数据进行静止检测,确定第一时间段内的至少一个目标时刻,基于终端设备在至少一个目标时刻的姿态和预处理后的运动数据进行姿态解算,获取位移数据,基于位移数据和预处理后的运动数据进行运动检测,确定用户的运动检测结果,运动检测结果包括运动类别和运动计数。
图13为根据一些实施例的健身运动检测装置的方框示意图。
如图13所示,本公开实施例的运动检测装置1300,包括:采集模块1301、获取模块1302和确定模块1303。
采集模块1301通过终端设备的运动传感器采集用户在第一时间段的原始运动数据;
获取模块1302基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据;
确定模块1303基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果。
在一些实施例中,所述确定模块1303,还用于:对所述原始运动数据和所述位移数据进行融合处理,得到融合数据;通过对所述融合数据进行处理,得到所述运动检测结果。
在一些实施例中,所述确定模块1303,还用于:基于所述原始运动数据和所述位移数据,利用深度学习模型得到所述用户的目标运动类别,所述运动检测结果包括所述目标运动类别。
在一些实施例中,所述确定模块1303,还用于:基于所述原始运动数据和所述位移数据,得到多个周期数据片段;基于所述多个周期数据片段中的每个周期数据片段,得到所述运动检测结果,所述运动检测结果包括运动计数。
在一些实施例中,所述获取模块1302,还用于:基于所述多个周期数据片段中的每个周期数据片段,从所述多个周期数据片段中选取至少一个有效周期数据片段;将所述至少一个有效周期数据片段的数量确定为所述运动计数。
在一些实施例中,所述获取模块1302,还用于:将所述多个周期数据片段中与所述用户的目标运动类别匹配的至少一个周期数据片段确定为所述有效周期数据片段。
在一些实施例中,所述获取模块1302,还用于:确定所述多个周期数据片段中每个周期数据片段的运动分类结果;将所述多个周期数据片段中除第一周期数据片段以外的至少一个周期数据片段确定为所述有效周期数据片段,所述第一周期数据片段的运动分类结果指示非运动。
在一些实施例中,所述获取模块1302,还用于:基于所述原始运动数据,确定所述第一时间段内的至少一个目标时刻,其中,所述终端设备在所述至少一个目标时刻处于静止状态;基于所述终端设备在所述至少一个目标时刻的姿态和所述原始运动数据,确定所述位移数据。
在一些实施例中,所述获取模块1302,还用于:基于所述原始运动数据,识别所述用户在所述第一时间段内的第一时刻是否处于静止状态;响应于所述用户在所述第一时刻处于静止状态,基于所述原始运动数据,确定所述终端设备在所述第一时刻的姿态;基于以所述第一时刻作为起点的第二时间段的所述原始运动数据和所述终端设备在所述第一时刻的姿态,确定所述用户在所述第二时间段内在世界坐标系中的位移数据,其中,所述第二时间段以所述终端设备再次处于静止状态的第二时刻作为终点。
在一些实施例中,所述获取模块1302,还用于:基于所述至少一个目标时刻中第一时刻的姿态,对所述终端设备的姿态进行更新处理,得到更新处理后的所述终端设备的姿态;基于所述更新后的所述终端设备的姿态和所述原始运动数据中对应于所述第一时刻以后的运动数据,得到所述终端设备在所述第一时刻以后的位移数据。
在一些实施例中,所述获取模块1302,还用于:基于所述终端设备在所述第一时刻的姿态以及所述第一时刻与第三时刻之间的时间间隔,对所述终端设备的姿态进行更新处理,所述第三时刻为所述至少一个目标时刻中位于所述第一时刻之前的上一目标时刻。
在一些实施例中,所述确定模块1303,还用于:基于所述终端设备在所述第一时间段内的至少一个目标时间的姿态,获取所述原始运动数据在世界坐标系中的映射运动数据;基于所述原始运动数据、所述位移数据和所述映射运动数据,确定所述运动检测结果。
需要说明的是,本公开实施例的运动检测装置中未披露的细节,请参照本公开上述实施例中的运动检测方法所披露的细节,这里不再赘述。
综上,本公开实施例的健身运动检测装置,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据,基于原始运动数据,得到用户在世界坐标系中的位移数据,基于原始运动数据和位移数据,确定用户的运动检测结果。由此,可基于用户的原始运动数据,得到用户在世界坐标系中的位移数据,并综合考虑到原始运动数据和位移数据,来确定运动检测结果,提高了运动检测结果的准确性。
为了实现上述实施例,本公开还提出一种电子设备1400,如图14所示,该电子设备1400包括存储器1401、处理器1402。其中,处理器1402通过读取存储器1401中存储的可执行程序代码,以用于实现本公开上述任意可能实施例所述的健身运动检测方法。
本公开实施例的电子设备,通过处理器执行存储在存储器上的计算机程序,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据,基于原始运动数据,得到用户在世界坐标系中的位移数据,基于原始运动数据和位移数据,确定用户的运动检测结果。由此,可基于用户的原始运动数据,得到用户在世界坐标系中的位移数据,并综合考虑到原始运动数据和位移数据,来确定运动检测结果,提高了运动检测结果的准确性。
为了实现上述实施例,本公开还提出一种计算机可读存储介质,其存储有计算机程序,该程序被计算机设备执行时实现本公开上述任意可能实施例所述的健身运动检测方法。
本公开实施例的计算机可读存储介质,通过存储计算机程序并被计算机设备执行,通过终端设备的运动传感器采集用户在第一时间段的原始运动数据,基于原始运动数据,得到用户在世界坐标系中的位移数据,基于原始运动数据和位移数据,确定用户的运动检测结果。由此,可基于用户的原始运动数据,得到用户在世界坐标系中的位移数据,并综合考虑到原始运动数据和位移数据,来确定运动检测结果,提高了运动检测结果的准确性。
为了实现上述实施例,本公开还提出一种计算机程序产品,所述计算机程序产品包括计算机可读指令,该计算机可读指令被计算机设备执行时实现本公开上述任意可能实施例所述的运动检测方法。
在本公开的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本公开中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本公开中的具体含义。
在本公开中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本公开的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本公开的限制,本领域的普通技术人员在本公开的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (14)
1.一种健身运动检测方法,其特征在于,包括:
通过终端设备的运动传感器采集用户在第一时间段的原始运动数据;
基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据;
基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果。
2.根据权利要求1所述的方法,其特征在于,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:
对所述原始运动数据和所述位移数据进行融合处理,得到融合数据;
通过对所述融合数据进行处理,得到所述运动检测结果。
3.根据权利要求1或2所述的方法,其特征在于,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:
基于所述原始运动数据和所述位移数据,利用深度学习模型得到所述用户的目标运动类别,所述运动检测结果包括所述目标运动类别。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:
基于所述原始运动数据和所述位移数据,得到多个周期数据片段;
基于所述多个周期数据片段中的每个周期数据片段,得到所述运动检测结果,所述运动检测结果包括运动计数。
5.根据权利要求4所述的方法,其特征在于,所述基于所述多个周期数据片段中的每个周期数据片段,得到所述运动检测结果,包括:
基于所述多个周期数据片段中的每个周期数据片段,从所述多个周期数据片段中选取至少一个有效周期数据片段;
将所述至少一个有效周期数据片段的数量确定为所述运动计数。
6.根据权利要求5所述的方法,其特征在于,所述基于所述多个周期数据片段中的每个周期数据片段,从所述多个周期数据片段中选取至少一个有效周期数据片段,包括:
将所述多个周期数据片段中与所述用户的目标运动类别匹配的至少一个周期数据片段确定为所述有效周期数据片段。
7.根据权利要求5所述的方法,其特征在于,所述基于所述多个周期数据片段中的每个周期数据片段,从所述多个周期数据片段中选取至少一个有效周期数据片段,包括:
确定所述多个周期数据片段中每个周期数据片段的运动分类结果;
将所述多个周期数据片段中除第一周期数据片段以外的至少一个周期数据片段确定为所述有效周期数据片段,所述第一周期数据片段的运动分类结果指示非运动。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据,包括:
基于所述原始运动数据,确定所述第一时间段内的至少一个目标时刻,其中,所述终端设备在所述至少一个目标时刻处于静止状态;
基于所述终端设备在所述至少一个目标时刻的姿态和所述原始运动数据,确定所述位移数据。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述基于所述原始运动数据,得到所述用户在世界坐标系中的位移数据,包括:
基于所述原始运动数据,识别所述用户在所述第一时间段内的第一时刻是否处于静止状态;
响应于所述用户在所述第一时刻处于静止状态,基于所述原始运动数据,确定所述终端设备在所述第一时刻的姿态;
基于以所述第一时刻作为起点的第二时间段的所述原始运动数据和所述终端设备在所述第一时刻的姿态,确定所述用户在所述第二时间段内在世界坐标系中的位移数据,其中,所述第二时间段以所述终端设备再次处于静止状态的第二时刻作为终点。
10.根据权利要求8或9所述的方法,其特征在于,所述基于所述终端设备在所述至少一个目标时刻的姿态和所述原始运动数据,确定所述位移数据,包括:
基于所述至少一个目标时刻中第一时刻的姿态,对所述终端设备的姿态进行更新处理,得到更新处理后的所述终端设备的姿态;
基于所述更新后的所述终端设备的姿态和所述原始运动数据中包括的所述第一时刻以后的运动数据,得到所述终端设备在所述第一时刻以后的位移数据。
11.根据权利要求10所述的方法,其特征在于,所述基于所述至少一个目标时刻中第一时刻的姿态,对所述终端设备的姿态进行更新处理,包括:
基于所述终端设备在所述第一时刻的姿态以及所述第一时刻与第三时刻之间的时间间隔,对所述终端设备的姿态进行更新处理,所述第三时刻为所述至少一个目标时刻中位于所述第一时刻之前的上一目标时刻。
12.根据权利要求1至11中任一项所述的方法,其特征在于,所述基于所述原始运动数据和所述位移数据,确定所述用户的运动检测结果,包括:
基于所述终端设备在所述第一时间段内的至少一个目标时间的姿态,获取所述原始运动数据在世界坐标系中的映射运动数据;
基于所述原始运动数据、所述位移数据和所述映射运动数据,确定所述运动检测结果。
13.一种电子设备,其特征在于,包括:
存储器、处理器;
其中,所述处理器通过读取所述存储器中存储的可执行程序代码,以实现如权利要求1-12中任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被计算机设备执行时实现如权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211316775.0A CN115645886A (zh) | 2022-10-26 | 2022-10-26 | 健身运动检测方法、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211316775.0A CN115645886A (zh) | 2022-10-26 | 2022-10-26 | 健身运动检测方法、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115645886A true CN115645886A (zh) | 2023-01-31 |
Family
ID=84991938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211316775.0A Pending CN115645886A (zh) | 2022-10-26 | 2022-10-26 | 健身运动检测方法、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115645886A (zh) |
-
2022
- 2022-10-26 CN CN202211316775.0A patent/CN115645886A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Antar et al. | Challenges in sensor-based human activity recognition and a comparative analysis of benchmark datasets: A review | |
Nweke et al. | Multi-sensor fusion based on multiple classifier systems for human activity identification | |
US10905383B2 (en) | Methods and apparatus for unsupervised one-shot machine learning for classification of human gestures and estimation of applied forces | |
EP2432390B1 (en) | Activity monitoring device and method | |
EP3508948B1 (en) | Coordinate input processing apparatus, emotion estimation apparatus, emotion estimation system, and apparatus for building emotion estimation-oriented database | |
CN109069066A (zh) | 可穿戴和连接的步态分析系统 | |
US20140240223A1 (en) | Method and apparatus for analyzing capacitive emg and imu sensor signals for gesture control | |
EP2815699A1 (en) | Device, method, and system to recognize motion using gripped object | |
US20150149116A1 (en) | Wearable device and method for controlling the same | |
JP2018102617A (ja) | 感情推定装置、方法およびプログラム | |
WO2010083165A1 (en) | Activity monitoring device and method | |
CN112512411A (zh) | 使用电子设备的情境感知呼吸率确定 | |
CN107330240A (zh) | 一种基于双手环传感器的智能远程特护监控系统及方法 | |
CN107970590A (zh) | 一种基于Android平台的跑步健身数据系统及方法 | |
US20180353090A1 (en) | Adaptive Heart Rate Estimation | |
EP3375357A1 (en) | Biological signal acquisition method, device, electronic equipment and system | |
CN111708433A (zh) | 手势数据采集手套及基于手势数据采集手套的手语手势识别方法 | |
Fan et al. | Wearable motion attitude detection and data analysis based on Internet of Things | |
CN107533371A (zh) | 使用影响手势的用户接口控制 | |
Nemati et al. | Gait velocity estimation for a smartwatch platform using Kalman filter peak recovery | |
Prudêncio et al. | Physical activity recognition from smartphone embedded sensors | |
Viana et al. | GymApp: A real time physical activity trainner on wearable devices | |
CN115645886A (zh) | 健身运动检测方法、电子设备和存储介质 | |
KR101647316B1 (ko) | 신체활동 분석 시스템 | |
Bi et al. | CSEar: Metalearning for Head Gesture Recognition Using Earphones in Internet of Healthcare Things |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |