arm920t的实时视频监控.docx

上传人:王** 文档编号:1433341 上传时间:2024-07-09 格式:DOCX 页数:17 大小:63.87KB
下载 相关 举报
arm920t的实时视频监控.docx_第1页
第1页 / 共17页
arm920t的实时视频监控.docx_第2页
第2页 / 共17页
arm920t的实时视频监控.docx_第3页
第3页 / 共17页
arm920t的实时视频监控.docx_第4页
第4页 / 共17页
arm920t的实时视频监控.docx_第5页
第5页 / 共17页
arm920t的实时视频监控.docx_第6页
第6页 / 共17页
arm920t的实时视频监控.docx_第7页
第7页 / 共17页
arm920t的实时视频监控.docx_第8页
第8页 / 共17页
arm920t的实时视频监控.docx_第9页
第9页 / 共17页
arm920t的实时视频监控.docx_第10页
第10页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《arm920t的实时视频监控.docx》由会员分享,可在线阅读,更多相关《arm920t的实时视频监控.docx(17页珍藏版)》请在优知文库上搜索。

1、第一章绪论1.1课题相关背景及现状随着电了信息技术,多媒体技术及网络技术的快速发展,视频监控系统正在向集成化、数字化和网络化方向发展。嵌入式视频监控系统充分利用大规模集成电路和先进而效编码标准,以其体积小、性能槎定、通讯便利等优点正渐渐变广泛应用。M.I课题探讨相关背景陵着全球跨入数字化、网络化、全球一体化的信息时代,人们之间的信息沟通越来越矮繁,方式越来越多样。从原始的纸笔书信,到传统的语音通信,再到新兴的数字通信,无不体现若人们对通信方式多样化的追求。而“百闻不如一见”,视觉是人类获得信息的最重要方式。在现代信息社会中多媒体信息已成为人类获得信息的最主要载体,同时也成为电子信息领域技术开发

2、和探讨的热点。通常多媒体系统传递的信息可以归结为数据、语音和图像三类。其中图像信息具有直观性强、信息量大等特点,因而图像的传送具有特殊重要的地位。如今电子信息技术、计算机技术和通信技术正飞速发展,这为视频监控走入人们的日常生活供应了技术保证。视频监控在工业、军事和民用领域正发挥着不行忽视的作用。相对单一的图像来说,连续的图像序列一一视频具有表达客观事物更加直观、去动、形象,信息内容更加丰富等优点。般而言,嵌入式系统的构架可以分成四个部分:处理器、存储器、输入输出(I/O)和软件(由于多数嵌入式设备的应用软件和操作系统都是紧密结合的,在这里我们对其不加区分,这也是嵌入式系统和一般的PC操作系统的

3、最大区分)1.3系统的总体设计方案及支配本设计要实现的是通过摄像头采集到视频数据通过网络传输将采集到的图像数据传到客户端显示,因此整个系统可分为硬件和软件两个部分,而硬件部分则由主限制板模块、摄像头采集模块,传输模块和视频监控PC等组成:软件模块则由IinUX2.6.32男未婚无、摄像头驱动、网卡驱动和视领图像的采集程序、图像的发送和接收程序。针对监控系统中的关键技术进行分析,本文将重要探讨一下内容全文结构支配如下:第一章:综合论述f视频监控系统的现状和发展状况。第二章:介绍了视频监控系统整体结构和硬件结构S3C241O的体系结构,第三章:简洁介绍f基于V41.的视频采臾程序以及图像压缩理论.

4、第四章:视频传输的实现介绍了视频监控的软件结构。第五章:介绍/视频监控的软件结构第六堂对本论文的够工作进行总结,提出展望。致谢.2.2ARM处理器简介ARM(AdvanceRlSCMachines),既可以认为是一个公司的名字,也可以认为是对位处理罂的统称,还可以认为是种技术的名字.ARM处理器是个32位元精简指令集RlSCReducedInstructionSetComputing)处理器架构,其广泛应用在很多嵌入式系统设计。ARM处理器具有以下特点:I、体积小、低功耗、低成本、高性能;2,支持ThUmb(16位)/ARM(32位)双指令集.蕉容性好。3、大量运用寄存器,指令执行速度更快:4

5、、大多数数据操作都在寄存器中完成:5、寻址方式敏旋简洁,执行效率高:6、指令长度固定2.3S3C2440开发板简介硬件设计方案如图示2.3.1 主要结构S3C244O的频率是400MHZ,其中ARM920t核由ARM920TDMk内存存储单元(MMU)(MemoryManagementUnit)和高速缓存三部分组成。其中,MMU可以管理虚拟内存,高速缓存由独立的16KB地址和I6KB的数据高速Cache组成,ARM92Ot有两个内部协处理器:CPI4和CPI5。CP14用于调试限制,CP15由于存储系统限制以及测试限制。该芯片架构如图下:3二.就;_二*3WaPMAUARTO.U,Jj-.KW

6、 *,(USRetIJW-AXMMC.F*GPIog1一I,一SfJA,二RTC *一va*v*一BttrwAOC ,11,一”SPIO.ITimerVU1川图2.11S3C6410内部结构图3.2应用程序通过V41.2进行视频采集的原理V41.2支持内存映射方式(mmap)和干脆读取方式(read)来采集数据,前名般用于连续视频数据的采集,后者常用于静态图片数据的采集,本文盘点探讨内存映射方式的视频采集。应用程序通过V41.2接口采集视频数据分为五个步骤:首先,打开视频设备文件,进行视频采集的参数初始化,通过V41.2接口设置视频图像的采集窗口、采集的点阵大小和格式;其次,申请若干视频采集的

7、帧缓冲区,并将这些帧缓冲区从内核空间映射到用户空间,便于应用程序读取/处理视频数据;第三,将申请到的帧缓冲区在视频采集输入队列排队,井启动视频采集;第四,驱动起先视频数据的采集,应用程序从视频采集输出队列取出帧缓冲区,处理完后,将帧缓冲区重新放入视频采集输入队列,循环往发采集连续的视频数据;第五,停止视频采集.3.2.1 视频采集的弁数初始化在1.inux下,摄像头硬件已经被映射为设备文件OdevMdeoO”.用OPen函数打开这个设备文件,获得其文件描述符fd_v4l2,然后对这个文件描述符进行参数初始化。(1)设置视频的采集窗口参数设置采集窗口就是在摄像头设备的取景范围之内设定一个视频采集

8、区域.主要是对结构体v4l2-crop赋值,v4l2_crop由一个v4l2_buffer_type枚举类型的typefilv4l2_rect类型的结构体C构成,来描述视频采集窗口的类型和大小。type设置为视频采桀类型V41.2_BUF_TYPE_VIDEO_CAPTUREeC是表示采集窗口的大小的结构体,它的成员1.eft和Top分别表示视频采集区域的起始横坐标和纵坐标,width和height分别表示采集图像的宽度和高度。赋值后,用i。Ctl函数通过这个结构体对fd_v4l2进行设置。structv4l2_cropenumv4l2_buf_typetype;structv4l2_capt

9、ureparmcapture;structv4l2_outputparmoutput;_u8raw-data200;user-defined*/parm;;3.2.2 申请并设置视频采集的帧震冲区前期初始化完成后,只是解决了一帧视频数据的格式和大小问题,而连续视频帧数据的采集须要用帧缓冲区队列的方式来解决,即要通过驶动程序在内存中申请几个帧缓冲区来存放视频数据。应用程序通过API接口供应的方法(VIDloC一REQBUFS)申请若干个视频数据的帧缓冲区,申请帧缓冲区数量一般不低于3个,每个帧缓冲区存放一帧视频数据,这些帧缓冲区在内核空间.应用程序通过APl接口供应的铿询方法(VIDI。JQUE

10、RYBUF)杳询到帧缓冲区在内核空间的长度和偏移量地址。应用程序再通过内存映射方法万map),将申请到的内核空间帧缓冲区的地址映射到用户空间地址,这样就可以干脆处理帧缓冲区的数据。(1)将帧缓冲区在视频输入队列排队,并启动视频采臾在驱动程序处理视频的过程中,定义了两个队列:视频采集输入队列(incomingqueues)和视频采集输出队列(OUlgoingqUeUes),前者是等待驱动存放视频数据的队列,后者是驶动程序已经放入了视频数据的队列。如图2所示。应用程序须要将上述帧缓冲区在视频采集输入队列排队(VIDoC_QBUF),然后可启动视频采集。(2)循环往夏,采集连续的视频数据启动视频采集

11、后,驱动程序起先采集一帧数据,把采集的数据放入视频采集输入队列的第一个帧缓冲区,一帧数据采集完成,也就是第一个帧缓冲区存满一帧数据后,驱动程序将该帧缓冲区移至视频采集输出队列,等待应用程序从输出队列取出。驱动程序接下来设置视频帧格式,包括帧的点阵格式,宽度和高度等,运用ioctl(fd_v4l,VIDIOC_S_FMT,&fmt)设置视频的帧率,运用ioctl(fd_v4l,VIDIOC_S_PARM,&parm)设置视频的旋转方式,运用ioctl(fd_v4l,VIDIOC_S_CTR1.,&ctrl)(4)向驱动申请视频流数据的帧缓冲区恳求/申请若干个帧缓冲区,一般为不少于3个,运用ioc

12、tl(fd_v4l,VIDIOC_REQBUFS,&req)杳询帧缓冲区在内核空间中的长度和偏移坡ioctl(fd_v4l,VIDIOC.QERYBF.&buf)(5)应用程序通过内存映射,将帧缓冲区的地址映射到用户空间,这样就可以干脆操作采集到的做了,而不必去划制.buffersi.start=mmap(NU1.1.,buffers(i.length,PROT_READPROT_WRITE,MAPSHARED,fd_v4l,bffersi.offset);(6)将申谙到的帧缓冲全部放入视频采集输出队列,以便存放采集的数据。ioctl(fd_v4l,VIDIOC_QBUF,&buf)(7)起先

13、视频流数据的采集。ioctl(fd_v4l.VIDIOC_STREAMON.&type)(8)驱动将采集到的一帧视频数据存入输入队列第一个帧缓冲区,存完后将该帧缓冲区移至视频采集输出队列。(9)应用程序从视频采集输出队列中取出已含仃聚集数据的帧缓冲区。ioctl(fd_v4l,VIDIOC_DQBUF,&buf),应用程序处理该帧缓冲区的原始视频数据。(10)处理完后,应用程序的将该帧缓冲区重新排入输入队列,这样便可以循环采集数据。ioctl(fd_v4l,VIDIOC_QBUF,&buf)重笈上述步骤8到10,直到停止采集数据。(11)停止视频的采集。ioctl(fd_v4l,VlDlOJS

14、TREAMoFE&type)(12)糅放申请的视频帧缓冲区unmap,关闭视频设备文件close(f1.V41)。以上的程序流程,包含了视频设备采集连续的视频数据的逻辑关系。而在实际运用中,往往还要加入对视频数据进行处理(如压缩编码)的工作,否则,视频流数据量相当大,须要很大的存储空间和传输带宽.上述过程中,每一个帧缓冲区都有一个对应的状态标记变量,其中每一个比特代表一个状态第四章视屏传输的实现要实现现场监控,出r完成视屏采集的过程,还须要吧视频图像数据通过网络传输出去,因此须要在完成视频采集的基础上建立网络服务器,实现客户端和服务器之间的数据通信。4.1TCP/IP协议简介Transmiss

15、ionControlProtocolZlnternetProIoCOl的简写,中译名为传输限制协议/因特网互联协议,乂名网络通信协议,是InternCt最基本的协议、IntCrnet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成.TCP/IP定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议果纳了4层的层级结构,每层都呼叫它的下一层所供应的网络来完成自己的需求。通俗而言:TCP负责发觉传输的问题,一有问题就发出信号,要求重新传输,宜到全部数据平安正确地传输到目的地而IP是给因特网的每一台电脑规定一个地址。TeP/IP结构对应OSlOSI结构TCP/IP应用层应用U表示层会话层主机到主机必(TCP)(又称传输层)传输层网络层(IP)网络层网络接口层(又称链数据链路必路层)物理层SOCke,程序可以调用SOCkel函数.该函数返回一个类似于文件描述符的句柄,socke函数原型为:i

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 通信/电子 > 监控

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!