一种基于RGB图像的步速测量方法与流程

文档序号:16307488发布日期:2018-12-19 05:08阅读:655来源:国知局
一种基于RGB图像的步速测量方法与流程

本发明涉及步速测量方法领域,尤其是一种基于rgb图像的步速测量方法。

背景技术

行人速度测量在现实生活中有着重要的意义,体育田径赛事中的步速测量对于检测运动员的指标十分重要;步速测量方法可分为:一、基于传感器的步速测量,二、基于图像的步速测量;基于传感器的步速测量装置可以通过使用者身上的速度检测装置测量使用者的速度;基于传感器测量步速的方法有很多,bishop使用两个安装在小腿部位的加速器计算步速,将倒立摆的姿势当做一个独立的跨步周期;park使用手持设备估算步速,其要求参与者手持一个三轴加速器进行速度测量;gomez使用一种可穿戴可视化的传感器设备,在用户眼镜上安装测试点,使用该设备计算使用者的步速;路永乐等人提出一种基于mems惯性传感器的人体多运动模式识别算法,选取mems加速度传感器的时域特征作为模式识别特征量,提取mems角速度传感器的时域特征作为二次识别的特征量实现步速检测;基于传感器的方法中,一方面由于测试者携带传感器,导致无法正常发挥,进而影响测试结果;另一方面由于传感器设备传输需要时间,导致无法实时测速。基于图像的方法测量步速也有很多,比如gu等人使用一种可视化的方法,利用单个rgb相机追踪2d节点坐标以此估计步速;张佳佳等人使用qualisys三维运动捕捉系统即8个摄像头和2块kistler测力台同步采集健身竞走、普通健身走、跑步的运动学和动力学指标;秦剑杰等人运用三位摄像法,使用两台索尼hxr-nx100型摄像机,对前8名运动员在进行到第19圈时、距离终点线1km处的技术动作进行定点拍摄;王鹏等人采用apas和dartfish4.5对视频进行解析,使用日本松井秀治人体惯性参数模型,并选取19个关节点,数字化研究对象的一个复步,采用截断频率8hz的低通数字滤波法平滑3d,用dartfish软件处理比赛图像。

虽然在步速测量方面已经取得了大量研究结果,但是基于图像的方法中图像中没有距离参照物,通过rgb图像中人的位置计算人实际通过的距离,得到的距离会受相机自身参数、图像质量等因素影响,导致步速测量结果误差大。因此需要一种高精度的基于图像的步速测量方法。



技术实现要素:

本发明的目的在于:本发明提供了一种基于rgb图像的步速测量方法,解决了现有基于图像的步速测量方法中图像中缺少距离参照物从而被多种因素影响导致测量结果误差大的问题。

本发明采用的技术方案如下:

一种基于rgb图像的步速测量方法,包括如下步骤:

步骤1:采集、预处理图像;

步骤2:通过hog特征检测获得运动员在图像中的位置,通过grabcut算法获得标志物在图像中的位置;

步骤3:根据运动员位置、标志物位置以及设定的阈值判断运动员是否均通过起点标志物和终点标志物,若是,则计算运动员通过起点标志物和终点标志物的时长并跳至步骤4,若否,则重复该步骤;

步骤4:基于步骤2计算起点标志物和终点标志物的距离,结合运动员通过起点标志物和终点标志物的时长求解运动员步速。

优选地,所述步骤1包括如下步骤:

步骤1.1:根据标志物的高度h与摄像头中标志物成像高度h确定摄像头与标志物的垂直距离d,计算公式如下:

其中,f表示摄像头的焦距;

步骤1.2:根据摄像头与标志物的垂直距离安装固定摄像头进行图像采集;

步骤1.3:将采集的图像进行尺度变换、灰度化等操作获得预处理后的图像。

优选地,所述步骤2中的通过hog特征检测获得运动员在图像中的位置包括如下步骤:

步骤s2.1.1:使用hog特征组成滑动窗,按照水平(x方向)向右和竖直(y方向)向上的方向,根据填充大小确定其步长后,对预处理后的图像进行特征提取,计算公式如下:

g(xi,yi)=dx(xi,yi)+dy(xi,yi)

dx(xi,yi)=i(xi+1,yi)-i(xi,yi)

dy(xi,yi)=i(xi,yi+1)-i(xi,yi)

其中,i(xi,yi)表示输入图像第i个点的像素值,g(xi,yi)表示输入图像的梯度,dx(xi,yi)表示输入图像的水平梯度,dy(xi,yi)表示输入图像的垂直梯度;

步骤s2.1.2:将提取的特征输入到已训练的模型svm中,获得该图像中运动员可能所在的区域的多个矩形框;

步骤s2.1.3:通过非最大抑制nms得到多个矩形框中的最优框即计算多个矩形框的交并比iou,选择交并比iou最小的矩形框作为最优框;

步骤s2.1.4:运动员检测:通过最优框的坐标,计算运动员位置的中心获得运动员在图像中的位置,计算公式如下:

其中,(xi,yi)表示最优框顶点坐标,n表示顶点个数,xci表示运动员位置的横坐标,yci表示运动员位置的纵坐标。

优选地,所述步骤2中的通过grabcut算法获得标志物在图像中的位置包括如下步骤:

步骤s2.2.1:对预处理后的图像标注感兴趣区域即roi;

步骤s2.2.2:使用grabcut算法对roi进行分割,获得source节点即前景标志、sink节点即背景标志以及前景图像像素点,建立包含所有roi前景图像像素点的新图,其中前景指标志物;

步骤s2.2.3:经过多次迭代将与source节点连接的像素点作为前景,将与sink节点连接的像素点作为背景,完成图像前景和背景的分割,并通过公式获得前景图像的左上角坐标、宽度和高度,计算公式如下:

pick(x,y,w,h)

其中,x表示前景图像的左上角横坐标,y表示前景图像的左上角纵坐标,w表示前景图像的宽度,h表示前景图像的高度;

步骤s2.2.4:通过前景图像左上角的横坐标和其宽度计算标志物的横坐标,计算公式如下:

xbi=x+w/2

其中,xbi表示标志物的横坐标。

优选地,所述步骤3包括如下步骤:

步骤3.1:比较、分析运动员和标志物在图像中的相对位置,根据运动员的横坐标xci和标志物的横坐标xbi计算两者的差值,将差值与设定的阈值σ进行比较,将运动员前进方向第一个小于阈值的差值对应的位置作为计时点后,确定运动员通过第一个标志物即起点标志物和第二个标志物即终点标志物,并记录通过起点标志物和终点标志物的时间,计算公式如下:

其中,ti表示通过标志物的时间,ts表示通过起点标志物的时间,te表示通过终点标志物的时间,xci表示当前帧运动员的横坐标,xb1表示第一个标志物的横坐标,xb2表示第二个标志物的横坐标,σ表示设定的阈值;

步骤3.2:计算通过起点标志物和终点标志物的时长tf:

其中,tp表示处理每一帧图片所需的时间。

优选地,所述步骤4包括如下步骤:

步骤4.1:根据摄像头与标志物的距离d,已知摄像头视场角θ,计算起点标志物和终点标志物的距离l,计算公式如下:

步骤4.2:根据起点标志物和终点标志物的距离l以及通过起点标志物和终点标志物的时长tf计算运动员的步速,计算公式如下:

其中,λ表示普通运动员的步长。

优选地,所述步长根据运动员身高计算,计算公式如下:

sg=λ*0.54+132

其中,sg表示身高,单位为cm,λ表示普通运动员的步长。

优选地,所述设定的阈值σ计算公式如下:

其中,σ表示设定的阈值,wf表示图像宽度的像素值,wr表示相机镜头广度,v表示跑步速度,fps表示视频每秒帧数。

综上所述,由于采用了上述技术方案,本发明的有益效果是:

1.本发明通过grabcut算法确定标志物在视频/图像中的位置,通过hog特征检测图像中运动员的位置,根据运动员位置、标志物位置以及设定的阈值确定开始时间和结束时间即确定运动员通过标志物,获得通过标志物的时长,结合通过标志物的距离求解运动员的步速,解决了现有基于图像的步速测量方法中图像中缺少距离参照物从而被多种因素影响导致测量结果误差大的问题,达到了精确定位标志物,精确计算运动员步速的效果;

2.本发明需要克服hog特征算法受运动员身高和体型影响,计算步速的时候根据身高计算步长,进一步减小测量误差;

3.本发明合理设置运动员距离相机的垂直距离以及标志物之间的水平距离,避免因距离过远相机不能完全拍摄到标志物,测得运动员的瞬时速度导致误差较大的缺点;

4.本发明的测量对象为运动员,其的速度与一般测量对象相差较大,每一帧图像中运动员行进的距离跟速度有关,合理设置阈值,判断标志物位置和运动员位置的横坐标差值与阈值的大小,确定运动员通过标志物,从而计算对应的时间和距离,避免直接计算图像中人通过的距离受相机因素等影响导致测量误差大的缺点,精确定位标志物,利于提高步速计算的精度。

附图说明

本发明将通过例子并参照附图的方式说明,其中:

图1是本发明的方法流程框图;

图2是本发明的方法流程图;

图3是本发明的成像原理图;

图4是本发明的摄像头摆放示意图;

图5是本发明步速计算流程图;

图6是本发明的运动员检测流程图;

图7是本发明的标志物检测流程图。

具体实施方式

本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

下面结合图1-7对本发明作详细说明。

本申请要解决的技术问题:通过hog特征检测获得运动员在图像中的位置,通过grabcut算法获得标志物在图像中的位置,根据获得的运动员位置和标志物位置,结合阈值判断运动员是否通过起点/终点标志物,获取通过起点标志物和终点标志物的时长,计算起点标志物和终点标志物的距离,从而求取运动员的步速;采用的技术方案步骤如下:步骤1:采集、预处理图像;步骤2:通过hog特征检测获得运动员在图像中的位置,通过grabcut算法获得标志物在图像中的位置;步骤3:根据运动员位置、标志物位置以及设定的阈值判断运动员是否均通过起点标志物和终点标志物,若是,则计算运动员通过起点标志物和终点标志物的时长并跳至步骤4,若否,则说明不能开始计时,需要重复步骤3直到其差值小于阈值,记录此时的时间作为起始或终点时间并计算时长;步骤4:基于步骤2计算起点标志物和终点标志物的距离,结合运动员通过起点标志物和终点标志物的时长求解运动员步速。其中,确定运动员通过起点标志物和终点标志物采用比较运动员位置和标志物位置的横坐标小于设定的阈值来确定,确定后分别记录对应的时间;测量过程中需要克服标志物的间距问题,保证摄像头的位置与标志物的垂直距离的合理性,避免运动员在图像中过小或者过大,需要合理设置相机与运动员的距离。

实施例1

采集数据:通过多媒体设备获取运动员和标志物的图像/视频;

预处理:对采集的运动员和标志物的图像/视频进行尺度变换、灰度化等操作,去除光照、噪声的影响完成预处理;

特征提取:对运动员图像/视频使用hog进行特征提取;对标志物图像/视频的rgb三通道建立模型gmm进行特征提取,标注感兴趣区域即roi;gmm用于对前景和背景建模,在每次迭代时,其学习并创建新的像素分布,并且对前景和背景进行分类,分类的依据是上一次迭代中前景或背景像素值。

分类:将提取的运动员图像/视频特征放入已训练的模型svm中得到运动员的可能所在区域的多个矩形框,选择最优框计算运动员在图像中的位置;使用grabcut算法对roi进行分割,获得source节点即前景标志、sink节点即背景标志以及前景图像像素点,建立包含所有roi前景图像像素点的新图,其中前景指标志物;多次迭代后完成图像前景和背景的精确分割,并计算标志物在图像中的位置;

时间测量:通过比较运动员和标志物的相对位置,判断运动员通过标志物后记录通过其的时间,通过的第一个标志物为起点标志物,第二个标志物为终点标志物,判断运动员通过标志物是比较运动员位置横坐标与标志物位置横坐标差值与设定的阈值大小,比较的计算公式如下:

其中,ti表示通过标志物的时间,ts表示通过起点标志物的时间,te表示通过终点标志物的时间,xci表示当前帧运动员的横坐标,xb1表示第一个标志物的横坐标,xb2表示第二个标志物的横坐标,σ表示设定的阈值;

计算通过起点标志物和终点标志物的时长tf:

其中,tp表示处理每一帧图片所需的时间。

计算步速:根据通过起点标志物和终点标志物的时长以及起点标志物和终点标志物距离,根据公式计算步速:

其中,l表示起点标志物和终点标志物距离,tf表示通过起点标志物和终点标志物的时长,λ表示普通运动员的步长。

实施例2

采集、预处理:

如图3所示的成像原理图:

步骤1.1:根据标志物的高度h与摄像头中标志物成像高度h确定摄像头与标志物的垂直距离d,计算公式如下:

其中,f表示摄像头的焦距,其取值为45mm;标志物的高度h为0.75m;原始图像大小为1280×720、分辨率为300dpi即一英寸300像素,因此像素大小为:(300*2.54)/(1280*720)=0.0083cm/pixel;标志物在图像竖直方向占85个pixel,可获得标志物的成像高度h为0.7cm,由此可得摄像头与标志物的垂直距离d=4.9m;

步骤1.2:根据摄像头与标志物的垂直距离安装固定摄像头进行图像采集;

步骤1.3:将采集的图像进行尺度变换、灰度化等操作完成预处理。

运动员检测:

步骤s2.1.1:使用hog特征组成滑动窗,按照水平(x方向)向右和竖直(y方向)向上的方向,根据填充大小确定其步长后,对预处理后的图像进行特征提取,计算公式如下:

g(xi,yi)=dx(xi,yi)+dy(xi,yi)

dx(xi,yi)=i(xi+1,yi)-i(xi,yi)

dy(xi,yi)=i(xi,yi+1)-i(xi,yi)

其中,i(xi,yi)表示输入图像第i个点的像素值,g(xi,yi)表示输入图像的梯度,dx(xi,yi)表示输入图像的水平梯度,dy(xi,yi)表示输入图像的垂直梯度;按单个像素间隔为步长,像素间隔越小,图像遍历程度越广,进一步提高特征提取的准确性,图像填充padding为n,滑动窗的横向和纵向步长取值为n/2,图像扩大1.05倍,本实施例padding取8,横向步长和纵向步长取4;

步骤s2.1.2:将提取后的特征输入已训练的模型svm中获得运动员可能所在区域的多个的矩形框;

步骤s2.1.3:通过非最大抑制(nms)得到多个矩形框中最优框,即计算多个矩形框的交并比iou,选择交并比iou最小的矩形框作为最优框;

步骤s2.1.4:运动员检测:通过最优框的坐标,计算运动员的中心获得运动员在图像中的位置,计算公式如下:

其中,(xi,yi)表示最优框顶点坐标,n表示顶点个数,xci表示运动员位置的横坐标,yci表示运动员位置的纵坐标。

标志物检测:

步骤s2.2.1:对预处理后的图像标注感兴趣区域即roi;

步骤s2.2.2:使用grabcut算法对roi进行分割,获得source节点即前景标志、sink节点即背景标志以及前景图像像素点,建立包含所有roi前景图像像素点的新图,其中前景指标志物,grabcut算法即对rgb三通道建立高斯混合模型gmm,gmm如下:

其中,n(x|μk,σk)表示gmm的第k个元素,k为混合系数,其满足πk表示n(x|μk,σk)的权重;gmm用于对前景和背景建模,在每次迭代时,其学习并创建新的像素分布,并且对前景和背景进行分类,分类的依据是上一次迭代中前景或背景像素值,grabcut算法通过不断地迭代使前景图像更加精准。

步骤s2.2.3:经过多次迭代将与source节点连接的像素点作为前景,将与sink节点连接的像素点作为背景,完成图像前景和背景的分割,并通过公式获得前景图像的左上角坐标、宽度和高度,计算公式如下:

pick(x,y,w,h)

其中,x表示前景图像的左上角横坐标,y表示前景图像的左上角纵坐标,w表示前景图像的宽度,h表示前景图像的高度;

步骤s2.2.4:通过前景图像左上角的横坐标和其宽度计算标志物的横坐标,计算公式如下:

xbi=x+w/2

其中,xbi表示标志物的横坐标。

确定运动员通过起点标志物和终点标志物并计算其时长:

步骤3.1:比较、分析运动员和标志物在图像中的相对位置,根据运动员的横坐标和标志物的横坐标计算两者的差值,将差值与设定的阈值进行比较,若存在多个差值均小于阈值,则选取运动员前进方向第一个差值位置作为计时点,当两个标志物与运动员的横坐标差值均小于设定的阈值σ,则确定运动员通过第一个标志物即起点标志物和第二个标志物即终点标志物,并记录通过起点标志物和终点标志物的时间,计算公式如下:

其中,ti表示通过标志物的时间,ts表示通过起点标志物的时间,te表示通过终点标志物的时间,xci表示当前帧运动员的横坐标,xb1表示第一个标志物的横坐标,xb2表示第二个标志物的横坐标,σ表示设定的阈值;设定的阈值σ可根据公式获得,具体计算公式如下:所述设定的阈值σ计算公式如下:

其中,σ表示设定的阈值,wf表示图像宽度的像素值,wr表示相机镜头广度,v表示跑步速度,fps表示视频每秒帧数;

本实施例中,计算阈值的参数均为已知或者根据实际情况给定,本申请将结合这些参数计算阈值,保证了阈值的设定的准确性;根据调研得知人百米赛跑的最快速度即v为10m/s,运动员竞走拍摄视频为25fps,拍摄相机在1280*720尺度下,图像宽度的像素值wf为1280,镜头广度wr为10m,因此由以上数据得出运动员在前进方向每一帧移动的最大像素值为51.2,所以设定的阈值为50,该阈值能有效地检测人是否通过标志物。

步骤3.2:计算通过起点标志物和终点标志物的时长tf:

其中,tp表示处理每一帧图片所需的时间。

计算步速:如图4所示:

步骤4.1:根据摄像头与标志物的距离d,已知摄像头视场角θ,计算标志物间的距离l,计算公式如下:

实际测量可得摄像头视场角θ=90°,由此可得l=9.8m;

步骤4.2:根据步骤4.1得到的起点标志物和终点标志物的距离以及通过起点标志物和终点标志物的时长计算运动员的步速,计算公式如下:

其中,l表示标志间的距离,tf表示通过起点标志物和终点标志物的时长,λ表示普通运动员的步长。

步长根据运动员身高计算,计算公式如下:

sg=λ*0.54+132

其中,sg表示身高,单位为cm,λ表示普通运动员的步长。

比如身高为178cm,其步长实际为85cm,计算值为85.18cm,该公式通过多名运动员人员进行实验,统计并分析得到的公式,精确度高。

综上,本发明通过grabcut算法确定标志物在视频/图像中的位置,通过hog特征检测图像中运动员的位置,根据运动员位置、标志物位置以及设定的阈值确定开始时间和结束时间即确定运动员通过标志物,获得通过标志物的时长,结合通过标志物的距离求解运动员的步速,解决了现有基于图像的步速测量方法中图像中缺少距离参照物从而被多种因素影响导致测量结果误差大的问题,达到了精确定位标志物,精确计算运动员步速的效果。

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