×
单片机 > 单片机程序设计 > 详情

基于Web的区域联网视频监控系统设计与实现

发布时间:2020-06-15 发布时间:
|

1 引  言

  目前, 高速公路网已颇具规模, 但路面超载、超速、堵塞等现象时有发生, 严重影响了高速公路“快速、安全、舒适、高效”的服务质量。为了充分发挥交通监控的路径诱导、多路径交通流量调控的功能, 最大程度地发挥高速公路网络的通行能力, 高速公路视频监控系统正从线控模式向面控过渡, 由路段分管的模式向联网监控的方向发展。与此同时, 分布式远程多媒体视频监控系统得到了越来越广泛的应用。目前的视频监控发布系统一般采用基于Client/Server 模式构建, 其通用性、易用性和扩展性受到限制, 需要专门的客户端程序, 通常仅限于局域网或专用网内部使用。

  针对高速公路实际需求, 本文提出了基于Browser/Server 模式的带宽自适应的区域联网视频监控系统。考虑到目前省内路段监控系统大都采用了基于控制矩阵的模拟视频监控系统, 为节省投资, 兼容现有系统, 研制了嵌入式流媒体服务器ESMS, 集嵌入式处理器、视频压缩编码、Linux操作系统为一体, 并采用IP 组播、RTP/RTCP、流媒体协议, 以及自适应的拥塞控制算法等, 实时发布监控视频流。

2 区域联网监控的设计

  区域联网视频监控系统构成如图1所示。可分为三个层次: 交通信息用户、省交通监控中心、路段监控中心(分别简称信息用户、省中心、路段中心)。其中, 用户包括公众因特网、省交通厅相关职能机构、省公路局、区域监控分中心, 及其他机构等。信息用户直接Web 浏览器访问省中心的视频发布服务器, 通过认证和鉴权, 控制摄像机动作。省交通监控中心负责汇集下层各路段中心上报的交通信息(图像和数据) , 进行系统的身份认证和权限管理。路段监控中心是整个省域联网监控系统的基础, 负责把所辖路段的交通信息上传至省交通监控中心。

图1 基于B/S 模式的区域联网视频监控系统总体结构图

  在信息用户——省中心之间, 采用基于的B/S 模式的监控视频流发布, 遵循标准的流传输协议, 实现基于Web 的监控视频流服务。由于用户所处的公众因特网不支持组播, 视频发布服务器的监控视频流将采用单播发送给每个信息用户。其中, 省中心的视频发布服务器包括两类服务器功能:Web 服务器和流媒体服务器。与C/S 模拟的监控系统相比, 客户端采用Web 浏览器, 简化了客户端的工作, 屏蔽了交通信息用户网络的异构性问题, 也便于管理和维护。

  在省中心——路段中心之间, 各路段控中心一般采用点对点方式接入省中心, 因此, 模拟路段监控中心的嵌入式流媒体服务器ESMS, 或数字路段监控中心的流媒体服务器, 均采用组播方式, 不必像单播方式为每个接收端单独发送, 避免不必要的网络拥塞和分配过大的带宽资源。当然, 路段中心与省中心之间的网络设备须得支持组播。

  系统主要包括嵌入式流媒体服务器、视频发布服务器、网管服务器和信息用户浏览器。流媒体服务器获取路段监控系统的视频流发送视频流给视频发布服务器; 视频发布服务器一方面提供HTTP 访问服务。向浏览用户提供Web 操作, 另一方面, 获取路段的监控视频流后与用户建立联系, 进行监控视频流的发布。网管服务器的主要功能是: 管理系统的所以设备, 对系统内所有设备的参数进行设置, 对状态参数进行显示, 对网络参数进行配置, 用户权限和级别的设置, 对监控视频流带宽进行管理, 对设备故障进行管理等。信息用户客户端通过浏览器登录访问Web 网站, 以获取实时监控图像浏览等服务。

  在区域联网视频监控系统设计中, 需要考虑的重点问题主要是视频图像编码传输和视频联网控制两个方面。当前, 路段监控系统可成为数字路段监控系统和模拟路段监控系统, 对于上述问题的实现有所不同, 下面分别进行描述。

  在模拟路段监控系统中, 以视频控制矩阵为核心,采用点对点方式, 实现监控视频切换和控制。此类路段监控系统的区域联网, 必须解决模拟图像的采集、编码、IP 包传输, 以及图像源的切换控制等问题, 这就由嵌入式流媒体服务器ESMS来实现。

  数字比模拟系统要简单得多, 只需在路段中心设置流媒体服务器, 其主要功能类似于原路段数字监控系统和省域联网监控系统之间的“网关”。按照用户的操作请求, 进行必要的协议转换, 将路段监控以太网上所需的监控数据和监控图像进行必要的上传处理。 [page]

3 ESMS流媒体服务器的设计

  对于路段的模拟视频监控系统, 嵌入式流媒体服务器ESMS是模拟路段监控系统实现区域联网的关键。流媒体服务器需要完成模拟视频的编码传输和联网控制功能。其硬件设计采用了Atmel公司的ARM920T内核的嵌入式处理器AT91RM9200 和WIS公司的G07007实时MPEG/MJPEG硬件编码器的方案。ESMS 的硬件系统结构如图2 所示。

图2 ESMS 硬件系统结构图

  摄像机的模拟视频信号经视频A/D 转芯片SAA7113进行视频采样量化, 与此同时, 音频A/D/A编解码芯片UDA1344将输入的模拟声音信号采用量化一起送入音视频编码芯片G07007进行MPEG-4 格式的图像压缩。实时产生D1分辨率的PAL制每秒25帧的MPEG-4视频流, G07007通过16位的HPI接口与AT91RM9200 交互。AT91RM9200将采集的视频数据流, 按RTP/UDP/IP协议打包,通过以太网接口实现视频流的实时传输。

  网络处理器自带两个RS-232 串口。一个主要功能是根据用户需要设置IP编码器的各种工作参数, 例如网络的IP地址, 码的帧率、编码效率、图像质量等。另一个串口用来扩展RS-422/485 等多种接口, 进而实现远程控制目的, 例如摄像机的镜头焦距控制、光圈控制、云台控制、报警输入/输出等。ESMS采用遵循GPL协议的嵌入式Linux 操作系统。Linux 操作系统具有任务调度、存储管理、消息队列、中断处理等功能; 这里进行了裁减, 保留了进程管理、视频设备驱动、TCP/IP 协议栈以及TTY 字符设备驱动等模块, ESMS软件系统结构如图3所示。硬件驱动程序位于嵌入式Linux 操作系统之中, 是上层应用软件和下层嵌入式硬件之间的唯一桥梁。G07007的驱动程序按照Video for Linux (V 4L )视频驱动标准规范实现, 用于驱动视频采集/压缩硬件。该驱动提供了一组API函数, 使得A T91RM 9200 服务能够以比较一般的方式获取压缩视频数据, 设置硬件参数。当G07007 的FIFO 缓存达到门限值时, 会产生G07007 硬件中断。G07007的V4L驱动会响应该中断请求并维护视频缓存, 同时发消息给网络处理芯片服务进程, 通知其打包视频数据并传输出去。

图3 ESMS软件系统结构图

4 视频流带宽的自适应处理

  区域联网视频监控中, 各路段接入骨干网的方式不一, 网络结构复杂, 网络的拥塞、延迟、丢帧等势必会影响图像的质量。而监控视频流往往具有严格的时延和抖动要求。重传机制不利于视频传输的实时性, 因此, 系统应能及时的评估网络的状况, 结合MPEG-4 视频编码的容错特性, 通过增加或减少传输码率来保证数据的实时传送, 实现跨地域的带宽自适应的视频网络传输。

  监控视频流首先以RTP协议进行封装, 再用UDP协议对RTP数据包进行封装, 最后由IP网络层封装为IP数据包, 经网络进行传输。RTP本身也不提供可靠的传送机制以及流量控制或拥塞控制, 它依靠RTCP提供这些服务。在RTP会话期间, 各接收端周期性地传送RTCP。RTCP中含有已发送的数据包的数量、丢失的数据包的数量等统计资料。基于RTCP 的反馈机制, 发送端可以评估网络状态和接收端情况, 及时调整传送方式, 尽可能地解决网络实时数据传输中出现的不可预测的延迟、抖动等问题。基于发送端的码率控制主要有改变编码器的量化参数、丢帧和帧率控制三种方法。增大量化参数, 则发送端的视频流码率下降, 反之亦然。丢帧处理利用视频编码的特点, 例如在MPEG-4编码帧分为: I 帧(帧内编码)、P帧(前向预测编码)和B帧(双向时间预测) , I帧具有空间相关性, P 帧和B 帧同时具有空间和时间相关性。只有I帧和P帧可以作为参考帧, 因此在需要降低视频数据发送码率时, 可以根据帧的重要程度, 先抛弃一定数目的B帧, 再抛弃P帧来降低视频流码率。结果是图像分辨率降低, 但整体帧连续, 无停顿感。帧率控制方式则是通过抛弃某些视频图像帧, 改变图像帧发送速率, 如将原先30 帧/秒降为15 帧/秒来降低视频流码率, 结果是监控图像细节清晰, 但因图像帧的缺少造成帧间抖动和画面停顿。在区域联网视频监控应用中, 需根据实际需要选用相应方法。码率调整过程中采取加法提高、乘法降低策略, 即缓升快降方法。

5 结束语

  该设计方案深入探讨了基于B/S 模式的区域联网视频监控系统的架构和技术实现, 充分考虑了高速公路管理的体制和现状, 以及网络的安全性和异构性。其中Web方式操作简单、维护方便, 便于扩展; 基于带宽自适应的流码率控制在相当程度上改善了网络拥塞、时延等对监控视频流质量的影响; 设计的基于ARM和专用视频编码芯片的嵌入式流媒体服务器, 具有很高的可靠性和性价比, 作为视频监控的一个发展方向,具有广阔的应用前景。


关键字:视频监控  嵌入式系统  ARM  带宽自适应 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
ARM 汇编的必知必会