使用至少评估后的视觉质量的视频编码方法和相关视频编码装置与流程

文档序号:16074742发布日期:2018-11-27 20:53阅读:148来源:国知局

本申请要求2013年3月11日提交的申请号为61/776,053的美国临时申请以及2014年3月10日提交的申请号为14/201,950的美国申请的优先权,上述申请参考并入本文。

技术领域

所公开的本发明的实施例关于视频编码,且更特别地,关于使用由一个或多个视觉质量度量确定的至少评估后的视觉质量的视频编码方法和相关视频编码装置。



背景技术:

现有的视频编码标准通常采取基于块(或基于编码单元)的编码技术,以开发空间冗余。例如,基本方法是将整个来源帧分割为多个块(编码单元),对每个块(编码单元)执行预测,使用离散余弦转换来转换每个块(编码单元)的残值,以及执行量化和熵编码。除此之外,重建帧在编码回路中生成,以提供参考像素数据用于编码后续块(编码单元)。对于某些视频编码标准,环路滤波器可用于增强重建帧的图像质量。例如,解块(de-blocking)滤波器包含于H.264编码回路,以及解块滤波器和样本自适应偏置(Sample Adaptive Offset,SAO)滤波器包含于高效率视频编码(High Efficiency Video Coding,HEVC)编码回路中。

对于许多应用(例如,视频流应用),使用中的传输信道通常具有有限的传输带宽。在此情况下,编码器的输出比特率必须调整以满足传输带宽要求。因此,率控制在视频编码中起到重要作用。一般而言,现有的率控制算法基于像素的失真(例如,即将被编码的来源帧的空间活动(图像复杂度))执行比特分配。然而,基于像素的失真仅仅考虑来源内容复杂度,且有些时候不关于从解码一个编码帧生成的重建后的帧的实际视觉质量。特别地,基于试验结果,从原始图像派生并具有相对于原始图像的相同失真(例如,相同的均方差MSE)的不同的处理后的图像,可为观看者呈现不同的视觉质量。即,较小的基于像素的失真不代表人类视觉系统中更好的视觉质量。因此,编码后的帧由于最小基于像素的失真值选择的基于视频编码模式而生成,且每个编码后的帧不保证从解码编码后的帧生成的重建帧具有最佳视觉质量。



技术实现要素:

根据本发明的示范性实施例,提出一种使用由一个或多个视觉质量度量获得的至少评估后的视觉质量的视频编码方法和相关视频编码装置。

根据本发明的第一个方面,揭示了一种示范视频编码方法。示范视频编码方法包含利用视觉质量评估模块,用于基于涉及编码回路中的数据评估视觉质量;以及参考至少评估后的视觉质量和基于像素的失真用于决定视频编码中的率控制单元的目标比特分配;根据所述评估后的视觉质量和所述基于像素的失真中的一个执行粗决定,以确定多个粗比特分配;以及根据所述评估后的视觉质量和所述基于像素的失真中的另一个执行细决定,以从所述粗比特分配中确定至少一个细比特分配,其中目标比特分配是从所述至少一个细比特分配派生的。

根据本发明的第二个方面,揭示了一种示范视频编码装置。示范视频编码装置包含视觉质量评估模块,用于基于涉及编码回路中的数据评估视觉质量;率控制器,参考至少评估后的视觉质量和基于像素的失真用于决定视频编码中的率控制单元的目标比特分配;根据所述评估后的视觉质量和所述基于像素的失真中的一个执行粗决定,以确定多个粗比特分配,以及根据所述评估后的视觉质量和所述基于像素的失真中的另一个执行细决定,以从所述粗比特分配中确定至少一个细比特分配,其中目标比特分配是从所述至少一个细比特分配派生的;以及编码电路,包含编码回路,编码电路用于根据所述目标比特分配编码所述率控制单元。

在阅读了图示于各种图和附图中的优先实施例的以下详细描述后,本发明的这些和其它目的将对本领域的普通技术人员变得明显。

附图说明

图1是根据本发明的实施例图示视频编码装置的方框图。

图2是图示现有的基于失真的率控制器的示意图。

图3是图示根据本发明的实施例的提出的率控制器的示意图。

图4是图示根据本发明的实施例的另一提出的率控制器的示意图。

图5是图示根据本发明的实施例的视频编码方法的流程图。

具体实施方式

遍及整篇描述和权利要求的某些术语用于指代特定部件。如本领域的技术人员意识到的,制造商可用不同的名称指代部件。此文档不打算区别名称不同但功能相同的部件。在权利要求和下文的描述中,术语“包括”和“包含”用于开放方式,且因此应该解释为意思是“包含,但不限于”。而且,术语“耦合”意于表示间接或直接电连接。因此,如果一个装置耦合到另一装置,那个连接可以通过直接电连接,或通过经由其它装置和连接的间接电连接。

本发明的概念将人类视觉系统的特性并入视频编码过程,以改进视频压缩效率或视觉质量。更具体地,视觉质量评估涉及到视频编码过程,以便从解码一编码后的帧生成的重建帧能够具有增强的视觉质量。所提出的基于视觉质量的视频编码设计的进一步细节描述于下。

图1是根据本发明的实施例图示视频编码装置的方框图。视频编码装置100用于编码来源帧IMGIN以生成承载对应于来源帧IMGIN的编码后的帧信息的比特流BS。在本实施例中,视频编码装置100包含编码电路102和视觉质量评估模块104。以示例的方式,但并非限制,编码电路102的架构可以基于任何现有的视频编码架构来配置。应该注意到,编码电路102可遵循现有的视频编码架构,以具有实施于其中的多个处理阶段;然而,此并非表示包含于编码电路102的每个处理阶段必须使用现有的设计来实施。例如,量化模块114由率控制器106控制,率控制器106基于本发明的率控制算法配置到推荐的视觉质量。因此,由量化模块114使用的用于量化率控制单元(例如,一个编码单元或一帧)的转换因子的量化步骤,是基于由率控制器106决定的率控制单元的比特分配来确定的。

如图1所示,编码电路102包含由拆分模块111、减法器(即,用于执行减法操作的加法器)112、转换模块113、量化模块114、逆量化模块116、逆转换模块117、加法器118、解块滤波器119、样本自适应偏置(sample adaptive offset,SAO)滤波器120、帧缓冲器121、帧间预测模块122、帧内预测模块123组成的编码回路,其中帧间预测模块122包含运动估计单元124和运动补偿单元125。编码电路102还包含熵编码模块115,用于通过对从量化模块114生成的量化后的因子执行熵编码,以生成比特流BS。应该注意到,解块滤波器119和SAO滤波器120的一个或所有可以省略/旁路以用于某些应用。即,依据实际设计要求,解块滤波器119和/或SAO滤波器120是可选的。本领域技术人员应该容易理解包含于编码电路102中的处理阶段的基本操作,为了简洁,此处省略进一步的描述。关于由视觉质量评估模块104确定的视觉质量影响/控制的率控制器106,进一步的描述将在下文给出。

本发明的一个关键特征是使用视觉质量评估模块104,以基于涉及编码电路102的回路中的数据来评估视觉质量。在一个实施例中,涉及编码回路中并由视觉质量评估模块104的数据可以是来源帧IMGIN的原始数据。在另一实施例中,涉及编码回路中并由视觉质量评估模块104的数据可以是从来源帧IMGIN的原始数据派生的处理后的数据。例如,用于评估视觉质量的处理后的数据可以是由转换模块113生成的转换后的因子、由量化模块114生成的量化后的因子、在可选的解块滤波器119之前的重建后的像素数据、在可选的解块滤波器119之后的重建后的像素数据、在可选的SAO滤波器120之前的重建后的像素数据、在可选的SAO滤波器120之后的重建后的像素数据、储存于帧缓冲器121中的重建后的像素数据、由运动补偿单元125生成的运动补偿后的像素数据或由帧内预测模块123生成的帧内预测像素数据。

由视觉质量评估模块104执行的视觉质量评估可计算一个或多个视觉质量度量,以决定一个评估后的视觉质量。例如,评估后的视觉质量是从检查影响人类视觉感觉的至少一个图像特性派生的,且至少一个图像特性可包含锐利度、噪声、模糊、边缘、动态范围、阻挡伪迹、平均强度(例如,照度/亮度)、色温、场景组合(例如,风景、肖像、夜景等)、人脸、动物存在、吸引更多或更少兴趣的图像内容(例如,感兴趣的区域(ROI))、空间遮蔽(即,更复杂文本的人类视觉的不灵敏度)、时间遮蔽(即,告诉运动对象的人类视觉的不灵敏度)或频率遮蔽(即,更高像素值变化的人类视觉的不灵敏度)。以示例的方式,噪声度量可以通过计算ISO 15739视觉的噪声值VN来获得,其中VN=σL*+0.852·σu*+0.323·σu*。备选地,噪声度量可以通过计算其它视觉的噪声度量来获得,例如,S-CIELAB度量、vSNR(视觉的信噪比)度量或基于Keelan NPS(noise power spectrum,噪声电力频谱)的度量。锐利度/模糊度量可以通过测量边缘宽度来获得。边缘度量可以是通过测量纹波或边缘附近的振荡获得的振铃度量(ringing metric)。

在一个示范性设计中,视觉质量评估模块104根据涉及编码电路102的编码回路中的数据,计算单个视觉质量度量(例如,一个前述视觉质量度量),并仅仅基于单个视觉质量度量,确定每个评估后的视觉质量。换句话说,一个评估后的视觉质量可以仅仅通过参考单个视觉质量度量来获得。

在另一示范性设计中,视觉质量评估模块104根据涉及编码电路102的编码回路中的数据,计算多个不同的视觉质量度量(例如,许多前述视觉质量度量),并基于不同的视觉质量度量,确定每个评估后的视觉质量。换句话说,一个评估后的视觉质量可以通过参考多个视觉质量度量的组合来获得。例如,视觉质量评估模块104可以用于将多个预定义的权重因素分配到多个视觉质量度量(例如,噪声度量和锐利度度量),并通过从权重因素和视觉质量度量派生的加权的总和来决定一个评估后的视觉质量。对于另一示例,视觉质量评估模块104可采用Minkowski式子以分别为不同的视觉质量度量确定多个非线性权重因素;并且然后根据相应非线性权重因素通过结合各别的视觉质量度量确定一个评估后的视觉质量。具体地,基于Minkowski式子,评估后的视觉质量ΔQm使用以下式子来计算:

whereΔQi是从不同的视觉质量度量的每个中派生的,以及16.9是基于精神物理学实验的单个通用参数。对于又一示例,视觉质量评估模块104可采用基于训练的方式(例如,支持向量机器(support vector machine,SVM)),以确定多个训练后的权重因素,分别用于不同的视觉质量度量;并且然后根据相应训练的权重因素,通过结合不同的视觉质量度量确定一个评估后的视觉质量。具体地,采用监督式的学习模型和关联的学习算法,以分析不同的视觉质量度量和识别的图案,并因此确定训练后的权重因素。

在评估后的视觉质量由视觉质量评估模块104生成后,评估后的视觉质量由率控制器106参考,以执行率控制用于调节从视频编码装置100生成的比特流BS的比特率。由于评估后的视觉质量用于作出比特分配决定以用于率控制,来源帧IMGIN是基于人类视觉系统的特性来编码,以由此允许解码后的帧/重建帧具有增强的视觉质量。以示例的方式,但并非限制,比特流BS的比特率可以调节以达到不变的视觉质量,由此在比特流BS的接收端允许平滑的视频播放。

更具体地,率控制器106用于参考至少评估后的视觉质量,以决定率控制单元的目标比特分配,其中率控制单元可以是来源帧IMGIN的一个编码单元或整个来源帧IMGIN。编码电路100用于根据目标比特分配编码率控制单元。具体地,在率控制单元的目标比特分配由率控制器106确定后,响应于目标比特分配,用于量化从转换模块113生成的转换后的因子的量化步长的大小被适当地选出。

请参考图2和图3。图2是图示现有的基于失真的率控制器的示意图。图3是图示根据本发明的实施例的提出的率控制器的示意图。基于失真的率控制器200包含比特分配单元202和量化参数决定单元204。比特分配单元202基于空间活动决定来源帧IMGIN中的率控制单元(例如,一组像素,一个编码单元或一帧)的比特分配BAD,其中空间活动是从估计率控制单元的像素变化简单派生的基于像素的失真。换句话说,基于像素的失真可以看作由率控制单元处理的图像内容的复杂度的指示符。量化参数决定单元204接收初始量化参数QPINI和比特分配BAD,并因此确定用于量化率控制单元的转换后的因子所参考的量化参数QPD。量化参数决定量化步长的值。应该注意到,帧的图像复杂度在人类视觉系统中与帧的图像质量不相关。因此,比特分配BAD在没有实际考虑人类视觉感觉情况下决定。其结果是,用基于失真的率控制器从解码由编码器编码后的帧派生的解码后的帧/重建帧,不确定具有良好的视觉质量。

与现有的基于失真的率控制相反,本发明提出的基于视觉质量的率控制使用从涉及编码单元102的编码回路中的数据派生的评估后的视觉质量VQ(C或R’),以决定率控制单元(例如,一个编码单元或一帧)的目标比特分配,其中评估后的视觉质量VQ(C或R’)可以由单个视觉质量度量或多个视觉质量度量的组合获得,R’表示从来源帧IMGIN的原始数据派生的处理后的数据(特别地,从处理来源帧IMGIN中的率控制单元的像素数据派生的处理后的数据),且C表示来源帧IMGIN的原始数据(特别地,来源帧IMGIN中的率控制单元的像素数据)。在一个示范性设计中,显示于图1中的率控制器106可以使用显示于图3中的基于视觉质量的率控制器300来实施。基于视觉质量的率控制器300包含比特分配单元302和量化参数决定单元304。比特分配单元302基于评估的用于率控制单元的视觉质量,决定来源帧IMGIN中的率控制单元(例如,一组像素、一个编码单元或一帧)的目标比特分配BAVQ。量化参数决定单元304接收初始量化参数QPINI和比特分配BAVQ,并因此确定用于量化率控制单元的转换后的因子所参考的量化参数QPVQ。量化参数决定由量化模块114使用的量化步长的值。由于比特分配BAVQ是通过考虑人类视觉感觉来决定的,用基于失真的率控制器从解码由编码器编码后的帧派生的解码后的帧/重建帧,具有所希望的视觉质量。

在一替换设计中,评估后的视觉质量(例如,单个视觉质量度量或多个视觉质量度量的组合)和基于像素的失真(例如,空间活动或图像复杂度)可以涉及决定来源帧IMGIN中的率控制单元的目标比特分配,其中率控制单元可以是一个编码单元或一帧。请参考图4,图4是图示根据本发明的实施例的另一提出的率控制器的示意图。在另一示范性设计中,显示于图1中的率控制器106可以使用显示于图4中的率控制器400来实施。率控制器400包含失真估计单元406、比特分配单元402和量化参数决定单元404。例如,失真估计单元406用于基于来源帧IMGIN的原始数据的至少部分(即,部分或全部)计算基于像素的失真。在率控制单元是编码单元的情况中,失真估计单元406可通过估计来源帧IMGIN的局部原始数据的图像复杂度(例如,计算来源帧IMGIN中的编码单元的像素变化),确定基于像素的失真。在率控制单元是帧的另一情况中,失真估计单元406可通过估计来源帧IMGIN的全部原始数据的图像复杂度(例如,计算来源帧IMGIN的像素变化),确定基于像素的失真。量化参数决定单元404接收初始量化参数QPINI和目标比特分配BAVQ,D,并因此确定用于量化率控制单元的量化因子所参考的量化参数QPVQ,D。具体地,量化参数决定由量化模块114使用的量化步长的值。

关于比特分配单元402,其根据评估后的视觉质量和计算的基于像素的失真,决定用于率控制单元的目标比特分配BAVQ,D。例如,比特分配单元402参考评估后的视觉质量以找出第一比特分配(例如,图3中的BAVQ),参考基于像素的失真以找出第二比特分配(例如,图2中的BAD),并最终选择第一比特分配和第二比特分配中的一个作为目标比特分配BAVQ,D。

对于另一示例,比特分配单元402根据评估后的视觉质量和基于像素的失真中的一个执行粗决定,以从所有N个可能的比特分配选择M个粗比特分配(即,粗编码的比特长度),并根据评估后的视觉质量和基于像素的失真中的另一执行细决定,以从粗比特分配中(N>M&M>P≧1)确定P个细比特分配(即,准确的编码的比特长度),其中目标比特分配BAVQ,D是从P个细比特分配派生的。在P=1的情况中,如果粗决定是基于评估后的视觉质量作出的,则目标比特分配BAVQ,D直接基于基于像素的失真由细决定来确定;或如果粗决定是基于像素的失真作出的,则目标比特分配BAVQ,D直接基于评估后的视觉质量由细决定来确定。

图5是图示根据本发明的实施例的视频编码方法的流程图。假设结果大体上相同,步骤不要求以图示于图5中的精确顺序来执行。视频编码方法可以简短地概括如以下。

步骤500:开始。

步骤502:基于涉及编码回路的数据评估视觉质量,其中涉及编码回路中的数据可以是来源帧的原始数据或从来源帧的原始数据派生的处理后的数据,且每个评估后的视觉质量可以从单个视觉质量度量或多个视觉质量度量的组合来获得。

步骤504:检查基于像素的失真是否应该用于比特分配决定。如果是,进入步骤506;否则,进入步骤510。

步骤506:基于来源帧的原始数据的至少部分计算基于像素的失真。

步骤508:参考评估后的视觉质量和计算的基于像素的失真用于解码率控制单元的目标比特分配。例如,率控制单元可以是一个编码单元或一帧。进入步骤512。

步骤510:参考评估后的视觉质量用于决定率控制单元的目标比特分配。例如,率控制单元可以是一个编码单元或一帧。

步骤512:结束。

由于本领域技术人员在阅读以上段落后可容易地理解图5中每个步骤的细节,为了简洁,此处省略进一步的描述。

本领域技术人员将容易观察到,在保留本发明的教导之下,可以对装置和方法进行许多修改和替换。因此,以上揭示应该解释为仅仅由所附的权利要求的精神和界限所限制。

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