DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 803|回复: 0
打印 上一主题 下一主题

[安防] 3G视频监控系统中关键技术的研究与实现

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-22 00:01:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
摘要:描述了基于3G标准的无线视频监控系统关键技术的研究与实现方案,主要包括基于H.264的双码流模块、多线程、RTP打包等,它不仅具有传统监控系统稳定性高、实时性好、免布线等优点,而且用户可以随时随地通过3G网络进行视频监控和视频图像录制。测试结果表明,各模块都达到预期指标,3G无线环境下可进行实时视频浏览,视频质量与有线局域网相比相差不大。
关键词:视频监控;3G网络;双码流;RTP

0 引言
    经过多年的发展,视频监控技术已由早期模拟设备为主的第一代视频监控系统发展到目前的数字视频监控,人们已不再满足于传统的监控系统。随着3G技术难点的突破以及3G网络的发展,使3G无线视频监控的实现成为了可能。在此背景下提出了一个基于3G标准的无线视频监控系统的设计方案并实现了基本功能,本文着重介绍该系统关键技术的实现方法,包括双码流模块、多线程通信、RTP封装及改进,最后讨论了无线网络视频传输健壮性的问题以及解决方案。

1 双码流技术的实现
    目前,困扰中国网络视频监控市场发展的主要因素就是缺乏良好的网络基础环境,而双码流正是针对这一问题提出的解决方案,它是对安防行业的一次提速。
    双码流,即在视频编码端中同时存在两种码流。双码流是通过在编码端采用两种格式或两个不同的分辨率分别进行编码来实现的。该监控系统基于DM365硬件开发平台,由于DM365开发板属于DAVINCI系列,必须深入研究DM365应用层调用具体算法的结构,如图1所示。由图中可知,应用层调用的接口是DMAI(DaVinci Multimedia Application Interface),它是DSP提供给ARM端应用程序的调用接口。DMAI是各种模块集合,应用程序可以从中选择模块来使用。此外DMAI提供了源码,便于修改使用,以满足应用要求。DMAI里面有各种接口实现方式,修改DMAI接口具体实现使其满足双码流。




    首先将DM365中两个编码通道全部使能,保证了开发板对双码流的支持,然后,在应用程序中采集两路的数据,分别调用DMAI中的编码函数Vencl_create,进而对两路数据进行两次编码,这样就得到两路不同分辨率大小的编码数据流。本文实现了一路D1,一路是CIF大小(用于传输)的码流,并且都达到20帧的速率,可以保证视频流质量。它在现有网络瓶颈下兼顾了图像质量和传输实时性,可以突破网络瓶颈,根据网络带宽灵活选择码流格式,达到本地高清存储,同时保证一定远程监控质量的低码流网络传输。

2 多线程技术在3G无线视频监控中的应用
    由于视频图像传输需要做到实时性和良好的传输质量,而系统需求的功能又比较复杂,包括视频数据采集、视频编码、RTP打包发送、视频数据流保存等工作,而它们的流程又不是简单的顺序执行,所以这里引入了多线程。
    本论文提出的方案中包括Capture,Video和Writer三个主要线程,分别完成原始数据YUV数据的采集、H.264数据压缩、视频数据的写文件,而在视频采集线程中加入了异常检测模块(该模块利用原始数据进行检测异常),在视频数据压缩线程中采用了双码流技术,并将CIF分辨率的压缩数据进行RTP协议封装,在Writer线程中实现了以时间为文件名的保存方式并将其保存到SD卡中。在此基础上实现设防、拆防、异常检测、客户端与监控端通信,又引入了两个线程,分别完成等待电话、客户端与监控端的SOCKET通信完成命令传输功能。整个线程结构与通信方式如图2所示。




    采用了pipe管道进行线程间通信,且设置为阻塞模式,整个流程即Capture线程得到数据,将地址送给Video线程,Video线程经过H.264视频压缩把DI分辨率的地址送给Writer,而CIF分辨率根据发送标记来确定是否发送,Writer线程完成写文件操作后,将buffer指针返回,完成一帧采集、编码、发送、保存等工作,如此反复循环。而其他线程通信则采用全局变量来进行传输标记位,而无需使用FIFO,降低了实现复杂度。

                          
                       
                          
                               
3 RTP协议封装及改进
    本文采用RTP协议,提供了端对端传输服务的实时传输协议,用来支持在单播和多播网络服务中传输实时数据,而实际数据的传输则由RTCP控制协议来监视和控制。RTP协议一般要求与RTCP一起使用,来保证数据传输质量。这种结构在本次设计无线环境会遇到两个问题:
    (1)如果增加RTCP,那么增加了复杂度,降低了实时性。
    (2)RTP协议没有加密信息,容易被非授权用户浏览到视频数据。
    针对第一个问题,本文提出一个策略,即在编码端RTP打包时,在每个NAL单元头的前面加上4个字节的帧的长度,解码端只要根据NAL单元的长度,即可判断是否在传输中有错误,如果有将该NAL单元丢弃,此时无需采用RTCP来向监控端反馈信息,从而降低实现复杂度;此时虽然丢弃了一个NAL单元,但是监控端的帧率是20帧/s,根据人眼视觉残留的效应,这基本上不会引起人眼的察觉。这里还要说明,当NAL单元的帧长大于MTU时,为了避免底层驱动将其分包,需要应用层采用分片打包方式,而此时只需在NAL单元的第一个分包增加4个字节的帧长度信息,而无需在每个分包上都加上该字段。这样在手机端无需返回RTCP包等反馈信息,降低了实现复杂度,增强了实时性。
    针对第二个问题,本文提出了一个简单加密方案,具体采用的策略是在关键帧后加上自定义加密信息,本设计为3 b的自定义信息,在解码端只要判断该RTP分包是关键帧,去掉RTP头,然后去掉4个字节帧长度信息,再去掉自定义3 b信息,而其他帧不做任何改变。当解码端收到RTP包时,对于非关键帧虽然能正常解包,但是它并不能独立解码,它必须依赖关键帧,因此关键帧加密后,只要关键帧不解密,其他帧都不能正常播放。这种方法无需在所有帧上都加入加密信息,只在关键帧RTP打包增加了几个bit,就达到了比较好的加密效果,在应用中要注意效率和复杂度的权衡来调整相应方案。

4 无线视频传输的健壮性研究
    由于本文提出的视频监控系统,需要在3G无线网络中传输,这势必会受到各种因素的影响,这种干扰,轻微时不会淹没正常图像,而严重时图像就无法观看,或者由于无法捕捉到关键信息而无法显示图像。下面首先分析这种故障产生的原因:
    (1)视频编码端本身的问题。视频编码端传输线屏蔽性能差造成信号产生较大衰减。此外,编码端也可能受到辐射、设施腐化等不定因素的影响,这也会产生同样的问题。
    (2)无线传输环境的影响。无线信道中存在着Rayleigh衰减和多用户干扰,会在传输位流中产生突发性错误(Burst Error)。但压缩后的码流在无线信道中传输仍然存在一些棘手的问题,一方面,这些压缩后的码流对信道比特误码非常敏感;另一方面,无线信道由于多径反射和衰落引入了大量的随机误码和突发误码,结果在解码端将失去与编码端的同步,同时预测编码技术会将错误扩散到整个视频序列中,降低了重建图像的质量。因此,为了实现良好质量的视频传输,必须结合无线信道的传输特性,采取一定的容错措施。
    基于以上方面的考虑,以及断续无法重连的问题,本文提出一种方案,并在实践中得到良好的验证,有效地解决了以上问题:即在编码端得到编码序列后周期性地发送两个参数集,即序列参数集和图像参数集,由于它们包含了解码需要的大部分关键信息,包括图像大小、量化参数、NAL单元类型等,因此即使在解码端第一次无法与编码端同步,也可以在后续过程中通过上述两个参数集重新同步。未插入参数集之前、插入参数集之后的示意图如图3,图4所示。




    本文的具体方案是在编码端周期性地发送上面的两个序列集,会遇到一个问题,即发送间隔设置,这里提出H.264中一个重要概念IDR帧,由于编码器算法是隔30帧编码一个IDR帧,那么可以在这一个IDR帧之前加入上述两个参数集,当然也可以设置间隔为60,90帧,但这会引入更大延时,由于监控产品严格的实时性要求,所以本文选定了隔30帧周期性发送,那么实际的关键帧间隔则变为32帧。同时可以调整RTP协议里面的时间戳字段,使其配合关键帧间隔的变化。
                          
                       
                          
                               

5 测试结果
    下面是对有线局域网和3G网络分别在有码率控制和无码率控制的条件下得出的测试结果,如表1所示。




    下面是在有码率控制且为80 Kb/s下,实验室有线、3G网络状况下的视频截图,如图5,图6所示。




    实验结果表明该监控系统达到设计的主要指标以及带宽要求。系统有双码流产生,一路保存,一路CIF分辨率的数据发送并用VLC播放器接收后能实时播放,而且相比有线环境视频质量没有受到很大影响,且可以实现随机接入,延时2~3s。

6 结语
    基于3G标准的无线视频监控综合了多门技术,主要包括视频编解码、3G无线网络、流媒体协议等,随着视频监控产业的发展,这些技术也随之成为很有价值的研究课题。本文介绍了无线视频监控的几个关键技术实现,并用软件方法实现了视频流实时传输。随着3G网络速度的提高和压缩新技术的实现,可以进一步降低延迟,得到真正的实时传输,为人们的生活带来了更大的便利。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-5-19 11:42 , 耗时 0.093536 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表