一种视频编码方法及装置与流程

文档序号:12041579阅读:183来源:国知局
一种视频编码方法及装置与流程
本发明涉及多媒体技术领域,尤其涉及一种视频编码方法及装置。

背景技术:
数字视频蓬勃应用范围越来越广阔。视频编码效率作为视频应用的核心,需要提高的方向之一是如何在有限的带宽条件下尽可能提高视频的质量。由于视频信号是一类特殊的信号源,其特点是向人们传达视觉上的内容信息。所以在视频编码的过程中,由于带宽与存储空间的限制,不可避免地会引入视频信号失真。那么如何在同样的带宽条件下尽可能降低图像失真,提高图像质量,是业界视频编码工作的核心问题。现有的视频编码技术通常对一帧图像的各个编码基本单元(简称宏块)采用相同的编码参数和编码策略。但是,上述现有的方案至少存在如下技术问题:由于视频内容以及信号本身编码特性的不同,相同的编码参数有时会导致较大的视觉感受差异,视频的主观质量不仅无法达到最优,而且还存在在相同的带宽条件下,编码资源不合理占用的情况。

技术实现要素:
本发明的实施例提供一种视频编码方法及装置,可准确控制视频图像主观视觉质量的视频编码方法,充分利用编码资源,提高视频的主观视觉质量。为达到上述目的,本发明的实施例采用如下技术方案:一种视频编码方法,包括:分析接收到的一帧视频数据中每个宏块的内容特征,所述内容特征包括亮度参数和纹理参数;根据所述内容特征获取每个宏块的敏感度参数;根据所述敏感度参数计算编码量化参数;根据所述编码量化参对所述一帧视频数据进行编码。优选地,上述分析接收到的一帧视频数据中每个宏块的内容特征具体包括:根据当前像素规定范围内的平均亮度值计算亮度参数和根据用sobel算子指数拟合后的函数计算纹理参数。优选地,上述根据当前像素规定范围内的平均亮度值计算亮度参数具体为:125Li10else]]>其中,kKuminance代表亮度参数,Li代表当前像素5*5范围内的亮度平均值;上述根据用Sobel算子指数拟合后的函数计算纹理参数具体为:kTexture=0.00329×exp(-0.02378×Sobel)其中,kTexture代表纹理参数,Sobel代表Sobel算子。优选地,上述根据所述内容特征获取每个宏块的敏感度参数具体包括:ε=kTexture·kLuminance其中,ε代表敏感度参数,kTexture代表纹理参数,kLuminance代表亮度参数。优选地,所述根据所述敏感度参数计算编码量化参数具体包括:根据获取到的所有敏感度参数进行聚类以得到多个区域类别;针对每个区域类别计算该区域类别的平均敏感度参数;根据所述平均敏感度参数和预设的每个区域类型的目标质量参数计算所述区域类别的编码量化参数。优选地,所述针对每个区域类别计算该区域类别的平均敏感度参数具体包括:ε_AVGi代表第i个区域类别的平均敏感度参数;Si代表第i个区域类别中所有宏块的集合;Ni代表第i个区域类别中宏块的数量;ε代表敏感度参数,MBj∈Si代表代表第j个宏块属于第i个区域类别;εj代表第j个宏块的敏感度参数。优选地,上述根据所述平均敏感度参数和预设的每个区域类型的目标质量参数计算所述区域类别的编码量化参数具体包括:Qi代表编码量化参数;DTarget代表每个聚类区域设定的目标质量值。一种视频编码装置,包括:分析单元,用于分析接收到的一帧视频数据中每个宏块的内容特征,所述内容特征包括亮度参数和纹理参数;敏感度获取单元,用于根据所述内容特征获取每个宏块的敏感度参数;计算单元,用于根据所述敏感度参数计算编码量化参数;编码单元,用于根据所述编码量化参对所述一帧视频数据进行编码。其中,分析单元包括:计算模块,用于根据当前像素规定范围内的平均亮度值计算亮度参数和根据用sobel算子指数拟合后的函数计算纹理参数。其中,敏感度获取单元包括:聚类模块,用于根据获取到的所有敏感度参数进行聚类以得到多个区域类别;区域计算模块,用于针对每个区域类别计算该区域类别的平均敏感度参数;参数计算模块,用于根据所述平均敏感度参数计算所述区域类别的编码量化参数。本发明实施例提供的视频编码方法及装置可以根据每帧视频数据的亮度参 数和纹理参数获取每个视频数据中每个宏块的敏感度参数,再根据计算出的敏感度参数计算该视频数据的编码量化参数,从而根据该编码量化参数对该帧视频数据进行编码,解决了现有技术中由于采用相同的编码参数导致的编码资源占用不合理的技术问题,进而取得可根据视频数据的特征采用不同的编码量化参数,以主观视觉感受可以接受为准,尽可能的降低带宽的占用,可合理、充分地利用编码资源的技术效果。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例1中视频编码方法的亮度参数函数的曲线示意图;图2为本发明实施例1中视频编码方法的kTexture与纹理参数之间的指数拟合曲线示意图;图3为本发明实施例1中视频编码方法的根据敏感度特性将视频图像进行区域类型划分的示意图;图4为本发明实施例1中视频编码方法的流程示意图;图5为本发明实施例2中视频编码装置的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。并且,以下各实施例均为本发明的可选方案,实施例的排列顺序及实施例的编号与其优选执行顺序无关。实施例1本实施例提供一种视频编码方法,在该方法中主要根据视频数据中每个宏块的敏感度参数将视频数据聚类成多个区域类型,再根据划分后的区域类型计算该区域类型的编码量化参数,从而实现对不同的区域类型采用不同的编码方式、降低带宽占用量的效果。特别地,在本实施例中,敏感度参数是根据视频数据的内容特征中的亮度参数和纹理参数计算得来的。为便于理解本实施例,下面就先说明一下,本实施例中,以纹理参数和亮度参数获取到的敏感度参数,为何可以最终取得提高主观视觉感受的同时,降低带宽占用率,合理利用编码资源的技术效果的原理。首先需要定义人眼感知失真(主观视觉感知)失真与像素数值失真之间的对应关系:Dperceptual=kTexture·kLuminance·DMSE=ε·DMSE(1)其中,Dperceptual代表人眼的感知失真;DMSE代表像素值统计失真(MSE即MeanSquareError均方误差);ε代表敏感度参数。敏感度系数是指人眼对某个图像内容或图像信息在编码过程中产生失真的敏感程度,敏感度低意味着该区域即使失真比较大,人眼能感受到的失真也相对比较小;反之,如果敏感度高,则该区域即使只有很小的失真,人眼也能明显地感受到。根据上述表达式(1)可知:ε=kTexture·kLuminance(2)该ε由亮度参数kLuminance和纹理参数kTexture相乘,通过乘法加权,使像素失真与感知失真联系起来。kLuminance的取值方法:根据图1所示的生理学理论实验结果表明,人眼对不同环境下的像素变化敏感度不同。图1中横坐标表示背景亮度(0-255),纵坐标表示人眼的感知门限值。门限值越小,代表人眼的敏感度越高。从图1中可以看到,在亮度较高或较低的情况下,敏感度相对较低,而在亮度值居中时,人眼对变化(或失真)的敏感度最高。根据图1所示的人眼感知门限与亮度的关系,可用分段函数对该特征曲线进行近似表达:12510else---(3)]]>其中,Li表示当前像素i周围5x5像素范围内的平均亮度值。Ti表示像素i的变化敏感阈值,i=0,1,2,3….n。根据表达式(3)可知,亮度参数kLuminance的值与当前环境亮度下图像的敏感变化阈值成反比。再根据Weber对比度法则中的环境对比度因素,这里取Ti除以Li结果的倒数为kLuminance的值,写为:125Li10else---(4)]]>kTexture的取值方法:纹理参数的值可以用实验拟合的方法。首先选择标准测试序列进行压缩 处理,并且招募测试人员对结果进行主观感受打分。通过打分可以得到ε的估计值,再除以kLuminance的值便得到kTexture的实验数据,参照下述表一种各序列的ε拟合结果及kTexture的计算结果。表一用Sobel算子描述图像的纹理复杂程度。将Sobel算子结果与kTexture实验数据对应起来,并进行指数拟合,参照图2所示,便可以得到kTexture的经验计算函数:kTexture=0.00329×exp(-0.02378×Sobel)(5)参照图4,该方法包括:101,视频编码器从输入端得到一帧视频数据;102,视频编码器分析接收到的一帧视频数据中每个宏块的内容特征,内容特征包括亮度参数和纹理参数;而且而言,视频编码器根据当前像素规定范围内的平均亮度值计算亮度参数和根据用sobel算子指数拟合后的函数计算纹理参数。优选方案为:步骤102可根据上述公式(4)和(5)计算得到对应的亮度参数和纹理参数。并且在本实施例中亮度参数和纹理参数的计算过程不分先后 顺序,甚至可以同时根据公式(4)和(5)计算得到的亮度参数和纹理参数。103,视频编码器根据所述内容特征获取每个宏块的敏感度参数;并根据所述敏感度参数计算编码量化参数;即对视频帧的每个宏块(16*16像素)计算敏感度系数ε,该系数表示人眼对该区域图像失真的敏感程度。优选地,视频编码器可根据公式(1)计算得到每个宏块的ε。上述该根据所述敏感度参数计算编码量化参数具体可通过如下方式实现:1041,根据获取到的所有敏感度参数进行聚类以得到多个区域类别;利用聚类算法(如k-means聚类算法)将所有的εi(i=0,1,2,…n)分为N个区域类型。如图3所示,聚类后按类型分可得到至少三个区域:高敏感区域、中敏感区域和低敏感区域。1042,视频编码器针对每个区域类别计算该区域类别的平均敏感度参数;视频编码器根据每个区域中所有宏块的敏感度参数计算该区域的平均敏感度参数,该步骤可如下公式:其中,ε_AVGi代表第i个区域类别的平均敏感度参数;Si代表第i个区域类别中所有宏块的集合;Ni代表第i个区域类别中宏块的数量;ε代表敏感度参数;MBj∈Si代表第j个宏块属于第i个区域类别;εj代表第j个宏块的敏感度参数;i取值0或自然数;j取值0或自然数。1043,视频编码器根据所述平均敏感度参数和预设的每个区域类型的目标质量参数计算所述区域类别的编码量化参数。优选方案,为了计算简便,每个区域类型预设的目标质量参数在本实施例中为相同值,设每个区域设定相同的目标质量值Dtarget。那么每个区域的量化 参数值根据上述公式(6)可以得出如下:Qi代表编码量化参数;DTarget代表每个聚类区域设定的目标质量值;为了进一步提高编码量化参数的准确率,优选方案中步骤1043还可以通过如下公式计算:其中,代表误差系数,是前一帧视频数据编码后,统计编码参数与编码结果之间的误差设定的误差参数。由于现有技术的一些编码方法已经给出了误差系数的计算方式,并且本实施例也可以采用现有方法求取,因此对于该误差系数的具体计算方法在此不赘述。本实施例的方法在编码过程中采用将输入的视频数据根据亮度参数和纹理参数等内容特性分割成视觉敏感度不同的N个区域的手段,把一帧视频图像分割成多个不同的区域,每个区域的视觉敏感度系数差别较大,并利用信号特性和视觉特性调整不同编码区域类型的编码量化参数,使得最终的图像各个区域的视觉质量一致,取得提高整体视觉质量,合理利用编码资源的技术效果。105,视频编码器根据步骤1043得到的每个区域类型的编码量化参数对相应的区域进行编码,最终完成对一帧视频数据进行编码。本实施例提供的方法对编码量化参数进行了改进,使其与敏感度参数相关,保证在人眼能够接受的视觉范围内,尽可能的降低编码量化参数,因此可以降低部分区域类型的编码量化参数的值,如此在参照该编码量化参数编码时便可降低编码资源的占用率,解决了现有技术中采用相同的编码量化参数导致的编 码资源利用不合理的技术问题,进而取得了可以合理利用编码资源,同时满足人眼对画面视觉要求的技术效果。需要说明的是:本实施例中敏感度参数、亮度参数、纹理参数、每个区域的平均敏感度系数和编码量化参数等的公式并不仅限制与公式(1)、(4)、(5)、(6)和(7)的形式,通过对这些公式进行等效变换或公式变形等从而得到的其他形式的公式也同样可应用于本实施例中,由于变形后的其他公式的形式是本领域技术人员可以轻易推导出来的,因此变形后的形式具体形式在此不赘述。本实施例中的方法仅需对前端的视频编码器进行改进,不影响后端视频解码器的解码方法,改进小,利用实施应用。本实施例提供的方法中,根据人类视觉系统的理论研究结论,人眼对不同图像内容的失真敏感度差别较大的原理,定义并计算敏感度系数。通过亮度参数kLuminance和纹理参数kTexture的相乘加权,得到像素失真和感知失真之间的关系。其中,kLuminance通过经典亮度敏感模型的线性拟合并与weber对比度特性结合得到;kTexture通过主观实验和对数拟合的方式得到。根据敏感度与亮度和纹理之间的关系模型,使图像在编码时产生的数值统计失真准确预估该图像在人眼观察时带来的主观感知失真,并在编码时有效选择合适的编码量化参数,使得最终的图像各个区域的视觉质量一致,提高整体视觉质量,合理利用编码资源的技术效果。实施例2本实施例提供一种视频编码装置,该视频编码装置可是部署在实施例1的视频编码器上实现实施例1的方法,也可以就是视频编码器。如图5所示,包括:分析单元41,敏感度获取单元42,计算单元43,编码单元44。分析单元41,用于分析接收到的一帧视频数据中每个宏块的内容特征,所述内容特征包括亮度参数和纹理参数;敏感度获取单元42,用于根据所述内容特征获取每个宏块的敏感度参数;计算单元43,用于根据所述敏感度参数计算编码量化参数;编码单元44,用于根据所述编码量化参对所述一帧视频数据进行编码。其中,分析单元41包括:计算模块411,用于根据当前像素规定范围内的平均亮度值计算亮度参数和根据用sobel算子指数拟合后的函数计算纹理参数。敏感度获取单元42包括:聚类模块421,区域计算模块422,参数计算模块423。聚类模块421,用于根据获取到的所有敏感度参数进行聚类以得到多个区域类别;区域计算模块422,用于针对每个区域类别计算该区域类别的平均敏感度参数;参数计算模块423,用于根据所述平均敏感度参数计算所述区域类别的编码量化参数。本实施例提供的装置通过控制具有明显感知特性差异的图像区域的编码量化参数,来控制每个区域类型的编码数值统计失真,从而最终控制每个区域类型的主观感知失真,使得图像整体质量均匀,提高主观视觉质量。装置可以使用于现有的编码设备和编码工具,相比普遍使用的对每个单元采用相同编码参数的方法,本发明提供的装置能够在带宽相同的情况下,提供更好的图像质量感受,提高编码效率。本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,也即是说:本发明的装置、设备或者组成系统的各个设备即便执行方法或实现功能的主体为硬件,但实现该本发明所述功能的部分也是计算机软件产品的模块或单元等。该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台设备(执行 本发明各个实施例所述的方法。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1