PAGE
PAGE #
PAGE
PAGE #
静止背景下的多目标追踪
随着计算机技术以及智能汽车行业的发展,多目标的检测与追踪的实用性与
研究价值逐渐提高。在计算机视觉的三层结构中,目标跟踪属于中间层,是其他 高层任务,例如动作识别以及行为分析等的基础。其主要应用可包括视频监控, 检测异常行为人机交互,对复杂场景中目标交互的识别与处理, 以及虚拟现实及 医学图像。
目标跟踪又包括单目标跟踪和多目标跟踪。单目标跟踪可以通过目标的表观
建模或者运动建模,以处理光照、形变、遮挡等问题,而多目标跟踪问题则更加 复杂,除了单目标跟踪回遇到的问题外, 还需要目标间的关联匹配。另外在多目 标跟踪任务中经常会碰到 目标的频繁遮挡、轨迹开始终止时刻未知、目标太小、 表观相似、目标间交互、低帧率等等问题。
静止背景下的多目标追踪可分为两步来实现,第一步是在视频文件的每帧中
检测出移动的目标,第二步是将检测到的目标与跟踪轨迹实时匹配。在本次实验
中,利用混合高斯模型进行背景减除, 使用形态学操作消除噪声,通过卡尔曼滤 波预测目标位置,最后利用匈牙利算法进行匹配,实现静止背景下的多目标追踪。
1实验原理
1.1混合高斯模型
单高斯模型是利用高维高斯分布概率来进行模式分类:
X11
N(二)exp[-;(x- y(x」)]
C.2 十 |2
其中■用训练样本均值代替,二用样本方差代替,X为d维的样本向量。通过高 斯概率公式就可以得出类别 C属于正(负)样本的概率。
而混合高斯模型就是数据从多个高斯分布中产生,每个 GMM由k个单高斯 分布线性叠加而成。相当于对各个高斯分布进行加权, 权系数越大,那么这个数 据属于这个高斯分布的可能性越大。
P(x) = = p(k)*p(x | k)
利用混合高斯模型(GMM)可以进行背景减除,将前后景分离,得到移动的目 标。对每个像素点建立由k个单高斯模型线性叠加而成的模型, 在这些混合高斯 背景模型中,认为像素之间的颜色信息互不相关, 对各像素点的处理都是相互独 立的。单个像素点在t时刻服从混合高斯分布概率密度函数:
k
p(Xt) = W W「仪」山5)
i =1
其中k为分布模式总数,区厂吕,』为t时刻第i个高斯分布,%t为其均值,’t 为其协方差矩阵。
在获得新一帧图像后更新混合高斯模型。 用图像中的每个像素点与混合高斯 模型匹配,如果成功则判定该点为背景点,否则为前景点。当背景更新完成后,高 斯模型与背景相关程度越大,标准差就越小,权值越大。按照权值与标准差的比 值从大到小进行排序,取前B个模型作为背景。
/ b
B = arg
min
Z Wk >T
2 丿丿
1.2卡尔曼滤波
卡尔曼滤波是一种利用线性系统状态方程,通过系统输入输出观测数据,对 系统状态进行最优估计的算法。其核心思想是,根据当前的测量值、上一时间的 预测值以及误差,计算得到当前值,并可以持续预测下一时间的值。
试验中利用卡尔曼滤波计算并预测每个轨迹在下一帧中的位置,建立帧间轨
迹的关系。卡尔曼滤波将跟踪分为5种状态:新目标出现、目标匹配、目标遮挡、 目标分离以及目标消失。其状态方程如下所示:
X(k 1) = A(k 1,k)X(k) c(k)
X(k)珂x(k), y(k), w(k), h(k), v(k)]
其中x,y,w,h分别表示目标外接矩形的横纵坐标以及长、宽,c(k), v(k)为不相关
的高斯白噪声。
定义其观测方程为Z(k)二H(k) X(k) v(k) o
定义好了观测方程与状态方程之后就可以用卡尔曼滤波器实现运动目标的
跟踪,步骤如下:
计算运动目标的特征信息(运动质心,以及外接矩形)。
用得到的特征信息初始化卡尔曼滤波器。
用卡尔曼滤波器对下一帧中对应的目标区域进行预测,当下一帧到来时,在 预测区域内进行目标匹配。
如果匹配成功,则更新卡尔曼滤波器。
1.3匈牙利匹配算法
匈牙利匹配算法是一种利用增广路径求取二分图最大匹配的算法。匈牙利树
一般由宽度优先搜索(BFS构成。从一个未匹配点出发运行 BFS且必须走交 替路,直至不能再扩展为止。交替路指的是,从一个未匹配点出发,依次经过非 匹配边、匹配边…循环往复,形成的路径称为交替路。
示意图如图1所示:
图1匈牙利树匹配
匈牙利算法的要点如下:
1)从左边第一个顶点开始,挑选未匹配点进行搜索,寻找增广路。
2) 如果经过一个未匹配点,则寻找成功。更新路径信息,匹配变数+1,停 止搜索。
3)如果一直没有找到增广路,则不再从这个点开始搜索。
4) 找到增广路之后需要沿着路径更新匹配,通过prev数组来记录路径上的 点。
在实验中,用匈牙利算法将新一帧图片中检测到的运动物体匹配到对应的轨 迹。匹配的过程是通过最小化卡尔