- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于ARM的视频监控系统的研究及应用.doc
基于ARM的视频监控系统的研究及应用
摘要:文中提出了一种基于ARM9处理器和嵌入式Linux的远程视频监控系统。该系统采用USB接口的摄像头获取原始视频图像数据,经过JPEG压缩编码处理,然后通过UDP协议完成网络传输,最后构建嵌入式Boa服务器,客户端通过Java Applet与Boa服务器交互,完成了视频图像的远程控制。该系统具有开发成本低、安全性高、稳定性强及分布式远程监控的优点。
关键词:嵌入式Linux 视频监控 Boa服务器 UDP Java Applet
中图分类号:TP277 文献标识码:A 文章编号:1007-9416(2013)12-0037-02
随着计算机技术的不断发展、音视频编码技术的提高以及网络带宽的不断增大,视频监控技术的应用已经从传统的安防领域发展到与我们生活相关的各个领域,因此人们对监控系统也提出了更高的要求,如何开发一种成本低、智能化程度高,稳定性和安全性高的视频监控系统成了必然的趋势。文中在嵌入式软硬件架构ARM+ Linux下实现了网络视频监控系统,相比模拟监控系统及数字硬盘录像机,这种监控系统由于采用的ARM处理器使得硬件成本更低,体积更小,功耗更低,而开源的Linux系统使得软件成本投入更少,安全性更高,加上成熟的压缩算法使得图像更加清晰,而嵌入式Web服务器的移植可以突破集中的监控方式。这种监控系统更有利于视频监控的大范围普及和更好地结合智能监控。
1 系统软硬件结构及设计
系统总体结构由USB接口的摄像头、基于ARM和Linux的流媒体服务器[1]、网络传输和客户端组成,如图1所示。
USB摄像头负责远端视频数据的采集,经过USB协议传输到嵌入式流媒体服务器中,在其上进行视频数据的JPEG压缩编码处理,最后通过UDP协议向客户端传输压缩处理后的视频数据,远程终端通过Web服务器和接受显示程序即可完成视频的远程实时监控了。
1.1 系统的硬件结构
系统中硬件选用飞凌FL2440开发板作为嵌入式网络视频服务器的开发平台,选用中星微公司生产的主芯片为ZC301P的USB摄像头进行视频采集,远程客户端采用一台带有浏览器的PC机。FL2440开发板上集成了三星公司ARM9系列的S3C2440A的微处理器,64M的SDRAM、256M的FLASH、两个通用的串行口、通过以太网控制芯片DM9000扩展一个10M以太网接口,4个USB主口。系统的硬件结构图如图2所示。
1.2 系统的软件结构
系统采用Linux操作系统作为软件开发平台,编译环境采用的是交叉编译器cross-2.95.3,嵌入式Linux的内核选用的是2.6.12,根文件系统采用的是qte-yaffs,系统初始化引导程序bootloader采用的是飞凌2440BOOT_V5.1_FL,再此基础之上移植开发了USB驱动程序和网络驱动程序。
在Linux上完成应用程序的开发来实现视频数据的采集、压缩编码、网络传输控制等功能,主要包括嵌入式流媒体服务器、嵌入式Web服务器Boa和客户端三个功能模块。嵌入式流媒体服务器通过Linux内核中支持视频的V4L API、JPEG压缩器和UDP协议分别完成视频图像数据的采集、压缩编码和网络传输。嵌入式Web服务器完成客户端请求处理,客户端通过开发Java Applet程序或者编写CGI脚本完成与服务器的动态交互,客户端实现对远程传输过来的视频数据的实时显示。系统的软件结构图如图3所示。
2 系统的实现
2.1 Linux在ARM平台的移植
Linux具有内核小,效率高,强大的网络功能支持等优点,但由于嵌入式系统资源的有限性,因此需要对内核进行配置和裁剪,使之放到容量较小的Flash中。这里Linux的裁剪方式采用的是动态模块加载。
2.2 基于Video 4 Linux的视频采集
Video4Linux(简称V4L)是Linux内核中支持影像设备的一组API,它配上视频采集设备USB摄像头和USB驱动就可以完成影像的采集,本文通过Video4Linux模块的编程接口实现了视频图像的采集,摄像头中的各种I/O接口的控制主要通过Video4Linux接口标准调用驱动的相关函数完成的,主要接口函数有Open、ioctl、Read、Write、select、mmap等。Linux下视频图像的采集过程如下:(1)打开视频设备文件。Linux对设备的操作就是对设备文件的操作,顾只需调用文件系统的open函数:cam=open(“/dev/video”,O_RDWR),开启成功时,cam为返回的文件描述符。(2)获取视频设备信息。使用控制接口函数ioctl(cam,VIDIOCGCAP,cap)来获取
您可能关注的文档
- 培养具有创新精神的应用型计算机人才的探索与实践.doc
- 培养具有开拓精神的接班人.doc
- 培养写作兴趣,让学生不再为写作头疼.doc
- 培养农广校学员自学能力,提高教学质量.doc
- 培养创新能力,提高高中计算机教学实效.doc
- 培养初中生阅读能力的四种途径.doc
- 培养口语交际能力 提高学生语文素养.doc
- 培养和打造区域特色的农科专业人才培养改革与探索.doc
- 培养园林技能人才的操作途径.doc
- 培养学习习惯,优化语文教学.doc
- 场地脚手架工程施工方案(3篇).docx
- 2024年浙江省丽水市松阳县玉岩镇招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省郑州市惠济区古荥镇招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市淳安县文昌镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省台州市三门县小雄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省宁波市余姚市河姆渡镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省丽水市景宁畲族自治县雁溪乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市临安市板桥乡招聘社区工作者真题及答案详解一套.docx
- 2024年湖北省宜昌市点军区土城乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省台州市路桥区桐屿街道招聘社区工作者真题附答案详解.docx
文档评论(0)