一种针对于视频编码的自适应感知时空域量化方法转让专利

申请号 : CN201911151723.0

文献号 : CN112825557B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 解晓东向国庆严韫瑶李源贾惠柱

申请人 : 北京大学

摘要 :

一种针对于视频编码的自适应感知时空域量化,其特征在于,在同样的主观质量下,去除视频中的空域和时域视觉冗余,包括下列步骤:步骤一、建立JND感知空域复杂度计算模型;步骤二、用公式(4)计算一帧原始图像每个像素的JND值,计算每个CTU的JND方差步骤三、计算感知空域量化偏移值步骤四、建立感知时域复杂度计算模型;步骤五、计算感知空域量化偏移值步骤六、计算最终感知联合时空域量化偏移值以及相应的λ;的计算过程;本发明既考虑了每帧图像的空域视觉冗余信息又考虑了视频图像每帧之间的时域视觉冗余信息,以不降低视频的主观质量为目标,通过自适应量化的方式,同时减少这两种冗余信息,节约更多的码率。

权利要求 :

1.一种针对于视频编码的自适应感知时空域量化方法,其特征在于,在同样的主观质量下,去除视频中的空域和时域视觉冗余,包括下列步骤:步骤一、建立JND感知空域复杂度计算模型,其中,LA是亮度自适应性,与当前区域的背景亮度有关,计算过程如公式(2)所示:其中,B(x,y)是当前像素所在背景区域的平均像素;

公式(1)中的 与亮度掩蔽效应和规律复杂度相关,如公式(3)所示:其中,Lc为亮度掩蔽效应, 是当前区域的规律性; 越大代表当前区域的方向杂乱,人眼对这一区域的失真没有那么敏感,相反 越小代表当前区域越平坦,当前区域的失真越容易被识别;

步骤二、用公式(1)计算一帧原始图像每个像素的JND值,计算每个CTU的JND方差步骤三、计算感知空域量化偏移值 如下列步骤,a.使用步骤二得到的JND方差 计算临时感知量化偏移值,计算过程如公式(4)所示b.计算一帧平均感知空域量化偏移值,其中N是一帧中CTU的个数;

c.计算感知空域量化偏移值 计算过程如公式(6)所示其中,s1是经验系数;

步骤四、建立感知时域复杂度 计算模型,

其中,α是常数项, 是在第i帧重构帧和第i+1帧原始帧之间进行运动搜索得到的预测误差,使用编码器中的运动搜索获得;F(θ)函数是实验统计后的曲线;Q是量化步长,由实验配置的QP得到; 是在第i帧和第i+1帧原始帧之间进行运动搜索得到的预测误差,Fi+1是第i+1帧的原始帧的编码单元像素,是第i帧的重构帧的编码单元像素,‖·‖是L2范式计算;

步骤五、计算感知时域量化偏移值 如下列步骤a.计算临时感知时域量化偏移值ΔQPi′,计算过程如公式(9)所示b.计算一帧平均感知时域量化偏移值,计算过程如公式(10)所示c.计算感知时域量化偏移值 计算过程如公式(11)所示其中,s2是经验系数;

步骤六、计算最终感知联合时空域量化偏移值 以及相应的λ; 的计算过程如公式(12)所示其中s是经验系数,sign(·是符号函数,λ的计算过程如公式(13)所示

其中,Wk是依赖于编码配置和编码帧类型的常量,QP为编码器的量化参数;

步骤七、将 和λ用于第i个CTU的编码,编码过程和编码器的过程相同;

步骤八、检查当前帧中所有CTU是否编码完成,如果完成,进入下一步,如果没有完成,转入步骤七;

步骤九、工作结束。

说明书 :

一种针对于视频编码的自适应感知时空域量化方法

技术领域

[0001] 本发明是一种针对于视频编码的自适应感知时空域量化方法,用于对不同视觉冗余的编码单元进行不同程度的量化。

背景技术

[0002] 传统的视频编码中通常使用PSNR作为质量评价标准,然而PSNR是基于每个像素之间的差异进行计算的客观性能评价标准,并不能很好的反应人眼的主观感受。传统的视频编码在进行模式选择的过程中使用消耗的比特数和客观失真MSE选择最优模式。由于人眼的一些特性,如视觉敏感度、视觉注意、视觉可视性,人不能像计算机一样识别每个像素之间的差异。以MSE作为失真的衡量方式会导致编码中存在一定的主观视觉冗余,浪费了大量的码率。
[0003] 视觉冗余包括空域视觉冗余和时域视觉冗余,空域视觉冗余表现为图像质量足够好时,人眼分辨不出一些像素的失真;时域视觉冗余表现为当视频中的物体运动速度过快时,人眼并不能很好的捕捉每一帧中的像素失真信息。自适应量化技术可以根据每个编码单元的特征自适应调节量化系数,对不同视觉冗余的编码单元进行不同程度的量化,从而提升视频编码的主观性能。
[0004] 一、现有技术一的技术方案
[0005] 基于SSIM的自适应量化技术,SSIM是结构相似性,比传统的评价方法PSNR更接近于主观评价方式。在率失真优化的过程中,使用近似的SSIM失真代替率失真优化中的SSE失真,同时计算改进后的率失真优化中的拉格朗日算子。计算过程如公式(1)所示:
[0006]
[0007] 更新后的拉格朗日算子为:
[0008]
[0009] 在拉格朗日更新的同时根据拉格朗日算子和量化系数QP的关系λSSE=β·2(QP‑12)/3自适应更新QP:
[0010]
[0011] 现有技术一的缺点:该自适应量化技术只考虑了空域上的视觉冗余,没有考虑时域视觉冗余。
[0012] 二、与本发明相关的现有技术二
[0013] 现有技术二的技术方案
[0014] 帧间参考特性是视频中的一个重要特性,这是因为在帧间预测中需要参考前一帧的重构信息进行当前帧的编码,所以上一帧重构信息与原始信息之间的失真就会传递至当前帧且会一直传递下去。
[0015] 现有技术通过建立失真传递链,以帧间参考特性作为时域特征,预估当前帧对后续帧的影响,调整每个CTU的拉格朗日算子,保护参考特性好的CTU,对参考特性差的CTU进行更多的量化。
[0016] 现有技术二的缺点:该失真传递模型只考虑了帧间参考关系,对参考关系好的CTU进行保护,以提升客观性能PSNR为目的,没有考虑主观视觉特征。

发明内容

[0017] 本发明的目的是提供一种针对于视频编码的自适应感知时空域量化方法,以同样的主观质量下,进一步去除视频中的空域和时域视觉冗余,节约一定的码率,提升编码效率。
[0018] 一种针对于视频编码的自适应感知时空域量化,其特征在于,在同样的主观质量下,去除视频中的空域和时域视觉冗余,包括下列步骤:
[0019] 步骤一、建立JND感知空域复杂度计算模型,
[0020]
[0021] 其中,LA是亮度自适应性,与当前区域的背景亮度有关,计算过程如公式(2)所示:
[0022]
[0023] 其中,B(x)是当前像素所在背景区域的平均像素。
[0024] 公式(1)中的 与亮度掩蔽效应和规律复杂度相关,如公式(3)所示:
[0025]
[0026] 其中,Lc为亮度掩蔽效应, 是当前区域的规律性。 越大代表当前区域的方向杂乱,人眼对这一区域的失真没有那么敏感,相反 越小代表当前区域越平坦,当前区域的失真越容易被识别;
[0027] 步骤二、用公式(4)计算一帧原始图像每个像素的JND值,计算每个CTU的JND方差[0028] 步骤三、计算感知空域量化偏移值 如下列步骤,
[0029] a.使用步骤二得到的JND方差 计算临时感知量化偏移值,计算过程如公式(4)所示
[0030]
[0031] b.计算一帧平均感知空域量化偏移值,
[0032]
[0033] 其中N是一帧中CTU的个数。
[0034] c.计算感知空域量化偏移值 计算过程如公式(6)所示
[0035]
[0036] 其中,s1是经验系数。
[0037] 步骤四、建立感知时域复杂度计算模型,
[0038]
[0039] 其中,α是常数项, 是在第i帧重构帧和第i+1帧原始帧之间进行运动搜索得到的预测误差,使用编码器中的运动搜索获得。F(θ)函数是实验统计后的曲线。Q是量化步长,由实验配置的QP得到。 是在第i帧和第i+1帧原始帧之间进行运动搜索得到的预测误差,
[0040]
[0041] Fi+1是第i+1帧的原始帧的编码单元像素, 是第i帧的重构帧的编码单元像素,‖·‖是L2范式计算。
[0042] 步骤五、计算感知空域量化偏移值 如下列步骤
[0043] a.计算临时感知时域量化偏移值ΔQPi,计算过程如公式(9)所示[0044]
[0045] b.计算一帧平均感知时域量化偏移值,计算过程如公式(10)所示[0046]
[0047] c.计算感知空域量化偏移值 计算过程如公式(11)所示
[0048]
[0049] 其中,s2是经验系数。
[0050] 步骤六、计算最终感知联合时空域量化偏移值 以及相应的λ。 的计算过程如公式(12)所示
[0051]
[0052] 其中s是经验系数,sign(·)是符号函数,
[0053] λ的计算过程如公式(13)所示
[0054]
[0055] 其中,Wk是依赖于编码配置和编码帧类型的常量。
[0056] 步骤七、将 和λ用于第i个CTU的编码,编码过程和编码器的过程相同。
[0057] 步骤八、检查当前帧中所有CTU是否编码完成,如果完成,进入下一步,如果没有完成,转入步骤七。
[0058] 步骤九、工作结束。
[0059] 本发明的有益效果
[0060] 本发明既考虑了每帧图像的空域视觉冗余信息又考虑了视频图像每帧之间的时域视觉冗余信息,以不降低视频的主观质量为目标,通过自适应量化的方式,同时减少这两种冗余信息,节约更多的码率。
[0061] 具体体现:
[0062] (1)感知空域自适应量化考虑人类视觉系统的纹理掩蔽特性和亮度自适应性,通过JND的方差代表空域感知的复杂度设定相关感知空域量化偏移值,去除主观上的空间冗余;
[0063] (2)感知时域自适应量化建立基于感知的预测误差模型表现感知时域参考特性,通过感知时域参考特性设定感知时域量化偏移值,去除帧间的时域视觉冗余;
[0064] (3)联合时域自适应量化和空域自适应量化,同时消除视频图像中的时域视觉冗余和空域视觉冗余。

附图说明

[0065] 图1、本发明工作过程流程图。

具体实施方式

[0066] 一种针对于视频编码的自适应感知时空域量化方法,其特征在于,在同样的主观质量下,去除视频中的空域和时域视觉冗余,包括下列步骤:
[0067] 步骤一、建立JND感知空域复杂度计算模型,
[0068]
[0069] 其中,LA是亮度自适应性,与当前区域的背景亮度有关,计算过程如公式(2)所示:
[0070]
[0071] 其中,B(x)是当前像素所在背景区域的平均像素。
[0072] 公式(1)中的 与亮度掩蔽效应和规律复杂度相关,如公式(3)所示:
[0073]
[0074] 其中,Lc为亮度掩蔽效应, 是当前区域的规律性。 越大代表当前区域的方向杂乱,人眼对这一区域的失真没有那么敏感,相反 越小代表当前区域越平坦,当前区域的失真越容易被识别;
[0075] 步骤二、用公式(4)计算一帧原始图像每个像素的JND值,计算每个CTU的JND方差[0076] 步骤三、计算感知空域量化偏移值 如下列步骤,
[0077] a.使用步骤二得到的JND方差 计算临时感知量化偏移值,计算过程如公式(4)所示
[0078]
[0079] b.计算一帧平均感知空域量化偏移值,
[0080]
[0081] 其中N是一帧中CTU的个数。
[0082] c.计算感知空域量化偏移值 计算过程如公式(6)所示
[0083]
[0084] 其中,s1是经验系数。
[0085] 步骤四、建立感知时域复杂度计算模型,
[0086]
[0087] 其中,α是常数项, 是在第i帧重构帧和第i+1帧原始帧之间进行运动搜索得到的预测误差,使用编码器中的运动搜索获得。F(θ)函数是实验统计后的曲线。Q是量化步长,由实验配置的QP得到。 是在第i帧和第i+1帧原始帧之间进行运动搜索得到的预测误差,
[0088]
[0089] Fi+1是第i+1帧的原始帧的编码单元像素, 是第i帧的重构帧的编码单元像素,‖·‖是L2范式计算。
[0090] 步骤五、计算感知空域量化偏移值 如下列步骤
[0091] d.计算临时感知时域量化偏移值ΔQPi,计算过程如公式(9)所示[0092]
[0093] e.计算一帧平均感知时域量化偏移值,计算过程如公式(10)所示[0094]
[0095] f.计算感知空域量化偏移值 计算过程如公式(11)所示
[0096]
[0097] 其中,s2是经验系数。
[0098] 步骤六、计算最终感知联合时空域量化偏移值 以及相应的λ。 的计算过程如公式(12)所示
[0099]
[0100] 其中s是经验系数,sign(·)是符号函数,
[0101] λ的计算过程如公式(13)所示
[0102]
[0103] 其中,Wk是依赖于编码配置和编码帧类型的常量。
[0104] 步骤七、将 和λ用于第i个CTU的编码,编码过程和编码器的过程相同。
[0105] 步骤八、检查当前帧中所有CTU是否编码完成,如果完成,进入下一步,如果没有完成,转入步骤七。
[0106] 步骤九、工作结束。
[0107] 实施例:
[0108] 本发明主要在一帧图像编码开始前对图像进行预分析,通过每个CTU的时空域特征计算相应的QP值。本发明分为三个步骤进行,首先分别建立感知空域复杂度计算模型和感知时域复杂度计算模型,计算每个CTU的感知空域复杂度和感知时域复杂度;其次通过感知空域和感知时域复杂度模型分别计算相应的量化系数偏移值;最后联合感知空域量化偏移值和感知时域量化偏移值得到每个CTU的最终感知量化偏移值。
[0109] (1)感知空域自适应量化算法
[0110] 首先计算每个CTU的感知空域复杂度,通过JND建立模型。由于人类视觉系统的构造,人眼对不同背景下的相同场景的认知是不同的。人的视觉系统更倾向于提取输入图像中的规律性强的区域,对于规律复杂的区域没有那么敏感。这里,我们可以借助JND模型来将空域复杂度进行量化,JND的计算如公式#(4)所示:
[0111]
[0112] 其中,LA是亮度自适应性,与当前区域的背景亮度有关,计算过程如公式﹟(5)所示:
[0113]
[0114] 其中,B(x)是当前像素所在背景区域的平均像素。
[0115] 公式(1)中的 与亮度掩蔽效应和规律复杂度相关,如公式﹟(6)所示:
[0116]
[0117] 其中,Lc为亮度掩蔽效应, 是当前区域的规律性。 越大代表当前区域的方向杂乱,人眼对这一区域的失真没有那么敏感,相反 越小代表当前区域越平坦,当前区域的失真越容易被识别。
[0118] 在得到每个像素的JND值后,计算每个CTU的JND方差作为当前CTU的空域复杂度,JND方差表现了当前CTU中JND的波动程度,方差大代表当前CTU的规律性要更复杂,失真更不容易被人眼识别,可以使用更大的QP对当前CTU进行量化节约更多的码率。JND方差与感知空域临时量化偏移值的关系如公式#(7)所示:
[0119]
[0120] 最终的感知空域量化偏移值 由当前CTU的量化偏移值ΔQPi和平均量化偏移值共同决定,平均量化偏移值 如公式#(8)所示:
[0121]
[0122] 其中N是一帧中CTU的个数,感知空域量化偏移值如公式#(9)所示:
[0123]
[0124] 其中,s1是经验系数。
[0125] (2)感知时域自适应量化算法
[0126] 感知时域自适应量化模型的关键在于计算感知时域复杂度,通过运动搜索计算当前CTU对后续的CTU的影响,建立时域失真传递链,失真大意味着物体运动速度快不易被人眼察觉且对后续帧的参考特性差,可以多进行一些量化以此来节约码率。预测误差 可以很好的反应帧间之间的参考特性,所以作为本发明的感知时域特征的基础。
[0127]
[0128] 其中,Fi+1是第i+1帧的原始帧的编码单元像素,是第i帧的重构帧的编码单元像素, 是在第i帧和第i+1帧原始帧之间进行运动搜索得到的预测误差,α是常数项,Di是当前原始像素与重构像素之间的均方误差。
[0129] 预测误差计算的是参考帧与当前编码帧之间像素点的差异,并不能很好的反应人眼的感知复杂度,在第i帧和第i+1帧原始帧之间进行运动搜索时,引入时空域JND,运行搜索得到符合人眼视觉感知特征的
[0130]
[0131] 其中, 是第i帧的时空域JND值。
[0132] 经过统计规律可以得到当前帧的失真Di与预测误差 的关系如公式#(11)所示:
[0133]
[0134] F(θ)函数是实验统计后的曲线,F(θ)函数的统计方法可参考[2],公式#(10)和公式#(11)合并后,第i+1帧的感知预测误差 可以表示为:
[0135]
[0136] 得到每个CTU的感知时域复杂度之后,根据每个CTU的感知时域复杂度计算当前CTU的临时量化偏移值,当预测误差大时当前物体运动速度快,失真不易于被人眼察觉,可以进行更多的量化以节约码率,感知时域临时量化与预测误差的关系如公式(14)所示:
[0137]
[0138] 同样的,最终的感知时域量化偏移值 受到当前CTU的感知时域量化偏移值ΔQPi和帧级平均感知时域量化偏移值共同影响,平均帧级量化偏移值 为
[0139]
[0140] 最终的感知时域量化偏移值的计算过程如公式#(16)所示:
[0141]
[0142] 其中,s2是经验系数。
[0143] (3)联合时空域感知自适应量化算法
[0144] 为了同时消除空域和时域上的视觉冗余,我们建立了联合时空域感知自适应量化模型。由于视频中同时存在感知时域冗余和感知空域冗余,且相互独立,所以我们需要对这两种感知冗余分别进行消除。但是消除冗余的方式时增大当前CTU的QP值,在去除其中一种冗余的时候有可能也同时去除了另外一种冗余。所以当这个CTU同时存在感知时域和空域冗余时,需要保护两种冗余之间重叠的部分不会产生过多或过少量化。如果当前CTU在时域上帧间参考性好需要被保护,而空域上纹理复杂需要进行量化,那么感知时域和感知空域QP偏移值之间不存在重叠部分,可以直接对当前CTU作用。最终每个CTU的量化偏移值的计算如公式(19)所示:
[0145]
[0146] 其中s是经验系数,通过实验离线训练得到。在率失真优化的过程中,拉格朗日乘子需要根据QP进行调整,调整方法如公式#(18)所示:
[0147]
[0148] 其中,Wk是依赖于编码配置和编码帧类型的常量。
[0149] 缩略语和关键术语定义
[0150] PSNR(Peak Signal‑to‑Noise Ratio)峰值信噪比
[0151] MSE(Mean Square Error)均方误差
[0152] CTU(Coding Tree Unit)编码树单元
[0153] JND(Just Noticeable distortion)恰可察觉失真
[0154] QP(Quantization Parameter)量化参数
[0155] SSIM(Structural Similarity Index)结构相似性