本发明属于计算机视觉识别领域,更具体地,涉及一种基于在线多示例学习的足球视频球员跟踪方法。
背景技术:
当前随着图像处理和机器学习理论的快速发展和应用,运动目标跟踪技术成为近年来计算机视觉方向的研究热点,所谓目标跟踪指的是通过对输入初始帧中的感兴趣区域进行目标建模,进而在后续帧中对目标进行持续跟踪的过程,已被广泛应用在视频监控、军事航空和智能交通等多个领域。
足球运动已成为全球最流行的体育运动之一,赛事丰富,普及程度高,拥有十分广大的观众群体和极高的比赛关注度。从普通观众的角度来看,他们注意力常常聚焦在某个感兴趣的球员身上,观众希望看到其赛场上的表现;从教练员的角度来看,他们往往需要了解到某些球员的身体运动参数和轨迹路线信息,用来进行球员比赛表现评估、分析和制定比赛策略、后续训练改进等;从裁判员的角度来看,由于比赛过程中球员发生的激烈争抢可能导致判罚出现争议,为了保证比赛的公平公正,可以利用摄像机拍摄到的镜头对其中感兴趣的球员进行实时跟踪,分析其运动轨迹和位置信息以辅助裁判员进行判罚。此外,基于目标的检测和跟踪可以辅助体育视频内容分析,如生成视频摘要、精彩事件检测、行为动作分析等。因此,在足球视频中进行球员跟踪具有重要的现实意义,也是体育视频分析领域的理论基础。
当前已经有大量的学者致力于目标跟踪算法的研究,理论发展十分迅速,虽然已经取得了许多创新成果,但是目标跟踪问题仍然面临多方面的挑战。算法性能易受多种因素的影响,目前还不存在某种算法能够适应各种视频场景下的跟踪,因此对于特定领域的问题也需要结合特定领域的特点来进行处理。除了跟踪领域中普遍存在的目标遮挡、形变、光照变化等挑战之外,足球视频当中的球员跟踪还存在以下问题:
1.由于足球比赛的激烈性,球员的运动状态极不稳定,运动速度、身体姿态可能发生各种变化,包括形变、球员碰撞、摔倒等,这就要求跟踪器有较强的适应性;
2.足球视频中的人物多而密集,球员之间发生拥挤、遮挡可能会造成干扰,尤其是远镜头下同队球员之间视觉外观上很相似,特征区分性不明显,极容易造成目标跟错,发生跟踪漂移;
3.球员奔跑过程中由于摄像机的运动和球员速度过快可能导致摄像机捕捉到的帧画面出现模糊的情况,此时球员特征表现不明显,进而影响跟踪器判断。
技术实现要素:
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于在线多示例学习的足球视频球员跟踪方法,其目的在于结合了全局特征和局部特征的优点,改进了传统在线多示例学习跟踪算法,用粒子滤波运动估计的运动模型来生成位置候选集,由此解决现有跟踪技术适应性不够、易发生跟踪漂移和球员特征识别不清的问题。
(1)判断接受帧是否为首帧,若是,则获取目标球员初始位置,提取场地主色和球员模板主色直方图,所述球员模板主色直方图包括上半部分主色直方图和下半部分主色直方图;同时对粒子滤波运动模型进行粒子初始化,粒子初始化的位置和球员模板位置一致;生成多个haar-like特征模板;随后进入步骤(4);若否,则进入步骤(2);
(2)对前一帧目标球员位置的所有粒子进行状态转移,计算经过状态转移后的所有粒子与球员模板主色直方图的相似度,对粒子权重按相似度值进行归一化,将粒子按照权重排序,去除权值较低的粒子,并用权值大的粒子代替,生成新的粒子集;
(3)新的粒子集作为当前帧候选图像集合,根据多个haar-like特征模板获取集合中每一个候选图像的haar-like特征向量,并利用积分图加速计算,将所述特征向量输入多示例学习分类器中计算,输出当前帧目标球员位置;
(4)在目标球员位置周围采集正包和负包,计算正包和负包内图样的haar-like特征值,更新多示例学习分类器;
(5)判断当前帧是否为尾帧,是则结束;否则接受下一帧图像。
进一步地,所述步骤(1)中提取场地主色具体为:
读取图像每个像素的色调h、饱和度s和明度v;
将图像所有像素的h、s和v各分量的值分别作非均匀量化,量化具体规则如下:
若v∈[0,0.2),则像素颜色为黑色,l=0;
若s∈[0,0.2]∩v∈[0.2,0.8),则像素颜色为灰色,l=|(v-0.2)*10|+1;
若s∈[0,0.2]∩v∈(0.8,1.0],则像素颜色为白色,l=7;
若s∈(0.2,1.0]∩v∈(0.2,1.0],则像素颜色为彩色,l=4h+2s+v+8;
其中,
重新量化后的值l的范围是[0,35],即36维特征向量,表示为(l0,l1,...,l35),li表示图像中l=i的像素个数,场地主色对应的bin值
进一步地,所述步骤(1)中球员模板主色直方图为球员模板矩形区域内所有像素作非均匀量化后得到的(l0,l1,...,l35)。
进一步地,所述步骤(1)中粒子初始化具体为:
确定的粒子个数为n,建立粒子集合{xk(i)}(i=1,2,...,n),其中,xk(i)表示第k帧中的第i个粒子,所有粒子的初始位置均为球员初始位置,所有粒子的初始权重
进一步地,所述步骤(2)中粒子进行状态转移的模型如下:
xk-xk-1=xk-1-xk-2+uk,
其中,xk代表第k帧的状态;uk是服从高斯分布的噪声。
进一步地,所述步骤(2)中主色直方图相似度的计算公式为:
其中,d(la,lb)表示a和b的主色直方图相似度;aupi和adowni表示a的上半部分和下半部分直方图的第i个分量值;bupi和bdowni表示b的上半部分和下半部分直方图的第i个分量值;场地主色所在的bin值记为k。
进一步地,所述步骤(3)中多示例学习分类器具体为:
其中,
进一步地,所述步骤(4)中在目标球员位置周围采集正包和负包具体方法为:
记目标球员中心位置为lt*,在半径为α的圆形邻域内提取正包:xα={x|||l(x)-lt*||<α};在半径大于γ小于β的环形区域提取负包:xγ,β={x|γ<||l(x)-lt*||<β};其中,x表示图像块;l(x)表示图像块的中心位置;xα表示正包;xγ,β表示负包,α<γ<β。
进一步地,所述步骤(4)中更新多示例学习分类器具体方法为:
多示例学习分类器每次进行在线更新时只需更新高斯分布参数:
其中,η表示学习速率,位于0到1之间的值,η越小表示更新速率越快;
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下技术特征及有益效果:
(1)考虑了足球视频特点,算法关注的是球员本身颜色信息,去除了场地颜色,避免非场地色给计算直方图相似度带来的干扰,提高跟踪结果的准确性;
(2)结合了球员球衣特点,球员球衣通常由上下半身组成,于是对球员矩形框进行上下分块,增强上下半部分服饰颜色的区分度,得到上半部分主色直方图和下半部分主色直方图,上下分块后用加权的方式计算整体直方图相似度,这种方法在一定程度上能够减少目标漂移的几率;
(3)改进了传统在线多示例学习跟踪算法,使用粒子滤波估计的运动模型生成候选集,用粒子滤波的运动模型来估计球员位置,由于粒子的扩散位移大小与目标加速度有关,因此该运动模型能够较好地适应目标球员速度变化。
附图说明
图1是本发明方法的总体流程示意图;
图2是跟踪漂移示意图;
图3是在线学习跟踪算法流程图;
图4是样本训练方式比较图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
图1为本发明足球视频中融合粒子滤波的在线多示例学习跟踪算法总体流程示意图,具体包括如下步骤:
(1)球员主色直方图特征提取
(11)场地主色提取
颜色空间的量化方式通常具有两种:均匀量化和非均匀量化。均匀量化是指把各分量值的范围平均划分成多个区间,非均匀量化是指把各分量值的范围按照非平均的某种规则划分成多个区间。颜色空间在量化时另一个需要考虑的关键问题是量化级别bin的个数,量化级别越高,则对特征的描述更为准确,但同时也会增加特征向量维数和计算工作量,可能导致场地主色分布到多个bin中;量化级别越低,则对特征的描述较宽泛,占比最大的bin中可能混有较多非场地颜色,进而导致在去除场地色时剔除掉了球员本身的颜色信息。我们希望把场地颜色尽可能多地集中在一个bin中,并且尽可能少地混入其它颜色。
我们选择hsv作为颜色空间,考虑到人眼视觉感知特点,不同色系色调分量的范围跨度是不相同的,色调主要可划分成七种颜色:红、橙、黄、绿、青、蓝、紫,将h、s、v各分量的值分别作非均匀量化,重新量化后的值l的范围是[0,35],即36维特征向量。量化具体规则如下:
ifv∈[0,0.2),则像素颜色属于黑色,l=0;
ifs∈[0,0.2]∩v∈[0.2,0.8),则像素颜色属于灰色,l=|(v-0.2)*10|+1;
ifs∈[0,0.2]∩v∈(0.8,1.0],则像素颜色属于白色,l=7;
ifs∈(0.2,1.0]∩v∈(0.2,1.0],则像素颜色属于彩色,l=4h+2s+v+8;
重新量化后的值l的范围是[0,35],即36维特征向量,表示为(l0,l1,...,l35),li表示图像中l=i的像素个数,场地主色对应的bin值
(12)上下分块的球员主色直方图
传统的颜色直方图仅仅只是统计了像素的颜色比例,忽略了像素的空间位置信息,这样直接提取直方图特征的方式可能会导致附近的同队球员因上下站位而出现错位漂移的情况,如图2中情形所示,同一帧中实际位置区域和漂移位置区域的直方图统计极为相似。为了尽可能避免这种情况的影响,结合了球员球衣特点,球员球衣通常由上下半身组成,于是对整体矩形框进行上下分块,增强上下半身服饰颜色的区分度,得到上下分块的球员直方图,上下分块后用加权的方式计算整体直方图相似度,这种方法在一定程度上能够减少目标漂移的几率。
衡量两个直方图的相似度有多种方式,考虑到球员上半身或下半身的衣服颜色主要由一到两种颜色组成,即分块的直方图中通常只有一到两个bin中的数量比较突出,为了减小非球员主色的干扰,采用对球员主色直方图求交集的方式计算相似度。
假设两个矩形框的直方图特征分别为la=(aup,adown),lb=(bup,bdown),其中,aup,bup表示a和b上半部分直方图,adown,bdown表示a和b下半部分直方图,均为36维向量,aupi表示直方图aup的第i个分量值,其它同理,场地色所在的bin值记为k,min函数是求二者最小值,则la与lb的相似度为:
(2)haar-like特征提取
haar-like特征是计算机视觉应用中使用广泛的一种特征描述子,最早被用来描述人脸,取得了很好的效果,利用不同类型的特征模板可以组合成图像特征。每种类型的特征模板都由黑色矩形和白色矩形组成,对每个矩形区域都赋予一个权重,权重通常假设白色矩形区域为正,黑色矩形区域为负,对应模板的特征值即为各矩形区域的加权灰度值之和,反映了图像的局部灰度变化。
每帧图像中选取不同的特征模板类型、大小和位置后,可以生成出大量的haar-like特征,实际算法中我们采用随机的方式在首帧中的跟踪矩形框生成haar-like模板大小及位置,后续帧中保持相同的模板进行特征值计算即可。在生成数量如此多的特征后,为了保证算法的实时性,通过构建积分图来提高计算效率,该方法利用动态规划的思想,即用空间换时间的办法进行快速地计算,对图像中的每个像素只需扫描一遍,就可以快速得到任意一个矩形区域的灰度和。
(3)融合粒子滤波的在线多示例学习跟踪
在线跟踪问题流程如图3所示,无法提前获取样本,只能在每帧实时提取,采用何种方式提取训练样本是影响跟踪算法准确性的关键因素,常见的样本训练方式大致可以分为三种,如图4所示,图中绿框表示正样本,红框表示负样本。(a)中的方式仅选择目标当前位置作为正样本,从目标附近区域提取若干个负样本,该方式的问题在于如果跟踪的目标位置不准确的话,那么外观模型得不到很好的更新,最终可能造成目标丢失,如oab算法采用的是该方式;(b)中的方式是在目标当前位置附近的一个小邻域内选择若干个正样本,稍微远离目标位置的区域选择若干个负样本,该方式的问题在于可能存在混淆性的样本,进而会影响到分类器的判别,如ct算法采用的是该方式;(c)中的方式区别于(b),将目标位置附近区域提取的正负样本分别作为整体看待,正样本放入正包中,负样本放入负包中,以包为单位来训练分类器,该方式避免了由于样本歧义性可能带来的误差积累。
(31)示例权重
传统的多示例学习算法中假设每个示例对包的贡献均相同,忽略了示例与目标中心位置的相对距离信息,因此这里引入了示例权重,遵循离目标中心位置越近权重越大的规则。
假设正包x+={x10,x11,...,x1,n-1},负包x-={x0n,x0,n+1,...,x0,n+l-1},即正包、负包中的示例个数分别为n、l,样本x10为当前帧中的目标位置,将正包概率定义为:
其中,示例x1j的权重定义为
c表示归一化常量,l()表示距离函数,距离目标位置x10越远对应权重越小。
由于负包中的示例离目标中心位置距离比较远,并且通常与实际位置结果不相似,因此可以假设负包中的所有示例的贡献是相同的,将负包中的示例权重均赋予常量w,负包概率可表示为:
(32)分类器构造与更新
在计算候选块为正的概率时,有:
其中,σ(x)是sigmoid函数,是单调递增函数,值域为(0,1)。
记
因此,p(y=1|x)=σ(hk(x)),hk(x)越大则候选块为正的概率越大,hk(x)可看作是弱分类器,因此每一种haar-like特征可看作对应一个弱分类器,弱分类器通过加权生成强分类器hk(x)。
假设haar-like特征值fk(x)服从高斯分布,p(fk(x)|y=0)~n(μ0,σ0),p(fk(x)|y=1)~n(μ1,σ1),分类器每次进行在线更新时需更新其高斯分布参数:
其中,η表示学习速率,位于0到1之间的值,η越小表示更新速率越快。
在跟踪过程首帧初始化时随机生成m个haar-like特征模板,即维持一个弱分类器池φ={f1,f2,...,fm},每次分类器需要进行更新时从弱分类器池φ中挑选出k个组成强分类器,其中m>k。
(33)粒子滤波运动模型
确定了某一帧目标位置之后,下一步就是预测下一帧中的目标位置,很多传统的跟踪算法假设目标在相邻帧间的运动范围是在一个固定邻域内,然后在此邻域内进行搜索匹配,依据此规则建立目标的运动模型。然而,邻域半径的选取通常只是经验值,并没有统一标准,如果取值过大,则候选块的个数会增多,从而增大了算法计算量;如果取值过小,运动过快可能会使目标位置超出此范围,直接导致跟踪丢失。尤其在球员跟踪中,由于球员和摄像机存在相对运动,导致目标的相对速度可能会很快或很慢,显然无法适应以上传统的运动模型。
近些年来,由于粒子滤波技术在目标跟踪领域应用上的成熟,这里引入了基于粒子滤波的运动模型,使用粒子滤波运动估计来生成候选块的位置集合。粒子滤波就是通过一组具有不同权重的离散随机样本来近似系统状态的后验概率分布,进行系统最优状态估计,被广泛应用于非高斯、非线性系统中,这些样本称作粒子,在跟踪问题中指的是不同位置与不同尺度的矩形框。粒子滤波跟踪过程具体分为以下步骤。
s1.首帧中提取目标模板,进行粒子初始化,确定粒子个数n,建立粒子集合{xk(i)}(i=1,2,...,n),xk(i)表示第k帧中的第i个粒子,所有粒子的初始位置均为目标初始位置,初始权重
s2.利用二阶自回归模型对所有粒子进行状态转移,模型如下:
xk-xk-1=xk-1-xk-2+uk
其中,xk代表第k帧的状态,uk是服从高斯分布的噪声,该模型假设运动目标在相邻几帧间的位移大致相同;
s3.计算经过状态转移后的所有粒子与目标模板的相似度,粒子区域特征采用上下分块的球员主色直方图特征,然后对粒子权重按相似度值进行归一化;
s4.对粒子进行重采样,将粒子按照权重排序,去除权值较低的粒子,并用权值大的粒子代替,生成新的粒子集{xk(i)}(i=1,2,...,n)。
跟踪过程按1→2→3→4→2→3→4...的顺序迭代进行,其中重采样的步骤是必要的,如果不进行重采样,经过若干帧后粒子的分布范围可能越来越大,许多粒子的权值会变得很小,这些小权值粒子不仅影响目标的状态估计且增大了计算开销,即发生了粒子退化现象。经过重采样后,粒子能够较密集地分布在目标周围。每帧中的大权值粒子作为目标候选块。一方面,避免了传统算法由于设置固定搜索半径带来的局限,消除了半径应该如何取值的困扰;另一方面,当跟踪目标与周围环境相似,如目标球员附近出现同队球员时,容易造成跟踪错位,原因是此时真实位置处的概率值并不是最大的,当二者逐渐远离分开的时候,传统算法很可能在后续帧中无法重新找回目标,但是真实目标周围依然可能存在权值较大的粒子,这些粒子在经过若干次重采样步骤后被保留了下来,这为算法再次找回目标提供了可能,从而在一定程度上避免发生跟踪漂移。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。