2024年3月19日发(作者:)

第13卷第2期 

电子元嚣件主用 

Vo1.13 No.2 

2011年2月 

Electronic Component&Device Applications 

Feb.2011 

doi:lO.3969 ̄.issn.1563-4795.2011.02.013 

基于OpenCV和VC6.0的数据 

监控系统设计 

李雅莉.周文杰 

(西北空管局,陕西 西安710082) 

摘 要:文中基ff'OpenCV ̄VC6.0设计了一个实时监控系统。同时 ̄OpenCV在VC6.0的环境 

下的配置及调用的相关函数也进行了详细论述。该方案对于监控系统下的图像处理的应用设 

计具有很高的实用价值。 

关键词:OpenCV;VC6.0;图像处理;监控系统 

0 引言 

中。设计中的存储单元用FPGA实现,ARM选用 

三星的¥3C2410芯片来实现,通过以太网将数据 

近几年来,计算机监控系统已广泛应用于交 

传输到计算机中。 

通、医疗、航天、军事等诸多领域,而其中的实 

时的图像处理、计算机视觉程序起着举足轻重的 

2软件实现 

作用,OpenCV f Open Source Computer Vision Li. 

brary)作为Intel开源计算机视觉库,由一系列C 

设计中的嵌入式系统采用Linux操作系统, 

函数和少量的C++类构成,是可实现图像处理和 

内核采用2.6.26版本。计算机显示图像程序利用 

计算机视觉方面的很多通用算法。OpenCV拥有 

VC6.0实现,与ARM通过网络来通信,采用socket 

包括300多个C函数的、跨平台的中、高层API, 

传输方式。其核心部分为: 

它不依赖任何其它外部库,是开放源代码,对非 

在头文件中加入: 

商业应用和商业应用都是免费的。具有基于Intel 

#include<cxcore.h> 

处理器指令集开发的优化代码.统一的结构和功 

#include<cv.h> 

能定义,强大的图像和矩阵运算能力以及方便灵 

#include<highgui.h> 

活的用户接口。同时,OpenCV可以支持Windows 

#include<math.h> 

和Linux平台。 

图像生成部分代码: 

plmg

_

tem=cvCreatelmage(cvSize(width, 

1 硬件构成 

height),8,3);,/访问图像像素 

pGray=cvCreateImage(cvSize(width,height), 

图1所示是一个实时监控系统的结构框图。 

8,1); 

此系统首先通过Camera Link接口来接收相机传输 

cvMerge(pGray,pGray,pGray ,NULL, 

的信息,并在解码后将数据保存在存储单元中, 

plmg

_

tem); 

然后通过ARM总线接口将数据发送到远程计算机 

CvvImage Img; 

相机}一—叫存储单元卜-—叫ARM¥3C2410卜_—叫计算机 

Img.Create(256,1024,8,3); 

图1 系统的硬件结构图 

Img.CopyOf(plmg tem,3); 

Img.DrawToHDC(dc.m_hDC,rect); 

收稿日期:2010—11-15 

最后要将开辟的资源释放掉。 

44 电子元嚣件主用2011.2 WWW.ecd ̄cn 

第13卷第2期 

2011年2月 避钸 Vo1.13 No.2 

Feb.2011 

3 Opencv安装及配置 

第一步,从http://www.opencv.org.cn下载 

OpenCV1.0安装程序。在此过程要注意安装时选 

择” 将\OpenCVkbin加入系统变量” 

(Add\OpenCV ̄bin to the systerm PATH)。 

第二步.检查C:kProgram Files\OpenCVkbin是 

否已经被加入到环境变量PATH,如果没有,需 

加入。加入后需要注销当前Windows用户(或重 

启1后再重新登陆才能生效。 

4 酉己置Visual C++6.0 

4.1全局设置 

菜单Tools一>Options一>Directories:先设置lib 

路径,选择Library files,在下方填入路径:C: 

Wrogram Files\OpenCV\1ib然后选择include files, 

其配置图如图2所示。 

C:kProgram Files\ODenCV\cxcore\include 

C:\Program Files\OpenCV\cv\include 

C:kProgram Files\0penCV\cvaux\include 

C:Wrogram Files\OpenCVkmlkinclude 

C:Wrogram Files\OpenCV\otherlibs ̄highgui 

C:LProgram Files\OpenCV\otherlibs\cvcamkin— 

clude 

图2全局配置对话框图 

4.2项目设置 

每创建一个将要使用OpenCV的VC Pr ̄eet. 

都需要给它指定需要的lib。其菜单为:Project一> 

Settings,然后将Setting for ̄_为All Configurations, 

选择右边的link标签。最后在Object/library mod. 

ules附 ̄H3zcxcore.1ib CV.1ib m1.1ib evaHx.1ib highgui. 

图3 项目设置对话框图 

lib cvcam.1ib,具体设置如图3所示。 

5 结束语 

该监控系统的服务器为ARM¥3C2410处理 

器,客户端为PC机,采用Windows XP操作系统, 

双核处理器,主频为2.4GHz,内存为2G,硬盘为 

320G,连接方式为千兆以太网,采用标准5类双 

绞线连接。 

其数据来源为外部存储器fFPGA1的图像数 

据,经过千兆网络传输,将数据保存到上位机的 

文件中。图像为黑白色,格式为.raw,分辨率为 

1024"1280。 

测试传输时间为lmin,传输数据容量为 

1.76GB,经过计算,传输速率约为240Mb/s。其 

传输图像的一帧如图4所示。数据显示。该设计 

符合要求,传输也取得了良好的效果,因此,这 

种数据监控系统对于监控系统下的图像处理具有 

很高的应用参考价值。 

图4测试图像 

参考文献 

【1】 

吴晓蓉.互连网技术在嵌入式系统中的实现[J].计算 

机工程.2001.4:1-4 

【2】 

周文杰.嵌入式千兆网的设计[D】.西安电子科技大学 

硕士论文. 

WWW.ecda.cn 2011.2电子元器件焘用45