一种适应带宽的高质量视频编码方法与流程

文档序号:12967868阅读:181来源:国知局
一种适应带宽的高质量视频编码方法与流程

本发明涉及视频编码技术领域,具体来说涉及一种适应带宽的高质量视频编码方法。



背景技术:

如今,互联网的普及,使得视频的发展带来许多新的利用,使人们的生活更加便捷。视频电话,视频会议,视频直播,足不出户就可以达到面对面的交流。但在实际应用中,由于终端网络条件的限制,信息传输的速率会受到限制,实时视频的质量也会受到一定的影响。当网络状况不好时,视频信息无法正常传输,就会出现马赛克、掉帧、卡顿等现象,影响用户体验。要在限制带宽下,视频能够正常的播放,即要求视频流的码率要低于带宽提供的信息传输量。

随着应用需求不断提高,视频的分辨率越来越高,数据量也越来越大,然而,网络结构的复杂性和带宽有限性依旧存在。在办公、家庭等应用场景下,网络带宽较高、稳定性较好,高清视频可以实时、高质量的传输;但在移动应用中,带宽有限、流量费用高、稳定性差等特点,使得高清视频难以得到较好的应用。



技术实现要素:

(一)解决的技术问题

针对现有技术的不足,本发明提供了一种适应带宽的高质量视频编码方法,解决了目前的视频在移动应用中,带宽有限、流量费用高、稳定性差等方面存在不足的问题,使得高清视频难以得到较好的应用。

(二)技术方案

为实现以上目的,本发明采用的技术方案是:

一种适应带宽的高质量视频编码方法,包括以下步骤:

ⅰ.根据实际带宽约束确定目标码率;

ⅱ.视频先经过特征提取模块,得到影响编码效果的相关特征,并生成视频的特征矩阵,通过视频的特征矩阵与码率与质量关系模型的参数矩阵的线性关系计算出码率与质量关系模型的参数矩阵;

ⅲ.将目标码率带入到参数已知的码率和质量关系模型中,求出最合适的编码参数psnr,即峰值信噪比;

ⅳ.根据求解得到的编码参数psnr设置编码参数,通过对编码器选择,据此设置进行视频编码,生成符合带宽条件的最优质量的码流。

所述步骤ⅰ中当前时刻的目标码率可以是利用网络估计算法、预设信息、通过用户反馈来获知。

所述步骤ⅱ中视频提取模块采用空间复杂度、时间复杂度和分辨率三个视频特征:

空间复杂度,表征了一帧图像的纹理复杂度,采取对每一帧图像进行sobel滤波,然后对滤波后的图像计算标准差,求得每幅图像的si,最后取整个序列所有图像si的最大值,作为序列的si值;

时间复杂度,表征视频序列的时间变化量,采取对相邻两帧求帧差,然后对帧差图像计算标准差,求得ti,之后取所有ti中的最大值,作为序列的ti值;

分辨率,即视频每帧图像中像素数量,表示为横向像素个数w*纵向像素个数h的形式,采用归一化方法对分辨率进行数据处理,作为序列的s值;

通过对视频特征的提取,得到了视频的特征矩阵:

其中si为视频的空间复杂度,ti为视频的时间复杂度,s为视频的分辨率归一化参数。

为了探究视频在不同分辨率与量化参数的条件下,码率与失真度的关系,因而需要建立相应的率失真模型。通过对测试的视频序列进行分析,找到视频特征与参数之间的关系。可采取图像的客观评价标准——psnr来表征视频的失真度。psnr指峰值信噪比,其数学公式为:

其中,n为每个采样值的比特数,mse指原图像与处理图像之间的均方误差。

不同特征的视频在不同的分辨率下,虽然测得的码率—psnr曲线各不相同,但存在着一般的规律,如图3所示,即在码率较大的时候,psnr变化缓慢,曲线趋近于水平的直线;在码率较小的时候,psnr变化较快,曲线趋近于一条弧线。

因此码率与质量的关系可以用下面函数形式来表示:

此公式还可以表示为:

可见,在x较小时,对函数影响较大的是第一项,函数呈现倒数的形式;在x较大时,对函数影响较大的是第三项,函数呈线性。

当码率持续增大时,psnr会逐渐平缓,达到最大值。之后再增大码率也不会使得视频质量有所提高。一般的1080p视频编码后,码率范围在0-8mbit/s之间。所以本发明关注的码率范围也集中在这个范围内。之后的实验证明,该函数可以很好的拟合码率—质量关系曲线。在实验中发现,参数m一直较小,趋于0。因而,码率与质量关系模型函数还可以简化为以下形式:

其中,y为psnr,即峰值信噪比,x为码率,a,b,c为码率与质量关系模型的参数矩阵对应的元素值;

码率与质量关系模型的参数矩阵为:

通过对参数值和特征值的观察,视频的特征矩阵和码率与质量关系模型的参数矩阵近似满足线性关系,即:

p=hf+c

通过实验得到大量观测数据,利用matlab提供的polyfit函数采用线性回归方法,求得从视频的特征矩阵到码率与质量关系模型的参数矩阵的传递矩阵h和常数c:

将视频的特征矩阵f带入公式p=hf+c可计算出码率与质量关系模型的参数矩阵p,即求得a,b,c元素值。

所述步骤ⅳ中编码器选择包括:

根据步骤ⅲ所得psnr值,选择psnr最大的曲线对应的分辨率s和合适的量化参数qp值,并利用此参数进行编码。

(三)有益效果

本发明的高质量视频编码方法的流程图如图1所示,可以根据实际的带宽约束来调整码率参数,从而在同等码率条件下提供最优的视频质量。其根据码率和质量关系模型指导视频编码,在给定带宽条件下,根据模型选择的编码参数压缩后的视频取得更好的视觉效果,使得高清视频在有限带宽条件下能够得到较好的应用;解决了目前的视频在移动应用中,带宽有限、流量费用高、稳定性差等方面存在不足的问题,传统的视频编码一般根据预先设置好的参数来编码输出码流,如图2所示。

附图说明

构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为本发明适应带宽的高质量视频编码的流程图;

图2为传统视频编码流程图;

图3为本发明视频的码率与质量关系曲线图;

图4为发明实施例所述的不同参数下的码率与质量关系曲线图;

图5为本发明模型预测码率与质量关系曲线的性能图;

图6本发明验证例不同参数下的码率与质量关系曲线图。

具体实施方式

本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例:

本发明提供一种适应带宽的高质量视频编码方法,包括以下步骤:

第一步,确定根据实际带宽约束确定目标码率。可以是利用网络估计算法来获取,亦可根据预设信息来获得,甚至可以通过用户反馈来获知。本实施例采用用户设置反馈信息来获知带宽约束,确定目标码率范围在(0,8]。

第二步,根据输入视频提取视频特征,分别是空间复杂度、时间复杂度和分辨率。

空间复杂度,表征了一帧图像的纹理复杂度,空间上越复杂的场景,si值会越高。图像的纹理,即图像的边缘信息。边缘信息的检测是图像处理和计算机视觉领域中的基本问题。有许多检测边缘信息的算子。例如robertscross算子、prewitt算子、sobel算子、canny算子等。在本发明中,采取对每一帧图像进行sobel滤波,然后对滤波后的图像计算标准差,求得每幅图像的si。最后取整个序列所有图像si的最大值,作为序列的si值。soble边缘检测算法比较简单,实际应用中效率比canny边缘检测效率要高,但是边缘不如canny检测的准确。出于效率的考虑,因而采用sobel算子。sobel算子本质是一个离散的一阶差分算子,该算子包含两个3*3矩阵,分别为横向和纵向。本实施例中所传输视频通过上述算法计算得到的si值为34.41。

时间复杂度,也称为时间信息。表征视频序列的时间变化量。运动程度较高的序列,相邻两幅图像之间的差别就会越大,通常会有更高的ti值。在本发明中,采取对相邻两帧求帧差,然后对帧差图像计算标准差,求得ti,之后取所有ti中的最大值,作为序列的ti值。本实施例中所传输视频通过上述算法计算得到的ti值为12.452。

分辨率,即视频每帧图像中像素数量,一般表示为横向像素个数w*纵向像素个数h的形式,本实施例采用三种分辨率1920*1080,1280*720,1024*576,并以1920*1080为最大值进行归一化处理,得到s值分别为1,0.444,0.2844。

第三步:根据视频特征来计算得到码率与质量关系曲线的具体参数。

通过对视频特征的提取,得到了三个不同分辨率下视频的特征矩阵为:

通过对参数值和特征值的观察,视频的特征矩阵f和码率与质量关系模型的参数矩阵

p近似满足线性关系,即:

p=hf+c

其中,

将上述提取到三个不同分辨率下的视频的特征矩阵f1、f2、f3分别带入公式p=hf+c,从而求得三组码率与质量关系模型的参数矩阵p,即:

码率与质量关系模型函数为:

其中,y为psnr,即峰值信噪比,x为码率,a,b,c为码率与质量关系模型的参数矩阵对应的元素值;

码率与质量关系模型的参数矩阵为:

分辨率为1920*1080的码率与质量关系模型函数中参数a、b、c的值为:

a=43.59934,b=-6.75601,c=0.432387

码率与质量关系模型函数为:

分辨率为1280*720的码率与质量关系模型函数中参数a、b、c的值为:

a=42.47836,b=-4.2422,c=0.334991

码率与质量关系模型函数为:

分辨率为1024*576的码率与质量关系模型函数中参数a、b、c的值为:

a=42.15555,b=-3.51828,c=0.306943

码率与质量关系模型函数为:

第四步:以目标码率为输入,根据已知参数的不同分辨率下的码率与质量关系模型函数即可计算出不同分辨率条件下的psnr值。选择psnr最大的分辨率s和合适的量化参数qp作为参数设置编码器。

通过给定视频计算得到三个不同分辨率的码率与质量关系模型函数,得到码率与质量关系曲线,如图4所示,三线交点为(1.65,40.35)。当带宽大于1.65mbit/s时,编码器选择分辨率为1920*1080,仅改变量化参数以适应带宽;当带宽小于1.65mbit/s时,将原始视频变为分辨率为1024*576的视频,以该分辨率传输,再改变量化参数以适应带宽。这样,即完成了通过预测曲线对编码器参数选择进行指导。

验证例:

本发明通过如下验证例来进一步验证其功能特点:

一、模型精度

根据某给定视频提出的模型预测给定视频的码率与质量关系模型,得到的结果如图5

所示,每一行对应一个视频序列,各视频序列均不相同,每一列对应一个分辨率,从左向右分别为1920*1080、1080*720、1024*576。可见,本验证例提供的码率与质量关系模型可以准确的预测出给定视频的码率与质量关系曲线的变化规律。

二、带宽适应编码性能

根据以上建立的码率与质量关系模型,指导视频编码,可以在给定带宽条件下得到最优的质量。

例如,测试给定视频的si值为40.4650,ti值为21.0450,其模型曲线如图6所示,在高码率时qp值一般小于26,量化造成的质量损失在人眼可忍受的范围内,而低分辨率可能造成不可弥补的质量损失,因此,应选择高分辨率来进行压缩。当码率为2mbit/s时,根据码率与质量关系模型选择对应参数编码(分辨率1920*1080,qp26),其压缩后的psnr为41.29。同样码率但编码参数为分辨率(1024*576,qp22)的压缩效果,其psnr为40.91。显然,根据模型选择的编码参数(分辨率1920*1080,qp26)压缩后的高分辨率视频能够取得更好的结果。

在极低码率时qp值一般大于36,量化造成的质量损失非常严重,而相对来讲低分辨率带来的质量损失相对较小,因此,选择低分辨率来进行压缩有望得到更好的性能。分辨率1920*1080和分辨率1024*576的码率与质量关系曲线交点在1.18mbit/s处,也就是说,在目标码率低于1.18mbit/s时,采用较低的分辨率可以得到更好的图像质量。当码率为0.5mbit/s时,不同编码参数组合(分辨率1920*1080,qp39)和(分辨率1024*576,qp33)的压缩效果,其压缩后的psnr分别为36.29和36.82598001,采用(分辨率1024*576,qp33)压缩后的低分辨率视频能够取得更好的结果。

综上所述,根据码率和质量关系模型指导视频编码,在给定带宽条件下,根据模型选择的编码参数压缩后的视频能够取得更好的视觉效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1