基于嵌入式WEB的网络视频监控系统探讨
摘要:本文介绍了一个基于嵌入式WEB技术的网络视频监控系统的设计与实现,重点阐述其嵌入式服务器软硬件部分的设计思想和体系架构,并对其中涉及的若干关键技术进行了较为详细的介绍。
目前,以网络为基础的数字视频监控系统是视频监控系统发展的主流,而随着微处理器技术、计算机网络技术的进步,基于嵌入式WEB的网络视频监控系统逐渐得到了人们的广泛关注,其主要原理是:嵌入式视频服务器采用嵌入式实时操作系统,内置嵌入式WEB服务器,摄像机传送过来的视频信号经高效压缩芯片压缩后,通过内部总线传送到内置的WEB服务器。用户在监控端可以直接通过浏览器观看WEB服务器上的摄像机视频图像,授权用户还可以控制摄像机云台镜头的动作。本文所述的监控系统的原理图如图1所示。
![](http://m.amcfsurvey.com/editerupload/fetch/20140718/250609_1_0.jpg)
本系统由摄像机、嵌入式WEB服务器、传输网络和监控端组成。摄像机用来采集监控现场的视频。嵌入式WEB服务器是整个监控系统的核心,有硬件和软件两个部分,详细结构将在下面分别介绍。其主要功能包括:为监控端提供WEB访问页面;对监控端的访问进行有效性、安全性检查;响应监控端的请求,为监控端提供所需要的视频图像;接收监控端的控制信息,经过软硬件转换后对摄像机进行控制。每个服务器有自己的IP地址,在监控端可以通过浏览器界面访问服务器。监控端的功能则是显示现场视频,并根据需要向服务器发送视频请求以及对摄像机的控制信号。
2嵌入式WEB服务器的硬件结构
嵌入式WEB服务器的硬件结构如图2所示。其主要由CPU芯片、MPEG-4音视频编码芯片、Flash芯片、SDRAM内存、以太网络接口、大容量硬盘组成。其中CPU采用MOTOROLA公司的PowerPC系列嵌入式通信处理器MPC8250。MPEG-4音视频编码芯片完成对从摄像头传送过来的视频数据的压缩和编码。根据网络带宽、拓扑结构以及对图像质量的要求,本系统选用基于MPEG-4标准的分层可扩展性编码方案。压缩后的视频数据根据需要,可以存储在大容量硬盘中,或者通过以太网进行网络传输。为了实现视频存储功能,需要采用大容量的硬盘。
![](http://m.amcfsurvey.com/editerupload/fetch/20140718/250609_1_1.jpg)
3嵌入式WEB服务器的软件系统
嵌入式WEB服务器的软件设计与实现是本系统实现的关键之一,包括嵌入式操作系统与应用软件两大部分。
3.1嵌入式操作系统
嵌入式操作系统是支持嵌入式系统应用的操作系统软件,是在系统实时性、硬件相关性、软件固态化等方面有着突出特点的专用操作系统。本系统采用嵌入式LINUX操作系统,它是在根据系统需要对LINUX操作系统进行小型化裁剪与实时化的基础上实现的。使用LINUX的优势在于:其操作系统的源代码是开放的,可根据需要进行定制;系统内核小,因而对硬件的要求相对要低;支持多任务多进程,能提供较好的实时性。
3.2应用软件
服务器的应用软件结构如图3所示。其主要由WEB服务器、CGI程序、嵌入式数据库mSQL、视频调度与传输模块、存储管理与调度模块、摄像机控制模块等几个重要部分组成。
3.2.1WEB服务器与CGI程序
WEB服务器通过HTTP协议与监控端浏览器软件进行信息交互,提供其他应用程序模块的接口以及视频数据浏览界面和摄像机控制界面。此外,它还要对监控端的访问权限进行控制,过滤监控端的请求和控制信息,处理多个监控端的请求和控制的同步和优先级问题。本系统选择适合于嵌入式系统的BoaWEB服务器。Boa是一个单任务的HTTP服务器,支持能够实现动态WEB技术的CGI技术,源代码开放、性能高。同时服务器程序本身所占空间很小,因而十分适用于嵌入式系统。同时,本系统采用了CGI(公用网关接口)来实现动态WEB技术,CGI规定了WEB服务器调用其他可执行程序(CGI程序)的接口协议标准。WEB服务器通过调用CGI程序实现和浏览器的交互,也就是CGI程序接受浏览器发送给WEB服务器的信息,进行处理,将响应结果再回送给WEB服务器及浏览器。原则CGI程序可以用任何程序设计语言编写,但是用C语言编写的CGI程序具有执行速度快、安全性高等特点。
![](http://m.amcfsurvey.com/editerupload/fetch/20140718/250609_1_2.jpg)
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论