1_基于arm的视频采集与传输_第1页
1_基于arm的视频采集与传输_第2页
1_基于arm的视频采集与传输_第3页
1_基于arm的视频采集与传输_第4页
1_基于arm的视频采集与传输_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于ARM的视频采集与传输系统严碧波,张正炳(长江大学电信学院,湖北 荆州 434023)【减小字体】 【增大字体】 摘要:文章介绍了一种基于嵌入式Linux的网络视频监控系统实现方案,系统以嵌入式Linux和嵌入式微控制器S3C2410为核心平台,通过嵌入式平台建立的Web服务器将USB摄像头采集来的视频信号,经过网络传输,完成对测控现场和测试设备的网络视频监控任务。关键词:ARM;视频采集系统;视频传输系统;S3C2410;网络视频监控系统中图分类号:TP368文献标识码:A文章编号:1009-2374(2009)04-0052-03监控系统作为现代企业不可缺少的重要组成部分,已广泛应用于

2、交通、医院、银行、家居、视频会议和视频点播、证券、远程教育等诸多领域,可以有效地避免安全隐患的发生,保障员工人身安全和企业资产不受损失,实现无人值守。早期的模拟监控系统不能联网,只能与监控中心进行点对点通信,近年来,随着网络带宽、微处理器处理能力的迅速提高以及各种实用视频信息处理技术的出现,视频监控产品逐步脱离了传统的模拟视频监控和基于PC的视频监控,向小型化、数字化、网络化和终端智能化的嵌入式系统发展。目前多数嵌入式视频监控终端采用专用处理器或RISC嵌入式处理器与DSP处理器相结合的方法来实现,这样的产品通常可以同时完成多路视频处理,但其结构复杂,开发周期长,成本高,多用于监控要求较高的场

3、所。随着通用嵌入式芯片ARM的广泛使用,采用低成本的USB摄像头作为视频采集的工具,应用嵌入式微处理器S3C2410完成系统控制、视频数据采集、视频图像压缩与传输等功能。同时该处理器内嵌NAND控制器,并具有直接从NAND Flash启动系统的优越性能。系统还采用了免费、开源的Linux操作系统完成软件和硬件的管理,这些大大降低了产品的成本。利用TCP/IP协议实现网络传输,使视频的传输可以充分利用广泛使用的局域网、广域网和Internet网。一、视频监控系统总体设计方案系统的主体设计思想是将视频前端和嵌入式Web服务器整合在一起,摄像头通过USB接口和嵌入式系统板的USB HOST相连,摄像

4、头采集来的视频信号经过压缩后,通过内部总线传送到内置的Web服务器,客户端采用浏览器/服务器结构(即B/S结构),可以通过IE浏览器访问视频Web服务器,以便查看所监控的视频画面,而且,用户还可以控制平台对镜头的动作或对系统进行配置控制。嵌入式视频监控系统是由视频监控终端和视频监控中心组成,终端使用嵌入式系统加上USB摄像头,在Linux操作系统上运行USB摄像头的驱动和相应的视频采集处理传输程序,得到视频监控画面,并画面通过网络传输,监控中心运行监控软件端,通过Internet浏览器来浏览终端送来的监控画面,系统组成框图如图1所示:图1 嵌入式视频监控系统组成框图 从图中可以看出,监控中心部

5、分可以直接采用IE浏览器,不需要在PC机上运行其他的软件,主要设计工作是嵌入式监控终端的设计。视频监控终端主要有两个部分组成,硬件部分包括摄像头和开发平台的选择;软件部分包括系统级软件(Boot Loader,嵌入式操作系统,USB驱动程序)与用户级软件(应用程序)。二、监控终端硬件的设计由于嵌入式系统具有软硬件可裁减特征,因此在嵌入式系统中硬件系统的确定,直接决定着软件的编写。本设计采用三星公司的S3C2410嵌入式芯片为核心,其主要硬件电路包括系统存储电路,外围接口电路,电源及复位电路等几个部分,系统硬件总体结构如图2所示:图2 系统硬件总体结构图中的各硬件模块的功能可以从图中很方便地了解

6、,这里不再详述。需要注意的是USB摄像头控制器的选择直接关系到软件上的摄像头驱动的设计。目前用于摄像头的控制器主要有中国中芯微公司的ZC0301P和ZC0302芯片和美国OV公司的OV511+芯片。在国内市场上的USB摄像头基本上采用的是中芯微公司的芯片,并且中芯微公司的主流控制芯片都带有硬件JPEG编码模块,利用这个特性可以直接从摄像头得到经过压缩的图片格式,可以简化应用软件的设计,因此本设计采用ZC0301P芯片的130万像素的USB摄像头。三、监控终端软件的设计构建一个复杂的嵌入式系统,仅有硬件是不够的,为使其具有任务管理、定时器管理、存储器管理、资源管理、事件管理、系统管理、消息管理、

7、队列管理和中断处理的能力,提供多任务处理,更好地分配系统资源的功能,很有必要针对特定的硬件平台和实际应用移植操作系统。鉴于Linux的源代码开放性,它成为嵌入式操作系统领域的很好选择,很多微处理器上就移植进了Linux操作系统。本系统将Linux操作系统移植到S3C2410上,并将操作系统自带的USB摄像头驱动程序稍加修改,作为ZC0301P芯片USB摄像头的驱动程序,利用Video For Linux(V4L)库所提供的API函数,编写应用程序。下面介绍利用V4L和Socket API编写视频监控程序的方法。USB摄像头驱动成功后,需要编写视频采集的程序,这就需要利用Linux内核中Vide

8、o For Linux(简称V4L)的一些API。V4L是Linux中关于视频设备的内核驱动,现在已有Video4linux2,可以利用该库快捷地实现视频的采集和处理。在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写,以便对摄像头的参数进行设置和读取摄像头的状态及图像数据,摄像头一般挂载在/dev/video0下。Video4linux为应用程序提供了一系列的接口函数,通过这些函数,可以执行打开、读写、关闭等基本操作。设备驱动提供了read、write、open、close等函数的具体实现,在内核这些函数都可以调用。视频采集程序的流程如图3所示:图3 视频采集流程图 利用

9、V4L编写的视频采集程序重要代码如下,下列代码包含采集编码程序一些关键函数,由于中芯微ZC0301P系列芯片支持JPEG硬件编码,因此在局域网等网络性能较好的环境中,可以直接从摄像头得到JPEG图片,并将它按照一定的帧率进行传输,这样在监控中心的PC机上就可以用IE浏览器看到运动的视频图像。/打开视频设备int v4l_open(char *dev,struct vdIn *vd) if(vd-fd=open(dev,O_RDWR)fd);/读video_capability 中信息int v4l_get_capability(struct vdIn *vd)if(ioctl(vd-fd,VI

10、DIOCGCAP,&(vd-videocap),vd-videocap.maxheight,vd-videocap.channels);/读video_picture中信息int v4l_get_channels(struct vdIn *vd) if (ioctl(vd-fd,VIDIOCGCHAN,&(vd-videochan) videochan.channel); return 0;四、视频监控终端的测试结果本系统最后运行的效果如图4。该图是监控中心通过IE浏览器查看到的监控终端的提供的监控画面。图4 系统成功运行截图从图中可以看出该系统所提供的监控画面图像质

11、量较好,完全可以满足实际应用中对监控画面质量的要求,另外通过抓包软件分析,一个监控终端的网络数据量为3314.45kbps,数据流量在目前局域网等的可承受范围内。五、结论本文提出的基于ARM的嵌入式视频监控系统设计方案具有稳定性高、图像质量较好、网络传输性能好等特点。该系统操作简单,只需用户配置IP地址就可以运行,系统的监控图像质量能满足大多数用户对画面质量的要求,另外,该视频服务器对网络带宽的需求适中,完全适合局域网中使用。参考文献1田泽ARM9嵌入式Linux开发实验与实践M北京:北京航空航天大学出版社,2006,(11)2USERS MANUAL S3C2410X 32-Bit RISC Micropro-cessor,Samsung electronics, 2000.3孙天泽,袁文菊,张海峰嵌入式设计及Linux驱动开发指南基于ARM9处理器M北京:电子工业出版社,2005,(02) 4(美)Robert Love. Linux内核设计与实现(Linux Kernel Development

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论