基于Meanshift优化粒子滤波算法的低空平台下车辆跟踪
2012-12-04沈敏洁
史 红, 刘 涛, 李 鸣, 沈敏洁
(1. 吉林师范大学 信息技术学院, 吉林 四平 136000; 2. 吉林大学 计算机科学与技术学院, 长春 130012; 3. 吉林省经济信息中心, 长春 130061; 4. 国家专利局专利审查协作北京中心, 北京 100083)
低空平台下的车辆检测和跟踪, 对提取实时路况信息有重要作用. 由于低空平台的摄像头架设角度较高, 视频中目标车辆较小, 因此在检测算法提取出道路车辆后, 如何稳健地跟踪这些车辆是一个较困难的任务. Wu等[1]对当前交通路口车辆目标的检测做了较全面的分析, 对多种检测算法从运行速度、 内存占用、 检测精度和视觉效果等方面进行了比较, 并指出了各自的优缺点.
目前已有较多针对低空平台的跟踪方法, 如基于最优化迭代查找的Meanshift算法[2-7]和基于目标状态估计的粒子滤波算法[8-11]. Meanshift算法较稳定, 运算速度快, 一般情况下能实现稳健地跟踪, 但对小目标的跟踪不理想, 且迭代过程容易陷入局部最优解. 粒子滤波算法的跟踪鲁棒性较强, 适用于低空平台下的小目标车辆跟踪, 但算法的复杂度较高, 很难满足多目标下的实时跟踪. 因此, 本文将Meanshift算法与粒子滤波算法相结合, 在大幅度减小粒子数目的同时实现稳健跟踪, 算法的运行速度也有了很大改善.
1 Meanshift算法和粒子滤波算法
1.1 Meanshift算法
Meanshift算法是一种基于核密度估计的无参估计迭代算法, 迭代的每步都使得一个点向其概率密度更大的方向移动, 不断循环, 直至收敛到概率密度分布的最大值. 假设目标矩形窗口中心位置为y0, 其迭代移动至新中心位置y1的迭代公式为
(1)
其中:xi表示以y0为中心的目标矩形区域的第i个像素点坐标;N表示目标区域中的像素点数;wi表示相应点的权值;h表示核窗口带宽. 本文取g(x)=-k′(x), 其中k(x)是本文选定的核函数. Meanshift 算法迭代过程是原目标位置不断向新位置靠近的过程. 若干次迭代后, 收敛到目标的最新位置, 从而实现跟踪.
1.2 粒子滤波算法
2 基于Meanshift粒子滤波的低空平台车辆跟踪
低空平台下的城市交通情况较复杂, 特别是城市的交通路口, 来往车辆较多, 车流量很大, 车辆的堵塞现象也较常见, 是交通管理部门需要主要监控和管理之处. 由于低空平台的高度相对较高, 所以车辆的遮挡情况与阴影对目标的影响较小. 但目标车辆较小, 因此在这种情况下的检测和跟踪算法的准确度要求更高.
2.1 基于颜色特征的Meanshift粒子滤波算法
粒子滤波已经被证明能很好地应用于非线性、 非Gauss的估计中. 而颜色作为目标跟踪的首要特征, 在部分遮挡、 旋转、 尺度变换和光照变化下都较稳健, 能很好地标示目标物体. 所以本文选择目标的颜色分布作为跟踪目标的特征. 使用基于彩色特征的粒子滤波实现跟踪, 并在跟踪过程中加入Meanshift粒子优化减少跟踪单个目标所需的粒子数.
2.1.1 基于颜色的跟踪目标表示 当选择了需要跟踪的目标车辆区域后, 需对目标区域做彩色直方图. 这里对彩色图像的RGB三通道图像分别做直方图, 每个通道分为8个区间, 总区域分为512个数组指针, 使用这个512维的直方图即可表示目标. 当前目标区域的空间核加权特征直方图记为p(y)={pu(y)}u=1,2,…,m, 其中
(2)
(3)
2.1.2 候选区域的标示 候选区域的标示方法即以每个粒子为中心区域的空间核加权特征直方图q(y0), 该特征直方图表示方法如式(2)目标区域的表示方法, 仍按区域的色彩直方图进行表示. 本文引入巴氏系数[12]度量候选区域与目标区域的匹配程度:
(4)
计算观测值的概率密度函数为
(5)
因此, 粒子的权值更新为
(6)
利用加权准则确定目标的最终位置为
(7)
2.2 算法步骤
本文提出的基于Meanshift优化的粒子滤波算法相对原有的经典跟踪算法在跟踪精度和运行速度方面都有较明显的优势, 算法步骤如下.
1) 初始化: 选择跟踪区域, 初始化粒子滤波. 初始粒子数设为40, 提取目标粒子模板, 产生40个粒子的初始状态, 并加入Gauss随机噪声. 由于光照和阴影对检测算法的干扰, 使检测部分提供给跟踪目标车辆的矩形框通常都比目标区域的车辆轮廓大很多, 如果直接对这些目标区域初始化目标直方图模板进行跟踪, 结果可能不准确. 通过大量的实验, 统计出检测部分的目标区域大小和实际车辆的大小比例为1 ∶0.8, 所以, 对检测的目标区域均先进行缩放, 再将其用于下一步的跟踪, 这样跟踪的效果较好.
2) 选择初始跟踪区域后, 进行粒子滤波的跟踪.
③ Meanshift粒子优化: 使用式(1)进行一次迭代优化粒子;
④ 观测: 根据式(7)重新计算粒子的权值.
3) 输出目标信息: 在原始视频上输出目标的当前(位置)状态:
(8)
4) 更新粒子状态: 使用
(9)
更新目标模板模型.
3 实验结果及分析
在Visual Studio 2005下结合OpenCV实现视频的采集和图像算法的处理. 运行环境为Intel(R) Core(TM)2 Duo CPU E7200 2.53 GHz, 内存为2 G的PC机. 为了单独测试跟踪效果, 下列实验只针对单目标的跟踪. 选择的视频分辨率为326×246, 视频长度为223, 帧率为25帧/s. 图1为单目标视频序列跟踪结果, 其中第一行为传统粒子滤波算法, 第二行为基于Meanshift优化的粒子滤波算法, 图中分别为视频序列的第71,97,112,131帧.
图1 单目标视频序列跟踪结果Fig.1 Tracking results of a single target
由图1可见, 基于Meanshift优化的粒子滤波算法相对于传统粒子滤波算法跟踪效果更理想, 但经测试前者的运行速度达到帧平均处理时间15.75 ms, 后者的帧平均处理时间为28.24 ms, 速度上提高了近一倍, 这能够为低空平台下的车辆跟踪提供实时的跟踪效率.
为了对道路车辆监控系统进行验证, 本文在两个低空平台下的城市交通路口视频上测试算法性能. 实验选取城市交通路口的标准视频1的视频分辨率为768×576, 总帧数为1 540帧. 图2为监控系统在视频序列1上的实验结果. 由图2可见, 视频序列中检测到的车辆都可以进行稳健的跟踪, 特别是在第304~305帧中出现的车辆遮挡情况下也能实现稳健地跟踪. 视频序列2为某高速公路的车辆视频序列, 视频分辨率为320×240, 共342帧. 图3为监控系统在视频序列2上的实验结果. 由图3可见, 本文算法对于高速公路上的车辆跟踪较准确, 视频序列中的车辆在全过程中都被稳健地跟踪.
图2 低空平台下某交通路口的车辆视频序列跟踪结果Fig.2 Tracking results of vehicles at traffic crossing in the low-altitude platform by the proposed method
图3 某高速公路的车辆视频序列跟踪结果Fig.3 Tracking results of vehicles on highway by the proposed method
综上所述, 本文提出一种融合Meanshift和粒子滤波算法的适合低空平台下的车辆跟踪算法. 该算法用颜色表示目标, 通过Meanshift算法对粒子滤波进行迭代优化, 从而减少了稳健跟踪一个目标所需的粒子数, 提高了算法的运行效率, 使得在小目标和多目标的情况下也能稳健跟踪. 虽然基于Meanshift 迭代优化的粒子滤波在很大程度上改善了跟踪算法的速度, 但在目标较多的情况下算法复杂度仍然较高, 所以研究低空平台下的多目标快速跟踪, 才能使监控的时效性更好.
[1] WU You-fu, SHEN Jun, DAI Mo. Traffic Object Detections and Its Action Analysis [J]. Pattern Recognition Letters, 2005, 26(13): 1963-1984.
[2] Comaniciu D, Meer P. Mean Shift Analysis and Applications [C]//7th IEEE International Conference on Computer Vision(ICCV’99). Washington DC: IEEE Computer Society, 1999: 1197-1203.
[3] Comaniciu D, Ramesh V, Meer P. Real-Time Tracking of Non-rigid Objects Using Mean Shift [C]//IEEE Conference on Computer Vision and Pattern Recognition(CVPR2000). Washington DC: IEEE Computer Society, 2000: 2142.
[4] Comaniciu D, Meer P. Mean Shift: A Robust Approach toward Feature Space Analysis [J]. IEEE Transaction on Pattern Analysis and Machine Intelligence, 2002, 24(5): 603-619.
[5] Comaniciu D, Ramesh V, Meer P. Kernel-Based Object Tracking [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2003, 25(5): 564-577.
[6] Comaniciu D, Ramesh V. Mean Shift and Optimal Prediction for Efficient Object Tracking [C]//2000 International Conference on Image Processing. Washington DC: IEEE Computer Society, 2000: 70-73.
[7] Irsard M, Blake A. Condensation-Conditional Density Propagation for Visual Tracking [J]. Int J Comput Vision, 1998, 29(1): 5-28.
[8] Nummiaro K, Koller-Meier E, Gool L, Van. A Color-Based Particle Filter [C]//First International Workshop on Generative-Model-Based Vision, in Conjunction with ECCV’02. Copenhagen, Denmark: [s.n.], 2002: 53-60.
[9] Nummiaro K, Koller-Meier E, Gool L, Van. Object Tracking with an Adaptive Color-Based Particle Filter [C]//Proceedings of the 24th DAGM Symposium for Pattern Recognition. London: Springer-Verlag, 2002: 353-360.
[10] Nummiaro K, Koller-Meier E, Gool L, Van. An Adaptive Color-Based Particle Filter [J]. Image and Vision Computing, 2002, 21(1): 99-110.
[11] Tanizaki H. Non-Gaussian State-Space Modeling of Nonstationary Time Series [J]. J Amer Statist Assoc, 1987, 82: 1032-1063.
[12] Bhattacharayya A. On a Measure of Divergence between Two Statistical Populations Defined by Their Probability Distributions [J]. Bulletin of the Calcutta Mathematical Society, 1943, 35: 99-109.