论文部分内容阅读
在计算机视觉领域,行人检测受到越来越多的科研人员的关注。概括地讲,行人检测是指对由摄像头实时获取的视频图像序列进行自动分析,判断其中是否存在行人,若存在,则将其用某种方式标注出来,这样就可以提示人们进行下一步的操作。行人检测有着非常广泛的应用背景,比如常见的汽车安全辅助系统,利用行人检测系统检测出行人,提前通知车主有危险并作出下一步的反应;另外几种常见的应用就是城市道路的智能交通监控系统、酒店大厅的监控系统等等。行人检测是一个比较有难度的研究方向,原因有以下几点:背景环境的多样性、光照的多样性、行人可能部分重叠在一起、行人可能处于不同的姿势、人的大小、肤色、服饰的多样性等等。所有以上这些因素给行人检测的发展带来了极大的挑战。不过经过多年的发展,行人检测取得了长足的进步,很多研究学者提出了越来越先进的算法来提高检测的速度和精度。本文并没有主要从算法的角度来研究行人检测以提升其检测速度、精度等,而是利用一系列工具构造了一个完整的行人检测系统。本文提取样本图像的Haar特征,运用AdaBoost算法来训练分类器,将此分类器应用到行人检测系统中,以此来区分视频中的行人和非行人。本文主要的研究内容有:1,利用MFC和OpenCV工具在VC6.0的环境下搭建起整个系统的软件界面,支持本地AVI视频文件和摄像头捕捉到的视频输入,提供打开、播放、暂停、检测、退出等等按钮的功能。2,离线训练分类器。提取样本图像的Haar特征,利用AdaBoost算法训练正样本和负样本,得到两个分类器,分别用于检测正面背面行人和侧面行人。3,将训练得到的双分类器应用到行人检测系统中,通过输入不同的视频源,以检测此系统的实际效果。通过实验可以看出,此基于OpenCV开发的行人检测系统能较好的区分出行人和非行人,可以把这个系统直接应用到对精度要求不是很高的应用场合中,比如酒店大厅里的监控系统等等。