本发明专利技术涉及一种基于误差漂移失真模型的SVC视频FGS优先级调度方法,其包括以下步骤:(1)提出一种伪GOP的概念,每个伪GOP包含两个相邻的关键帧和之间的所有B帧;(2)建立一个由误差漂移导致的失真模型,所述模型描述为:E(ε↓[B]↑[2])=E(ε↓[H]↑[2])+(P↓[fwd]+1/4P↓[Biwd])E(ε↓[A]↑[2])+(P↓[bwd]↑[2]+1/4P↓[biwd]E(ε↓[C]↑[2])+μE(ε↓[A]↑[2])E(ε↓[C]↑[2])+v;(3)根据所述误差漂移失真模型,对SVC视频进行FGS优先级调度。本发明专利技术以伪GOP为基本调度单位,通过计算伪GOP中每一个质量包对所在帧和其他帧造成的率失真性能的影响来设置其优先级。利用该方法,可以以较小的复杂度实现FGS质量包调度,尽可能的提高重建视频的主观以及客观质量。
【技术实现步骤摘要】
本专利技术涉及一种SVC视频FGS优先级调度方法,特别是关于一种基于误差漂 移失真模型的SVC视频FGS优先级调度方法。技术背景近年来,随着互联网技术的发展和普遍应用,网络越来越影响人们的生活方 式。由于视频信息具有直观性强,内容丰富等特点,因此视频传输在网络传输领 域占据了越来越重要的地位。然而,在互联网上进行视频传输,对视频压縮、网 络传输等提出了新的挑战。由于网络拥塞导致的网络带宽不稳定,以及终端设备 应用需求和解码播放能力的差异,所有这些都要求视频编码和传输具有可伸縮的 特性。可伸縮视频编码(SVC)便是在这种需求下由高压縮效率标准H.264/AVC发 展而来的视频编码方案,它不仅能够提供空域、质量和时域的可伸縮性,提供精 确到位的码率截断,而且使得SVC效率大大提高,接近传统定码率视频编码的压 縮率。在H. 264/AVC的SVC扩展中,空间可伸縮性使用分层的方法,首先将图像分 解为多个空间分辨率的信号,每个分辨率都是一个空间编码层,帧内预测和帧间 预测可以跨层进行,具体包括层间帧内预测、层间帧间预测、层间残差预测。质量可伸縮主要通过对变换系数的重复量化和位平面编码来实现质量SNR的 可伸縮性。具体通过粗糙粒度可伸縮性(CGS),中等粒度可伸縮性(MGS),精细 粒度可伸縮性(FGS)等技术实现质量的可伸縮性。其基本思想为将视频的每一 帧都分为一个可以单独解码的基本层(BL)码流和在基本层解码器之上的增强层 (EL)码流。基本层采用混合编码的方法,通常码率比较低,只能保证最基本的 质量要求,确保解码端有足够的能力接收并解码基本层的码流。增强层则通过嵌 入式的对各增强层变换系数进行子位平面编码,以实现码流可以在任意点截断。为实现时域可伸縮性,每个空间层内都使用层次化B帧编码结构,高时间级 的图像通过低时间级的图像作为参考帧进行时间预测。如同先前的大多数编码方 案,SVC也采用运动预测和补偿的方法来消除时间冗余,达到压縮效果。误差漂移 是SVC技术遇到的一个重要问题,如果运动预测采用增强层图像作为参考帧,则 在解码端,由于码流截断造成重建参考帧和原始参考帧失配,会造成解码误差, 这样随着解码端高时间级的帧以低时间级的帧作参考不断地运动补偿和解码,会 造成误差的逐步扩散,形成误差漂移。在MPEG-4FGS中,运动预测只能以基本层为参考帧,虽然这样可以有效防止误差漂移,却导致了率失真性能的低下。因此, 在SVC中,运动预测的参考帧采用前一帧的最高质量重建帧,这样提高了率失真 性能,縮短了与不可伸縮编码效率的差距。但是一旦解码端没有接受到所有增强 层的信息,便会造成编码器和解码器之间的失配,引起误差漂移。为防止误差漂 移,SVC中提出了关键帧(key picture)的概念,关键帧与这个关键帧之前的关 键帧之间的所有图像形成一个图像组(G0P),关键帧允许以基本层图像作为参考 帧,关键帧之间的其它帧形成层次化B帧,以提供时间可伸縮性,从而将误差漂 移限制在一个GOP范围内,这本质上是一个编码效率和误差漂移控制之间的权衡。 为了最大限度发挥SVC FGS的优势,应该有一个比特流提取方法将目标比特 最优地分配给每个FGS图像。对于一个FGS码流,可以通过对不同的FGS层选择 截断以达到目标码率,但是不同的提取方案会造成率失真性能很大的差别。通常 地,最优码流提取要考虑到两个因素, 一个是每一帧FGS增强层的率失真函数, 另一个就是在每一个GOP中的误差漂移问题。也就是说,判断一个质量包的优先 级,既要考虑其对所在帧的率失真性能的提高,同时也要考虑由于误差漂移引起 的对其它帧率失真性能的影响。先前对码流截断方法的研究很不完善,很多算法 仍然采用对码流任意截断的方法,这样没有考虑各质量包率失真性能的差异以及 对整个序列率失真性能的影响,显然效率是不高的。而在参考代码中提出的码流 截断方案,类似的提出了独立率失真信息和非独立率失真信息的概念,并用加权 的方式计算每个质量包对整个序列率失真性能的影响,以此来判断其优先级,该方法共需要对码流进行2NT次的提取和解码,N是FGS层数,T为时间可伸縮级数。 可见,其计算复杂性相当大,因此, 一个简单快速而不失准确性的码率截断方法 还是相当必要的。
技术实现思路
针对上述问题,本专利技术提出的是一种基于误差漂移失真模型的SVC视频FGS 优先级调度方法,以较小的复杂度尽可能的提高重建视频的主观以及客观质量。 为实现上述目的,本专利技术采用如下技术方案1) 提出一种伪GOP的概念,每个伪GOP包含两个相邻的关键帧和之间的所有B帧;2) 建立一个由误差漂移导致的失真模型,所述模型描述为E(S) = E(4) + O何+ ^ )E(《)+ (A w + * )E(《)+ //E(《)E(《)+ (1)其中,£(^), 五(《)分别表示伪GOP中B帧和它的参考帧A,C的MSE, Sw表示b帧的当前残差帧h中原始残差值和重建残差值之间的差,;v^;^^,/^w分别表示B帧中采用前向预测、后向预测和双向预测的像素的百分比,//, V是两 个待定的系数;3)基于公式(1)所建立的误差漂移失真模型,按如下方法对SVC视频进行 FGS优先级调度(1) 计算估计公式(1)中两个参数/i, V,具体方法为先对码流进行基本 层抽取和全部抽取后解码,并统计每一帧在基本层的MSE以及每个残差帧在各质 量级的£(《),同时统计出在基本层提取后的每个非关键帧的p^,A^^,w,而后对于每一个非关键帧,根据其/7^,^^,p^和残差帧基本层的E(《),以及该帧和其参考帧基本层解码后的MSE,代入公式(1)计算出每一个非关键帧的//, V;(2) 为每个伪GOP中的各FGS质量包设置优先级,具体方法为根据每个质 量包对整个伪G0P平均率失真性能的影响来确定其优先级,其影响包括对所在帧 造成的非漂移失真和由于误差漂移导致的其它帧的MSE下降;其中,所在帧的非 漂移失真即为步骤(1)中得到的残差帧在传输该质量包前后的£(《),而后根据 公式(1)算出由于误差漂移造成的其他帧的MSE下降,从而得到伪G0P的平均MSE下降,通过循环选取造成伪G0P的MSE下降最小的质量包来得到优先级顺序及相 应的码率失真数据,具体步骤如下① 用一个序列MM^存放伪GOP中每一帧的MSE,将伪GOP的 MS£ra。/), 似1^^.0..(伊/7」^)]由步骤(1)中对码流进行基本层截断解码后得到,其中 g叩—w&为伪GOP的大小;用序列array—level存放当前比较优先级的质量包, 将array—level初始化为伪GOP的第一个FGS增强层;② 按照以下循环方法通过选择率失真斜率最大的质量包来逐步排列 array—level中各质量包的优先级,直至array」evel为空;i )将PSNR-rate斜率CurrMaxSl叩evG。p初始化为0,伪GOP的平均率失真斜率为PSNRVGOP = 20 log 255 - 10metm(log10(MS£「GO;J[l ..gop — +1])); ii)对于array—level中的每个质量包level (frame—no, FGS—level—no),判本文档来自技高网...
【技术保护点】
一种SVC视频FGS优先级调度方法,其包括以下步骤:1)提出一种伪GOP的概念,每个伪GOP包含两个相邻的关键帧和之间的所有B帧;2)建立一个由误差漂移导致的失真模型,所述模型描述为:E(ε↓[B]↑[2])=E(ε↓[H]↑[2])+(p↓[fwd]+1/4p↓[Biwd])E(ε↓[A]↑[2])+(p↓[bwd]+1/4p↓[Biwd])E(ε↓[C]↑[2])+μE(ε↓[A]↑[2])E(ε↓[C]↑[2])+v(1)其中,E(ε↓[B]↑[2]),E(ε↓[A]↑[2]),E(ε↓[C]↑[2])分别表示伪GOP中B帧和它的参考帧A,C的MSE,ε↓[H]表示B帧的当前残差帧H中原始残差值和重建残差值之间的差,p↓[fwd],p↓[Bwd],p↓[Biwd]分别表示B帧中采用前向预测、后向预测和双向预测的像素的百分比,μ,ν是两个待定的系数;3)基于公式(1)所建立的误差漂移失真模型,按如下方法对SVC视频进行FGS优先级调度:(1)计算估计公式(1)中两个参数μ,ν,具体方法为:先对码流进行基本层抽取和全部抽取后解码,并统计每一帧在基本层的MSE以及每个残差帧在各质量级的E(ε↓[H]↑[2]),同时统计出在基本层提取后的每个非关键帧的p↓[fwd],p↓[Bwd],p↓[Biwd],而后对于每一个非关键帧,根据其p↓[fwd],p↓[Bwd],p↓[Biwd]和残差帧基本层的E(ε↓[H]↑[2]),以及该帧和其参考帧基本层解码后的MSE,代入公式(1)计算出每一个非关键帧的μ,ν;(2)为每个伪GOP中的各FGS质量包设置优先级,具体方法为:根据每个质量包对整个伪GOP平均率失真性能的影响来确定其优先级,其影响包括对所在帧造成的非漂移失真和由于误差漂移导致的其它帧的MSE下降;其中,所在帧的非漂移失真即为步骤(1)中得到的残差帧在传输该质量包前后的E(ε↓[H]↑[2]),而后根据公式(1)算出由于误差漂移造成的其他帧的MSE下降,从而得到伪GOP的平均MSE下降,通过循环选取造成伪GOP的MSE下降最小的质量包来得到优先级顺序及相应的码率失真数据。...
【技术特征摘要】
1、 一种SVC视频FGS优先级调度方法,其包括以下步骤1) 提出一种伪GOP的概念,每个伪GOP包含两个相邻的关键帧和之间的所有B帧;2) 建立一个由误差漂移导致的失真模型,所述模型描述为e(s)=e(《)+ (/v +w)E(《)+ (/w ^e(《)喊+ v ( 1)其中,五(《)分别表示伪G0P中B帧和它的参考帧A,C的MSE, S 表示B帧的当前残差帧H中原始残差值和重建残差值之间的差,^^,/^rf, A,w分 别表示B帧中采用前向预测、后向预测和双向预测的像素的百分比,//, V是两 个待定的系数;3) 基于公式(1)所建立的误差漂移失真模型,按如下方法对SVC视频进行 FGS优先级调度(1) 计算估计公式(1)中两个参数//, V,具体方法为先对码流进行基本层抽取和全部抽取后解码,并统计每一帧在基本层的MSE以及每个残差帧在各质 量级的£(《),同时统计出在基本层提取后的每个非关键帧的;7—,;^,A^,而后 对于每一个非关键帧,根据其 ;v^^w和残差帧基本层的五(《),以及该帧和 其参考帧基本层解码后的MSE,代入公式(1)计算出每一个非关键帧的/^, v;(2) 为每个伪GOP中的各FGS质量包设置优先级,具体方法为根据每个质 量包对整个伪G0P平均率失真性能的影响来确定其优先级,其影响包括对所在帧 造成的非漂移失真和由于误差漂移导致的其它帧的MSE下降;其中,所在帧的非 漂移失真即为步骤(1)中得到的残差帧在传输该质量包前后的£(《),而后根据 公式(1)算出由于误差漂移造成的其他帧的MSE下降,从而得到伪GOP的平均MSE 下降,通过循环选取造成伪GOP的MSE下降最小的质量包来得到优先级顺序及相 应的码率失真数据。2、 如权利1 一种SVC视频FGS优先级调度方法,在执行步骤(2)时,具体 步骤如下 用一个序列71^^,存放伪GOP中每一帧的MSE,将伪GOP的 MS^GOT, MS£B。sg由步骤(1)中对码流进行基本层截断解码后得到,其中 gc^」&为伪G0P的大小;用序列array—level存放当前比较优先级的质量包, 将array—level初始化为伪GOP的第一个FGS增强层;② 按照循环方法通过选择率失真斜率最大的质量包来逐步排列array—level 中各质量包的优先级,直至array—level为空;③ 计算每个FGS质量包的率失真斜率,其中对于关键帧,如果包含在两个伪 G0P中,其质量包的率失真斜率等于其在两个伪GOP中的率失真斜率的平均;其余 质量包的率失真斜率等于其在伪GOP中的率失真斜率,这些率失...
【专利技术属性】
技术研发人员:孙俊,高文,王悦,
申请(专利权)人:北京大学,
类型:发明
国别省市:11[中国|北京]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。