一种图像跟踪方法及系统的制作方法

文档序号:6608761阅读:186来源:国知局
专利名称:一种图像跟踪方法及系统的制作方法
技术领域
本发明涉及图像跟踪技术,尤其涉及一种图像跟踪方法及系统。
背景技术
目前的图像跟踪技术中,通常采用基于直方图匹配的目标跟踪算法实现对目标的跟踪,即在新一帧图像中目标可能出现的区域搜索最匹配的对应目标,作为目标的新位置。具体过程包括在跟踪区域内确定每个搜索窗口,将每个搜索窗口的直方图与目标的标准直方图进行匹配,将最匹配的搜索窗口作为目标的新位置。其中,考虑到每一帧图像在拍摄过程中,由于目标的远近移动,而可能使目标在每帧图像中的尺寸大小不一样,即目标在每帧图像中的尺度有可能不同,因此,在新一帧图像中目标可能出现的区域除了包括跟踪区域中不同位置的区域外,还包括对相同位置进行不同尺度缩放所形成的区域。
在基于直方图匹配的目标跟踪算法中,现有技术中有多种实现方法,如Meanshift目标跟踪算法,以及基于全局搜索的目标跟踪算法等。Meanshift算法采用基于匹配度梯度下降的迭代策略,只能找到匹配度的局部最优位置,使跟踪算法受临近干扰目标的影响比较大。而基于全局搜索的目标跟踪算法需要穷举搜索目标可能出现的每个窗口,并需要对每个搜索窗口,均进行直方图计算,以及将所计算的直方图与目标的标准直方图进行匹配的操作,而直方图计算的运算量较大,因此使得跟踪速度较慢,影响跟踪的实时性。

发明内容
有鉴于此,本发明一方面提供一种图像跟踪方法;另一方面提供一种图像跟踪系统,能够提高跟踪速度。
本发明所提供的图像跟踪方法,包括利用分类器对整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述;若不存在置信度满足跟踪要求的搜索窗口,则计算每个搜索窗口的直方图,将所计算的每个搜索窗口的直方图与目标的标准直方图进行匹配,得到每个搜索窗口的匹配结果,根据所述匹配结果确定目标的跟踪位置;若存在置信度满足跟踪要求的搜索窗口,则根据所述置信度满足跟踪要求的搜索窗口确定目标的跟踪位置。
其中,若存在置信度满足跟踪要求的搜索窗口,则所述根据所述置信度满足跟踪要求的搜索窗口确定目标的跟踪位置为对所述置信度满足要求的搜索窗口进行直方图匹配,若直方图匹配成功,则将所述匹配成功的搜索窗口作为目标的跟踪位置。
较佳地,该方法进一步包括将直方图匹配成功的搜索窗口进行存储,根据存储的预定个数的搜索窗口的全局直方图,计算每个特征通道中直方图各组别的权重;则所述将搜索窗口的直方图与目标的标准直方图进行匹配为根据每个特征通道中各组别的权重,对搜索窗口的直方图与目标的标准直方图进行匹配。
其中,所述目标的标准直方图包括目标的全局直方图;则所述将所计算的每个搜索窗口的直方图与目标的标准直方图进行匹配,得到匹配结果包括将所计算的每个搜索窗口的全局直方图与目标的全局直方图进行匹配,得到搜索窗口的全局匹配度,将所得到的搜索窗口的全局匹配度作为匹配结果。
其中,所述目标的标准直方图还包括将目标分块后的分块直方图;则得到搜索窗口的全局匹配度之后,将该搜索窗口的全局匹配度作为匹配结果之前,进一步包括根据搜索窗口的全局匹配度,得到多个全局匹配度满足预设条件的搜索窗口;将所述多个搜索窗口分别按照与目标对应的分块方式进行分块,得到每个搜索窗口的子窗口;利用区域积分直方图,计算每个子窗口的直方图,将得到的每个子窗口的直方图与目标对应块的分块直方图进行匹配,得到每个子窗口的分块匹配度;根据每个搜索窗口的全局匹配度和该搜索窗口中每个子窗口的分块匹配度,得到每个搜索窗口的匹配结果。
较佳地,该方法进一步包括通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图;所述计算每个搜索窗口的全局直方图具体为利用区域积分直方图,计算每个搜索窗口的全局直方图;所述计算每个子窗口的直方图具体为利用区域积分直方图,计算每个子窗口的直方图。
其中,所述利用区域积分直方图,计算每个搜索窗口的全局直方图为对每个搜索窗口,用该搜索窗口四个角对应的区域积分直方图进行加减运算,得到该搜索窗口的直方图;所述利用区域积分直方图,计算每个子窗口的直方图为对每个子窗口,用该子窗口四个角对应的区域积分直方图进行加减运算,得到该子窗口的直方图。
其中,所述通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图包括确定直方图组数;计算整个跟踪区域中每个像素点所属的直方图组别;统计整个跟踪区域中以预先设定的一角O作为起始点的所有区域Ci,j中属于每个直方图组别的区域积分像素个数;根据直方图组数和每个Ci,j中每个直方图组别的区域积分像素个数,得到每个区域积分直方图。
其中,所述统计整个跟踪区域中所有Ci,j中属于每个直方图组别的区域积分像素个数具体为根据每个像素点所属的直方图组别信息,在整个跟踪区域O所属的一条边的方向上,对每个组别中的像素点个数进行加法递推计算,得到每个组别在该方向上的方向积分像素个数;对得到的每个组别的所述方向积分像素个数,在整个跟踪区域O所属的另一条边的方向上进行加法递推计算,得到每个Ci,j中每个组别的区域积分像素个数。
其中,所述直方图包括颜色直方图,和/或,梯度方向直方图。
其中,当直方图包括梯度方向直方图时,所述计算每个像素点所属的直方图组别包括按照直方图组数确定梯度方向的角度区间;计算每个像素点的梯度方向所属的角度区间,得到该像素点所属的直方图组别。
其中,所述计算每个像素点的梯度方向所属的角度区间包括计算角度区间的边界点的正切值,得到正切值区间;计算每个像素点在坐标轴的y方向的梯度值与x方向的梯度值的比值,根据该比值所处的正切值区间,得到每个像素点的梯度方向所属的角度区间。
本发明所提供的图像跟踪系统,包括目标分类器跟踪单元,用于利用目标分类器对整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述,若不存在置信度满足跟踪要求的搜索窗口,则向直方图匹配跟踪单元发送跟踪失败的通知;若存在置信度满足跟踪要求的搜索窗口,则将所述置信度满足跟踪要求的搜索窗口输出;直方图匹配跟踪单元,用于根据来自目标分类器跟踪单元的跟踪失败的通知,计算每个搜索窗口的直方图,将计算得到的每个搜索窗口的直方图与目标的标准直方图进行匹配,根据匹配结果得到目标的跟踪位置。
较佳地,该系统进一步包括直方图匹配单元,用于接收目标分类器跟踪单元输出的置信度满足跟踪要求的搜索窗口,并计算所述搜索窗口的直方图,将计算的搜索窗口直方图与目标的标准直方图进行匹配,根据匹配结果,确定目标的跟踪位置。
较佳地,该系统进一步包括直方图权重更新单元;则直方图匹配单元进一步用于将直方图匹配成功的搜索窗口提供给直方图权重更新单元;直方图权重更新单元,用于根据存储的预定个数的搜索窗口的全局直方图,计算每个特征通道中直方图各组别的权重,将计算的每个特征通道中各组别的权重提供给直方图匹配跟踪单元;直方图匹配跟踪单元进一步用于根据直方图权重更新单元提供的每个特征通道中各组别的权重,执行所述对搜索窗口的直方图与目标的标准直方图进行匹配的操作。
较佳地,该系统进一步包括区域积分计算单元,用于通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图,并将得到的区域积分直方图提供给所述直方图匹配跟踪单元;所述直方图匹配跟踪单元,利用所述区域积分直方图,执行所述计算每个搜索窗口的直方图的操作。
其中,所述直方图匹配跟踪单元包括搜索窗口全局直方图匹配模块,用于从跟踪区域中确定当前的搜索窗口,并计算当前搜索窗口的全局直方图,将计算得到的当前搜索窗口的全局直方图与目标的全局直方图进行匹配,将匹配结果提供给跟踪位置确定模块;跟踪位置确定模块,用于根据搜索窗口全局直方图匹配模块提供的所有搜索窗口的匹配结果,将匹配最好的搜索窗口区域作为目标的跟踪位置。
其中,所述跟踪位置确定模块包括搜索窗口选取子模块,用于根据搜索窗口全局直方图匹配模块提供的所有搜索窗口的匹配结果,从中选取满足预设条件的多个搜索窗口,提供给所述搜索窗口分块直方图匹配子模块;搜索窗口分块直方图匹配子模块,用于从搜索窗口选取子模块提供的搜索窗口中确定当前的搜索窗口,对所确定的当前搜索窗口按照与目标对应的分块方式进行分块,得到子窗口,对每个子窗口,计算子窗口直方图,将所计算的子窗口直方图与目标对应块的分块直方图进行匹配,得到每个子窗口的分块匹配度,将所得到的当前搜索窗口的分块匹配度提供给搜索窗口综合匹配计算子模块;搜索窗口综合匹配计算子模块,用于根据所述当前搜索窗口的所有子窗口的分块匹配度,计算当前搜索窗口的综合匹配度,并将计算得到的当前搜索窗口的综合匹配度提供给跟踪位置确定子模块;跟踪位置确定子模块,用于根据搜索窗口综合匹配计算模块提供的所有搜索窗口的综合匹配度,将匹配最好的搜索窗口区域作为目标的跟踪位置。
从上述方案可以看出,本发明中利用分类器对整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述匹配;若不存在置信度满足跟踪要求的搜索窗口,则计算每个搜索窗口的直方图,将所计算的每个搜索窗口的直方图与目标的标准直方图进行匹配,得到每个搜索窗口的匹配结果,根据所述匹配结果确定目标的跟踪位置;若存在置信度满足跟踪要求的搜索窗口,则根据所述置信度满足跟踪要求的搜索窗口确定目标的跟踪位置。可见,通过采用目标分类器与直方图匹配相结合的方法,从而由目标分类器实现粗略跟踪,进一步提高了跟踪实时性,之后由直方图匹配实现精细跟踪,保证了跟踪效果。
此外,本发明中在进行直方图匹配时,通过采用分块直方图匹配,从而避免了由于在统计过程中丢失各像素的空间位置信息而造成跟踪失败的情况,进一步保证了跟踪效果。
另外,本发明中在进行直方图匹配时,除了包括颜色直方图,还包括梯度方向直方图,从而在跟踪区域内存在与目标颜色相似的物体时,不会受到该物体的干扰,进一步保证了跟踪效果。
最后,本发明中在进行直方图匹配之前,首先计算整个跟踪区域的区域积分直方图,然后利用区域积分直方图,通过加减运算,逐次计算每个搜索窗口的直方图。即本发明中对每个像素点所属的直方图组别只在计算积分直方图时计算一次,之后对每个搜索窗口的直方图的计算只需根据区域积分直方图的结果,进行三次加减运算,得到搜索窗口的直方图,在对大量窗口进行匹配的情况下,该算法大大降低了运算量,提高了运算速度,保证了跟踪的实时性;又因为利用这种区域积分直方图的算法,可对本发明中目标可能出现的每个搜索窗口都进行直方图匹配,根据所有匹配结果得到目标的预测位置,从而进一步保证了跟踪效果。


图1为本发明实施例一中图像跟踪方法的流程图。
图2为本发明实施例一中图像跟踪系统的结构示意图。
图3为本发明实施例二中目标的标准直方图构成示意图。
图4为本发明实施例二中图像跟踪方法步骤104中具体实现的流程图。
图5为本发明实施例二中图像跟踪系统的结构示意图。
图6为本发明实施例三中直方图计算方法的流程图。
图7(a)为大小为7×7的跟踪区域像素矩阵示意图。
图7(b)为图7(a)所示像素矩阵中每个像素点所属直方图组别信息的矩阵图。
图8为每个直方图组别的行积分像素个数矩阵图。
图9为每个直方图组别的区域积分像素个数矩阵图。
图10(a)为图7(a)所示像素矩阵的一种区域窗口划分示意图。
图10(b)为在图9所示区域积分像素个数矩阵中计算搜索窗口像素个数的示意图。
图11为本发明实施例三中一种图像跟踪系统的结构示意图。
图12为本发明实施例三中又一种图像跟踪系统的结构示意图。
具体实施例方式
本发明的基本思想是结合目标分类器进行目标的位置跟踪。由目标分类器对目标进行粗略跟踪,以进一步提高跟踪实时性,降低运算量,之后由直方图匹配对目标进行精细跟踪,以保证跟踪效果。
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
实施例一图1为本发明实施例一中图像跟踪方法的流程图。如图1所示,该流程包括如下步骤步骤101,利用分类器在当前图像整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述,若存在置信度满足跟踪要求的搜索窗口,则执行步骤102;若不存在置信度满足跟踪要求的搜索窗口,则执行步骤104。
本实施例中,可预先在当前图像中设置跟踪区域,由于现有技术中设置跟踪区域的方法可有多种,因此本实施例中不再赘述,假设所确定的跟踪区域为矩形区域(xs,ys,ws,hs),其中,(xs,ys)为跟踪区域左上角点的坐标,(ws,hs)为跟踪区域的宽度和高度。
若假设目标的大小为wp×hp,则每个可能的尺度c下,尺度c所对应搜索窗口的宽度为wc=c×wp,高度为hc=c×hp,其中c∈C,C为所有可能尺度的集合,如C={0.8,0.9,1.0,1.1,1.2}等。
又假设目标分类器的标准窗口大小为wstd×hstd,则进行目标分类器跟踪时,首先需要将跟踪区域中目标可能出现的每个搜索窗口放缩到目标分类器的标准窗口大小,判断该搜索窗口是否可能为目标,对可能为目标的搜索窗口进行存储,然后对所存储的搜索窗口利用目标分类器进行置信度描述,若置信度大于预先设置的阈值,则存在置信度满足要求的搜索窗口,并可选出置信度最大的窗口,此时跟踪成功;若置信度小于预设的阈值,则不存在置信度满足要求的搜索窗口,此时跟踪失败。
步骤102,对置信度满足跟踪要求的搜索窗口进行直方图匹配,若直方图匹配成功,则执行步骤103;否则,进一步地,可执行步骤104。
本步骤中,可以是对所有置信度满足跟踪要求的搜索窗口进行直方图匹配,也可以是对部分置信度满足跟踪要求的搜索窗口进行直方图匹配,如选取置信度较大的若干个置信度满足跟踪要求的搜索窗口进行直方图匹配,或选取置信度最大的一个置信度满足跟踪要求的搜索窗口进行直方图匹配。
对置信度满足跟踪要求的搜索窗口进行直方图匹配时,可采用现有技术中的直方图匹配方法。例如,可以为确定直方图组数后,对置信度满足跟踪要求的搜索窗口,计算该搜索窗口中像素点所属的直方图组别,统计每个组别中的像素个数,根据直方图组数和每个组别中的像素个数,得到该搜索窗口的直方图,将计算得到的搜索窗口直方图与目标的标准直方图进行匹配,若存在直方图匹配结果满足要求的搜索窗口,则直方图匹配成功,将其中匹配最好的搜索窗口称为匹配成功的搜索窗口,否则,匹配失败。
步骤103,将直方图匹配成功的搜索窗口作为目标的跟踪位置,之后执行步骤105。
步骤104,对所有搜索窗口进行直方图匹配跟踪,得到目标的跟踪位置。
本步骤中,对所有搜索窗口都进行直方图匹配,从中选取满足要求的且匹配最好的搜索窗口作为目标的跟踪位置,若不存在满足要求的搜索窗口,则可删除目标。其中,进行直方图匹配时,可采用现有技术中的直方图匹配方法。例如,同样可以为确定直方图组数后,对每个搜索窗口,计算该搜索窗口中像素点所属的直方图组别,统计每个组别中的像素个数,根据直方图组数和每个组别中的像素个数,得到该搜索窗口的直方图,将计算得到的搜索窗口直方图与目标的标准直方图进行匹配,得到匹配结果。
步骤105,判断是否需要继续跟踪目标,如果是,则提取下一帧图像,并返回执行步骤101,否则,结束本流程。
至此,实施例一中的图像跟踪方法流程结束。
上述步骤102和步骤104中所述的直方图,一般情况下,都为颜色直方图,而颜色标准一般包括红绿蓝(RGB)图像标准,或YUV图像标准等。计算颜色直方图时,可以将整个颜色通道作为一个特征通道,计算该特征通道的直方图,或者,为了描述目标的颜色特征,也可以将其中每一个颜色通道作为一个特征通道,计算每个特征通道的直方图。如若采用RGB图像标准,则特征通道可以为红(R)、绿(G)、蓝(B)三个颜色通道;若采用YUV图像标准,则特征通道可以为Y、U、V三个颜色通道。
因为像素的亮度色阶分布为0~255,总数为256,若以其中的一个特征通道为例,用I(i,j)表示(i,j)处像素点在该特征通道中的色阶值,并用fk(i,j),k∈(0,1,...,K-1)表示(i,j)处像素点所属的组别信息,则(i,j)处像素点在该特征通道中所属的直方图组别计算可以为fk(i,j)=1,I(i,j)256/Kk0,]]>其中,为1表示属于第k组,为0表示不属于第k组。当然,也可以采用区间计算法,即分别计算各组别的边界值,根据组别的边界值,判断I(i,j)所属的组别区间,从而得到I(i,j)所属的组别。计算出所有fk(i,j)后,得到每个特征通道的每个组别中的像素点个数,根据直方图组数和每个特征通道中的各组别的像素点个数,得到各特征通道的直方图。则搜索区域的直方图hwin包括每个颜色通道的直方图,即hwin=[hr,hg,hb],或hwin=[hy,hu,hv],相应地,预先计算的目标的标准直方图hstd为hstd=[hr,hg,hb],或hstd=[hy,hu,hv]。其中,hr,hg,hb分别为R、G、B特征通道的直方图;同理,hy,hu,hv分别为Y、U、V特征通道的直方图。
由于颜色直方图只是对颜色的一种描述,因此容易受到与目标颜色相似的物体的干扰,使跟踪不准确,为此,可在采用颜色直方图的基础上,结合另外一种直方图,即梯度方向直方图。
梯度方向直方图是指按照直方图组数确定梯度方向的角度区间;计算每个像素点的梯度方向所属的角度区间,得到该像素点所属的直方图组别。具体计算过程如下假设用I(i,j)表示(i,j)处像素点的灰度值,用Gx(i,j)表示x方向上的梯度值,Gy(i,j)表示y方向上的梯度值,Gdir(i,j)表示梯度方向,则有Gx(i,j)=I(i+1,j)-I(i-1,j),Gy(i,j)=I(i,j+1)-I(i,j-1),Gdir(i,j)=arctanGy(i,j)Gx(i,j).]]>因为-π2<arctanGy(i,j)Gx(i,j)<π2,]]>因此可将梯度方向在 范围内对直方图分组,若直方图组数为K,则将 分为K个角度区间。如可进行如下区间划分R0=[-π2,-(2K-1)π2K)∪[(2K-1)π2K,π2)Ri=[-π2+iπK-π2K,-π2+iπK+π2K),i=1,2......K-1]]>计算出每个像素点的Gdir(i,j),根据Gdir(i,j)所处区间的范围,得到该像素点所属直方图的组别。
实际应用中,为了避免进行反正切运算,可以首先计算区间边界上点的正切值bi,然后计算(i,j)处像素点的梯度比Gy(i,j)/Gx(i,j)所处的区间(bi-1,bi),然后得到该像素点所属的直方图组别。若仍用fk(i,j),k∈(0,1,...,K-1)表示(i,j)处像素点所属的组别信息,则具体计算过程可以为fk(i,j)=1,bi-1<Gy(i,j)/Gx(i,j)<bj0.]]>之后,对每个梯度方向直方图组别中的像素个数进行统计,最后根据梯度方向直方图组数和每个组别中的像素个数,得到搜索区域的梯度方向直方图hdir。若计算颜色直方图时采用的是对颜色的每个颜色通道都计算直方图,则结合颜色直方图和梯度方向直方图后每个搜索区域的总直方图hwin为hwin=[hr,hg,hb,hdir],(或hwin=[hy,hu,hv,hdir]),相应地,预先计算的目标的标准直方图hstd为hstd=[hr,hg,hb,hdir],(或hstd=[hy,hu,hv,hdir]),即此时特征通道还包括梯度方向通道。
其中,梯度方向直方图也可单独使用,此时搜索区域的直方图hwin为hwin=hdir,相应地,预先计算的目标的标准直方图hstd为hstd=hdir。
具体进行匹配时,可采用欧式距离作为直方图匹配的标准,若用hstd表示目标的标准直方图,用M(hwin,hstd)表示hwin与hstd的匹配度,假设其中hwin、hstd=[hr,hg,hb](或hwin、hstd=[hy,hu,hv]),则M(hwin,hstd)的计算过程可以为M(hwin,hstd)=ΣdD(hwin.d,hstd.d),]]>其中,d∈D,D={r,g,b}(或D={y,u,v});D(hwin.d,hstd.d)=Σk=0K-1(hwin.d(k)-hstd.d(k))2.]]>其中,K为直方图的组数,k为直方图的组别,D(hwin.d,hstd.d)为d特征通道中搜索窗口直方图与目标的标准直方图之间的偏差大小,M(hwin,hstd)为hwin与hstd的综合偏差。
较佳地,上述计算过程中,为了使计算更加准确,可以在计算公式中添加权重,如D(hwin.d,hstd.d)可以为D(hwin.d,hstd.d)=Σk=0K-1w(d,k)(hwin.d(k)-hstd.d(k))2,]]>其中,w(d,k)为d特征通道中直方图第k组的权重;M(hwin,hstd)也可以为M(hwin,hstd)=ΣdwdD(hwin.d,hstd.d),]]>其中,wd为d特征通道的权重。
其中,权重w(d,k)和wd可以由经验值或实际需要得到。
最后,将得到的搜索窗口匹配度M(hwin,hstd)进行记录。
此外,步骤103中可进一步包括将匹配成功的搜索窗口进行存储。
则本实施例中的方法可进一步包括当存储的搜索窗口的个数达到预设条件时,利用这些搜索窗口的全局直方图,计算每个特征通道中直方图各组别的权重w(d,k),d∈D,其中,若采用颜色直方图,则特征通道D={r,g,b}(或D={y,u,v});若采用颜色直方图加梯度方向直方图,则特征通道D={r,g,b,Gdir}(或D={y,u,v,Gdir});若只采用梯度方向直方图,则特征通道D=Gdir。
假设所存储的搜索窗口的个数为N0,所确定的直方图的组数为K,则具体计算权重的过程如下1、计算所存储的N个搜索窗口在每个特征通道中每个组别的全局直方图hdkn,n∈(0,1,...,N0-1),k∈(0,1,...,K-1)。
2、计算每个特征通道中的每个组别的全局直方图的均差Mhdk、方差Varhdk。
若N个搜索窗口包括不同尺度的搜索窗口,则计算均差和方差之前,首先将各自每个组别的直方图转换为标准尺度每个组别的直方图。然后再进行均差及方差计算。
具体计算过程如下Mhdk=Σn=0N-1hdknN,]]>Varhdk=Σn=0N-1(hdkn-Mhdk)2N;]]>3、利用上述均差和方差,计算w(d,k)。
w(d,k)1=Mhdk2Varhdk+σ2,]]>其中,σ2为方差调整参数,用于避免Varhdk为0的情况,σ2的取值很小,如可以为10-5等。
为了使各组别的权重相加为1,需要对各组别的权重进行归一化,即W(d,K)=Σk=0K-1w(d,k)1,]]>w(d,k)=w(d,k)1W(d,K),]]>k∈(0,1,...,K-1)。
上述流程中,步骤102和步骤103也可以省略,则步骤101中若分类器跟踪成功,则直接将置信度满足跟踪要求的搜索窗口中置信度最大的搜索窗口作为目标的跟踪位置,然后执行步骤105。
上述对本发明实施例一中的图像跟踪方法进行了详细描述,下面再对本发明实施例一中图像跟踪系统进行详细描述。
图2为本发明实施例一中图像跟踪系统的结构示意图。如图2中的实线部分所示,该系统包括目标分类器跟踪单元和直方图匹配跟踪单元。
其中,目标分类器跟踪单元,用于利用分类器对整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述,若不存在置信度满足跟踪要求的搜索窗口,则向直方图匹配跟踪单元发送跟踪失败的通知;若存在置信度满足跟踪要求的搜索窗口,则将所述置信度满足跟踪要求的搜索窗口输出。
其中,目标分类器跟踪模块将置信度满足跟踪要求的搜索窗口输出时,可将所有置信度满足跟踪要求的搜索窗口输出,也可以将部分置信度满足跟踪要求的搜索窗口输出,如选取置信度较大的若干个置信度满足跟踪要求的搜索窗口,或选取置信度最大的一个置信度满足跟踪要求的搜索窗口输出。
直方图匹配跟踪单元,用于根据来自目标分类器跟踪单元的跟踪失败的通知,计算每个搜索窗口的直方图,将计算得到的每个搜索窗口的直方图与目标的标准直方图进行匹配,根据匹配结果得到目标的跟踪位置。
具体实现时,直方图匹配跟踪单元可有多种实现形式,可以是一个单独的模块,也可以是由几个模块构成。下面仅以其中一种实现形式为例,对直方图匹配跟踪单元的具体实现进行详细描述,如图2所示,直方图匹配跟踪单元可包括搜索窗口全局直方图匹配模块和跟踪位置确定模块。
其中,搜索窗口全局直方图匹配模块,用于从跟踪区域中确定当前的搜索窗口,并计算当前搜索窗口的全局直方图,将计算得到的当前搜索窗口的全局直方图与目标的全局直方图进行匹配,将匹配结果提供给跟踪位置确定模块。
跟踪位置确定模块,用于根据搜索窗口全局直方图匹配模块提供的所有搜索窗口的匹配结果,将匹配最好的搜索窗口区域作为目标的跟踪位置。
该系统中,可将目标分类器跟踪单元输出的置信度满足跟踪要求的搜索窗口中置信度最大的搜索窗口直接作为目标的跟踪位置,也可以如图2中的虚线部分所示,进一步包括直方图匹配单元,用于接收目标分类器跟踪单元输出的置信度满足跟踪要求的搜索窗口,并计算所述搜索窗口的直方图,将计算的搜索窗口直方图与目标的标准直方图进行匹配,根据匹配结果,确定目标的跟踪位置。此时,若存在直方图匹配结果满足要求的搜索窗口,则直方图匹配成功,将其中匹配最好的搜索窗口称为匹配成功的搜索窗口,并将该匹配成功的搜索窗口作为目标的跟踪位置,若直方图匹配失败,则可结束,或进一步地向直方图匹配跟踪单元发送跟踪失败的通知,直方图匹配跟踪单元根据该跟踪失败的通知,执行所述计算每个搜索窗口的直方图的操作。
进一步地,如图2中的虚线部分所示,本系统中还可包括直方图权重更新单元。
若系统中不包括直方图匹配单元,则目标分类器跟踪单元进一步用于将置信度满足跟踪要求的搜索窗口中置信度较大的搜索窗口提供给直方图权重更新单元;若系统中包括直方图匹配单元,则直方图匹配单元进一步用于将直方图匹配成功的搜索窗口提供给直方图权重更新单元。
直方图权重更新单元,用于根据存储的预定个数的搜索窗口的全局直方图,计算每个特征通道中直方图各组别的权重,将计算的每个特征通道中各组别的权重提供给直方图匹配跟踪单元。直方图匹配跟踪单元进一步用于根据直方图权重更新单元提供的每个特征通道中各组别的权重,执行所述对搜索窗口的直方图与目标的标准直方图进行匹配的操作。进一步地,直方图权重更新单元也可将所计算的每个特征通道中各组别的权重提供给直方图匹配单元,直方图匹配单元进一步地,根据直方图权重更新单元提供的每个特征通道中各组别的权重,执行所述将搜索窗口直方图与目标的标准直方图进行匹配的操作。
其中,直方图权重更新单元将计算的每个特征通道中各组别的权重提供给直方图匹配跟踪单元后,可由直方图匹配跟踪单元中的搜索窗口全局直方图匹配模块根据直方图权重更新单元提供的每个特征通道中各组别的权重,执行所述对搜索窗口的直方图与目标的标准直方图进行匹配的操作。
实施例二本实施例中的图像跟踪方法与实施例一中的图像跟踪方法大致相同,其区别在于第一点为了体现目标的边缘特征和空间位置特征,预先将目标按照预设的块数进行分块,并计算目标的分块直方图。则目标的标准直方图中还包括分块直方图。
其中,实施例一中目标的标准直方图为目标的全局直方图,搜索窗口的直方图也指的是搜索窗口的全局直方图。本实施例中目标的标准直方图中不仅包括目标的全局直方图,还包括目标的分块直方图。假设将目标分为M×N块,且直方图包括颜色中每个颜色通道的直方图和梯度方向直方图,则目标的标准直方图构成如图3所示,其中b1,……,bK为直方图中每个组别的直方图部分。其中块(m,n)的分块直方图可用hstmn表示。
第二点步骤104中的具体实现过程不同,参见图4,图4为本实施例中步骤104中的具体实现过程,包括步骤104.a,对所有搜索窗口进行直方图匹配,根据匹配结果,按照预设的条件,选取符合条件的多个搜索窗口。
本步骤中,对所有搜索窗口进行直方图匹配(即全局直方图匹配),根据匹配结果M(hwin,hstd)(即全局匹配度),按照预设的条件,选取符合条件的M(hwin,hstd)值较小的多个搜索窗口。其中预设条件可以为选择的搜索窗口个数N,则根据该预设条件选取N个M(hwin,hstd)值较小的搜索窗口;或者预设条件可以为M(hwin,hstd)值门限,则根据该预设条件选取M(hwin,hstd)值小于该门限的搜索窗口。
本步骤中可对选取的多个搜索窗口进行编号,假设选取了N个搜索窗口,则可将N个搜索窗口依次编号为1,2,……,N。
步骤104.b,从选取的多个搜索窗口中确定当前搜索窗口。
假设步骤104.a中所选取的搜索窗口为N个,则本步骤中,可确定N个中的一个作为当前搜索窗口,若步骤104.a中对N个搜索窗口编了号,则本步骤中可按照编号次序,确定当前搜索窗口。
步骤104.c,将当前搜索窗口按照与目标相同的分块方法进行分块,得到多个子窗口。
本步骤中,假设目标分为M×N块,则也将当前搜索窗口分为大小对应的M×N块。
步骤104.d,计算每个子窗口的直方图,并将所计算的子窗口直方图与目标对应块的分块直方图进行匹配,得到每个子窗口匹配结果。
本步骤中,子窗口匹配结果的具体计算过程可以为for m=1→M{for n=1→N{利用积分直方图计算第(m,n)块的子窗口直方图;将所计算的第(m,n)块子窗口直方图与目标的第(m,n)块分块直方图进行匹配,记录匹配结果;}}上述计算过程表示,按照从上到下,从左到右的方向逐次选取当前块,并计算当前块的子窗口直方图,将所计算的当前块的子窗口直方图与目标对应块的分块直方图进行匹配,并记录匹配结果(匹配度),之后选取当前块的下一块作为当前块,继续上述过程,直到匹配完所有子窗口。
其中,计算第(m,n)块的子窗口直方图时,计算方法与计算未分块的搜索窗口直方图的方法相同,可应用现有技术中的多种直方图计算方法进行计算,也可采用其它直方图计算方法进行计算。
将所计算的第(m,n)块子窗口直方图与目标的第(m,n)块分块直方图进行匹配时,同样可采用欧式距离作为直方图匹配的标准,若用hmn表示第(m,n)块的子窗口直方图,用M(hmn,hstmn)表示hmn与hstmn的匹配度,则M(hmn,hstmn)=ΣdD(hmn.d,hstmn.d),]]>D(hmn.d,hstmn.d)=Σk=0K-1(hmn.d(k)-hstmn.d(k))2.]]>其中,若只采用颜色直方图,则d∈D,D={r,g,b}(或D={y,u,v});若采用颜色直方图结合梯度方向直方图,则d∈D,D={r,g,b,Gdir}(或D={y,u,v,Gdir}),或d∈D,D=Gdir;若只采用梯度方向直方图,则d∈D,D=Gdir。其中,K为直方图的组数,k为直方图的组别,D(hmn.d,hstmn.d)为d特征通道中第(m,n)块子窗口直方图与目标的第(m,n)块分块直方图之间的偏差大小,M(hmn,hstmn)为第(m,n)块子窗口直方图与目标的第(m,n)块分块直方图的综合偏差。
较佳地,上述计算过程中,为了使计算更加准确,也可以在计算公式中添加权重,如D(hmn.d,hstmn.d)可以为D(hmn.d,hstmn.d)=Σk=0K-1w(d,k)(hmn.d(k)-hstmn.d(k))2,]]>其中,w(d,k)为d特征通道中直方图第k组的权重;而M(hmn,hstmn)也可以为M(hmn,hstmn)=ΣdwdD(hmn.d,hstmn.d),]]>其中,wd为d特征通道的权重。
最后,将得到的分块匹配度M(hmn,hstmn)进行记录。
步骤104.e,根据当前搜索窗口匹配结果和子窗口匹配结果,计算当前搜索窗口与目标的综合匹配结果。
其中,若用Mz表示当前搜索窗口与目标的综合匹配结果,则综合匹配结果Mz可以为Mz=w1M(hwin,hstd)+Σ1≤m≤M,1≤n≤NwmnM(hmn,hstmn),]]>其中,w1为搜索窗口全局匹配结果M(hwin,hstd)的权重,wmn为搜索窗口分块匹配结果M(hmn,hstmn)的权重。权重w1和wmn可以根据经验值设置,也可以根据实际需要设置。
此外,本步骤中,也可只根据当前搜索窗口中的所有子窗口匹配结果,计算当前搜索窗口与目标的综合匹配结果,即若用Mz表示当前搜索窗口与目标的综合匹配结果,则综合匹配结果Mz可以为Mz=Σ1≤m≤M,1≤n≤NwmnM(hmn,hstmn),]]>其中,wmn为搜索窗口分块匹配结果M(hmn,hstmn)的权重。权重wmn可以根据经验值设置,也可以根据实际需要设置。
步骤104.f,判断是否所选取的搜索窗口都已分块匹配完毕,如果是,则执行步骤104.g;否则,返回执行步骤104.b。
步骤104.g,根据综合匹配结果,得到目标的跟踪位置。
本实施例中,步骤104.e中计算的匹配结果Mz为当前搜索窗口与目标的综合匹配度,而Mz实际上得到的是二者之间的偏差大小,因此,Mz的值越小,表示当前搜索窗口与目标越匹配。根据步骤104.e中计算得到的所有搜索窗口的Mz,从中选取Mz值最小的搜索窗口区域作为目标的跟踪位置。
若需继续跟踪目标,则提取下一帧图像,返回执行步骤101。
其中,若步骤103中还包括将匹配成功的搜索窗口进行存储。则本实施例中的方法可进一步包括当存储的搜索窗口的个数达到预设条件时,除了可按照实施例一中所描述的方法,利用这些搜索窗口的全局直方图,计算每个特征通道中直方图各组别的权重w(d,k),d∈D外,还可以利用所存储的搜索窗口的分块直方图,计算步骤104.e中的全局匹配结果的权重w1和分块匹配结果的权重wmn。
同样,假设所存储的搜索窗口的个数为N0,所确定的直方图的组数为K,又假设每个搜索窗口被分为M×N块,则具体计算权重的过程如下1、计算所存储的N个搜索窗口在每个特征通道中每个组别的分块直方图hdkn(m,n),1≤m≤M,1≤n≤N。
2、计算每个特征通道中的每个组别的分块直方图的均差Mhdk(m,n)、方差Varhdk(m,n)。
若N个搜索窗口包括不同尺度的搜索窗口,则计算均差和方差之前,首先将各自每个组别的直方图转换为标准尺度每个组别的直方图。然后再进行均差及方差计算。
具体计算过程如下Mhdk(m,n)=Σn=0N-1hdkn(m,n)N,]]>Varhdk(m,n)=Σn=0N-1(hdkn(m,n)-Mhdk(m,n))2N.]]>3、利用上述均差和方差,计算w1和wmn。
3.1计算w1
计算全局直方图各个特征通道方差的加权和Var=Σd∈DwcΣk=0K-1Varhdk;]]>计算w1=1/Var+σ2,]]>其中,σ2为方差调整参数,用于避免Var为0的情况,同样,σ2的取值很小,如可以为10-5等。
3.2计算wmn计算分块直方图各个特征通道方差的加权和Var(m,n)=Σd∈DwcΣk=0K-1Varhdk(m,n);]]>计算Wmn.1=1/Var(m,n)+σ2,]]>同样,σ2为方差调整参数。
为了使各分块的权重相加为1,需要对各分块的权重进行归一化,即Wmn=Σk=0K-1wmn.1,]]>wmn=wmn.1Wmn,]]>k∈(0,1,...,K-1),1≤m≤M,1≤n≤N。
上述对本发明实施例二中的图像跟踪方法进行了详细描述,下面再对本发明实施例二中图像跟踪系统进行详细描述。
本实施例中图像跟踪系统的结构和连接关系与实施例一中的图像跟踪系统类似,功能也类似,区别仅在于直方图匹配跟踪单元中的跟踪位置确定模块的详细实现过程与本实施例中步骤104中的描述一致。
此时,如图5所示,图5为本发明实施例二中图像跟踪系统的结构示意图。其中,跟踪位置确定模块中可包括搜索窗口选取子模块、搜索窗口分块直方图匹配子模块、搜索窗口综合匹配计算子模块和跟踪位置确定子模块。
其中,搜索窗口选取子模块,用于根据搜索窗口全局直方图匹配模块提供的所有搜索窗口的匹配结果,从中选取满足预设条件的多个搜索窗口,提供给所述搜索窗口分块直方图匹配子模块。
搜索窗口分块直方图匹配子模块,用于从搜索窗口选取模块提供的搜索窗口中确定当前的搜索窗口,对所确定的当前搜索窗口按照与目标对应的分块方式进行分块,得到子窗口,对每个子窗口,计算子窗口直方图,将所计算的子窗口直方图与目标对应块的分块直方图进行匹配,得到每个子窗口的分块匹配度,将所得到的当前搜索窗口的分块匹配度提供给搜索窗口综合匹配计算子模块。
搜索窗口综合匹配计算子模块,用于根据所述当前搜索窗口的所有子窗口的分块匹配度,计算当前搜索窗口的综合匹配度,并将计算得到的当前搜索窗口的综合匹配度提供给跟踪位置确定子模块。
跟踪位置确定子模块,用于根据搜索窗口综合匹配计算模块提供的所有搜索窗口的综合匹配度,将匹配最好的搜索窗口区域作为目标的跟踪位置。
若本实施例中的系统也进一步包括直方图权重更新单元。则直方图权重更新单元除了可按照图1所示系统中的描述执行计算每个特征通道中直方图各组别的权重的操作外,还可根据存储的预定个数的搜索窗口的分块直方图,即子窗口直方图计算搜索窗口全局匹配结果的权重和分块匹配结果的权重,将计算的搜索窗口全局匹配结果的权重和分块匹配结果的权重提供给直方图匹配跟踪单元,由直方图匹配跟踪单元根据直方图权重更新单元提供的搜索窗口全局匹配结果的权重和分块匹配结果的权重,执行计算搜索窗口综合匹配结果的操作。
具体实现时,直方图权重更新单元可将所计算的全局匹配结果的权重和分块匹配结果的权重提供给跟踪位置确定模块中的搜索窗口综合匹配计算子模块,由搜索窗口综合匹配计算子模块根据搜索窗口全局匹配结果的权重和分块匹配结果的权重,执行计算搜索窗口综合匹配结果的操作。
其中,直方图权重更新单元除了可将计算的每个特征通道中直方图各组别的权重提供给搜索窗口全局直方图匹配模块外,还提供给搜索窗口分块直方图匹配子模块,则搜索窗口分块直方图匹配子模块根据直方图权重更新单元提供的每个特征通道中各组别的权重,执行所述将所计算的子窗口直方图与目标对应块的分块直方图进行匹配的操作。
实施例三本实施例中的图像跟踪方法可与实施例一中的图像跟踪方法一致,也可与实施例二中的图像跟踪方法一致。其区别在于为了缩减直方图的计算次数,提高运算速度,以保证跟踪的实时性,本实施例中,对实施例一和实施例二中步骤104中所述的直方图(包括分块直方图和全局直方图)采用图6所示的方法进行计算,图6为本发明实施例三中直方图计算方法的流程图,该流程包括如下步骤步骤601,预先计算整个跟踪区域的区域积分直方图。
其中,计算整个跟踪区域的区域积分直方图时,可通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图。
具体可以为确定积分直方图的组数K,即位数,或称长度;然后计算整个跟踪区域中每个像素点所属直方图组别k的组别信息fk(i,j),k∈(0,1,...,K-1),即计算每个像素点属于直方图的第几位。为统一起见,本文中凡涉及起始点的地方,都按起始点为0点进行处理;预先设定整个跟踪区域的一角O作为起始点,统计整个跟踪区域中以O作为起始点的所有区域Ci,j中属于每个组别k的像素个数,将每个Ci,j中属于每个组别k的像素个数统称为每个Ci,j中属于每个组别k的区域积分像素个数IIk(i,j);根据直方图组数和每个以O作为起始点的区域Ci,j中每个组别k的区域积分像素个数IIk(i,j),得到每个区域Ci,j的直方图,并将每个Ci,j的直方图统称为区域积分直方图。其中,对于跟踪区域(xs,ys,ws,hs),Ci,j中i,j的取值为0≤i<ws,0≤j<hs,且IIk(i,j)=Σm<i,n<jfk(i,j).]]>具体实现时,为了快速统计每个Ci,j中每个直方图组别中的像素个数,可以采用加法递推运算,根据每个像素点所属的直方图组别信息,在整个跟踪区域起始点O所属的一条边的方向上,对每个组别中的像素点个数进行加法递推计算,得到每个组别在该方向上的方向积分像素个数,对得到的每个组别的方向积分像素个数,在整个跟踪区域O所属的另一条边的方向上进行加法递推计算,得到每个Ci,j每个组别的区域积分像素个数。
其中,O可以为左上角,或右上角,或左下角,或右下角,O所属的一条边的方向可以是行方向,也可以是列方向,若是行方向,则O所属的另一条边的方向为列方向;若是列方向,则O所属的另一条边的方向为行方向。
为方面描述,下文中均以O为左上角,O所属的一条边的方向为行方向的情况为例。
以颜色直方图的情况为例,若以颜色通道中的一个特征通道为例,用I(i,j)表示(i,j)处像素点在该特征通道中的色阶值,并用fk(i,j),k∈(0,1,...,K-1)表示(i,j)处像素点所属的组别信息,则(i,j)处像素点在该特征通道中所属的直方图组别计算可以为fk(i,j)=1,I(i,j)256/K=k0,]]>其中,为1表示属于第k组,为0表示不属于第k组。当然,也可以采用区间计算法,即分别计算各组别的边界值,根据组别的边界值,判断I(i,j)所属的组别区间,从而得到I(i,j)所属的组别。计算出所有fk(i,j)后,得到K个组别矩阵Fk,k∈(0,1,...,K-1)。
图7给出了一组计算得到的每个像素点所属直方图组别的示意图。如图7(a)所示,图7(a)为大小为7×7的跟踪区域像素矩阵示意图。为方便描述,图7中以整个跟踪区域大小为7×7的情况为例,并假设直方图组数K=8,起始点O的坐标(xs,ys)为(0,0),则在7×7的像素矩阵跟踪区域中,每个像素点所属直方图组别的情况分别如图7(b)中所示的8个组别矩阵Fk,k∈(0,1,...,7),图7(b)为图7(a)所示像素矩阵中每个像素点所属直方图组别信息的矩阵图。如图7(b)所示,F0示出了像素点在直方图中第0组的分布,……,F7示出了像素点在直方图中第7组的分布,Fk中的1表示属于直方图中的k组,0表示不属于直方图中的k组。如F0中(1,2)位置处的值为1,即f0(1,2)的值为1,而其它Fk,k∈(1,...,7)中相应位置处的值都为0,即fk(i,j),k∈(1,...,7)为0,表示图7(a)中(1,2)位置处的像素点属于直方图的第0组,依次类推,图7(b)中的组别矩阵Fk示出了每个像素点所属直方图的组别信息。
在得出了每个像素点所属的直方图组别信息后,下面对每个直方图组别中的像素个数的统计进行详细描述。
若用RIk表示第k组的行积分像素个数矩阵,用RIk(i,j)表示第k组的行积分像素个数矩阵中从像素矩阵第x行起始点(i,0)到点(i,j)处的行积分像素个数,则RIk(i,j)的计算公式可以为Σ0≤j≤hs-1Σ0≤i≤ws-1RIk(i-1,j)+fk(i,j),]]>其中,RIk(0,j)=fk(0,j)。
具体实现时,计算过程可以为for j=0→hs-1{RIk(0,j)=fk(0,j)for i=1→ws-1RIk(i,j)=RIk(i-1,j)+fk(i,j)}上述计算过程表示从组别矩阵Fk的第0行到第hs-1行,即j=0→hs-1,对每一行都进行加法递推计算,其中加法递推计算为将该行的第一个值作为该行积分像素个数的初始值,即RIk(0,j)=fk(0,j),将初始值与该行的第二个值相加得到第二个行积分像素个数值,将第二个行积分像素个数值与第三个值相加得到第三个行积分像素个数值,依次递推,直到得到该行最后一个行积分像素个数值,即i=1→ws-1,RIk(i,j)=RIk(i-1,j)+fk(i,j)。
对于图7(a)中所示的7×7的像素矩阵来说,hs=7,ws=7,则可得到如图8所示的8个7×7的行积分像素个数矩阵RIk。
以计算第0组的行积分像素个数矩阵RI0为例,从第一行开始计算,赋初值,即RI0(0,0)=f0(0,0)=0,之后递推计算,RI0(1,0)=RI0(0,0)+f0(1,0)=0+1=1,RI0(2,0)=RI0(1,0)+f0(2,0)=1+0=1,……,RI0(6,0)=RI0(5,0)+f0(6,0)=3+0=3,然后开始计算第二行,过程与第一行相同,直到计算完第6行,第0组的行积分像素个数计算完毕。
对于其它组别的行积分像素个数按照与第0组的行积分像素个数相同的计算过程进行计算,最后得到每个组别的行积分像素个数,即得到每个组别在行方向上的方向积分像素个数。
对得到的每个组别的行积分像素个数RIk(i,j),在整个跟踪区域起始点O所属的另一条边的方向上即列方向上进行加法递推计算,若用IIk表示第k组的区域积分像素个数矩阵,用IIk(i,j)表示第k组的区域积分像素个数矩阵中从像素矩阵起始点(0,0)到点(i,j)的区域Ci,j的像素个数,将IIk(i,j)称为点(i,j)对应的区域积分像素个数,则IIk(i,j)的计算公式可以为Σ0≤i≤ws-1Σ0≤j≤hs-1IIk(i,j-1)+RIk(i,j),]]>其中,IIk(i,0)=RIk(i,0)。
具体实现时,计算过程可以为for i=0→ws-1{IIk(i,0)=RIk(i,0)for j=1→hs-1IIk(i,j)=IIk(i,j-1)+RIk(i,j)}上述计算过程表示从行积分像素个数RIk第0列到第ws-1列,即i=0→ws-1,对每一列都进行加法递推计算,其中加法递推计算为将该列的第一个值作为该列元素对应的区域积分像素个数的初始值,即IIk(i,0)=RIk(i,0),将初始值与该列的第二个值相加得到第二个区域积分像素个数值,将第二个区域积分像素个数值与第三个值相加得到第三个区域积分像素个数值,依次递推,直到得到该列元素对应的最后一个区域积分像素个数值,即j=1→hs-1,IIk(i,j)=IIk(i,j-1)+RIk(i,j)。
其中,元素对应的区域积分像素个数值为以起始点O与该元素作为对角线的矩形区域的区域积分像素个数值。其中,极端情况下,起始点与该元素位于同一行或同一列,则以起始点O与该元素为对角线的矩形区域为i×1或1×j的区域。
对于图7(a)中所示的7×7的像素矩阵来说,hs=7,ws=7,则可得到如图9所示的8个7×7的区域积分像素个数矩阵IIk。
以计算第0组的区域积分像素个数矩阵II0为例,从第一列开始计算,首先赋初值,即II0(0,0)=RI0(0,0)=0,之后进行递推计算,II0(0,1)=II0(0,0)+RI0(0,1)=0+0=0,II0(0,2)=II0(0,1)+RI0(0,2)=0+0=0,……,II0(0,6)=II0(0,5)+RI0(0,6)=0+0=0,然后开始计算第二列,过程同第一列相同,直到计算完第6列,第0组的区域积分像素个数计算完毕。
对于其它组别的区域积分像素个数按照与第0组的区域积分像素个数相同的计算过程进行计算,最后得到每个组别的区域积分像素个数,即得到每个Ci,j中每个组别的区域积分像素个数。
图10(a)为图7(a)所示像素矩阵的一种区域划分示意图。其中,H点对应的区域积分像素个数IIk(1,1)为图中OAHG表示的区域I中的像素个数,C点对应的区域积分像素个数IIk(5,1)为图中OBCG表示的区域II中的像素个数,D点对应的区域积分像素个数IIk(5,4)为图中OBDF表示的区域IV中的像素个数,E点对应的区域积分像素个数IIk(1,4)为图中OAEF表示的区域III中的像素个数。其中,区域I可表示为C1,1,区域II可表示为C5,1,区域IV可表示为C5,4,区域III可表示为C1,4。
根据直方图组数和每个区域Ci,j中各组别的像素个数,可得到每个区域Ci,j的直方图,即区域积分直方图hi,j。其中,若采用将颜色的每个颜色通道都作为特征通道计算直方图,则每个区域Ci,j的直方图hi,j包括每个颜色通道的直方图,即hi,j=[hr,hg,hb]i,j,或hi,j=[hy,hu,hv]i,j。其中,hr,hg,hb分别为R、G、B特征通道的直方图;同理,hy,hu,hv分别为Y、U、V特征通道的直方图。
对于梯度方向直方图,可以采用实施例一中描述的方法,得到每个像素点的Gdir(i,j),进而得到该像素点所属直方图的组别,然后对每个梯度方向直方图组别中的像素个数进行统计,其中统计方法与颜色直方图的统计方法相同,此处不再赘述。
最后根据梯度方向直方图组数和每个区域Ci,j中每个组别中的像素个数,得到每个区域Ci,j的梯度方向直方图hdir。
若计算颜色直方图时采用的是对颜色的每个颜色通道都计算直方图,则结合颜色直方图和梯度方向直方图后每个区域Ci,j的总直方图hi,j为hi,j=[hr,hg,hb,hdir]i,j,或hi,j=[hy,hu,hv,hdir]i,j,即此时特征通道还包括梯度方向通道。若只采用梯度方向直方图,则有hi,j=hdir。
步骤602,利用区域积分直方图,计算所确定的当前搜索区域的直方图。
本步骤中,对于搜索窗口的全局直方图,计算所确定的当前搜索窗口的全局直方图时,将该搜索窗口右下角对应的区域积分直方图与该搜索窗口左上角对应的区域积分直方图相加之后,减去该搜索窗口右上角对应的区域积分直方图和左下角对应的区域积分直方图,得到该搜索窗口的直方图。如对于当前搜索窗口为(x,y,wc,hc)时,则该搜索窗口为Cx+wc,y+hc+Cx,y-Cx+wc,y-Cx,y+hc,该搜索窗口的直方图为hx+wc,y+hc+hx,y-hx+wc,y-hx,y+hc。
假设当前搜索窗口为图10(a)所示的HCDE表示的区域窗口,则计算区域窗口HCDE的直方图时,需要计算该区域窗口中属于直方图各组别的像素个数,即可利用步骤601中计算得到的区域积分像素个数进行加减运算,具体为IIk(5,4)+IIk(1,1)-IIk(5,1)-IIk(1,4)。
如图10(b)所示,HCDE表示的区域窗口中属于直方图第0组的像素个数为II0(5,4)+II0(1,1)-II0(5,1)-II0(1,4)=9+1-5-2=3;属于直方图第1组的像素个数为II1(5,4)+II1(1,1)-II1(5,1)-II1(1,4)=8+2-4-4=2;……;属于直方图第7组的像素个数为II7(5,4)+II7(1,1)-II7(5,1)-II7(1,4)=4+0-0-0=4。
根据直方图组数和该搜索窗口中每个直方图组别中的像素个数,得到该搜索窗口的直方图hwin。其中,若采用将颜色的每个颜色通道都作为特征通道计算直方图,则搜索窗口的直方图hwin包括每个颜色通道的直方图,即hwin=[hr,hg,hb],或hwin=[hy,hu,hv]。其中,hr,hg,hb分别为R、G、B特征通道的直方图;同理,hy,hu,hv分别为Y、U、V特征通道的直方图。
对于搜索窗口的子窗口直方图,计算所确定的当前子窗口的直方图时,计算方法与计算搜索窗口全局直方图的方法相同,如假设第(m,n)块的窗口区域为(mx,ny,wMN,hMN)时,则该子窗口为Cmx+wMN,ny+hMN+Cmx,ny-Cmx+wMN,ny-Cmx,ny+hMN,该子窗口的直方图为hmx+wMN,ny+hMN+hmx,ny-hmx+wMN,ny-hmx,ny+hMN。
相应地,本实施例中的系统可在实施例一中的系统或实施例二中的系统的基础上,进一步包括区域积分计算模块。
参见图11,图11为本发明实施例三中一种图像跟踪系统的结构示意图。该系统在图2所示系统的基础上,添加了区域积分计算模块,用于通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图,并将得到的区域积分直方图提供给搜索窗口全局直方图匹配模块。
则搜索窗口全局直方图匹配模块,利用区域积分计算模块提供的区域积分直方图,执行所述计算搜索窗口全局直方图的操作。
参见图12,图12为本发明实施例三中又一种图像跟踪系统的结构示意图。该系统在图5所示系统的基础上,添加了区域积分计算模块,用于通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图,并将得到的区域积分直方图提供给搜索窗口全局直方图匹配模块和搜索窗口分块直方图匹配模块。
则搜索窗口全局直方图匹配模块,利用区域积分计算模块提供的区域积分直方图,执行所述计算当前搜索窗口的全局直方图的操作;搜索窗口分块直方图匹配模块,利用区域积分计算模块提供的区域积分直方图,执行所述计算子窗口直方图的操作。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种图像跟踪方法,其特征在于,该方法包括利用分类器对整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述;若不存在置信度满足跟踪要求的搜索窗口,则计算每个搜索窗口的直方图,将所计算的每个搜索窗口的直方图与目标的标准直方图进行匹配,得到每个搜索窗口的匹配结果,根据所述匹配结果确定目标的跟踪位置;若存在置信度满足跟踪要求的搜索窗口,则根据所述置信度满足跟踪要求的搜索窗口确定目标的跟踪位置。
2.如权利要求1所述的方法,其特征在于,若存在置信度满足跟踪要求的搜索窗口,则所述根据所述置信度满足跟踪要求的搜索窗口确定目标的跟踪位置为对所述置信度满足要求的搜索窗口进行直方图匹配,若直方图匹配成功,则将所述匹配成功的搜索窗口作为目标的跟踪位置。
3.如权利要求2所述的方法,其特征在于,该方法进一步包括将直方图匹配成功的搜索窗口进行存储,根据存储的预定个数的搜索窗口的全局直方图,计算每个特征通道中直方图各组别的权重;则所述将搜索窗口的直方图与目标的标准直方图进行匹配为根据每个特征通道中各组别的权重,对搜索窗口的直方图与目标的标准直方图进行匹配。
4.如权利要求1所述的方法,其特征在于,所述目标的标准直方图包括目标的全局直方图;则所述将所计算的每个搜索窗口的直方图与目标的标准直方图进行匹配,得到匹配结果包括将所计算的每个搜索窗口的全局直方图与目标的全局直方图进行匹配,得到搜索窗口的全局匹配度,将所得到的搜索窗口的全局匹配度作为匹配结果。
5.如权利要求4所述的方法,其特征在于,所述目标的标准直方图还包括将目标分块后的分块直方图;则得到搜索窗口的全局匹配度之后,将该搜索窗口的全局匹配度作为匹配结果之前,进一步包括根据搜索窗口的全局匹配度,得到多个全局匹配度满足预设条件的搜索窗口;将所述多个搜索窗口分别按照与目标对应的分块方式进行分块,得到每个搜索窗口的子窗口;利用区域积分直方图,计算每个子窗口的直方图,将得到的每个子窗口的直方图与目标对应块的分块直方图进行匹配,得到每个子窗口的分块匹配度;根据每个搜索窗口的全局匹配度和该搜索窗口中每个子窗口的分块匹配度,得到每个搜索窗口的匹配结果。
6.如权利要求5所述的方法,其特征在于,该方法进一步包括通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图;所述计算每个搜索窗口的全局直方图具体为利用区域积分直方图,计算每个搜索窗口的全局直方图;所述计算每个子窗口的直方图具体为利用区域积分直方图,计算每个子窗口的直方图。
7.如权利要求6所述的方法,其特征在于,所述利用区域积分直方图,计算每个搜索窗口的全局直方图为对每个搜索窗口,用该搜索窗口四个角对应的区域积分直方图进行加减运算,得到该搜索窗口的直方图;所述利用区域积分直方图,计算每个子窗口的直方图为对每个子窗口,用该子窗口四个角对应的区域积分直方图进行加减运算,得到该子窗口的直方图。
8.如权利要求6所述的方法,其特征在于,所述通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图包括确定直方图组数;计算整个跟踪区域中每个像素点所属的直方图组别;统计整个跟踪区域中以预先设定的一角O作为起始点的所有区域Ci,j中属于每个直方图组别的区域积分像素个数;根据直方图组数和每个Ci,j中每个直方图组别的区域积分像素个数,得到每个区域积分直方图。
9.如权利要求8所述的方法,其特征在于,所述统计整个跟踪区域中所有Ci,j中属于每个直方图组别的区域积分像素个数具体为根据每个像素点所属的直方图组别信息,在整个跟踪区域O所属的一条边的方向上,对每个组别中的像素点个数进行加法递推计算,得到每个组别在该方向上的方向积分像素个数;对得到的每个组别的所述方向积分像素个数,在整个跟踪区域O所属的另一条边的方向上进行加法递推计算,得到每个Ci,j中每个组别的区域积分像素个数。
10.如权利要求1至9中任一项所述的方法,其特征在于,所述直方图包括颜色直方图,和/或,梯度方向直方图。
11.如权利要求10所述的方法,其特征在于,当直方图包括梯度方向直方图时,所述计算每个像素点所属的直方图组别包括按照直方图组数确定梯度方向的角度区间;计算每个像素点的梯度方向所属的角度区间,得到该像素点所属的直方图组别。
12.如权利要求11所述的方法,其特征在于,所述计算每个像素点的梯度方向所属的角度区间包括计算角度区间的边界点的正切值,得到正切值区间;计算每个像素点在坐标轴的y方向的梯度值与x方向的梯度值的比值,根据该比值所处的正切值区间,得到每个像素点的梯度方向所属的角度区间。
13.一种图像跟踪系统,其特征在于,该系统包括目标分类器跟踪单元,用于利用目标分类器对整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述,若不存在置信度满足跟踪要求的搜索窗口,则向直方图匹配跟踪单元发送跟踪失败的通知;若存在置信度满足跟踪要求的搜索窗口,则将所述置信度满足跟踪要求的搜索窗口输出;直方图匹配跟踪单元,用于根据来自目标分类器跟踪单元的跟踪失败的通知,计算每个搜索窗口的直方图,将计算得到的每个搜索窗口的直方图与目标的标准直方图进行匹配,根据匹配结果得到目标的跟踪位置。
14.如权利要求13所述的系统,其特征在于,该系统进一步包括直方图匹配单元,用于接收目标分类器跟踪单元输出的满足跟踪要求的搜索窗口,并计算所述搜索窗口的直方图,将计算的搜索窗口直方图与目标的标准直方图进行匹配,根据匹配结果,确定目标的跟踪位置。
15.如权利要求14所述的系统,其特征在于,该系统进一步包括直方图权重更新单元;则直方图匹配单元进一步用于将直方图匹配成功的搜索窗口提供给直方图权重更新单元;直方图权重更新单元,用于根据存储的预定个数的搜索窗口的全局直方图,计算每个特征通道中直方图各组别的权重,将计算的每个特征通道中各组别的权重提供给直方图匹配跟踪单元;直方图匹配跟踪单元进一步用于根据直方图权重更新单元提供的每个特征通道中各组别的权重,执行所述对搜索窗口的直方图与目标的标准直方图进行匹配的操作。
16.如权利要求13所述的系统,其特征在于,该系统进一步包括区域积分计算单元,用于通过积分运算,计算整个跟踪区域内以整个跟踪区域预先设定的一角为起始点的所有区域的直方图,得到区域积分直方图,并将得到的区域积分直方图提供给所述直方图匹配跟踪单元;所述直方图匹配跟踪单元,利用所述区域积分直方图,执行所述计算每个搜索窗口的直方图的操作。
17.如权利要求13至16中任一项所述的系统,其特征在于,所述直方图匹配跟踪单元包括搜索窗口全局直方图匹配模块,用于从跟踪区域中确定当前的搜索窗口,并计算当前搜索窗口的全局直方图,将计算得到的当前搜索窗口的全局直方图与目标的全局直方图进行匹配,将匹配结果提供给跟踪位置确定模块;跟踪位置确定模块,用于根据搜索窗口全局直方图匹配模块提供的所有搜索窗口的匹配结果,将匹配最好的搜索窗口区域作为目标的跟踪位置。
18.如权利要求17所述的系统,其特征在于,所述跟踪位置确定模块包括搜索窗口选取子模块,用于根据搜索窗口全局直方图匹配模块提供的所有搜索窗口的匹配结果,从中选取满足预设条件的多个搜索窗口,提供给所述搜索窗口分块直方图匹配子模块;搜索窗口分块直方图匹配子模块,用于从搜索窗口选取子模块提供的搜索窗口中确定当前的搜索窗口,对所确定的当前搜索窗口按照与目标对应的分块方式进行分块,得到子窗口,对每个子窗口,计算子窗口直方图,将所计算的子窗口直方图与目标对应块的分块直方图进行匹配,得到每个子窗口的分块匹配度,将所得到的当前搜索窗口的分块匹配度提供给搜索窗口综合匹配计算子模块;搜索窗口综合匹配计算子模块,用于根据所述当前搜索窗口的所有子窗口的分块匹配度,计算当前搜索窗口的综合匹配度,并将计算得到的当前搜索窗口的综合匹配度提供给跟踪位置确定子模块;跟踪位置确定子模块,用于根据搜索窗口综合匹配计算模块提供的所有搜索窗口的综合匹配度,将匹配最好的搜索窗口区域作为目标的跟踪位置。
全文摘要
本发明公开了一种图像跟踪方法,包括利用分类器对整个跟踪区域中目标可能出现的每个搜索窗口进行置信度描述;若不存在置信度满足跟踪要求的搜索窗口,则计算每个搜索窗口的直方图,将所计算的每个搜索窗口的直方图与目标的标准直方图进行匹配,得到每个搜索窗口的匹配结果,根据所述匹配结果确定目标的跟踪位置;若存在置信度满足跟踪要求的搜索窗口,则从所述置信度满足跟踪要求的搜索窗口中确定目标的跟踪位置。此外,本发明还公开了一种图像跟踪系统。本发明所公开的方法及系统,通过采用目标分类器与直方图匹配相结合的方法,进一步提高了跟踪实时性。
文档编号G06T7/20GK101038673SQ20071009897
公开日2007年9月19日 申请日期2007年4月30日 优先权日2007年4月30日
发明者曾志, 王耀辉 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1