本发明涉及计算机视觉,特别是涉及一种运动评估方法、装置、电子设备及存储介质。
背景技术:
1、身体运动,是运动者为达到一定目的,按照人体运动的客观规律和运动法则、要求而进行的有意识的主动的各种运动动作的总称。对身体运动进行评估,可以使得用户了解身体运动的运动情况,如身体运动是否标准,身体运动的次数和时长等。相关技术中,通常通过机器学习的方式对用户的身体运动进行检测,但是检测延时高、模型训练耗时长、理解实现难度高。
技术实现思路
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、第一运动特征确定模块,用于根据所述关键点确定用户的身体姿势、用户身体部位之间的相对位置和用户在所述运动过程中的运动轨迹;
41、第二运动特征确定模块,用于根据所述目标运动图像对应的时间信息,确定用户在所述运动过程中的运动时间;
42、运动评估模块,用于根据所述身体姿势、所述用户身体部位之间的相对位置、所述运动轨迹和所述运动时间,确定用户在所述运动过程中的运动评估结果。
43、可选地,所述运动评估结果包括运动评估得分,所述装置还包括:
44、第一运动过程评估循环模块,用于若所述用户的运动是计时运动,则当用户在所述运动过程中的运动评估得分大于或等于得分阈值,且用户在所述运动过程中的运动时间大于或等于时间阈值时,进行下一个运动过程的运动评估;
45、第一目标运动图像确定模块,用于当用户在所述运动过程中的运动评估得分小于得分阈值,和/或,在所述运动过程中的运动时间小于所述时间阈值时,重新确定用户在所述运动过程中的目标运动图像,并根据所述目标运动图像对所述运动过程进行运动评估。
46、可选地,所述运动评估结果包括运动评估得分,所述装置还包括:
47、第二运动过程评估循环模块,用于若所述用户的运动是计数运动,则当用户在所述运动过程中的运动评估得分大于或等于得分阈值时,进行下一个运动过程的运动评估;
48、第二目标运动图像确定模块,用于当用户在所述运动过程中的运动评估得分小于得分阈值时,重新确定用户在所述运动过程中的目标运动图像,并根据所述目标运动图像对所述运动过程进行运动评估。
49、可选地,所述运动评估模块具体用于:分别根据所述身体姿势、所述用户身体部位之间的相对位置、所述运动轨迹和所述运动时间,确定身体姿势得分、身体部位位置得分、运动轨迹得分和运动时间得分;根据所述身体姿势得分、所述身体部位位置得分、所述运动轨迹得分和所述运动时间得分确定所述运动过程的运动得分。
50、可选地,所述关键点还包括从所述目标运动图像中提取的非用户身体部位上的点,所述关键点包括多个,所述第一运动特征确定模块,包括身体姿势确定子模块,用于将所述关键点进行相互连接,得到多条线段;从所述多条线段中确定至少一组线段组;每一组所述线段组包括两条线段;确定各个所述线段组中两条线段的夹角;
51、所述运动评估模块,包括身体姿势评估子模块,用于获取各个所述线段组对应的参考夹角;将各个所述线段组对应的夹角与参考夹角进行比对,得到各个所述线段组的夹角的得分。
52、可选地,所述关键点包括多个,所述第一运动特征确定模块,包括身体部位相对位置确定子模块,用于获取参照点;所述参照点为用户其中一个身体部位上的点;根据所述目标图像确定各个所述关键点的当前位置;根据所述关键点的当前位置和参照点的位置确定各个所述关键点相对于所述参照点的相对方向和相对距离;
53、所述运动评估模块,包括身体部位相对位置评估子模块,用于获取各个所述关键点的参考相对方向和参考相对距离;将各个所述关键点的相对方向和相对距离与所述参考相对方向和所述参考相对距离进行比对,得到各个所述关键点相对于所述参照点的位置得分。
54、可选地,所述关键点包括多个,所述第一运动特征确定模块,包括运动轨迹确定子模块,用于获取在所述运动过程中各个所述关键点的起始位置,以及根据所述目标图像确定各个所述关键点的当前位置;根据各个所述关键点的起始位置和当前位置确定各个所述关键点的移动方向和移动距离;
55、所述运动评估模块,包括运动轨迹评估子模块,用于获取各个所述关键点的参考移动方向和参考移动距离;将各个所述关键点的移动方向和移动距离与所述参考移动方向和所述参考移动距离进行比对,得到各个所述关键点的运动轨迹得分。
56、第三方面,本发明实施例公开了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的运动评估方法的步骤。
57、第四方面,本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述的运动评估方法的步骤。
58、本发明实施例包括以下优点:
59、相较于通过机器学习或深度学习的方式来对用户的运动轨迹、身体姿势等进行检测,本发明实施例通过检测运动图像中的关键点,基于关键点确定用户的身体姿势、用户身体部位之间的相对位置和运动轨迹,检测延时低、方案理解与实现成本低;扩展关键点即可扩展用户动作细节,因此动作拓展也更方便。以及,本发明实施例通过用户的身体姿势、用户身体部位之间的相对位置、用户的运动轨迹和运动时间这四个维度来对用户的运动过程进行评估,得到的运动评估结果可靠性以及准确性更高。