1.2 国内外研究现状与发展
1.3 本文主要研究内容
本次任务主要是利用VS2013和OpenCV实现编程任务,分别完成光流法,帧差法,背景差分法的编程,目的是能够成功识别视频中的前景物体。由于本课题偏向研究性学习,所以论文中会牵扯到大量的相关概念的介绍。分别介绍光流法,帧差法,背景差分法的原理,分别介绍它们下面的一些具体流派,并给出算法的公式。
1.3.1 课题基本内容
运动物体检测的物体是在给定的二张图像中识别运动物体。此外,这项研究也对物体识别做出了贡献。研究的主要物体是识别同一物体的像素,或者说,研究是依赖于像素进行的。目前的研究多数基于以下假设:
一个固定的相机,
稳定的光线,没有闪烁,
高对比度的背景,
高摄像机帧速率和分辨率。
本课题的主要内容是运动物体的检测和跟踪,分别要使用以下三种算法进行实现:光流法、背景差分法、帧差法。
本次实验流程如图1.1所示:
流程图
计算机视觉是一个重要的,在过去的几年中已经获得了很多的重要性研究的领域,是从一个视频获得对人类活动的理解[1]。日益增长的人类运动分析的兴趣是被最近的计算机视觉中可用的低成本硬件的进步激发的,如视频摄像机和各种新的有前途的应用程序,如个人身份识别与视觉监控。
计算机视觉系统一定包括以下的三个基本功能:图像获取:用各种不同的接收端(比如摄像机,照相机,雷达等)获取一系列 的二维或是三维的图像序列;预处理:用某些方法将图像进行一些处理(比如平滑去噪,提高对比度等),以便满足后继处理要求;特征提取:用计算机提取图像信息,使每个像素都代表一个特征;图像分割:把图像进行分割,并提取出有价值的信息[2]。
本程序将不涉及摄影硬件方面的连接,因此本程序的大体功能为:
视频输入。
预处理:对图像进行平滑去躁处理
物体检测:使用不同的运动物体检测算法提取运动物体,并用适当的方式进行标记,如果需要的话,会对图像进行一些增强处理。
1.3.2 课题重点
本课题的重点部分就是如何用实现光流法,帧差法,背景差分法的编程工作。本课题的算法本身是成熟的,如何检测,检测过程有哪几个步骤也是已知的,唯一的问题就是怎么把预处理,物体检测,之后的处理全部融合到一套程序里面去。这部分可以通过参考在网上或者书上找到源代码解决,网上的源代码一般不够规范,缺少说明文字,但是一般可以直接运行,书上的代码就要规范得多,而且会附有对参数的说明。我在校图书馆发现的两本书`优尔~文!论$文^网www.youerw.com,《Visual C++数字图像处理技术详解》和《数字图像处理与机器视觉——Visual C++与Matlab实现》对我的课题内容有很大的帮助,两本书比较具体地讲解了运动物体检测的发展背景和实际应用。书中分章节分别介绍了现在比较热门的图像处理方法,解释原理和算法的同时,附带一段相当规范,可以直接使用的程序,程序内各函数和参数的功能也都附有非常详细地介绍。书后还集中介绍了OpenCV和Matlab的基础函数介绍,对读懂程序有很大的裨益。
1.3.3 课题难点
本课题的难点,应该是图像的预处理运动物体的和提取上,这些内容涉及大量算法。本程序的功能比较单一,难点主要在各个功能的实现上面,怎么调整参数使效果达到最佳是最需要考虑的问题。再加上这些传统算法在环境上有着诸多限制,所以视频的选择也不能过于极端,本次实验,我打算在光照恒定的条件下对三种算法的其他性能进行对比研究。其中摄像器材的选择比较有限,打算直接手持手机进行拍摄,拍摄过程中可能存在摇晃的问题,不过我打算将这个作为观察点之一。 OpenCV车辆检测系统中传统算法的效果比较研究(3):http://www.youerw.com/jisuanji/lunwen_44353.html