欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于网络视频监控系统的设计说明文档格式.docx

    • 资源ID:1299281       资源大小:2.01MB        全文页数:83页
    • 资源格式: DOCX        下载积分:1金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要1金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于网络视频监控系统的设计说明文档格式.docx

    1、3.3.3 创建Windows Embedded CE6.0 123.3.4 编辑和修改Windows Embedded CE6.0工程 163.3.5 生成Windows Embedded CE6.0映像 173.3.6 运行Windows Embedded CE6.0 173.4 服务器应用程序设计 183.4.1 服务端视频图像采集模块 193.4.2 服务端视频图像发送模块 20第4章 嵌入式网络视频监控系统客户端软件系统设计 234.1 SOCKET编程基础 234.1.1 SOCKET协议 234.1.2 Windows Sockets API 234.1.3 DOT Netfra

    2、mework对Socket功能的实现 244.2 客户端仿真程序设计与实现 264.2.1 仿真程序模块划分 274.2.2 连接服务模块 274.2.3 图像采集模块 304.2.4 视频采集模块 344.2.5 播放视频模块 364.2.6 界面显示模块 364.2.7 信息显示模块 404.2.8 监控效果 40第5章 系统调试与性能分析 42第6章 结论 445.1 结论 445.2 系统的不足与展望 44参考文献 46附录A 网络视频监控服务端主要代码 47附录B 网络视频监控客户端部分主要代码 52摘要为了实现电力设备的远程监控,融合网络技术、通信及计算机技术,采用面向对象的程序设

    3、计方法,基于Visual Studio 2005程序设计工具,使用C#高级编程语言,设计并开发了基于ARM和Windows Embedded CE6.0的网络视频监控系统的软件系统。该系统包括了服务端应用程序和客户端应用程序二大部分。服务端实现了对远程现场的视频数据采与传输,客户端实现了视频数据的接收、存储、处理与显示等功能。整个系统经过与系统的仿真,性能稳定,界面友好,操作简单。基本能满足对网络设备的远程监控的要求,具有广泛的应用前景。关键词: ARM;视频监控;Windows CE 第1章 绪论1.1 视频监控系统的发展概况近年来,随着现代科学技术的不断发展特别是网络带宽、计算机处理能力和

    4、存储容量的迅速提高以及各种实用视频信息处理技术的出现,视频监控技术也有长足的发展,视频监控进入了全数字化的网络时代,日益受到人们的重视和关注。视频监控系统的发展基本上是从早期的模拟闭路电视监控系统向数模结合的视频监控系统和现在的数字视频监控系统演变的过程,而现在的数字视频监控系统根据技术的发展又分为三个阶段:数字监控的多媒体阶段、数字监控的DVR阶段和数字监控的网络阶段。随着多媒体技术、视频压缩编码技术、网络通讯技术的发展、数字视频监控系统迅速崛起,现今市场上有两种数字视频监控系统类型,一种是以数字录像设备为核心的视频监控系统,另一种是以嵌入式视频Web服务器为核心的视频监控系统。数字视频压缩

    5、编码技术日益成熟,计算机的普及化,为基于PC机的多媒体监控创造了条件。这种新型视频监控系统的迅速崛起,部分地取代了以视频矩阵图像分割器、录像机为核心,辅以其它传送器的模拟视频监控模式,但随着基于PC机的视频监控录像系统的发展,在实际工程使用过程中,也暴露出一些不足,主要是系统工作的不稳定性。基于PC的视频监控录像系统的组成结构为:兼容/工控PC机+视频采集卡+普通/较可靠的操作平台+应用软件。嵌入式系统是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积等综合性严格要求的专用计算机系统,亦即为监控系统量体裁衣的专用计算机系统。嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式

    6、操作系统及应用软件系统等组成,它是集软硬件于一体的可独立工作的器件。嵌入式操作系统是一种实时的,支持嵌入式系统应用的操作系统软件,它是嵌入式系统极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统核、设备驱动接口、通信协议、图形界面、标准化浏览器等,嵌入式操作系统在系统实时高效性、硬件的相关依靠性、软件固态化及应用的专用性等方面具有较为突出的特点嵌入式视频Web服务器方式,视频服务器置一个嵌入式Web服务器,采用嵌入式实时多任务操作系统。摄像机送来的视频信号数字化后由高效压缩芯片压缩,通过部总线送到置的Web服务器,网络上用户可以直接用浏览器观看Web服务器上的摄像机图像,授权用户还可以

    7、控制摄像机、云台、镜头的动作或对系统配置进行操作。由于把视频压缩和Web功能集中到一个体积很小的设备,可以直接连入局域网,达到即插即看,省掉多种复杂的电缆,安装方便(仅需设置一个IP地址),用户也无需安装任何硬件设备,仅用浏览器即可观看。视频监控发展的最大两个特点就是数字化各网络化。 1)数字化。数字化是21世纪的特征,是以信息技术为核心的电子技术发展的必然,数字化是迈向成长的通行证,随着时代的发展,生存环境将变得越来越数字化。视频监控系统的数字化首先应该是系统息流从模拟状态转为数字状态,这将彻底打破经典闭路电视系统是以摄像机成像技术为中心的结构,根本上改变视频监控系统从信息采集、数据处理、传

    8、输、系统控制等的方式和结构形式。信息流的数字化、编码压缩、开放式的协议,使视频监控系统与安防系统中其它各子系统间实现无缝连接,并在统一的操作平台上实现管理和控制,这也是系统集成化的含义。2)网络化。视频监控系统的网络化将意味着系统的结构将由集总式向集散式系统过渡。集散式系统采用多层分级的结构形式,具有微核技术的实时多任务、多用户、分布式操作系统以实现抢先任务调度算法的快速响应。组成集散式监控系统的硬件和软件采用标准化、模块化和系列化的设计,系统设备的配置具有通用性强、开放性好、系统组态灵活、控制功能完善、数据处理方便、人机界面友好以及系统安装、调试和维修简单化,系统运行互为热备份,容错可靠等优

    9、点。系统的网络化在某种程度上打破了布控区域和设备扩展的地域和数量界限。系统网络化将使整个网络系统硬件和软件资源的共享以及任务和负载的共享,这也是系统集成的一个重要概念。从以上可以看出,视频技术的发展大致经历了模拟视频、PC视频、网络视频三个阶段,并以网络、通信技术为依托和传输平台。1.2 嵌入式Windows CE操作系统微软公司从1990年开始准备构建移动设备中的Windows,但先后因为市场和硬件技术问题搁浅了,随着经验的积累和各种条件的成熟,1996年微软发布了Windows CE 1.0,从而使微软公司在嵌入式操作系统中迈出了第一步。Windows Embedded CE 在嵌入式领域

    10、算得上是一个后起之秀。尤其在其Windows CE.NET 发布以后,才真正使得其被应用到嵌入式领域。而Windows Embedded CE5.0则成为了广大开发人员接触得最多的Windows Embedded CE版本,2006年年底,微软公司推出了Windows Embedded CE6.0 ,新的版本在集成开发环境,硬件支持,数据库支持等方面更胜一筹,配合Visual Studio 2005和Microsoft SQL Server Management Studio和开发工具,并支持SQL Server Mobile,使其在更广阔的领域被更多的得到应用。在通用计算机桌面操作系统领域,

    11、微软公司有着自己面向不同时期不同应用的产品线。在时间上,先后发布了Windows 95,Windows 98,Windows Me, Windows 2000,Windows XP, Windows Vista等,在嵌入式操作系统领域,微软公司同样有着丰富的产品线,先后有着Windows CE 1.0,Windows CE 2.0,Windows CE 3.0,Windows CE 4.X,Windows CE 5.0及最新的Windows CE 6.0。1.2.1Windows CE6.0的体系结构Windows CE采用了典型的分层结构。在Windows Embedded CE 6.0中划

    12、分为User Mode(用户模式)和Kernel Mode(核模式)两个“层”,CoreDLL等DLL同时出现在两个层中,驱动程式也能够被加入到核中,以前的.exe可执行模块基本上都变成了.dll。体系结构的变化相对较大。Windows Embedded CE 6.0的体系结构如图1所示。图1 Windows Embedded CE6.0体系结构Windows Embedded CE6.0将任何系统需要提供的服务部分“转移”到系统核的虚拟机(Kernels Virtual Machine),这样做的好处是当发生系统调用时,已变成了进程的一个调用。这样做也引入了一些不稳定机制,比如驱动程式被加入

    13、到核,Windows Embedded CE6.0默认情况下就是将驱动运行在核模式。虽然提高了系统的效率,但假如驱动程式不稳定,将对系统的整体稳定性产生很严重的影响,这也是我们所不愿意看到的。当然,并不是任何的驱动程式都是在核运行的,在Windows Embedded CE6.0安装完成之后的驱动程式是在用户模式下运行的,这样更有利于系统的安全,但以牺牲设备的性能为代价。Windows Embedded CE6.0里的系统模块如图2所示。图2 Windows Embedded CE6.0系统模块NK.exe中仅仅包含一些OAL代码和确保兼容性的程式,这样做的好处是使得OEMs和ISVs厂商定制

    14、的代码和微软提供的Windows Embedded CE6.0的代码进行了分离,使得核代码的升级更加容易且更加方便。1)硬件。硬件是一个嵌入式系统存在的必要条件,也是嵌入式设备的处在体现,是嵌入式操作系统运行的基础,在通用计算机领域,一般都是X86体系结构的IBM-PC及其兼容机,早期IBM和英特尔的压倒性趋势,使得现在的通用计算机领域硬件体系结构基本一致,都有定义良好的接口,而在嵌入式领域,由于设备制造商都是由不同领域不同应用的厂商发展起来的,所以硬件结构相对复杂,公CPU体系结构就有多种,硬件的复杂性会加大程序开发的难度,因此出现了BSP来解决体系结构的差别问题。Platform Buil

    15、der CE6.0为很多常用的SDB(软件开发板)提供了BSP,这结BSP基本包括了所有Windows CE6.0所支持的CPU,可有效减少嵌入式设备的开发周期。2)OAL层。OAL处在Windows CE6.0 和嵌入式设备的硬件层之间,连接到核的库中便可以创建核可执行程序。它主根提供中断处理,时钟,电源管理,总线抽象,通用I/0控制等服务。在建立一个以Windows CE6.0 为操作系统的硬件平台的过程中,创建OAL可能是最复杂的事情之一。通常情况下,最简便的方法是对已有的OAL进行修改以适应自己的硬件平台。3)KITL层。KITL(Kernel Indepent Transport L

    16、ayer)是为了调试工作更加方便而设计的,它削弱了通信协议与通信硬件之间的直接依赖,降低了硬件传输层相关的开发工作量,硬传输层在KITL的下层,使得KITL可以支持不同类型的通信。4)核层。核为Windows CE6.0设备提供最基本的底层功能,这些功能包括进程,线程,存管理,还包括一些文件管理功能,进程和线程的调度,实时支持,系统调用,核电源管理等。NK.EXE是OAL进程,核KERNEL.DLL是伴随着OALY启动的,NE.EXE是Windows CE6.0 的核心。5)ExFAT文件系统。Windows CE 6.0采用了 ExFAT(Extended File Allocation T

    17、able System),ExFAT不仅解决了大容量文件存储的限制问题,还使得Windows CE6.0设备与桌面PC 机之间的文件传输更方便更容易。而且ExFAT还提供了对以前文件系统的支持。6)GWES 接口。GWES(Graphic, Windowing , Events, Subsystem)集Win32 API, User Interface, Graphic Device Interface于一体,是用户,应用程序和Windows Embedded CE6.0之间的一个共同接口,三者通过GEWS进行通信和相关的操作。GWES所支持的Windows CE6.0的用户接口元素非常丰富,

    18、几乎可以和桌面Windows 相比,包括窗口,对话框,菜单和其它资源。7)设备管理器。设备管理器是被核加载的,而且只要Windows Embedded CE6.0还在运行,设备管理器就不会停止工作,当设备管理器被加载时,I/O资源管理器也将被加载,用它从注册表中读取一个有效的可用资源列表。设备管理器通过GUID(Globally Unique Identifier)来发现和管理设备。设备管理器通过device.dll来实现的。设备管理器与注册表的配合非常紧密,它运行和管理的大多数数据都来自注册表。8)驱动程序。驱动程序是一种抽象了物理或者虚拟设备功能的软件或者代码,相应设备被其驱动程序管理的操

    19、作,物理设备比较常见,像USB存储器,打印机等,虚拟设备如文件系统,虚拟光驱等。在Windows CE6.0 中,驱动程序有两种模式,一种是核模式另外一种为用户模式,在默认的情况下,驱动程序运行在核模式下,这有利于设备性能的提高,但也增加了影响系统各个方面性能的不确定因素,如果不稳定的驱动程序被加载到核,将会对嵌入式系统的可靠性,稳定性等多方面的性能产生致使的影响。这使得驱动程序在发布和认证时必须有严格的性能合格证措施。9).NET Compact Framework 平台。Windows CE6.0提供了对.NET Compact Framework的支持,使得开发应用程序有了良好的编程接口

    20、。开发CE6.0的应用程序,可以使用现有的开发工具和环境,也可以仅仅使用一些SDK(Software Development Kit)。Windows CE6.0支持Unicode超大字符集,NLS(National Language Support)的支持使得开发国际化的软件更加方便,对已有的国际化和本地化也更容易实现。1.3 面向对象编程1.3.1从结构化到面对对象结构化程序设计方法本质上是面向过程的,它不能直接反映人们解决问题的思路,因此这种模式存在着固有的缺陷,主要体现在如下两个方面。(1) 程序的可重用性差。目前的应用程序变得越来越大,越来越复杂,但其中有很多重复性的工作,代码重用成

    21、为提高编程效率的关键。采用传统的SP(结构化编程)模式,每开发一个新的应用程序,程序员几乎都要从零开始做起,并且要针对具体问题做大量重复而烦琐的工作。即使重用代码,也只是进行简单的拷贝,要实现的功能稍有不同,就会导致对代码逐行进行修改,也就是说,这种模式不能对已编好的应用程序的某些部分直接继承引用。(2) 维护程序的一致性差。应用传统的SP模式开发应用程序时,数据和方法是分开的,这很可能产生问题空间和方法空间在结构上的不一致。对程序运行起重要作用的数据一般要做全局处理,若为了新的需要改变某一数据结构,则所有的处理数据的过程都要进行重新考虑,做出必要的修改,以保证与数据的一致性。因此,要花费大量

    22、的精力来维护数据和数据处理过程的一致性,而且还可能产生不少错误。结构化的程序开发已经不能满足软件发展的需求了。这个时候,出现了面向对象的编程思想,简称为OO(Object Oriented)。面向对象的程序开发被称为OOP(Object Oriented Programming)。在介绍面向对象的思想之前,应该明确指出,面向对象是一种编程的思想,而与具体的语言无关。比较流行的支持面向对象的语言有C+、C#和Java。1.3.2面向对象程序设计采用面向对象模式建立起来的程序由许多不同类型的对象组成,各对象既是独立的实体,又可以通过各自的接口相互作用。对象中的方法决定要向哪个对象发送消息、发送什么

    23、样的消息以及收到消息后如何处理等。也就是说,OOP模式是以对象为中心的。由于对象反映了应用领域中具有完整的特征和行为的实体或单元,从程序设计的角度我们可以把它看成模块。因此,对象具有一定的稳定性,可以被当作一个控件去构成更复杂的应用。又由于对象一般封装的是某一具体的实际工作的各种成分,因此某一对象改变时,对整个系统几乎没有影响。为了描述功能相似的对象,OOP中引用了“类”的概念。类与类之间的关系是层次结构,属于某个类的对象除了具有该类的全部特征外,还具有层次结构中该类上层所有类的全部性质,这种机制称为继承。面向对象程序设计方法的继承性和模块性,使得新的应用程序可以在原来对象的基础上通过重用和扩

    24、展来进行,而不必从头做起或者拷贝原有代码。这大大提高了程序开发的效率,减少了重新编写代码的工作量,同时降低了程序设计过程中出错的可能性。面向对象方法的实质是强调从客观世界中的固有规律出发来构造系统,用人类在现实生活中常用的思维方式来认识、理解和描述客观事物。编写面向对象的程序设计使开发人员能够重复使用工作成果并使程序维护更为容易,并且不易出错。第2章 嵌入式网络视频监控系统总体设计2.1 系统总体框图本系统主要由操作系统定制、视频图像采集、视频图像传输三部分组成。系统首先通过USB摄像头采集现场实时视频信息,并对其进行压缩。然后,使用以太网卡在ARM开发板与客户机之间构建一个网络,从而将压缩的

    25、视频图像数据传输到主机端应用程序,终端用户即可在主机端通过客户端软件程序查看远程视频影像。视频监控系统总体结构如图3所示。图3 系统总体框架2.2 视频图像采集模块图像采集模块的硬件资源选用了当前市面上应用最广泛的USB接口的中星微摄像头。该款摄像头造价低廉,成像效果好,用于本系统中体现出了较高的性价比。在视频图像采集模块中,本系统使用的是中星微ZC030X系列。中星微摄像头采用了中星微301PLUS快速主控芯片。该芯片是一款高性能图像压缩芯片,输出MIPEG视频流数据。MIPEG(Motion JPEG)主要是基于静态视频压缩发展起来的技术,特点是基本不考虑视频流中不同帧之间的变化,只单独对

    26、某一帧进行压缩,通常可达到6:1的压缩率。它的误差稳定性非常好,可以获取清晰度很高的视频图像,而且还可以灵活设置各路视频清晰度,压缩帧数。 本系统直接从摄像头驱动中获取MJPEG视频流数据。2.3 ARM处理器模块嵌入式系统开发与其它软件开发最大的区别之一就是需要一个专门的目标设备平台,这个区别的主要原因是一般进行的开发都是在通用计算机上运行的,所以开发和调试工作在一台计算机上完成即可。但嵌入式开发需要应用在实际的嵌入式设备中的,而且,当今嵌入式设备中的很多结构没有统一,加上嵌入式设备一般都有较高的可靠性要求,因此需要专门的设备进行调试就不足为奇了,虽然有模拟器软件,但这并不能完全展现软件在设

    27、备上的表现,所以使用目标设备平台进行测试是必要的。由于ARM处理器的性能及价格上的优势且支持Windows CE,所以该系统选用以ARM为核心的三星S3C2410作为开发的硬件平台。在本软件系统中,使用Windows Embedded CE6.0的模拟器作为硬件平台。2.4 视频图像传输模块目前采用的最广泛的传输机制是Socket编程,通过Socket我们能对数据流通信进行底层和最高级的控制。通过视频图像采集模块得到的视频图像存储在缓冲区中,缓冲区由服务端应用程序申请获得,之后等待任何一个客户端连接到服务器,一旦客户连接到服务器,服务端应用程序就为每一个客户端建立一个线程用于传输视频图像数据。

    28、这样不同客户应用程序的通信就不会相互影响,且效率更高,增加了服务器的吞吐量。通信模块采用Windows Socket编程机制。编程语言使用强大的面向对象的C#语言。2.5 客户端接收模块在客户端连接服务器成功后,服务器为每一个客户生成一个Socket对象。为了保证数据传输的实时性和视频的连续性,每接受到一帧图像后,隔一段时间就向服务器发出一个确认请求,这样就保证了客户端不会出现拥塞,客户端通过一帧一帧地显示图像来达到实时监控的效果,由于网络中传输的是数据流,为了将其转换为图像,我们需要一个特殊的类Image来进行对字节流到图像流的转换。并且可以将接收到的视频数据予以保存。第3章 嵌入式网络视频

    29、系统服务端软件系统设计3.1 搭建开发环境作为一个开发人员,必需的开发环境必不可少,进行Windows CE6.0的开发主要有两用人才大方面:操作系统和应用程序的开发。操作系统开发包括操作系统的定制,驱动开发以及其它需要完成的底层工作。应用程序开发主根是与实际应用结合较紧密的程序开发。要搭建这样一个开发环境,到少需要两个方面,第一是硬件平台,第二是软件平台。硬件平台除了我们平常大多数开发需要使用的计算机外,还需要目标设备平台。目标设备平台最好是专门的开发板或者目标机,也可以使用现有的PC机进行搭建。软件平台包括操作系统,开发软件和应用程序开发软件。在Windows CE6.0开发中,微软公司将

    30、这些开发软件都集成到了Visual Studio 2005中。本文的硬件平台为模拟器。3.1.1 软件开发平台在Windows CE早版本的操作系统开发中,一般用到一个专门的定制工具:Platform Builder,每个版本的Windows CE都有与之对应的Platform Builder。到了Windows CE6.0微软公司通过战略性的调整,把Platform Builder做成了Visual Studio 2005的插件。Visual Studio 2005是一款集成开发环境,不仅支持一般性的桌面应用程序开发,同时支持嵌入式设备的相关开发,包括针对Windows CE操作系统的开发,

    31、使用Visual Studio 2005可以自由地选择自己喜欢的语言。Windows CE6.0支持.NET Compact Framework2.0,它是.NET Framework2.0 的一个子集,因此只要符合.NET Compact Framework2.0,那么它开发的应用程序就可以在Windows CE6.0 上运行。3.2 Platform Bulider 6.0 简介从本质上讲,Windows CE6.0操作系统的开发就是一个为目标设备定制操作系统的过程。这一过程包括在已有的操作系统模块中选择需要的模块,专门为目标设备定制模块,编译和调试。在安装过程中最好将其安装在默认的根目录下。Platform Builder for CE6.0包括如下 一些文件夹:1)CR


    注意事项

    本文(基于网络视频监控系统的设计说明文档格式.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开