版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档-下载后可编辑一种远程视频监控系统的实现-设计应用视频监控技术在政治、经济、军事、文化设施的安全防范中有着举足轻重的作用,随着多媒体和计算机网络技术的发展,视频监控系统经历了模拟监控和数字监控的发展阶段,目前已到了网络数字视频监控阶段。本文介绍的远程监控系统,可利用现有IP网络实现远程监控和控制摄像头的调焦、云台转动等,可满足无人值守的要求,实现了功能强大、易于操作的监控解决方案。1系统总体结构
本网络远程监控系统由摄像机、网络视频服务器、网络远程客户端构成。前端将各个监控点所有视频、音频、报警等信号直接通过网络接入到监控中心,实现网络显示前端视频图像、录像存储、回放、云台控制等功能。本监控系统无论在本地还是网络控制端部通过网络传输视频图像。所有的操作和功能都是在管理计算机上安装监控软件来实现,如显示、录像、各种控制等。任一被授权的网络客户端能够通过网络平台实现对本地端的网络远程监看、录像存储、云台控制等操作,可实现权限管理。采用口前围际的H.264高压缩技术,大大提高压缩比及网络传输效果,每路均可达到全实时显示/录像;自动适应带宽并配置资源,优化网络传输速度快,提高播放画质,减少网络延时;系统支持多个分控端对一个主控端的同时远程访问,或多个分控端对多个主控端同时远程访问,各点之间相互独立,互不干扰;可设置分控权限,通过不同密码使分控端享有不同操作权限,以区分管理层次,加强管理的安全性。
2网络视频服务器结构
在本系统中选用的刚络视频服务器采用H.264硬件压缩技术,它集1路或4路音、视频采集、实时压缩、网络传输、联动报警等功能为一体,即插即看,用户可以利用客户端软件或IE浏览器直接通过Internet或局域网实时观看视频服务器传送的图像。
每台视频服务器均有独立的IP地址,可同时接入4路视频信号和音频信号,经过处理后转换为IP包,利用宽带局域网和TCP/IP协议把这些数据包发送给监控中心的视频主机(PC机)或网上授权用户。视频主机上运行Client端监控软件,可实现1/4/9/16画面的实时视频监控,也可驱动显示器阵列进行大屏幕显示。其他授权用户可通过IE浏览器进行一般性的监看。
3系统软件结构设计
本软件采用模块化程序设计及客户/服务器模式设计,模块间通过接口(函数调用)传递数据。
3.1服务器端软件结构
服务器端软件主要由主控模块、视频采集模块、监视控制模块、系统设置/用户设置模块、信息查询模块、视频信息处理模块和网络传输模块构成。它主要实现多媒体数据的采集、压缩、回放、存储、发送、信息的处理和查询等功能。
主控模块主要是控制各个模块的正常运行,对各个模块进行有效的管理,进行一些如初始化系统等必要的工作。
为了减轻CPU负担,我们采用了硬件方式实现视频数据的采集和压缩。视频卡以每秒30帧来捕获动态图像。采集后的视频数据分为两路,一路直接送到显示缓冲区中进行本地显示,另一路则由硬件压缩后存储在本地硬盘上,或同时传输到客户端,从而实现视频图像的实时采集、传输与显示。
监视控制模块的主要功能就是将各种前端的动作进行编码然后发送到前端,从而实现对前端摄像头的云台控制和镜头控制。
在系统设置/用户设置模块中允许超级用户修改任意用户的密码,还可以增加用户、删除用户和给其他用户分配权限。系统共有三种权限级别可供选择:“系统管理员”、“普通管理员”、“普通操作员”。每一种级别都己经分配了默认的权限。
视频信息处理模块包括视频文件的播放、存储、删除、抓图等子功能。
信息查询模块主要包括视频文件、图片和日志的查询等功能。系统在保存视频文件时,以文件创建的时间作为文件名的一部分,并且不同的摄像机所摄的视频文件保存在不同的目录中。这样在文件列表中可以方便的实现按年、月、日、时间段及摄像机来查询视频文件。
网络传输模块可以使客户端软件能通过LAN或Internet共享主控服务器的信息,它是利用Socket为客户机和服务器程序提供不同的Socket系统调用来实现信息共享的。
3.2客户端软件结构
通过客户端软件分布在LAN或Internet上的远程客户机就可以实现视频信息共享和远程控制等操作。该部分采用C/S(客户/服务器)模式设计,其实现功能由客户端软件和服务器端软件中的刚络传输模块两部分共同完成。
客户端软件上要包括主控模块、登录模块、播放模块、远程模块、实时传输模块、远程控制模块等。
上控模块主要是控制各个模块的正常运行,对各个模块进行有效的管理,进行一些如初始化系统等必要的工作。
登录模块主要是使用用户名和密码等方式使不同级别的用户拥有不同的权限,从而有效的实现安全控制,使非法用户不能进入系统。
播放模块包括本地播放和远程播放等功能。视频文件的播放是采用DirectShow实现的,由过滤器表管理器自动生成过滤器表来播放视频文件。我们可以设计封装一个类CMediaPlay,在该类中封装许多函数,比如播放视频文件的PlayFromFile()函数,控制播放的PausePlay()、ResumePlay()、StopPlay()等函数。
远程模块实现的主要功能是把远程服务器(主控机)上的视频文件等到本地客户端。
实时传输模块主要功能就是把主控计算机实时采集的视频信号在基本不失真的情况下实时的传输到发出实时传输请求的客户端,并由播放模块显示出来。
远程控制模块的主要功能是在客户端实现对主控服务器的部分控制。例如可以在客户端实现对云台和监控效果的设置。其设计思想是对控制内容进行分类编码,客户端在编码后边加上控制参数,然后把它传输到服务器端;服务器进程收到数据后,从中分解出编码和参数,然后调用相应的功能函数实现对目标的控制。在本模块中由于传输的是控制命令,为保证传输的可靠性,我们采用基于TCP协议的面向连接的通信方式。为了避免控制冲突,本模块要求在任一时刻只允许一个用户对云台和监控效果实施控制。因此在服务器端,对于这一端口只接受一个用户的连接请求,一旦建立连接,则把在服务器端对这两个部分的控制功能置为无效状态;当断开连接后,再把它们恢复为有效状态。为避免客户端长时间处于控制状态而导致其他用户无法进入控制状态,在本模块中置有一个定时器。当连接建立时启动定时器,开始计时;当用户按动键盘或鼠标任一键时,计时器归零,重新开始计时;当计时器计到一定时间后,自动断开连接并关闭控制对话框。
4软件设计关键技术
4.1通信协议的选择
TCP协议负责数据的流量控制,保证传输的正确性,具有数据重发功能,传输延迟造成抖动将使实时通信的质量严重下降,不适合实时通信。所以在INTERNET上传送多媒体信息时,采用的都是UDP/IP协议,而UDP和IP均不提供链接保证,数据传输的可靠性没有保障。所以这里采用了应用比较广泛的RTP/RTCP(实时传输协议/实时传输控制协议)。
RTP提供端对端网络传输功能,适合通过组播传送实时数据流,RTP报文格式中包括固定的RTP报文头、可选用的作用标识(CSRC)和负载数据。RTP本身并不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制和拥塞控制,它依靠RTCP提供这些服务。RTCP包的数量占所有传输量的百分之五。
在数据平面,服务器端将压缩打包后的音频、视频数据按照RTP的报文格式装入RTP报文的数据负载段,同时配置RTP报文头部的时间戳、同步信息、序列号等重要参数,此时的数据报文已经具有典型的时间特征,即被“流化”了。在UDP/TCP层,RTP报文作为负载数据装入UDP/TCP报文中,,由IP层负责的报文头部配置,实现网络传输。在客户端,实现方式相反,各网络层依次去除报文头部,并读取相关的控制参数和时间参数,终获取可以实时播放的音频,视频数据。
4.2组播技术
如果用单播传输技术来实现监控视频的多点传输,则需要在发送者和每个接受者之间占用单独的数据信道来传输数据量巨大的实时视频数据,这将导致发送者负担沉重、延迟长、网络拥塞。而采用广播又极易造成网络带宽的大幅占用,影响整个网络的通信效率。IP组播技术是目前能够限度地利用现有网络带宽资源的一种有效方法。
组播指的是在Internet上对一组IP站点进行数据发送,所有加入该组的接收者都可以接收到该信息。这一组IP站点是动态形成的,每一个IP站点都是可以动态地加入或退出。每台主机可以同时加入到多个组中。IGMP,是IP组播通信专用的Internet组管理协议,用于管理组成员加入或脱离组播组。
4.3Winsock对组播技术的实现
Winsock是一个基于socket模型的WindowsAPI集,WindowsSocketsAPI是Windows的网络程序设计接口,WindowsSocket规范定义并记录了如何使用API与互联网协议簇链接,支持流套接字和数据套接字。应用程序调用WindowsSocketsAPI实现相互之间的通信,WindowsSockets又利用下层的网络通信协议功能和操作系统调用实现实际的通信工作。
Winsock包括Winsock1和Winsock2两种类型,每一种类型都定义了一组应用程序IP组播接口函数,在实际的编程应用中。可通过Winsock提供的一系列应用程序接口来实现IP组播。本系统采用Winsock1实现IP组播通信,主要过程如下:
(1)用Socket函数创建一个数据报套接字;
(2)如果从组播组内接收数据,则利用Bind函数将套接字关联到一个本地端口上;这里要注意的是:不要采用小于1024的端口号,因为所有小于1024的端口号都被系统保留。在没有被别的程序使用的情况下,可以选择从1024到65535的端口。如果只发送数据,则不需要这一步;
(3)采用IPMulticast-TIL,调用setsocketopt函数殴置TIL;
(4)设置IPAddMembership选项和要加入的组播组地址结构,调用setsocketopt函数加入指定的组播组;如打算只发送数据,则不必加入一个播组;
(5)调用Sendto函数发送组播数据,调
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二年级上数学教案-认识时间(二)-用数学-人教新课标
- 大班数学教案及教学反思《招聘售货员》
- 2024年出口代理合同:纺织品出口业务协议
- 城市地下管线施工雨季应对方案
- 园林绿化施工中应急预案指南
- 汽车销售行业客户积分制度
- 工业厂房电气设备安装方案
- 造船工业维保工作总结
- 大坝基础高压旋喷桩加固施工方案
- 弱电工程师在疫情下的工作总结
- 科研的思路与方法
- 山东联通公司招聘笔试题
- 2024年新智认知数字科技股份有限公司招聘笔试参考题库含答案解析
- 金属探测器检测记录
- 安全教育记录范文(25篇)
- 2024年供应链管理竞赛考试题库
- 三年级语文下册第二单元群文阅读教学设计
- 习思想教材配套练习题 第七章 社会主义现代化建设的教育、科技、人才战略
- led显示屏工艺流程
- 建设项目设计管理方案
- 第13课《警惕可怕的狂犬病》 课件
评论
0/150
提交评论