基于OpenCV交通视频感知处理程序框架.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于OpenCV交通视频感知处理程序框架

基于OpenCV交通视频感知处理程序框架摘 要:为了实现交通视频信息的感知和提取,采用基于MFC并使用OpenCV进行视频处理的可视化编程方法,通过构造一个包含常见操作的C++类,同时以OpenCV中的相关函数为接口,建立了一个视频处理程序架构,来实现MFC应用程序对OpenCV算法的融合,以智能地感知和处理交通视频中的信息。 关键词:MFC;OpenCV;视频处理;信息感知 中图分类号:TP391 文献标识码:A 文章编号:2095-1302(2012)09-0034-03 Traffic video perception framework based on OpenCV LI Zi-heng1, BAI Yun-feng2 (1. School of Electronic and Control Engineering, Chang’an University, Xi’an 710064, China; 2. Henan Province Cayman Aluminium (Sanmenxia) Co., Ltd., Sanmenxia 472100, China) Abstract: In order to achieve the perception and retrieval of traffic video information, the paper adopts the combining method of MFC and OpenCV for a visual programming for video processing. Taking functions in OpenCV as an interface, a video processing framework is built by constructing operations in C++ class to integrate MFC application with OpenCV algorithms and to intelligently perceive and process the traffic information. Keywords: MFC; OpenCV; video processing; information perception 0 引 言 计算机视觉技术是通过对常见的图像、视频进行操作来提取其中信息的一种技术。OpenCV是Intel公司开发的一款开源图像视频处理库,使用OpenCV中封装好的库函数,可以很方便地对视频中的图像进行提取、保存、变换等形态学操作,这种技术在很大程度上简化了开发的进程[2]。 由于OpenCV只提供相关处理的算法,而程序操作界面略显不足,所开发的程序进行参数设置不方便,因此,在实际应用层面,开发者通常将OpenCV函数库与MFC(Microsoft Foundation Classes是微软基础类库,可提供Windows编程的框架)相结合进行开发[3]。这种使用MFC构建Win32程序框架,并使用OpenCV构建算法的各取所长方法,对于软件的实用性和可操作性具有重大意义。 本文总结出了一套将OpenCV算法应用于Win32对话框程序中的标准方法,该方法可以通过定义C++类创建对象,来轻松实现对公路交通视频中交通参数的提取。 1 视频车辆检测器的基本功能 本程序以MFC+OpenCV的方式进行开发,并以实用为准则,通过可视化的界面和按钮的方式来实现原始视频的播放,视频信息分析,自定义观测点和车流量计数周期,交通参数的测量,统计结果的存储和重现等功能。其软件各个功能的关系如图1所示。 2 视频车辆检测器的技术实现 要实现上述系统,主要有两方面问题:一是如何构建视频对象,并通过操作视频对象来对视频信息进行提取;二是如何对视频进行操作来实现上述的各个功能。 2.1 创建视频对象 使用创建对象的方式操作视频时,首先要定义视频的类。在视频处理中,通常先提取出一帧一帧的图像,然后对所提取的图像进行处理,再将其保存或者播放至应用程序的控件中[4]。跟据此原理,可定义一个视频的类,类中包含上述过程所涉及的属性和操作方法[5],其代码及注释如下(代码中视频类的名称为CVideo): class CVideo { public: CVideo(); //构造函数 virtual ~CVideo(); //析构函数 //以下为数据成员 CvCapture* pCapture; //OpenCV用来读取视频的结构体,存储待读取的视频 IplImage* pFrame; //OpenCV用来存储图像的

文档评论(0)

linsspace + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档