欢迎来到天天文库
浏览记录
ID:5605617
大小:28.00 KB
页数:6页
时间:2017-12-19
《基于arm视频监控系统探究和应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于ARM视频监控系统探究和应用 摘要:文中提出了一种基于ARM9处理器和嵌入式Linux的远程视频监控系统。该系统采用USB接口的摄像头获取原始视频图像数据,经过JPEG压缩编码处理,然后通过UDP协议完成网络传输,最后构建嵌入式Boa服务器,客户端通过JavaApplet与Boa服务器交互,完成了视频图像的远程控制。该系统具有开发成本低、安全性高、稳定性强及分布式远程监控的优点。关键词:嵌入式Linux视频监控Boa服务器UDPJavaApplet中图分类号:TP277文献标识码:A文章编号:
2、1007-9416(2013)12-0037-02随着计算机技术的不断发展、音视频编码技术的提高以及网络带宽的不断增大,视频监控技术的应用已经从传统的安防领域发展到与我们生活相关的各个领域,因此人们对监控系统也提出了更高的要求,如何开发一种成本低、智能化程度高,稳定性和安全性高的视频监控系统成了必然的趋势。文中在嵌入式软硬件架构ARM+6Linux下实现了网络视频监控系统,相比模拟监控系统及数字硬盘录像机,这种监控系统由于采用的ARM处理器使得硬件成本更低,体积更小,功耗更低,而开源的Linux系统
3、使得软件成本投入更少,安全性更高,加上成熟的压缩算法使得图像更加清晰,而嵌入式Web服务器的移植可以突破集中的监控方式。这种监控系统更有利于视频监控的大范围普及和更好地结合智能监控。1系统软硬件结构及设计系统总体结构由USB接口的摄像头、基于ARM和Linux的流媒体服务器[1]、网络传输和客户端组成,如图1所示。USB摄像头负责远端视频数据的采集,经过USB协议传输到嵌入式流媒体服务器中,在其上进行视频数据的JPEG压缩编码处理,最后通过UDP协议向客户端传输压缩处理后的视频数据,远程终端通过We
4、b服务器和接受显示程序即可完成视频的远程实时监控了。1.1系统的硬件结构系统中硬件选用飞凌FL2440开发板作为嵌入式网络视频服务器的开发平台,选用中星微公司生产的主芯片为ZC301P的USB摄像头进行视频采集,远程客户端采用一台带有浏览器的PC机。FL2440开发板上集成了三星公司ARM9系列的S3C2440A的微处理器,64M的SDRAM、256M的FLASH、两个通用的串行口、通过以太网控制芯片DM9000扩展一个10M以太网接口,4个USB主口。系统的硬件结构图如图2所示。1.2系统的软件结
5、构6系统采用Linux操作系统作为软件开发平台,编译环境采用的是交叉编译器cross-2.95.3,嵌入式Linux的内核选用的是2.6.12,根文件系统采用的是qte-yaffs,系统初始化引导程序bootloader采用的是飞凌2440BOOT_V5.1_FL,再此基础之上移植开发了USB驱动程序和网络驱动程序。在Linux上完成应用程序的开发来实现视频数据的采集、压缩编码、网络传输控制等功能,主要包括嵌入式流媒体服务器、嵌入式Web服务器Boa和客户端三个功能模块。嵌入式流媒体服务器通过Lin
6、ux内核中支持视频的V4LAPI、JPEG压缩器和UDP协议分别完成视频图像数据的采集、压缩编码和网络传输。嵌入式Web服务器完成客户端请求处理,客户端通过开发JavaApplet程序或者编写CGI脚本完成与服务器的动态交互,客户端实现对远程传输过来的视频数据的实时显示。系统的软件结构图如图3所示。2系统的实现2.1Linux在ARM平台的移植Linux具有内核小,效率高,强大的网络功能支持等优点,但由于嵌入式系统资源的有限性,因此需要对内核进行配置和裁剪,使之放到容量较小的Flash中。这里Lin
7、ux的裁剪方式采用的是动态模块加载。2.2基于Video4Linux的视频采集6Video4Linux(简称V4L)是Linux内核中支持影像设备的一组API,它配上视频采集设备USB摄像头和USB驱动就可以完成影像的采集,本文通过Video4Linux模块的编程接口实现了视频图像的采集,摄像头中的各种I/O接口的控制主要通过Video4Linux接口标准调用驱动的相关函数完成的,主要接口函数有Open、ioctl、Read、Write、select、mmap等。Linux下视频图像的采集过程如下:
8、(1)打开视频设备文件。Linux对设备的操作就是对设备文件的操作,顾只需调用文件系统的open函数:cam=open(“/dev/video”,O_RDWR),开启成功时,cam为返回的文件描述符。(2)获取视频设备信息。使用控制接口函数ioctl(cam,VIDIOCGCAP,&cap)来获取摄像头属性信息,cap用于保存获取的设备信息。(3)获取视频图像属性信息。通过控制接口函数ioctl(cam,VIDIOCSPICT,&pic)来获取图像信息,pic用于保存
此文档下载收益归作者所有