本发明属于视觉跟踪领域,涉及一种基于多特征的自适应压缩跟踪算法。
背景技术:
目标跟踪是计算机视觉领域中一个非常热门的研究课题,原因在于它在车辆导航、交通监控和人机交互等方面具有重要的意义。尽管目标跟踪这个课题被研究了几十年,许许多多的跟踪算法被提出,但是它仍然是一个非常具有挑战性的问题。因为目标外观受各种因素的干扰,例如,光照变化、姿态变化、完全或部分遮挡以及突然的运动等等。因此,在上述因素的干扰下,开发一个高性能跟踪系统是一个具有挑战性的问题。
ct(real-timecompressivetracking)跟踪算法是由k.zhang等人提出的一种简单高效的实时压缩跟踪算法。但是,由于该跟踪算法采集到的特征是单一的,所以不能适应目标快速移动和环境变化等情况,继而造成目标漂移和跟踪不稳定等问题。另外,该跟踪算法中的分类器更新过程中引入了一个更新程度参数,但是这个参数在整个目标跟踪的过程中是提前给出的且是固定不变的,假设给定的值过大会使分类器更新过程无法适应目标外观的变化,给定的值过小则容易使分类器“过学习”。
那么,为了解决这些问题,本发明提出了一种基于多特征的自适应压缩跟踪算法。该算法采用多特征思想,用纹理特征和灰度特征共同描述目标,两者相互弥补,从而提升跟踪算法的准确性和稳定性。并且该算法中用了一种自适应更新的方法来动态地调整分类器的更新参数,使跟踪算法能够快速地捕获到要跟踪的目标
技术实现要素:
本发明提出了一种基于多特征的自适应压缩跟踪算法,目的在于克服上述现有技术的不足,得到一种鲁棒性高、准确率高的目标跟踪算法。
为了实现上述目的,本发明的技术方案为:
一种基于多特征的自适应压缩跟踪算法,包括以下步骤:
第一步,取第t帧图像o,将图像通过下式(1)
gray(o)=r(o)(1)
从rgb色彩空间映射到灰度值空间,其中r为图像o的r通道;
第二步,根据上一帧跟踪结果通过粒子滤波方法进行采样得到一个样本集即一个图像块集合dr={z|||i(z)-it-1||<r},其中,it-1为t-1帧中目标的位置,r为采样范围;
第三步,构建一个多尺度的图像特征向量来表示每一个样本。对于每一个样本
其中,i和j分别为矩形滤波器的宽和高。样本每经过一个滤波器滤波后得到一个列向量
第四步,获取样本的多特征。基于压缩感知理论,通过两个非常稀疏的随机测量矩阵
其中,s=m/4,p为出现1,0,-1的概率。然后基于
其中,i分别表示特征提取矩阵
第五步,通过下面步骤计算t-1帧跟踪目标的哈希指纹hat-1并保存;
step1:缩小t-1帧跟踪目标图像(rgb)的尺寸,快速去除高频和细节,只保留结构、明暗等基本信息的方法。即图片缩小到8×8的尺寸,总共64个像素。摒弃不同尺寸、比例带来的图片差异。
step2:简化色彩,将8×8的小图片转为64级灰度。
step3:计算灰度平均值,计算所有64个像素的灰度平均值。
step4:比较像素的灰度,将每个像素的灰度,与平均值进行比较,大于或等于平均值,记为1;小于平均值,记为0。
step5:计算哈希值,将上一步比较结果组合在一起构成一个64位的整数,即为该图像的指纹。组合的次序不重要,只要保证所有图片都采用同样次序即可。
第六步,通过下式(5)
朴素贝叶斯强分类器h(v1,v2)对特征向量v1(z)和v2(z)进行分类,其中,p(y=1)=p(y=0),且y∈{0,1}是一个二值变量,代表样本的标签,
第七步,计算当前帧跟踪目标的哈希指纹hat与上一帧跟踪目标的哈希指纹hat-1之间的汉明距离d,将d与高低阈值进行比较,自适应调整更新程度参数λ,其中h=10为高阈值,l=5为低阈值,更新程度参数λ按照下面的公式进行调整:
第八步,基于it,在当前帧中最后一次采样得到正负样本集dα={z|||i(z)-it||<α}和
第九步,利用上步获得的正负样本的特征和更新程度参数λ根据下式(7)(8)
对参数
第十步,输出第t帧跟踪到的目标位置it,自适应更新程度参数λ和更新后的分类器参数。
本发明的有益效果为:该方法区别于已有方法的特色在于,基于r1生成新的特征提取矩阵r2,在r2中正值和负值同时存在的概率为29%,只存在正值的概率为71%。这与r1中的分布特征正好相反,使得r1和r2的提取特征形成互补的2种类型特征:纹理特征和灰度特征。这两种特征在不同情况下的稳定性不同,可以互相补充,从而使跟踪算法更加稳定。然后为了解决分类器无法适应目标外观变化及过更新的问题,本发明提出了一种新的自适应的更新方法,就是根据当前跟踪结果目标模型的哈希指纹与上一帧目标模型的哈希指纹之间的汉明距离,在线实时调整分类器更新程度参数。该算法不仅在各种干扰因素下具有鲁棒性和准确性,而且处理图像的平均速度达到每秒19.8帧,基本达到实时性的要求。
附图说明
图1是本发明方法的流程示意图。
具体实施方式
下面结合附图对本发明的实施方式进行详细说明,并给出了详细的实施方式和具体的操作过程。
实验平台为win10,实验环境为matlabr2012a。实现本发明的具体步骤为:
第一步,取第t帧图像o,将图像通过下式(1)
gray(o)=r(o)(1)
从rgb色彩空间映射到灰度值空间,其中r为图像o的r通道;
第二步,根据上一帧跟踪结果通过粒子滤波技术进行采样得到一个样本集即一个图像块集合dr={z|||i(z)-it-1||<r},其中,it-1为t-1帧中目标的位置,r为采样范围;
第三步,构建一个高维多尺度的图像特征向量来表示每一个样本。对于每一个样本
其中,i和j分别为矩形滤波器的宽和高。样本每经过一个滤波器滤波后得到一个列向量
第四步,获取样本的多特征。基于压缩感知理论,通过两个非常稀疏的随机测量矩阵
其中,s=m/4,p为出现1,0,-1的概率。然后基于
其中,i分别表示特征提取矩阵
第五步,通过下面步骤计算t-1帧跟踪目标的哈希指纹hat-1并保存;
step1:缩小t-1帧跟踪目标图像(rgb)的尺寸,快速去除高频和细节,只保留结构、明暗等基本信息的方法。即图片缩小到8×8的尺寸,总共64个像素。摒弃不同尺寸、比例带来的图片差异。
step2:简化色彩,将8×8的小图片转为64级灰度。
step3:计算灰度平均值,计算所有64个像素的灰度平均值。
step4:比较像素的灰度,将每个像素的灰度,与平均值进行比较,大于或等于平均值,记为1;小于平均值,记为0。
step5:计算哈希值,将上一步比较结果组合在一起构成一个64位的整数,即为该图像的指纹。组合的次序不重要,只要保证所有图片都采用同样次序即可。
第六步,通过下式(5)
朴素贝叶斯强分类器h(v1,v2)对特征向量v1(z)和v2(z)进行分类,其中,p(y=1)=p(y=0),且y∈{0,1}是一个二值变量,代表样本的标签,
第七步,计算当前帧跟踪目标的哈希指纹hat与上一帧跟踪目标的哈希指纹hat-1之间的汉明距离d,将d与高低阈值进行比较,自适应调整更新程度参数λ,其中h=10为高阈值,l=5为低阈值,更新程度参数λ按照下面的公式进行调整:
第八步,基于it,在当前帧中最后一次采样得到正负样本集dα={z|||i(z)-it||<α}和
第九步,利用上步获得的正负样本的特征和更新程度参数λ根据下式(7)(8)
对参数
第十步,输出第t帧跟踪到的目标位置it,自适应更新程度参数λ和更新后的分类器参数。
通过计时器测得处理图像的平均速度达到每秒19.8帧,基本达到实时性的要求。