运动辅助训练方法、装置及存储装置与流程

文档序号:12894350阅读:262来源:国知局
运动辅助训练方法、装置及存储装置与流程

本发明涉及图像处理技术领域,特别是涉及一种运动辅助训练方法、装置及存储装置。



背景技术:

深度相机捕获场景的深度图像中每一像素具有的深度信息为场景表面到深度相机的距离,从而根据深度图像可以获取场景目标的位置信息。

在球类运动、田径运动等运动的训练中,捕捉整体身体姿态、动作以及身体各部位的运动轨迹形成电子数据,对这些数据的分析,对提高运动训练效果具有重要意义。现有技术通过佩戴可追踪运动轨迹的电子设备来获得数据。对现有技术的研究和实践过程中,本发明的发明人发现采用可追踪运动轨迹的可穿戴电子设备采集数据并不全面,仅限于佩戴该电子设备的区域的运动数据,而当身体各部位均佩戴上该电子设备,则必然会影响运动的动作,这均会导致分析结果不准确,难以提高运动训练效果。



技术实现要素:

本发明提供一种运动辅助训练方法、装置及存储装置,能够解决现有技术存在分析结果不准确的问题。

为解决上述技术问题,本发明采用的一个技术方案是:提供一种运动辅助训练方法,该方法包括以下步骤:获取包含待分析人体运动动作的深度图像序列;根据所述深度图像序列对所述待分析人体的身体各部位进行标记;根据所述深度图像序列记录运动中所述身体各部位的轨迹信息;将所述轨迹信息与预存的标准轨迹信息进行比较,其中,所述标准轨迹信息为做标准动作时的人体的身体各部位的轨迹信息;输出比较结果。

为解决上述技术问题,本发明采用的另一个技术方案是:提供一种运动辅助训练装置,该装置包括深度相机和处理器,所述深度相机与所述处理器连接;所述深度相机用于获取包含待分析人体运动动作的深度图像序列;所述处理器用于根据所述深度图像序列对所述待分析人体的身体各部位进行标记;根据所述深度图像序列记录运动中所述身体各部位的轨迹信息;将所述轨迹信息与预存的标准轨迹信息进行比较,其中,所述标准轨迹信息为做标准动作时的人体的身体各部位的轨迹信息;输出比较结果。

为解决上述技术问题,本发明采用的又一个技术方案是:一种存储装置,该存储装置存储有程序数据,所述程序数据能够被执行以实现上述方法。

本发明的有益效果是:区别于现有技术的情况,本发明通过深度图像序列进行处理,跟踪待分析人体的身体各部位的运动轨迹以获取该轨迹信息,并将该轨迹信息与标准轨迹信息进行比较之后,即将待分析的动作模式与标准动作模式比较之后,提出运动动作的调整建议,能够获取人体的全面的信息,使得对该运动的分析更加全面、准确,同时还不影响待分析人体的动作,提高了运动训练效果。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的一种运动辅助训练方法实施例的流程示意图;

图2是本发明提供的一种运动辅助训练方法另一实施例的流程示意图;

图3是图2中步骤s22的流程示意图;

图4是本发明提供的一种运动辅助训练方法又一实施例中的步骤s23’-s25’流程示意图;

图5是图4中步骤s23’的流程示意图;

图6是本发明提供的一种运动辅助训练方法又一实施例性中膝盖关节的质心与人体中心的空间位置关系的示意图;

图7是图4中步骤s26’的流程示意图;

图8是本发明运动辅助训练装置实施例的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1,图1是本发明提供的一种运动辅助训练方法实施例的流程示意图。图1所示的运动辅助训练方法包括步骤:

s11、获取包含待分析人体运动动作的深度图像序列。

其中,待分析人体运动动作即该人体运动中的某个动作,该动作需要被分析以使用户知道该动作是否符合标准动作的要求。例如,可以是深蹲运动的动作、俯卧撑的动作、仰卧起坐的动作等等。深度图像不仅包括空间物体的像素信息,还包括每一像素信息的深度信息,即空间内物体到深度相机之间的距离信息。深度图像序列可以通过深度相机来获取,深度图像序列则是指在一个时间段内的连续的深度图像,即采用深度相机追踪拍摄该人体进行整个动作的过程。

s12、根据深度图像序列对待分析人体的身体各部位进行标记。

具体地,待分析人体的身体各部位可以是头部、肩颈、躯干、四肢、手部、足部等部位,以及膝、肘、腕、踝、髋关节等关节。通过对深度图像序列的分析,在深度图像序列中识别出待分析人体的身体各部位,并对该身体各部位进行标记。

s13、根据深度图像序列记录运动中身体各部位的轨迹信息。

步骤s13中,在深度图像序列中跟踪标记好的身体各部位,从而获取该身体各部位的轨迹信息,并记录该轨迹信息。

s14、将轨迹信息与预存的标准轨迹信息进行比较,其中,标准轨迹信息为做标准动作时的人体的身体各部位的轨迹信息。

标准轨迹信息的获取方式可以与步骤s11-s13中待分析人体的身体各部位的轨迹信息的获取方式相同。本发明中,可以在初次使用该运动辅助训练方法前,获取标准轨迹信息并保存,以在步骤s14中调用来进行比较。

s15、输出比较结果。

步骤s15中,比较结果包括该待分析人体的动作为标准动作,或者该待分析人体的动作不是标准动作,在一些实施例中,还可以进一步输出调整建议,包括调整的部位和调整方向,例如,左手需要再向下移动,双足部间距调小,双膝位置不超过足尖等等,在另一些实施例中,还可以进一步明确提出移动的距离,例如,左手向下移动5cm等等。

其中,比较结果可以通过语音或者显示屏显示的方式输出,显示屏显示可以通过文字或者图像的方式显示,当然,还可以结合上述各方式进行输出。从而提示用户调整其姿态。

区别于现有技术,本发明通过深度图像序列进行处理,跟踪待分析人体的身体各部位的运动轨迹以获取该轨迹信息,并将该轨迹信息与标准轨迹信息进行比较之后,即将待分析的动作模式与标准动作模式比较之后,提出运动动作的调整建议,能够获取人体的全面的信息,使得对该运动的分析更加全面、准确,同时还不影响待分析人体的动作,提高了运动训练效果。

请参阅图2,图2是本发明提供的一种运动辅助训练方法另一实施例的流程示意图。

s21、获取包含待分析人体运动动作的深度图像序列。

s22、根据深度图像序列对待分析人体的身体各部位进行标记。

具体地,如图3所示,图3是图2中步骤s22的流程示意图。步骤s22包括:

s221、去除深度图像系列中的背景。

例如,可以在深度图中初步确定一个斑块(blob,即,具有相似值的像素的连接组)作为对象的身体,然后从该斑块中去除具有明显不同深度值的其它斑块。以这种方式初步确定的斑块通常必须具有某个最小尺寸。然而,为此,斑块边缘处的像素坐标之间的简单的欧几里德距离不给出该尺寸的准确测量。该不准确的原因是,与具有给定实际尺寸的物体相对应的斑块的尺寸(以像素为单位)随着该物体与设备的距离的变化而增加或减小。

因此,为了确定物体的实际尺寸,首先使用下面的公式将物体的(x,y,深度)坐标变换为“现实世界”坐标(xr,yr,深度):

xr=(x-fovx/2)*像素尺寸*深度/参考深度

yr=(y-fovy/2)*像素尺寸*深度/参考深度

这里,fovx和fovy为x和y方向上的深度图的视野(以像素为单位)。像素尺寸为,在离绘图设备给定距离(参考深度)处像素所对着的长度。然后,斑块的尺寸可以通过求该斑块边缘的现实世界坐标之间的欧几里德距离来实际确定。

因此,可以通过识别具有所要求的最小尺寸的斑块来除去深度图像中的背景,其中,该斑块在场景中的各斑块中间具有最小平均深度值。可以假设,距离深度相机最近的斑块为人体,深度比该平均深度值大了至少某个阈值的所有像素都被假定属于背景物体,并将这些像素的深度值设置为零值。其中,上述阈值可以根据实际需要来确定。此外,在一些实施例中,还可以将具有明显小于斑块的平均深度值的深度值的各像素置零。另外,还可以预先设定一个最大深度,从而忽略超过该最大深度的物体。

在一些实施例中,还可以动态地确定深度值,超过该深度值的话,物体就从深度图中去除。为此,假设场景中的物体正在移动。因此,在某最小数目个帧中深度没有变化的任何像素都被假设是背景物体。深度值大于该静态深度值的像素被认为是属于背景物体的,因此都被置零。开始,场景中的所有像素可以都被定义为静态,或者场景中的所有像素可以都被定义为非静态的。在这两种情形中,一旦对象开始运动,就可以动态生成实际的深度过滤器。

当然,还可以通过现有技术中已知的其它方法来除去深度图像中的背景。

s222、获取深度图像序列中的待分析人体的轮廓。

在除去背景之后,可以通过边缘检测方法在深度图中找出身体的外部轮廓。本实施例中,采用两步阈值化机制来找出人体的轮廓:

首先,遍历深度图像中与人形相对应的斑块中的所有像素,并且,如果任何给定像素具有有效深度值,并且如果该像素与其四个相连的邻近像素(右、左、上和下)中的至少一个像素之间的深度值之差大于第一阈值,则将其标记为轮廓位置。(其中,有效深度值和零值之间的差被认为是无穷大)。

然后,在完成了上一步骤之后,再次遍历该斑块,并且如果在任何像素(该像素还没有被标记为轮廓位置)的八个相连的邻近像素之中有轮廓像素,并且如果当前像素和剩下的相连邻近位置中的至少一个像素之间的深度值之差大于第二阈值(低于第一阈值),则将其标记为轮廓位置。

s223、根据轮廓识别待分析人体的躯干。

在找出人体的外轮廓之后,再识别身体的各个部位,例如,头部、躯干和四肢。

先旋转深度图像,使得身体轮廓处于竖直位置。该转动的目的是为了通过将身体的纵轴与y坐标(垂直)轴对齐来简化下述步骤中的计算。可选择地,下述计算可以相对于身体的纵轴来执行,而不需要进行该转动,如本领域技术人员所了解的。

在识别身体的各个部位之前,可以先找出身体的3d轴。具体地,找出身体的3d轴可以采用以下方法:

将原始深度图像下采样(down-sample)为节点栅格,其中,在x方向和y方向上隔n个像素取一个节点。基于以节点为中心的n×n方块中的深度值来计算每个节点的深度值。如果方块中多于半数像素具有零值,则将相应节点设置为零值。否则,将该节点设置为n×n方块中的有效深度值的平均值。

然后,可以基于邻近节点的值来进一步“清理”该下采样的深度图像:如果给定节点的大部分相邻节点具有零值,则将该节点也设置为零值(即使在前述步骤之后它具有有效的深度值)。

在上述步骤完成时,找出下采样的图中所剩节点的纵轴。为此,可以进行线性最小二乘拟合来找出最拟合各节点的线。可选择地,可以拟合围绕各节点的一个椭圆并找出其主轴。

在找出身体的3d轴之后,通过在平行和垂直于纵轴的方向上测量身体轮廓的厚度来识别身体的躯干。为此,可以在身体轮廓的周围限定约束框,然后可以对该框中的像素值进行二值化:将具有零深度值的像素设为0,而将具有非零深度值的像素设为1。

然后,通过沿着相应的垂直线对二进制像素值进行相加,对框内的每个x值计算纵向厚度值,并通过沿着相应的水平线对二进制像素值进行加和,对每个y值计算横向厚度值。对所得到的值应用阈值,以便识别沿着哪些条垂直线和水平线轮廓相对厚。

当轮廓某一水平区域的横向厚度超过x阈值,某一垂直区域的纵向厚度超过y阈值时,该水平区域和垂直区域的交集可以确定为躯干。

s224、根据躯干识别待分析人体的身体各部位。

在确定了躯干之后,可以基于几何考虑来识别身体的头部和四肢。手部手臂是连接到躯干区域的左侧和右侧的区域;头部是躯干区域上方的连接区域;腿部是躯干区域下方的连接区域。还可以将躯干区域的左上角和右上角初步识别为肩膀。

s225、对身体各部位进行标记。

对身体各部位进行标记以便于对该身体各部位的运动轨迹进行跟踪。

在另一个实施例中,识别待分析人体的身体各部位还可以通过以下三个步骤实现:

(一)人体分割。本实施例采用帧间差分和背景差分相结合起来的方法来分割运动人体,预先选取rgbd图像中的一帧作为背景帧,建立各像素点的高斯模型,再运用帧间差分法对相邻两帧图像进行差分处理,区分出背景点和变化的区域(在当前帧中变化的区域包括显露区和运动物体),然后将变化区域与背景帧的对应区域进行模型拟合区分出显露区和运动物体,最后在运动物体中去除阴影,这样将不带阴影的运动物体分割出来。背景更新时将帧间差分确定为是背景的点,则以一定的规则进行更新;背景差分时确定为是显露区的点,则以较大的更新率更新背景帧,运动物体对应的区域不进行更新。该法可以得到较理想的分割目标。

(二)轮廓提取和分析。在获取二值化后的图像以后,利用一些经典的边缘检测算法来获取轮廓。例如采用canny算法,canny边缘检测算子充分反映了最优边缘检测器的数学特性,对于不同类型的边缘,均具有良好的信噪比,优异的定位性能,对单一边缘产生多个响应的低概率性和对虚假边缘响应的最大抑制能力,利用分割算法获得光流分割场后,在这些分割区域里包含所有我们所关心的运动目标。因此,将在这些分割区域里利用canny算子提取边缘,一方面可以大大限制背景干扰,另一方面可以有效地提高运行的速度。

(三)关节点自动标记。通过差分法得到了分割出运动目标,canny边缘检测算子提取轮廓后,借助maylork.leungandyee-hongyang的2d带状模型(ribbonmodel)对人体目标进一步分析。该模型将人体正面划分成不同的区域,例如,用5个u形区域来构造人体,该5个u形区域分别表示人体的头部以及四肢。

这样,通过寻找5个u形状的身体端点,就可确定身体的大致位置,在已提取的轮廓的基础上,通过矢量轮廓压缩,来提取需要的信息,保留最主要的人体四肢的特征,将人体轮廓压缩成一个固定的形状,例如,使得轮廓具有固定的8个端点和5个u形点和3个倒u形点,这样明显的特征能方便计算轮廓。这里可以使用轮廓上相邻端点的距离算法来压缩轮廓,通过迭代处理使得轮廓压缩为8个端点。

在获取了压缩轮廓后采用如下算法就可以对身体各部位进行自动标注:

(1)确定u形状的身体端点。设定某一个参考长度m,大于m的矢量可以认为它是身体轮廓的一部分,小于它则忽略。按照矢量化后的轮廓从某一点开始寻找,找到一个大于m的矢量记为mi,找到下一个的矢量记为mj,比较mi到mj的夹角,如果夹角在某一范围内(0~90°)(注意这里角度为正,表示它是凸的),则认为它们是u端点,记录这两个矢量,找到一个u端点。如此直到找出5个u端点。

(2)确定三个倒u形状的端点。同步骤(1),只要把夹角条件正换为负。

(3)根据u及倒u的端点很容易获得头部,手,脚的位置。根据身体的生理形状,就可以确定各个关节点,利用手臂与身体交角部分、头部与腿部交角部分,可以分别确定躯干的宽度和长度;然后利用脖子、腰位置分别占躯干比率0.75、0.3,肘部位于肩膀与手的中点,膝盖位于腰部与脚的中点。这样身体各部位大致位置可以定义出来。

s23、根据深度图像序列记录运动中身体各部位的轨迹信息。

记录身体各部位的运动轨迹的方法有多种,例如,oghms(orthogonalgaussian-hermitemoments)检测法,其基本原理是:通过比较在时间上连续的图像帧之间对应象素值的变化程度来判断该像素点是否属于前景运动区域。

用{f(x,y,t)|t=0,1,2…}表示输入的一组图像序列,f(x,y,t)代表t时刻的图像,x,y代表了图像上像素点的坐标,设gaussian函数为g(x,σ),bn(t)为g(x,σ)与hermite多项式的乘积,则n阶oghms可表示为:

其中ai由gaussian函数的标准偏差σ确定。根据卷积运算的性质,n阶oghms可看成是图像序列函数在时间上的各阶导数之和与gaussian函数的卷积。某点导数值越大,则表示随时间变化该点位置上的像素值变化也越大,说明该点应该属于运动区域块,这为oghms方法能检测出运动物体提供了理论依据。另外,从式(1)中可看出,oghms的基函数为这是由gaussian函数的不同阶导数线性组合而成。因为高斯函数本身具有平滑噪声的能力,所以oghms同样具有有效滤除各种噪声的性能。

又如,时间差分法,时间差分法(temporaldifference)是利用时间上连续的图像序列前后几个相邻帧,基于像素的时间差分,通过阈值化提取图像中的运动区域。早期的方法是利用相邻两帧差分获得运动物体,如设fk是图像序列中第k帧图像灰度值数据,fk+1表示图像序列中第k+1帧图像灰度值数据,则时间相邻两帧图像的差分图像定义为:

其中t为阈值。如果差值大于t,则说明该区域的灰度变化较大,即需要检测出的运动目标区域。

又如,光流法(opticalflow),光流法基于以下假设:图像灰度的变化完全是由于目标或背景的运动引起的。即,目标和背景的灰度不随时间变化。基于光流方法的运动检测,就是利用运动物体随时间变化在图像中表现为速度场的特性,根据一定的约束条件估算出运动所对应的光流,其优点是对目标的帧间运动限制较少,可处理较大的帧间位移。

再如,背景减除法(backgroundsubtraction),其基本原理是首先构建一个背景模型图像,然后用当前帧图像与背景帧图像做差分,通过阈值化差分结果检测出运动目标。假设t时刻背景帧图像为f0,对应当前帧图像为ft,则当前帧和背景帧的差分可表示为:

假设当前帧图像与背景帧图像相应像素的灰度值差分大于阈值,则所得到的二值图像中对应的值为1,即认定该区域属于运动目标。

在其它一些实施例中,还可以通过hog-hof描述子对待分析人体的身体各部位的运动轨迹进行描述而得到轨迹信息。

s24、获取做标准动作时的人体的身体各部位的标准轨迹信息。

可以采用类似于步骤s23的方法来获取标准动作时人体的身体各部位的标准轨迹信息。

s25、保存标准轨迹信息。

保存该标准轨迹信息以便于步骤s26调用来进行比较。

其中,步骤s24-s25可以在步骤s21-s23之前或之后,或者也可以在步骤s21-s23任意两个步骤之间,只有在s26前即可。

s26、将轨迹信息与预存的标准轨迹信息进行比较,其中,标准轨迹信息为做标准动作时的人体的身体各部位的轨迹信息。

步骤s26是将待分析人体的运动模式与标准运动模式进行比较,数据化之后表现为待分析人体的身体各部位的轨迹信息与预存的标准轨迹信息进行比较。

比较的方法也有多种,例如:通过计算mahalanobis距离来进行比较。mahalanobis距离的计算公式如下:γ2=f-μrtc-1(f-μr)

其中γ是mahalanobis距离,f是肢体动作运动历史图像的不变矩特征向量,μr是已训练的特征向量的均值向量,c是已训练的特征向量集的协方差矩阵。

识别过程中,可以利用经典的adaboost算法根据每个不变矩的阶数确定一个阈值,然后通过mhalanobis距离来衡量新输入的肢体动作和已训练得到的肢体动作模板之间的相似性,只要计算出的mahalanobis距离在规定的预设阈值范围之内都可以认为是匹配成功。

若轨迹信息与预存的标准轨迹信息的差别在预设阈值的范围内,则判断轨迹信息为标准轨迹信息。

若轨迹信息与预存的标准轨迹信息的差别不在预设阈值的范围内,则判断轨迹信息不是标准轨迹信息。

s27、输出比较结果。

本实施例中,不管待分析人体的动作是否达到标准动作的要求,均会输出结果以提示用户。

当待分析人体的动作达到标准动作的要求时,提示用户其动作为标准动作。当待分析人体的动作未达到标准动作的要求时,提示用户其动作不是标准动作,同时,提示用户关于如何将动作调整为标准动作的调整建议。例如,待分析人体的深蹲动作过程中,双膝的运动轨迹过大,导致双膝位置超出了足尖,则提示用户控制双膝的运动,使得双膝的位置不超过足尖,等等。

如图4所示,图4是本发明提供的一种运动辅助训练方法又一实施例中的步骤s23’-s25’流程示意图。其中,s23’为在步骤s23内新增的方法,步骤s24’为在步骤s24内新增的方法,步骤s25’为在步骤s25内新增的方法。

具体地,上述步骤s23还包括:

s23’、记录运动中重复动作开始和结束时待分析人体的人体姿态信息。

在一个实施例中,人体姿态信息可以是身体各部位与人体参考点之间的相对位置关系。具体地,是身体各部位的质心与人体中心之间的相对位置关系,更具体地,包括身体各部位的质心到人体中心的欧式距离和余弦距离。

具体地,在上述步骤s22中,识别出人体的躯干和身体各部位之后,即可结合躯干和身体各部位获取人体中心。

人体中心为深度图像中人体的几何中心。当躯干和人体的身体各部位均识别出来之后,即可通过深度图像的整个人体的轮廓,即三维人体边缘的外边缘值的中值来确定人体中心。

请参阅图5,图5是图4中步骤s23’的流程示意图。步骤s23’包括:

s231’、获取人体中心的第一坐标值。

本实施例中,人体中心的第一坐标值为人体中心在深度相机的相机坐标系中的坐标值。

例如,深蹲动作的结束姿态中,人体中心点a的第一坐标值为(x1,y1,z1)。

s232’、获取身体各部位的质心及身体各部位的质心的第二坐标值。

具体而言,当身体各部位均识别出来之后,可以确定身体每个区域的质心。其中,区域的质心指该区域的代表深度或位置。为此,例如,可以生成区域内深度值的直方图,并将具有最高频率的深度值(或具有最高频率的两个或多个深度值的平均值)设为该区域的质心。确定了身体各部位的质心之后,即可确定身体各部位的质心在相机坐标系中的坐标。

值得一提的是,本发明中的质心是指通过深度图像处理所获取的质心,而并非物理质心。本发明的质心可以通过质心法获取,也可以通过其它方法获取,本发明不做限定。

举例而言,深蹲动作的结束姿态中,膝盖关节的质心b的第二坐标值为(x2,y2,z2)。

s233、根据第一坐标值和第二坐标值计算身体各部位的质心与人体中心的欧式距离和余弦距离,以形成该人体的身体姿态的待分析向量。

余弦距离,也称为余弦相似度,是用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小的度量。机器学习中借用这一概念来衡量样本向量之间的差异。其中,两个向量的余弦距离可以用它们之间夹角的余弦值来表示。

举例而言,如图6所示,图6是本发明提供的一种运动辅助训练方法又一实施例性中膝盖关节的质心与人体中心的空间位置关系的示意图。在获取第一坐标值和第二坐标值之后,可以得出人体中心的向量以及膝盖关节的质心的向量具体地,膝盖关节与人体中心之间的欧式距离通过以下公式计算而得:

之间的余弦距离可以通过以下公式计算而得:

其中,欧式距离衡量的是空间各点的绝对距离,例如,dab衡量点a和点b之间的绝对距离,跟各个点所在的位置坐标直接相关;而余弦距离衡量的是空间向量的夹角,更加体现在方向上的差异,而不是位置。

具体地,余弦距离取值范围为[-1,1]。夹角余弦越大表示两个向量的夹角越小,夹角余弦越小表示两向量的夹角越大。当两个向量的方向重合时夹角余弦取最大值1,当两个向量的方向完全相反夹角余弦取最小值-1。

当然,在人体姿态评估过程中,通常还会计算手部、足部等等其他身体部位的质心到人体中心的欧式距离和余弦距离。最终,所有所需的身体部位的质心到人体中心的欧式距离和余弦距离所得的值与各身体部位一一对应,并整合形成该待分析人体姿态的待分析向量x。

上述步骤s24和步骤s25还分别包括:

s24’、获取做标准动作时,重复动作开始和结束时的人体的标准姿态信息。

可以采用类似于步骤s22和步骤s23’的方法识别标准姿态的人体的身体各部位的质心与人体中心,并获取标准姿态的人体的身体各部位的质心的第三坐标和人体中心的第四坐标,再通过第三坐标和第四坐标计算标准姿态的人体的身体各部位的质心与人体中心的欧式距离和余弦距离,以形成该标准身体姿态的标准向量a。

值得一提的是,标准相对位置关系的获取需与待分析人体的相对位置关系的获取方式保持一致。例如,由于待分析人体姿态选择了人体中心作为人体参考点,标准姿态下的人体参考点也需要是人体中心。

s25’、保存标准姿态信息。

上述步骤s26还包括:

s26’、将人体姿态信息与预存的标准人体姿态信息进行比较,其中,标准人体姿态信息为做标准动作时,重复动作开始和结束时的人体姿态信息。

步骤s26’是将待分析的人体姿态与预存的标准姿态进行比较,数据化之后则表现为待分析人体姿态的身体各部位与人体中心之间的相对位置关系与标准姿态时人体的身体各部位与人体中心之间的标准相对位置关系之间的比较。

例如,标准姿态的膝盖关节的质心与人体中心的欧式距离为dab’,余弦距离为cosθ’。将dab与dab’,cosθ与cosθ’进行比较。

如图7所示,图7是图4中步骤s26’的流程示意图。具体地,步骤s26’包括:

s261’、计算待分析向量和标准向量的差值。

步骤s261’中,计算r=x-a,其中,r的各项为对应的身体部位与标准姿态下的身体部位之间的欧式距离和余弦距离的偏差。

例如,r中包含了dab与dab’之间的偏差,cosθ与cosθ’之间的偏差,也包括了其它身体各部位的质心与人体中心之间的欧式距离与标准姿态下的身体各部位的质心与人体中心之间的欧式距离的偏差,以及其它身体各部位的质心与人体中心之间的余弦距离与标准姿态下的身体各部位的质心与人体中心之间的余弦距离的偏差。

s262’、将差值与预设阈值比较,并判断差值是否小于预设阈值。

具体地,步骤s262’中,可以计算出r的向量本征值,并将该向量本征值与预先设置好的预设阈值进行比较。

本实施例中,若差值的本征值小于预设阈值,表明该待分析人体姿态与标准姿态相似或一致,或者已经达到标准姿态的要求,则进入步骤s263’。若差值的本征值大于或等于预设阈值,标准该待分析人体姿态与标准姿态相差较大,因而进入步骤s264’。

s263’、判断比较结果为身体姿态为标准姿态,并进入步骤s27。

s264’、判断比较结果为身体姿态不是标准姿态,并进入步骤s27。

上述步骤s27在输出运动轨迹的比较结果的同时,也输出动作开始或结束时的人体姿态的比较结果。

请参阅图8,图8是本发明运动辅助训练装置实施例的结构示意图。

本发明的运动辅助训练装置包括深度相机10、处理器11和存储器12。深度相机10和存储器12均与处理器11连接。

深度相机10用于获取包含待分析人体运动动作的深度图像序列。其中,可以通过一个深度相机10来拍摄待分析人体的深度图像序列,也可以通过多个深度相机10从不同角度拍摄待分析人体的深度图像序列。

处理器11用于根据深度图像序列对待分析人体的身体各部位进行标记;根据深度图像序列记录运动中身体各部位的轨迹信息;将轨迹信息与预存的标准轨迹信息进行比较,其中,标准轨迹信息为做标准动作时的人体的身体各部位的轨迹信息;输出比较结果。

处理器11用于获取做标准动作时的人体的身体各部位的标准轨迹信息。

存储器12用于保存标准轨迹信息。

处理器11用于记录运动中重复动作开始和结束时待分析人体的人体姿态信息;将人体姿态信息与预存的标准人体姿态信息进行比较,其中,标准人体姿态信息为做标准动作时,重复动作开始和结束时的人体姿态信息。

处理器11还用于获取做标准动作时,重复动作开始和结束时的人体的标准姿态信息;

存储器12还用于保存标准姿态信息。

处理器11还用于在轨迹信息与预存的标准轨迹信息的差别在预设阈值的范围内时,判断轨迹信息为标准轨迹信息;在轨迹信息与预存的标准轨迹信息的差别不在预设阈值的范围内时,判断轨迹信息不是标准轨迹信息;并输出调整建议。

处理器11还用于去除深度图像系列中的背景;获取深度图像序列中的待分析人体的轮廓;根据轮廓识别待分析人体的躯干;根据躯干识别待分析人体的身体各部位;对身体各部位进行标记。

本发明还提供了一种存储装置,该存储装置存储有程序数据,该程序数据能够被执行以实现上述任一实施例的运动辅助训练方法。

举例而言,该存储装置可以是便携式存储介质,例如u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等。可以理解地,存储装置还可以是服务器等各种可以存储程序代码的介质。

综上所述,本发明能够获取人体的全面的信息,使得对该运动的分析更加全面、准确,同时还不影响待分析人体的动作,提高了运动训练效果。

以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1