法律状态公告日
法律状态信息
法律状态
2020-04-14
授权
授权
2018-06-05
实质审查的生效 IPC(主分类):H04N21/61 申请日:20171214
实质审查的生效
2018-05-11
公开
公开
技术领域
本发明涉及互联网端到端部分可靠传输领域,特别是一种基于隐马尔可夫模型的部分可靠视频传输方法。
背景技术
作为卫星网络中重要的多媒体应用,高清晰度(HD,High-Definition)、实时视频目前越来越占据流媒体应用的主导地位。对于此类时延敏感型应用,传统的传输策略无法适应具有有限带宽、高误码率的卫星信道,因此,如何为卫星网络设计高效、具有QoS和QoE保障的视频传输协议是卫星网络多媒体应用的关键技术之一。
可靠传输控制协议(TCP)和不可靠的用户数据报协议(UDP)都可以作为视频通信系统的传输层协议。TCP保持在因特网数据传输中使用的主导地位,以实现网络中的防火墙穿透并保持不同数据流之间的友好性。很多论文中都采用底层基于TCP协议的视频传输方案。比如,提出的CS2P协议通过分析不同会话数据集吞吐量特性,预测初始吞吐量,并利用隐马尔可夫模型(HMM)建立中期流量预测模型,通过吞吐量速率控制实现视频传输的自适应性。PATON协议利用向前纠错编码机制、视频帧优先级选择机制和自适应冗余度方法来提高实时视频流质量。但是,由于卫星网络具有很高的链路误码率,当网络中存在较高随机丢包时,视频应用数据直接使用TCP协议作为底层协议进行数据传输存在很多问题:首先,TCP协议的可靠传输机制会重传丢失的数据包直至数据包被正确接收,但对于时延敏感的应用而言,重传后的数据包很可能在接收方收到前就对于应用播放已经失效;其次,在丢包事件发生后,TCP协议的拥塞控制及拥塞避免机制会导致视频流数据的带宽占用率低,在与UDP流竞争时无法获得较高的带宽占用量,无法保证视频流的QoS。
大部分视频应用数据主要基于不可靠的流媒体传输协议,例如Skype、WebRTC等通过优先级选用UDP或RTP协议进行数据传输。GCC协议在RTP/RTCP协议上进行协议控制,利用Kalman滤波算法来估计网络中数据包的时延梯度,预测网络拥塞程度,该协议被实际用于Google Hangouts和Chrome WebRTC协议栈;DCCP协议采用增量序列号的原理,通过评估数据包是否超过其预定的生命周期来判断是否重传丢失的分组。但不可靠传输协议的传输方案同样存在一些不足:首先UDP与RTP协议没有拥塞控制机制,在网络状况较差时,持续大量地发送数据会恶化整体网络;其次,不可靠传输协议不能保证数据传输的可靠性,在卫星网络状况较好时,由于链路的高随机误码会导致的大的数据包丢失,严重影响高清应用的QoS质量。
发明内容
本发明所要解决的技术问题是提供一种基于隐马尔可夫模型的部分可靠视频传输方法(可以简称为APRT协议),针对卫星网络链路具有的高误码率特性,该方法能根据卫星网络信道特点,自适应的调整数据传输的可靠度,优化视频传输质量。
为解决上述技术问题,本发明采用的技术方案是:
一种基于隐马尔可夫模型的部分可靠视频传输方法,包括以下步骤:
步骤1:隐马尔可夫模型规范定义
本视频传输方法采用了基于重传率预测的隐马尔可夫模型;采用网络底层的数据包丢包率作为隐马尔可夫模型隐藏状态,部分可靠传输协议的重传率为观测状态;采用网络丢包率作为网络性能判断的依据,再通过分析历史已有数据的特性,来建立隐藏状态转换概率和预测状态发射概率,从而得到协议数据重传率预测;
随机变量Wt表示在t时段内的重传率值,wt表示在网络中测得的真实重传率值,
隐马尔可夫模型假设状态随着马尔可夫过程变化而变化,其中当前状态的概率分布只由前一个时段的状态决定,即P(Xt|Xt-1,…,X1)=P(Xt|Xt-1);定义转移概率矩阵为P={Pij},其中Pij=P(Xt=xi|Xt-1=xj),根据马尔可夫特性,则πt+τ=πtPτ;给定隐藏状态变量Xt,假设网络丢包率的概率分布函数,即发射概率分布函数是高斯分布函数:
步骤2:离线训练
本视频传输方法中,在给定状态数量N的情况,利用训练数据集
步骤3:在线预测
1)预测初始化:隐马尔可夫模型依赖于当前时段网络丢包率的测量来预测下一个时段的网络丢包率,然而,初始时段没有历史数据用来进行预测,因此,使用
2)预测阶段:在某时段t,给定了更新后的隐马尔可夫模型状态的发射概率分布函数,再根据马尔可夫特性计算当前时段的发射概率分布函数,即πt1:t-1=πt-11:t-1P和预测的重传率
3)隐马尔可夫模型参数更新:在给定实际网络丢包率Wt=wt和πt|1:t-1,πt|1:t-1更新参数为
步骤4:拥塞控制
1)视频流速率控制:当接收端利用隐马尔可夫模型模型确定了视频的重传率后,返回自适应确认反馈数据包;当发送端收到该反馈数据包时,本视频传输方法拥塞窗口控制即采用Cubic TCP协议中的三次函数来更新窗口大小,达到对发送数据的速率控制;
2)快速重传阶段:当预测网络处于不拥塞状态时,接收端数据重传器返回所有应收数据的确认反馈,则发送端在收到数据包的3次重复确认反馈或确认超时后,进行该数据包的快速重传;当预测网络处于拥塞状态时,接收端数据重传会返回部分数据的确认反馈,则发送端只进行这些反馈的数据包的快速重传。
进一步的,所述步骤3中,
进一步的,所述步骤3中,利用Baum-Welch算法进行参数更新,πt|1:t-1更新参数为
与现有技术相比,本发明的有益效果是:
1)采用HMM模型预测传输策略的可靠度,这样可以在视频传输质量和实时传输性能方面做出妥协。通过离线训练和在线预测,对网络丢包情况和传输协议可靠度建立关系,在保证视频流质量的同时,保证数据包经历较低的时延。2)APRT能随着网络环境的改变来重传丢失的数据包,同时不丢失关键帧;APRT和传统的TCP拥塞控制速率控制机制兼容,在部分可靠传输中考虑了视频帧的优先级。和其他的视频传输机制相比,APRT能获得较高的吞吐量,同时保证低的数据包时延,即APRT能保证卫星网络中的视频流QoS传输。
附图说明
图1为HMM模型概览图。
图2为模拟拓扑图。
图3为单条数据流场景下各协议在不同链路误码率下的吞吐量对比图(场景A)。
图4为单条数据流场景下各协议在不同链路误码率下的吞吐量对比图(场景B)。
图5为单条数据流场景下不同协议在不同链路误码率下的往返时延对比图(场景A)。
图6为单条数据流场景下不同协议在不同链路误码率下的往返时延对比图(场景B)。
图7为单条数据流场景下不同协议在不同链路误码率下的时延抖动对比图(场景A)。
图8为单条数据流场景下不同协议在不同链路误码率下的时延抖动对比图(场景B)。
图9为10Mb/s带宽、10-7链路误码率时,不同视频测试序列的各协议主观视频质量对比图之一。
图10为10Mb/s带宽、10-7链路误码率时,不同视频测试序列的各协议主观视频质量对比图之二。
图11为10Mb/s带宽、10-7链路误码率时,不同视频测试序列的各协议主观视频质量对比图之三。
图12为10Mb/s带宽、10-7链路误码率时,不同视频测试序列的各协议主观视频质量对比图之四。
图13为200Kb/s带宽、10-6链路误码率时,不同视频测试序列的各协议主观视频质量对比图之一。
图14为200Kb/s带宽、10-6链路误码率时,不同视频测试序列的各协议主观视频质量对比图之二。
图15为200Kb/s带宽、10-6链路误码率时,不同视频测试序列的各协议主观视频质量对比图之三。
图16为播放缓冲器大小对APRT协议视频质量的影响。
图17为多条数据流共存时,各协议在不同链路误码率下的吞吐量对比图之一。
图18为多条数据流共存时,各协议在不同链路误码率下的吞吐量对比图之二。
图19为多条数据流共存时,各协议往返时延变化对比图之一。
图20为多条数据流共存时,各协议往返时延变化对比图之二。
图21为多条数据流共存时,各协议时延抖动变化对比图之一。
图22为多条数据流共存时,各协议时延抖动变化对比图之二。
图23为10Mb/s带宽、10-7链路误码率时,不同视频测试序列的各协议主观视频质量对比图之一。
图24为10Mb/s带宽、10-7链路误码率时,不同视频测试序列的各协议主观视频质量对比图之二。
图25为200Kb/s带宽、10-6链路误码率时,不同视频测试序列的各协议主观视频质量对比图之一。
图26为200Kb/s带宽、10-6链路误码率时,不同视频测试序列的各协议主观视频质量对比图之二。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
实验的仿真拓扑图如图2所示,实验平台包括发送端、接收端以及中间的卫星网络,所有的端系统都配有一条链路,针对如下的两种网络环境进行实验:
1)场景A:宽带网络,瓶颈链路带宽为10Mb/s,往返时延RTT为100ms;
2)场景B:窄带网络,瓶颈链路带宽为200Kb/s,往返时延RTT为50ms。
APRT协议和各种不同类型的协议进行比较,包括不同的可靠度和顺序度。变量ξ代表传输协议的可靠度。完全可靠协议是100%可靠。部分可靠协议ξ∈[0%,100%]。变量Ω代表协议的顺序度,Ω∈[0%,100%]。P1表示APRT协议,P2表示ξ=1、Ω=1的协议,P3表示ξ≤1、Ω=1的协议,P4表示ξ≤1、Ω≤1的协议。
由图3、图4所示,所有协议的平均吞吐率都随着链路误码率的增加而减少。如图3所示,瓶颈链路带宽为10Mbps时,所有协议都没有完全利用链路带宽,因而网络处于没有拥塞的状态。在链路误码率为10-9到10-6时,网络状态良好,此时APRT协议和p2协议平均吞吐量大于p3及p4协议的平均吞吐量。这是由于不可靠协议(p3,p4)吞吐量受限于发送端应用层向传输层的视频编码帧传输速率,而p2和APRT协议的可靠确认部分存在可靠数据包的确认,即会产生部分的重传数据包。当链路误码率大于2.0×10-6时,p3,p4协议平均吞吐量开始大于p2协议,而APRT协议开始表现出类似p4协议的效率性能,这是由于p2协议基于数据包确认反馈机制进行了拥塞控制,而APRT协议采用了不完全可靠的重传机制。
如图4所示,当瓶颈链路带宽为200Kbps时,链路带宽达到即将饱和的状态,此时,链路处于适度拥塞的状态。在链路误码率不同的情况下,p4协议始终保持平均吞吐量最高的状态,约为200Kbps,其次是p3协议,约为197Kbps,当链路误码率为10-9到10-6时,APRT协议平均吞吐量略高于p2协议,当误码率大于10-6时,p2协议的性能快速降低,产生以上结果的原因是p3、p4协议没有数据包发送控制机制,在吞吐量较大时,p3协议有数据包序列保证机制,因此吞吐量略小于p4协议;APRT协议则会根据HMM模型来判断网络的状态,在接近饱和带宽占用率时,采用部分可靠传输的机制,有选择性地进行数据快速重传工作,同时,在网络丢包率过大时,通过降低协议的可靠性,来弥补视频传输所需的数据传输实时性,从而在视频的高清质量与视频播放的连续性两者做出权衡。
图5表示场景A中链路误码率为10-5时,随时间变化的时延变化曲线。由图可以看出,p2协议数据包往返时延在[52.5ms,53.5ms]之间变化,APRT协议稳定后数据包往返时延在[52.5ms,53ms]之间变化,p3、p4协议数据包往返时延在[50ms,53ms]之间变化,这是在网络带宽未被完全利用时,由于p2协议的完全可靠性会使网络中的路由器缓存一定量的数据包,使数据包产生了排队时延,导致往返时延RTT的增长,而不保证可靠的协议中,随着不可靠性的增加,数据包的往返时延也相应的减小。结合图7中相应的时延抖动结果图同样可以看出,p2协议具有较高的时延抖动,多次达到0.3甚至0.5的时延抖动率,时延抖动越大,则表示路由器中排队情况越不稳定。
图6表示场景B中链路误码率为10-5时,随时间变化的时延变化曲线。由图可以看出,不同协议间往返时延差异巨大。其中,p2协议往返时延远远高于其它三个协议,在[70ms,440ms]之间呈现阶梯式规律性变化,这是由p2协议拥塞窗口的规律性变化导致的,由于此时网络利用率很高同时具有较高随机误码率,导致路由器存在大量的缓存数据包,当网络有空闲带宽时,窗口缓慢大,每发生一次丢包事件,拥塞窗口进入拥塞避免阶段。p4协议数据包小于p2协议数据包的往返时延,但由于此时网络利用率很高,而p4协议没有拥塞控制机制,所以路由器中也缓存了大量的数据包,导致数据包往返时延在150ms上下浮动。RTP协议则由于有有序性的保证,会在接收端丢弃失序的数据包,大部分时延值小于150ms。APRT协议也具有较小的往返时延,大部分数据RTT在[70ms,150ms]之间变化,在[25s,30s]阶段也具有一定的阶梯曲线特性,这是由于在基于HMM模型的网络情况预测下,APRT进行了自适应的确认数据包发送,从而在一定程度上避免了发送端拥塞窗口没有必要的减小,尽量使拥塞窗口处于相对稳定的状态。结合图8中相应的时延抖动结果可以看出,p2协议时延抖动范围为[0,0.5],时延抖动剧烈,APRT协议除个别点达到0.3,几乎都小于0.1,p3、p4协议具有最小的时延抖动,几乎都小于0.06。
表1考查不同网络状态下的数据包丢包情况,总体可以看出,在两种链路误码率情况下,协议丢包率变化基本为:p4协议丢包率>p3协议丢包率>APRT协议丢包率>p2协议丢包率,同时当带宽为200Kbps时,对p3、p4协议性能影响较大,丢帧总数达452个和314个,而APRT协议最高为178个。
表1单条数据流场景下,各协议在不同带宽及误码率下的丢帧情况
PSNR实验结果如表2所示,由表2上半部分可得在网络状态良好(带宽未被完全利用,链路误码率为10-8)时,四种协议都能达到较高的PSNR值,MOS值为5,但可靠性协议比不可靠性协议具有更高的视频传输性能,其中APRT协议的PSNR比p4协议的高出11.62%。由表2下半部分结果可知,在网络状态很差的情况(带宽较小,链路误码率为10-5)下,p2协议PSNR为0,表示所传输的数据已经不能进行视频解码重建,p3、p4协议的视频质量分别为Poor和Fair,而具有一定可靠性保证的APRT协议PSNR仍能达到32.89,保证了较好的视频传输质量。
表2单条数据流场景下不同协议在不同带宽及误码率下的视频质量
图9至图12、图13至图15分别展示了不同网络状态下采用不同视频测试序列的视频质量对比。对比源视频图像可以看出,APRT协议和p2协议的视频质量几乎和源视频图像一样清晰,而用p4协议传输的视频质量略差,尤其是对于动态性较强的画面。图13至图15中,由于在此网络状态下p2协议所传输的数据已无法进行视频解码重建工作,因此只显示了两种传输协议的视频质量,可以看到,基于APRT协议的视频明显好于基于p4协议传输的视频质量。
由图16可知,播放缓冲器越大,视频质量越好,当链路误码率为10-7时,播放缓冲器大小小于150,只能达到Fair的视频质量,高于150则为Good;当链路误码率为10-5时,播放缓冲器大小小于110,视频质量为Poor,大于240时则为Good,当播放缓冲器大于350时,继续增大播放缓冲器大小并不能提高过多的视频质量。
由图17、图18可得到与单条流几乎相同的实验结果,即所有协议的平均吞吐率都随着链路误码率的增加而减少。如图17所示,瓶颈链路带宽分别为10Mbps,链路误码率为4.5×10-6时,APRT协议与p2协议、p4协议平均吞吐量都在560Kbps左右。图18中不同于单条流场景,APRT协议平均吞吐量保持在p2协议、p4协议性能之间,当链路误码率达10-5时,APRT协议的平均吞吐量较p2协议增长27.71%。
往返时延及时延抖动的评价也类似于单条流场景的结果。图19表示场景A中链路误码率为10-5时往返时延变化曲线。由图可以看出,APRT协议数据包往返时延在[52.5ms,55ms]之间变化,p2协议稳定后数据包往返时延在[52ms,65ms],p3、p4协议数据包往返时延在[52.5ms,60ms]之间变化,结合图21中相应的时延抖动结果,可得APRT协议总体具有较的往返时延并能保持路由器中较小的排队时延。
图20表示场景B中链路误码率为10-5时,随时间变化的时延变化曲线。由图可以看出,当网络数据流增加后,较网络中仅有单条流时,往返时延从集中在150ms增加到400ms,其中APRT协议总体往返时延最小,但如图22所示,与p2一样同样存在较大时延抖动,在[0.05,0.4]之间变化。
表3考查多条数据条共存时不同网络状态下的数据包丢包情况,总体可以看出,在多条数据共存的情况下,各协议都具有较高的丢包率,尤其是在带宽为200Kbps时。APRT协议在10-7和10-5链路误码率时,丢包率较p4协议分别减小了77.69%和55.05%。
表3多条数据流共存时,各协议在不同带宽及误码率下的丢帧情况
由表4上半部分可得在网络状态较好时,多条流量共存时四种协议都能达到较高的PSNR值,同时MOS值为4,各协议的PSNR差异不显著,但当网络性能变差时,APRT协议性能明显高于其它三个协议,PSNR仍能达到30.65,保证了较好的视频传输质量。
表4多条数据流共存时,各协议在不同带宽及误码率下的视频质量
从图23、图24可以看出APRT协议和p2协议的视频质量几乎和源视频图像一样清晰,而用p4协议传输的视频质量略差,尤其对于动态性较强的画面。图25、图26中,由于在此网络状态下p2协议所传输的数据已无法进行视频解码重建工作,因此只显示了两种传输协议的视频质量,可以看到,基于APRT协议的视频明显好于p4协议传输的视频质量,由于第一行序列图像相对静止,因此明显好于第二行视频序列的传输,第二行视频序列传输中,p4协议的视频播放存在严重卡顿现象。
机译: 一种基于隐马尔可夫模型的部分可靠传输方法
机译: 基于隐马尔可夫模型的部分可靠传输方法
机译: 用于压缩和解压缩彩色数字视频数据的视频电信系统和方法技术领域本发明涉及一种用于压缩电信系统视频中数字彩色视频数据的方法,该方法具有用于生成视频信号的装置,该装置是用于生成视频信号的装置。将视频信号转换为多个彩色视频帧速率,每个帧图像由多个扫描线组成,扫描线由多个像素组成,图像中的每个像素由彩色数字分量组成(该方法包括确定功能的步骤);基于彩色数字(b)的三个分量中的至少一个的亮度像素,基于两个像素之间的亮度差异,针对当前图像表的扫描线中的至少大部分像素,确定至少一个参数决策。与每条扫描线中至少一个像素相距预定距离的像素,以及至少(c)比较决策参数与