基于OpenCV的运动目标跟踪系统的实现徐俊斌SA11009039摘要:运动目标跟踪在军事制导、视觉导航、机器人、智能交通、公共安全等领域有着广泛的应用
例如在车辆违章抓拍系统中,车辆的跟踪就是必不可少的
在入侵检测中,人、动物、车辆等大型运动目标的检测与跟踪也是整个系统运行的关键所在
因此在计算机视觉领域中目标跟踪是一个很重要的分支
传统的的运动目标检测主要有三种方法:背景图像差分法,时态差分法和光流法
然而这几种算法均不能很好地解决目标存在旋转或部分遮挡等复杂情况下的跟踪难题
本文基于OpenCV设计出改进的运动目标检测与跟踪算法---CAMSHIFT算法来实现运动目标的跟踪,并在VC++编译环境下,利用USB摄像头作为视频采集器,通过观察实验结果可以看出,本文的运动目标检测算法能够正确地检测出视频图像中的运动目标,而且在检测性能上优于传统的检测算法
关键词:目标跟踪;OpenCV;CAMSHIFT算法;VC++0引言目标跟踪是计算机视觉的一个重要分支,日益广泛应用于科学技术、国防安全、航空、医药卫生以及国民经济等领域
实现目标跟踪的关键在于完整地分割目标、合理提取特征和准确地识别目标,同时,要考虑算法实现的时间,以保证实时性
当视频图像中被跟踪目标发生姿态变化,存在旋转或部分遮挡时,简单的灰度模板或者Hausdorff距离匹配一般很难达到实时跟踪目标的要求,出现误匹配或者跟踪丢失的情况,而且跟踪效果较低
Bradski提出的CAMSHIFT(ContinuouslyAdaptiveMeanShift)算法是以颜色直方图为目标模式的目标跟踪算法,可以有效地解决目标变形和部分遮挡的问题,而且运算效率很高
该文首先详细介绍CAMSHIFT算法,并结合Intel公司开发的开源OpenCV计算机视觉库,实现了运动目标跟踪,并验证了CAMSHIFT算法的有效性以及展现