基于rtp/rtcp的车载视频传输系统的制作方法

文档序号:7554808阅读:268来源:国知局
专利名称:基于rtp/rtcp的车载视频传输系统的制作方法
技术领域
本发明涉及一种车载无线网络通信技术领域的视频传输系统。
背景技术
随着交通运输和信息产业的发展,基于车辆网络的各种视频运用受到人们的广泛关注。车辆安全辅助驾驶系统、无人驾驶车系统、超出视距外的实时路况监控系统、实时语音视频通讯系统以及多媒体娱乐信息共享系统等在保障交通安全、提高交通效率、丰富人们生活等方面具有重要的意义。这些系统的构建都将必不可少地涉及到视频在车辆网络上的编码与传输。视频技术在有线网络和无线网络中,已经实现了视频会议、视频点播等应用的成功商业化。如何在车载无线网络通信中实现车与车之间流畅的视频传输及视频共享,是目前车载无线网络研究领域的一个热点。首先,车辆网络通信极其不稳定。物体对信号的反射、车辆网络的高速移动特性、道路结构及路边环境的复杂性等,使得车辆自组织网络信道特性不同于一般的静态或低速率运动的Ad hoc网络。车辆自组织网·络节点间的数据传输质量依赖于特定的传输场景。鉴于车辆自组织网络时好时坏的通信特性,若要进行实时视频通信,得到的视频质量必然随着信道而变化。倘若视频压缩模块输出的视频质量较好,在信道变坏的时候,往往容易发生信道拥塞。反之视频压缩输出视频质量较差,适合在信道不稳定或者是较差的情况,但是无法充分利用信道好的时间的带宽资源。其次,视频帧也有其独有的特性。视频的压缩以GOP为单位。GOP里面包含了不同的帧类型:I帧、P帧和B帧。丢失不同类型的帧带来的损失并不一样。I帧的丢失,会对整个GOP里的正确解码造成影响。为了尽量降低丢掉的I帧造成的无法解码,通常的解决办法是减少GOP的长度。然而,GOP长度减少,I帧增多,压缩的效率降低,产生的码率会变大,导致数据量变大。数据量变大,相应的UDP传输包也增多,如果遇到网络拥塞等情况,又潜在地增大了丢包数。因而,丢包率和GOP的长度,是一个“鸡-蛋”悖论。如果以丢包率作为一个衡量网络传输信道稳定性的参数,主动地对GOP大小和视频的码率或其它压缩参数进行调节,可以取得一个相对理想的传输效果。以下是对本说明书中部分术语的加注:
Ad hoc网络(能够临时快速自动组网的对等式多跳移动网络)
GOP (Group Of Picture,画面组,一个GOP就是一组连续的画面)
UDPCUser Datagram Protocol的简称,不属于连接型协议,因而具有资源消耗小,处理速度快的优点,所以通常音频、视频和普通数据在传送时使用UDP较多,因为它们即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。UDP协议的主要作用是将网络数据流量压缩成数据包的形式。)
Direct Show (DirectShow是一种开放式的开发环境,可以根据需要定制自己的组件) VANET (Vehicular Ad-hoc NETwork,车辆自组织网络)
Intel IPP 库(“Intel Integrated Performance Primitives” 是一套跨平台的软件函数库,它提供了广泛的多媒体功能,例如音频解码器、图像处理、信号处理、语音压缩和加密机制)
NS2 (NS2是一个仿真软件,可以对通信网络协议进行仿真的工具)
上述术语本身已是本领域公知的内容,因此相关内容不该认定为公开不充分。

发明内容
本发明提供一种基于RTP/RTCP的车载视频传输系统,通过动态地根据系统检测的丢包率,实时调节视频压缩质量,本发明系统可动态调整视频传输质量。为达到上述目的,本发明系统技术方案表征为:
一种基于RTP/RTCP的车载视频传输系统,其特征在于,是由网络传输控制模块和若干N个可以移动的客户端共同构建成了本发明整个车载视频传输系统,各个车载终端形成VANET网络,所述客户端为可以安放于车内的车载终端,每个车载终端都安装有Intel IPP库,所述车载视频传输系统为客户/服务器模式。每个车载终端共包括5个功能子模块,它们是视频采集模块、视频编解码模块、信息处理模块、视频播放模块、文件存储模块,这些功能子模块都构建在所述Intel IPP库上,其中:所述视频采集模块用于视频数据的采集,从传感器硬件设备获取视频原始数据,或者从文件视频流等获得视频原始数据,视频采集模块分别与视频播放模块、视频编码模块连接,用于本地显示视频文件或者传输前的编码压缩;
所述视频编解码模块用于减少传输视频数据冗余;
所述信息处理模块,为完成对视频采集模块数据的预处理以及视频压缩运算;
所述视频播放模块分别与视频采集模块和视频解码模块连接,用于播放显示本地采集的视频数据数据或者从VANET网络传输来的其他移动车载终端解码后的视频数据;
所述文件存储模块用于存储本地采集的视频数据和从其他车载终端的接收来的视频数据,再用于向其他接收端发送传输视频文件。本发明所述网络传输控制模块,构建在VANET上,网络传输控制模块用于可移动车载终端与车载终端之间的视频数据传输。该网络传输控制模块包括动态调整视频传输质量算法软件模块,表征为:该软件模块是基于网络丢包率及视频系列复杂度来动态调整视频传输质量,评估视频在经过模拟出来的车辆网络传输后的视频质量,针对不同复杂度的视频序列对影响视频传输质量的因素G0P、压缩量化参数qp、码率bitrate、包错误率测试,得出最佳参数组合。所述动态调整视频传输质量算法软件模块,其实施的方法,包括以下步骤,
首先,网络丢包率的获取步骤,用于获取当前网络丢包率;
然后,视频序列复杂度判断步骤,用于区分视频序列的运动剧烈程度;
最后,动态调整质量步骤,用于根据网络丢包率,将网络质量划分为三个等级:好、差、很差,在编码该帧前,如果网络质量从一个状态变化到另一个状态,根据视频的序列,调整编码参数,以符合该网络状况下的最优压缩参数。

本发明通过设计基于RTP/RTCP的车载视频传输系统,考虑到视频压缩参数不同对最终的传输质量会有影响,动态地根据系统检测的丢包率,实时调节视频压缩质量,达到最终传输质量提升的目的。创新点及有益效果:(I)设计了完整的车辆网络视频传输方案及系统。充分利用H.264编码器优秀的压缩性能以及双核处理器强大的计算能力,实现了车载系统视频采集、编码、解码、传输等功能。(2)根据车辆网络的丢包率,针对不同的网络情况,提供优化的压缩参数配置,并能够动态调节视频传输质量。有效克服了单一压缩参数下网络动态变化时无法充分利用带宽或者数据量过大导致网络拥塞等弊端。


图1是本发明整个车载视频传输系统的原理框图。图2是本发明协议栈层次图。图3视频采集流程图。图4编码模块流程图。图5解码模块流程图。图6车载终端硬件部分EC5-1719CLDNA开发板及外部接口的结构示意图。图7为本发明软件部分车载终端数据流向示意图。图8为视频传输链路。图9为自适应视频质量算法流程。
具体实施例方式
以下结合附图对本·发明技术方案作进一步介绍。如图1所示,网络传输控制模块和若干N个可以移动的客户端共同构建成了本发明整个车载视频传输系统,各个车载终端形成VANET网络,所述客户端为安放于车内的车载终端,所述每个车载终端都安装有Intel IPP库,所述车载视频传输系统为客户/服务器模式。每个车载终端共包括5个功能子模块,它们是视频采集模块、视频编解码模块、信息处理模块、视频播放模块、文件存储模块,这些功能子模块都构建在所述Intel IPP库上,其中:所述视频采集模块用于视频数据的采集,从传感器硬件设备获取视频原始数据,或者从文件视频流等获得视频原始数据,视频采集模块分别与视频播放模块、视频编码模块连接,用于本地显示视频文件或者传输前的编码压缩。采集流程如如图3所示,由DirectShow开发,视频采集的实现不是本发明技术方案对现有技术的贡献部分。所述视频编解码模块用于减少传输视频数据冗余,以解决视频数据量过大,VANET网络带宽无法满足的问题。视频编解码模块构建在Intel IPP库上,包括编码模块和解码模块两个部分。编码模块工作的基本流程如4所示。视频编码模块基于Intel公司提供的开发工具IPP和UMC。将Sample Grabber采集到的数据队列中的缓存数据进行H.264编码压缩,以适合目前有限的VANET网络带宽。解码模块流程如图5所示。用户从VANET网络收到帧数据后,提取出图像的大小、颜色格式、编码器类型等信息,初始化解码环境,调用解码函数,便可以得到解码帧,最后通过UMC提供的Video Renderer将图像供视频播放模块进行播放。以上编码、解码过程都是属于现有技术,编解码技术本身不是本发明技术方案对现有技术的贡献部分。
所述信息处理模块,为完成对视频采集模块数据的预处理以及视频压缩运算。所述视频播放模块分别与视频采集模块和视频解码模块连接,用于播放显示本地采集的视频数据数据或者从VANET网络传输来的对方(其他)移动车载终端解码后的视频数据。所述文件存储模块用于存储本地采集的视频数据和从对方(其他)车载终端的接收来的视频数据,再用于向其他接收端发送传输视频文件。所述网络传输控制模块,构建在VANET上,网络传输控制模块用于可移动车载终端与车载终端之间的视频数据传输,支持单播、组播模式。网络传输控制模块的传输层采用了 RTP/RTCP实时传输及控制协议实现在VANET网络两种传输模式上的数据反馈与控制。本模块的视频传输功能采用RTP Multicasting组播有根模型实现。所有的客户端加入相同的组播地址,绑定相同的本地UDP端口号A以用于接收组播数据。服务器端(即某一个车载终端)绑定另外一个端口号B,用于和所有的客户端进行数据交换。这样当客户端A发送数据到服务器端口号B,服务器接收后向组播地址及端口 A进行发送,这样所有的客户端都能接收到客户端A传输过来的视频数据。另外,所述网络传输控制模块包括动态调整视频传输质量算法软件模块,表征为:该软件模块是基于网络丢包率及视频系列复杂度来动态调整视频传输质量,评估视频在经过模拟出来的车辆网络传输后的视频质量,针对不同复杂度的视频序列对影响视频传输质量的因素G0P、压缩量化参数qp、码率bitrate、包错误率测试,得出最佳参数组合。该软件模块实施的方法,其特征在于,包括以下步骤,
首先,网络丢包率的获取步骤,用于获取当前网络丢包率;
然后,视频序列复杂度判断步骤,用于区分视频序列的运动剧烈程度;
最后,动态调整质量步骤,用于根据网络丢包率,将网络质量划分为三个等级:好、差、很差,在编码该帧前,如果网络质`量从一个状态变化到另一个状态,根据视频的序列,调整编码参数,以符合该网络状况下的最优压缩参数。以下给出具体的实施例进一步介绍本发明技术方案。本发明基于RTP/RTCP的车载视频传输系统实现步骤如下:
(I)车载终端硬件构架
每个车载终端应具有较强的处理能力,以满足视频压缩运算以及视频采集模块的传感器数据的处理。本实施例选用由研祥公司生产的EC5-1719CLDNA开发板,EC5-1719CLDNA是一款采用Intel笔记本电脑芯片组945GM设计的高性能单板电脑,处理器为Intel Core 2Duo,南北桥之间采用带宽达lOGb/s的直接媒体接口 DMI。其特点为高性能、低功耗以及扩展卡接口丰富。基于该开发板,根据需要还可以扩展了内存、存储、显示LCD、触摸屏、摄像头、无线网卡、麦克风等设备,如图6所示。视频采集模块从硬件设备中获取视频数据,这些硬件设备包括采集卡、电视接收卡、摄像头、录像机等。(2)车载终端软件构架
车载终端属于普通的C/S构架,即:由视频发送端和视频接收端两部分组成。不同的是,本发明每一个车载终端节点属于对等节点,既可以作为视频发送方,也可以作为视频的接收方,每个车载终端系统既有模块是来通过摄像头等采集视频,编码视频,也有模块(线程)是用来接受对方车载终端传来的实时视频,并且播放它。车载终端按照功能,可以划分为视频采集模块、视频编码模块、网络传输控制模块、视频解码模块、视频播放模块,如图7所示。本发明采用Direct Show来实现视频采集。网络传输控制模块构建在VANET上。网络传输控制模块的传输层采用了 RTP/RTCP实时传输及控制协议实现在VANET网络两种传输模型上的数据反馈与控制。视频编解码模块构建在Intel IPP库上,视频编码和解码可基于Intel的IPP这个编解码库来实现的。整个车载终端的视频传输根据视频数据的流向及所采用的技术,可以组成如图8所示的链路。本发明基于网络丢包率及视频系列复杂度动态调整视频传输质量的方法步骤如下:
(I)仿真平台搭建及参数组合获取
在NS2及Evalvid这两个工具的基础上,针对Intel IPP H.264编码器扩展,评估视频在经过模拟出来的车辆网络传输后的视频质量。采用Gilbert-Elliott错误模型模拟出车辆网络信道错误。针对不同复杂度的视频序列对影响视频传输质量的因素G0P、压缩量化参数qp、码率bitrate,包错误率测试,得出最佳参数组合。(2)自适应视频质量算法流程
I)将网络信道划分为三种类型:G00D,BAD, WORSE。

当丢包率低于1%,定义信道状态为GOOD ;
当丢包率大于1%,小于10%,定义信道状态为BAD ;
当丢包率大于10%,定义信道状态为WORSE。车辆网络的信道状况随着环境的变化而不断地在这三种信道类型间切换。2)每隔一段时间t,计算丢包率。若信道丢包率低于1%,按三种序列复杂度,提供高质量视频参数组合,如表I ; 若丢包率满足[1%_10%),按三种序列复杂度,提供IPPPP序列,GOP = 5,如表2 ;
假设丢包率达到10%甚至更高,表明车辆由于距离过大等因素,或者到了某个道路死角,信道受损。因此,此时采用IBBBP的GOP组合,如表3,同时降低码率,此时,所有的B帧丢包后都不会影响传输成功的帧的解码,相比于前面几种组合,综合的视频质量会有所提升。参考的三种参数组合分别如表1、2、3。详细的算法流程如图9。表I丢包率小于1%的视频压缩参数组合
权利要求
1.一种基于RTP/RTCP的车载视频传输系统,其特征在于,是由网络传输控制模块和若干N个可以移动的客户端共同构建成了本发明整个车载视频传输系统,各个车载终端形成VANET网络,所述客户端为安放于车内的车载终端,每个车载终端都安装有Intel IPP库,所述车载视频传输系统为客户/服务器模式; 每个车载终端共包括5个功能子模块,它们是视频采集模块、视频编解码模块、信息处理模块、视频播放模块、文件存储模块,这些功能子模块都构建在所述Intel IPP库上,其中:所述视频采集模块用于视频数据的采集,从传感器硬件设备获取视频原始数据,或者从文件视频流等获得视频原始数据,视频采集模块分别与视频播放模块、视频编码模块连接,用于本地显示视频文件或者传输前的编码压缩; 所述视频编解码模块用于减少传输视频数据冗余; 所述信息处理模块,为完成对视频采集模块数据的预处理以及视频压缩运算; 所述视频播放模块分别与视频采集模块和视频解码模块连接,用于播放显示本地采集的视频数据数据或者从VANET网络传输来的其他移动车载终端解码后的视频数据; 所述文件存储模块用于存储本地采集的视频数据和从其他车载终端的接收来的视频数据,再用于向其他接收端发送传输视 频文件; 所述网络传输控制模块,构建在VANET上,网络传输控制模块用于可移动车载终端与车载终端之间的视频数据传输;该网络传输控制模块包括动态调整视频传输质量算法软件模块,表征为:该软件模块是基于网络丢包率及视频系列复杂度来动态调整视频传输质量,评估视频在经过模拟出来的车辆网络传输后的视频质量,针对不同复杂度的视频序列对影响视频传输质量的因素GOP、压缩量化参数qp、码率bitrate、包错误率测试,得出最佳参数组合; 所述动态调整视频传输质量算法软件模块,其实施的方法,包括以下步骤, 首先,网络丢包率的获取步骤,用于获取当前网络丢包率; 然后,视频序列复杂度判断步骤,用于区分视频序列的运动剧烈程度; 最后,动态调整质量步骤,用于根据网络丢包率,将网络质量划分为三个等级:好、差、很差,在编码该帧前,如果网络质量从一个状态变化到另一个状态,根据视频的序列,调整编码参数,以符合该网络状况下的最优压缩参数。
全文摘要
一种基于RTP/RTCP的车载视频传输系统,其特征在于,是由网络传输控制模块和若干N个可以移动的客户端共同构建成了本发明整个车载视频传输系统,各个车载终端形成VANET网络,所述客户端为安放于车内的车载终端,每个车载终端都安装有IntelIPP库,所述车载视频传输系统为客户/服务器模式。本发明通过设计基于RTP/RTCP的车载视频传输系统,考虑到视频压缩参数不同对最终的传输质量会有影响,动态地根据系统检测的丢包率,实时调节视频压缩质量,本发明系统可动态调整视频传输质量。
文档编号H04N21/643GK103248964SQ20131011779
公开日2013年8月14日 申请日期2013年4月7日 优先权日2013年4月7日
发明者蒋昌俊, 张冬冬, 夏荣艳, 陈闳中, 闫春钢, 何良华 申请人:同济大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1