基于B/S模式的视频监控系统设计

http://hi.baidu.com/huqing7002/item/3f89f7109f22bee45f53b110

随着计算机和网络技术的迅猛发展,闭路电视监控系统已经被计算机网络所替代。在计算机网络中的C/S模式和B/S模式的对比中,B/S模式显示出自己独特的优势,并且在视频监控系统的发展中逐步占据大部分市场份额。B/S模式的视频监控系统利用浏览器及计算机网络技术,实现广域网内多用户同时实时视频监控现场;利用系统严格的用户权限设置,使不同身份级别的用户具有不同的访问控制权限。该系统对于简化系统维护及客户端用户操作,具有较高的代表性和实用性。

1 引言
  
  随着数字信息技术、网络技术和监控系统发展的不断深入,监控系统前端设备对稳定性、可靠性、安全性等要求越来越高。基于B/S模式的视频监控系统是以浏览器为访问基础,配以监控设备为核心的符合现代视频技术发展潮流的监控系统,它采用了开放性的标准协议、分布式的体系架构具有功能全面,安装、操作简易,维护方便等特点,具有很高的性价比和扩展能力。
  
  2 B/S模式特点
  
  多年来,传统的以模拟信号为基础的闭路电视监控系统在我国得到广泛应用,成为各行业领域安全防范的重要手段,对保护企事业单位财产安全,防止犯罪起到重要的作用,但是它存在以下几点不足:
  
  1、设备多,投资大,必需配置很多的监视器、摄像头以及相应的视频线路,传输一般采用的是同轴电缆或双绞线,因而它的传输距离一般都小于1公里。
  
  2、结构复杂,施工量大,在最初施工时要进行十分复杂详密的布线工作,而且将来的扩展性也不够理想。
  
  3、集中式监控和管理,无法组成复杂的监控网络,相互之间的控制协议很难互通,联动只能在有限的范围内进行,只能在特定的监控室里才能看到监控点的情况,灵活性较小。
  
  B/S(Browser/Server)模式的监控系统由浏览器(Browser)和服务器(Server)组成。它的客户端是标准的浏览器,服务器端为标准的WEB服务器协同应用服务器响应浏览器的请求。数据和应用程序都存放在服务器上,浏览器可以通过下载服务器上应用程序得到动态扩展,服务器具有多层结构,B/S系统处理的数据类型可以动态扩展,以B/S模式开发的系统维护工作集中在服务器上,客户端不用维护,操作风格比较一致,统一为浏览器模式,只要有浏览器的合法用户都可以十分轻松的访问视频监控系统。
  
  B/S结构主要是利用了不断成熟的WWW浏览器技术,用通用的浏览器来实现原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。B/S模式是一种三层结构的系统,第一层客户机是用户与整个系统的接口,客户的应用程序精简到一个通用浏览器软件,如微软公司的IE,浏览器将HTML代码转化成图文并茂的网页,网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求,这个后台就是第二层的Web服务器,第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,把相应的处理结果返回给客户机的浏览器,如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。第三层数据库服务器,负责协调不同的Web服务器发出的对数据库的请求,管理数据库。
  
  B/S是从传统的C/S(Client/Server)发展起来的,它将C/S模式的服务器端分解成Web服务器、应用服务器和数据库服务器。同时,它简化了C/S中的客户端,使客户端的界面统一为浏览器形式。在这种结构下,用户界面完全通过Web浏览器实现,一部分事务逻辑在客户端实现,但是主要事务逻辑在服务器端实现,形成了如图1所示的3层结构。

  相对应传统监控系统,B/S模式的监控系统具有如下优势:
  
  1、设备与投资相应较少,一次投资,以后扩展方便。
  
  2、结构相应简单,可在已有的网络上进行使用,改造简单方便。
  
  3、灵活性大,不局限于仅在监控室内可以看到,可以应用在互联网上,只要拥有权限的用户都可以在网络上查看监控点的情况。换句话说,只要有一台联网的计算机,就可以在任何地方通过这台计算机,可以看到各个监控现场的实际情况。

3 B/S模式的视频监控系统
  
  基于B/S模式的视频监控系统,在充分利用现有专用网络线路的基础上,在监控中心增加一个视频服务器(内置Web服务器),处理来自局域网或广域网远程访问视频图像的请求。实际上,本系统是构建于浏览器/视频服务器/监控前端服务器的模型之上的。监控前端服务器提供数据流(包括视频流、音频流、控制信息)的发送和接收控制命令以启动云台镜头的动作;视频服务器的Web服务器接收客户端浏览器的HTTP请求,对请求进行分析转换,调用相应的逻辑处理程序。逻辑处理程序将处理结果返回给Web服务器,Web服务器再将结果以HTML和各种Script的形式传送给发出请求的浏览器,从而实现视频图像与数据的远程浏览。
  
  系统设计
  
  系统软件主要划分为:服务器模块和客户端模块。
  
  服务器模块的设计
  
  该模块是系统的核心,采用单进程、多线程的编程机制,实现服务器端的视频采集和多画面的实时显示、硬盘录像、视频数据的网络传输以及对石台、摄像头、服务器用户的管理等功能。具体功能组成如图2所示。

  视频采集回放支持1、4、8、9等多画面显示。可调节亮度、对比度等视频属性,各通道互不影响,并可实时抓取单帧图片。
  
  硬盘录像支持2种录像方式,用户可根据需要对不同的通道进行不同的设置。其中动态录像是运用了先进的动态监测技术,整个移动检测都在板卡上完成,并可动态调整其分辨精度,既能检测到微小的运动。可靠的运动检测与录像配置结合能有效地降低存储空间并能实现变帧率录像方案。运动检测与是否压缩、压缩的帧率、编码参数等无任何关系。
  
  网络传输采用多播方式,没有连接用户数量的限制。为保证视频传输的流畅性客户需要,提供了两种传输方式供用户选择:流文件和实时流播放。采用流文件播放方式时,播放器会尽量保证播放的流畅,可能延时较大;采用实时流播放方式,播放器尽量减少延时,可能不很流畅。用户可根据网络情况和实际需要选择传输方式。
  
  客户端接收模块的设计
  
  客户端按功能分为两类:一类是仅能接受服务器端发送的视频数据;另一类是不仅能接受视频数据,还可根据不同情况对服务器画面、云台控制等进行控制。控制数据通过TCP协议,利用WinSock实现可靠传输。客户端程序设计中,使用专门的线程进行数据接收,并把数据放在接收缓冲队列中,一边接受数据,一边解压回放。
  
  客户端的声音增加了共享模式,可多路同时播放声音,并可进行单路调控。采用H.264的音频压缩算法,声音更加流畅,同时还降低了由于摄像噪声导致的图像失真等现象。当服务器端参数改变时,客户端会自动识别帧率等参数,按当前压缩帧率播放,声音播放保持正常。
  
  4系统分析
  
  位于监控观测点上的摄像机摄取监控现场的图像后,将其转化为数字图像信号,再经压缩到管理中心的硬盘录像机,有硬盘录像机完成对现场状况的监视、记录和处理。
  
  视频监控关键是把视频、音频信号进行压缩传输,由在现场的传输器将视频信号、音频信号、检测数据分别压缩编码,通过响应的视频线、音频线传输。
  
  视频服务器负责接收传输器传送的压缩图像及其它数据,并将解压的图像及数据显示,反馈给用户。用户还可以通过接收程序发送控制数据,改变传输器的参数设置,来实现与远程的人机交互。其功能要求:显示模式为单画面,单画面放大;1、4、8、9等画面的分割;图像接收模式为单一图像、连续图像、更新图像和切换图;画面内窗口局部画面数码放大,调整画面明暗,核对现场监控资料等。
  
  监控系统的流程图

图3 视频监控基本流程图

视频监控系统采用的是典型的套接字浏览器/服务器结构,它由监控现场的视频数据处理模块,视频数据发送模块,云台、镜头控制模块,管理服务器端的管理控制模块以及监控中心和监控分中心的视频数据接收播放模块等几个部分组成,其流程图如图3所示。
  
  5系统主要功能
  
  1、系统能自动地通过摄像机进行摄录,进行连续地监视或根据用户需要定时监视。系统平时的工作方式为各摄像机循环扫描全面监控,监控人员可以任意放大观看任意摄像机的画面;
  
  2、通过调整摄像机,可以清楚地看到视场中的情况,分辨出进出物体;通过对云台的控制,可以方便地对所监控范围内进行扫描。

  3、录入的图像数字化压缩存贮在计算机硬盘里,压缩比可用软件进行调整。存贮的图像文件自动循环删除,硬盘中图像文件保留的时间取决于:硬盘空间大小、图像分辨率、图像压缩比、扫描切换时间等。还可以根据用户需要,加大硬盘以扩展存储周期,或增加其他外存设备
  
  4、系统可以随时方便、即时地检索、回放记录存贮的图像,如可按时间、地点(镜头)或图像文件进行检索和回放图像稳定、清晰,可反复读写,不存在传统监控系统中所存在的录像带的信号衰减和磨损问题。
  
  5、系统利用计算机强大的图像处理功能,可对采集的图像进行处理,包括画面修改、编辑调节、放大、缩小以及打印等等;也可以将图像保存为通用数据文件格式,用其他专业图像处理软件进行处理。
  
  6、计算机可以同时存储并显示来自1、4、8、9个摄像机所捕获的全部动态画面(如果硬件扩展,软件可自动检测,做出相应的调整)。
  
  计算机硬盘存储图像。系统将摄像机记录的图像全自动数字压缩储存在计算机硬盘上。
  
  6 系统技术特点
  
  1、系统采用TCP/IP的网络编程(WinSock编程),充分利用计算机网络实现视频、音频和数据的传输和控制。
  
  2、系统基于B/S模式,有效地解决分布式问题
  
  3、系统将音频、视频、数据分别压缩和复合成一个信息包在TCP/IP网络上传播,共同使用网络带宽
  
  结束语
  
  B/S模型的视频监控系统实现了分布应用对象之间的互联互操作,有效地实现了通过互联网分布式监控的要求,通过采用H.264视频压缩编码标准对视频信号进行采集,利用RTP/RTCP协议结合组播技术实现视频流的实时传输,具有网络带宽占用小、视频图像质量好等优点,同时通过合理设计服务器的控制功能,监控主机和客户端都可以随时加入或退出系统,系统规模可以动态变化,方便了今后对系统的升级和维护。

音视频开发(11)---基于B/S模式的视频监控系统设计相关推荐

  1. 安卓 camera 调用流程_音视频开发之旅(四)Camera视频采集

    目录 Camera基础知识 视频采集的流程 遇到的问题和常见的坑(重点) 收获 一. Camera基础知识 Camera 有几个重要的基础概念. facing相机的方向,一般后置摄像头和前置摄像头. ...

  2. b/s模式的服务器性能监控系统,基于B/S模式的PC监控系统及方法

    技术领域 本发明涉及一种基于B/S模式的PC监控系统及方法. 背景技术 随着近年来网络的急速发展,网络安全问题日益凸显,当发现桌面系统存在异常的时候往往需要使用PC(个人计算机)监控系统进行监控分析, ...

  3. 即时通讯音视频开发(五):认识主流视频编码技术H.264

    前言 即时通讯应用中的实时音视频技术,几乎是IM开发中的最后一道高墙.原因在于:实时音视频技术 = 音视频处理技术 + 网络传输技术 的横向技术应用集合体,而公共互联网不是为了实时通信设计的. 系列文 ...

  4. 音视频开发编程技术(一):视频编码格式

    1.视频是什么   所谓视频,其实就是将一张一张的图片连续的放出来,类似于播放放幻灯片一样.由于人眼的常规可视帧数是每秒24帧,也就是说当每秒播放的图片数量大于24张时,人眼反馈回大脑的画面就是连续的 ...

  5. 音视频开发之旅(四)Camera视频采集

    目录 Camera基础知识 视频采集的流程 遇到的问题和常见的坑(重点) 收获 一. Camera基础知识 Camera 有几个重要的基础概念. facing相机的方向,一般后置摄像头和前置摄像头. ...

  6. 音视频开发基础知识(2)——最通俗易懂的视频编解码理论知识

    更多音视频知识请关注公众号:进击的代码家 音视频学习项目:LearnVideo AndroidMediaCodecDemo 视频基础概念 像素 **像素是图像的基本单元,一个个像素就组成了图像.你可以 ...

  7. 闸机安装linux系统,基于嵌入式Linux的闸机监控系统设计

    摘要: 闸机监控系统,因其具备安全防范和人员管理功能,而被广泛应用于工厂自动化.安全保卫.物流管理等行业.同时,随着射频身份识别(RFID)技术和嵌入式技术的广泛应用,将三者结合使用,必会极大地提高闸 ...

  8. android 音视频流采集,Android 音视频开发(四):使用 Camera API 采集视频数据(示例代码)...

    本文主要将的是:使用 Camera API 采集视频数据并保存到文件,分别使用 SurfaceView.TextureView 来预览 Camera 数据,取到 NV21 的数据回调. 注: 需要权限 ...

  9. 音视频开发系列(14):将视频和音频同时推流到nginx服务器上

    上次分享了视频录制代码的封装,这次分享一下同时将视频和音频推流到服务器上,注意(这次分享的内容不包括音视频同步方面的),所以会出现音视频不同步的情 音视频同时发送的策略主要是:利用一个链表存储音视频帧 ...

最新文章

  1. 集合2--毕向东java基础教程视频学习笔记
  2. tensorflow reshape,range用法
  3. Android之运行PopupWindow提示Unable to add window -- token null is not valid; is your activity running?
  4. jzoj3501-消息传递【换根法,树形dp】
  5. 浅谈servlet与jsp的关系
  6. Centos7构建NFS服务器和连接
  7. 图书管理系统可行性分析报告范例_会做可行性分析报告贺州专家团队*金
  8. SQL 使用总结二 ( 不同库的日期总结)
  9. 因被曝严重漏洞,Avast紧急禁用其 JavaScript 引擎
  10. 新手降NAT网络第十步曲,小编提供思路。
  11. 魔力岛服务器稳定吗,魔力岛《飘渺仙剑》寻找GM你愉我乐线上活动
  12. 大型网站架构技术一览(李智慧著.大型网站技术架构.附录A)
  13. 好用的制造业erp系统软件有哪些?
  14. dbca 命令行静默方式创建Oracle RAC
  15. 【Vue】Vue-cli(脚手架)的目录结构详解(转载)
  16. 计算多项式的值——基于C语言程序
  17. 2011年4月全球企业市值排名前100
  18. CodeForces 158 B. Taxi(模拟)
  19. 关于h5绘制canvas生成图片的注意点!
  20. 实现osgEarth三维仿真场景模型雾的效果的添加解决方法

热门文章

  1. 快速修改数组的某个值_我用Python,3分钟快速实现,9种经典排序算法的可视化...
  2. 【声传播】——角谱理论、模式理论及三维傅里叶变换
  3. ROS 教程之 navigation : 用 move_base 控制自己的机器人(2)
  4. php如何打印程序运行时间,php计算程序运行时间的简单实例 - microtime
  5. apache php 整合 linux,apache集成php5.6方法分享
  6. 创龙28377d历程_C28x系列的28069、28377D的PWM使用经验
  7. 100g光模块厂家排名_100G光模块固件设计示例
  8. 线程实现的方式、多线程模型
  9. JQzoom的一些问题
  10. 47不用加减乘除做加法