基于位深度的样本自适应偏移缩放的制作方法_4

文档序号:8947768阅读:来源:国知局
偏移,诸如,上文所 描述的边缘偏移。SAO滤波器74还可有时应用无偏移,其自身可被视为第三类型的偏移。 由SAO滤波器74应用的偏移类型可被显式地或隐式地发信到视频解码器。当应用边缘偏 移时,可基于边缘信息来分类像素。
[0072] 在一些实例中,如下文关于图4更详细地所描述,视频编码器20可执行偏移映射 过程,其中根据缩放参数集合来缩放经解码偏移值。
[0073] 图2的视频编码器20表示一种视频编码器的实例,所述视频编码器经配置以:确 定第一边缘索引,其中所述第一边缘索引包括用于第一周围像素的亮度分量的边缘索引; 确定第二边缘索引,其中所述第二边缘索引包括用于第二周围像素的亮度分量的边缘索 弓丨;基于所述第一边缘索引及所述第二边缘索引来确定第三边缘索引,其中所述第三边缘 索引包括用于当前像素的色度分量的边缘索引;基于所述第三边缘索引来选择偏移;及将 所述偏移应用于所述当前像素的所述色度分量。
[0074] 图3为说明可实施本发明所描述的SAO技术的实例视频解码器30的框图。在图 3的实例中,视频解码器30包含熵解码单元80、预测处理单元81、反量化单元86、反变换单 元88、求和器90,及参考图片存储器92。预测处理单元81包含用于帧间预测解码的运动补 偿单元82,及用于帧内预测解码的帧内预测处理单元84。在一些实例中,视频解码器30可 执行与关于来自图2的视频编码器20所描述的编码遍次大体上互逆的解码遍次。
[0075] 在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视 频块及关联语法元素的经编码视频位流。视频解码器30的熵解码单元80熵解码所述位流 以产生经量化系数、运动矢量及其它语法元素。熵解码单元80将运动矢量及其它语法元素 转发到预测处理单元81。视频解码器30可在视频切片级别及/或视频块级别处接收语法 元素。
[0076] 当视频切片被译码为经帧内译码(I)切片时,预测处理单元81的帧内预测处理单 元84可基于经发信帧内预测模式及来自当前帧或图片的经先前解码块的数据来产生用于 当前视频切片的视频块的预测数据。当视频帧被译码为经帧间译码(例如,B、P或GPB)切 片时,预测处理单元81的运动补偿单元82基于从熵解码单元80接收的运动矢量及其它语 法元素来产生用于当前视频切片的视频块的预测性块。可从所述参考图片列表中的一者内 的所述参考图片中的一者产生所述预测性块。视频解码器30可使用基于存储在参考图片 存储器92中的参考图片的默认构造技术来构造参考帧列表:列表0及列表1。
[0077] 运动补偿单元82通过剖析运动矢量及其它语法元素来确定用于当前视频切片的 视频块的预测信息,且使用所述预测信息以产生用于正被解码的当前视频块的预测性块。 举例来说,运动补偿单元82使用一些经接收语法元素以确定用以译码视频切片的视频块 的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片、P切片或GPB 切片)、用于切片的参考图片列表中的一或多者的构造信息、用于切片的每一经帧间编码视 频块的运动矢量、用于切片的每一经帧间译码视频块的帧间预测状态,及用以解码当前视 频切片中的视频块的其它信息。
[0078] 运动补偿单元82还可基于内插滤波器来执行内插。运动补偿单元82可使用如由 视频编码器20在视频块的编码期间所使用的内插滤波器,以计算用于参考块的次整数像 素的内插值。在此状况下,运动补偿单元82可从经接收语法元素确定由视频编码器20使 用的内插滤波器,且使用所述内插滤波器以产生预测性块。
[0079] 反量化单元86反量化(即,解量化)位流中提供且由熵解码单元80解码的经量 化变换系数。反量化过程可包含使用由视频编码器20针对视频切片中的每一视频块所计 算的量化参数,以确定量化程度且同样地确定应被应用的反量化程度。反变换处理单元88 将反变换(例如,反DCT、反整数变换或概念上相似反变换过程)应用于变换系数,以便在像 素域中产生残差块。
[0080] 在预测处理单元81基于运动矢量及其它语法元素来产生用于当前视频块的预测 性块之后,视频解码器30通过将来自反变换处理单元88的残差块与由运动补偿单元82产 生的对应预测性块进行求和来形成经解码视频块。求和器90表示执行此求和运算的一或 若干组件。接着可由解块滤波器93、SAO滤波器94及任选ALF95滤波由求和器90形成 的经解码视频块。任选ALF95表示可从一些实施方案排除的任选滤波器。应注意,由于在HEVC中不存在ALF95,故将在用于HEVC的实施方案中省略ALF95。接着将给定帧或图片 中的经解码视频块存储在参考图片存储器92中,参考图片存储器92存储用于后续运动补 偿的参考图片。参考图片存储器92还存储经解码视频以供稍后呈现在诸如图1的显示装 置32的显示装置上。
[0081] 在相关方面中,SAO滤波器94可经配置以应用与上文所论述的SAO滤波器74所 应用的滤波(例如,边缘偏移及频带偏移)相同的滤波(例如,边缘偏移及频带偏移)中的 一或多者。
[0082] 图3的视频解码器30表示一种视频解码器的实例,所述视频解码器经配置以:确 定第一边缘索引,其中所述第一边缘索引包括用于第一周围像素的亮度分量的边缘索引; 确定第二边缘索引,其中所述第二边缘索引包括用于第二周围像素的亮度分量的边缘索 弓丨;基于所述第一边缘索引及所述第二边缘索引来确定第三边缘索引,其中所述第三边缘 索引包括用于当前像素的色度分量的边缘索引;基于所述第三边缘索引来选择偏移;及将 所述偏移应用于所述当前像素的所述色度分量。
[0083] 根据本发明的一或多个方面,图4及5分别展示具有位深度自适应SAO偏移缩放 器的编码器及解码器的框图。可替代或结合上文所描述的图2的视频编码器20或图3的 视频解码器30来实施图4及5中所展示的实例编码器400及解码器500。
[0084] 参看图4,编码器400可包含各种组件,诸如,接收图像/视频数据的预测处理单元 410。预测处理单元410可以操作方式親合到变换/量化单元412,变换/量化单元412以 操作方式耦合到熵编码器414及解量化/反变换单元416两者,如所展示。熵编码器414 可提供经编码视频位流。反变换单元416可以操作方式耦合到预测补偿器418,预测补偿 器418以操作方式耦合到解块滤波器420,解块滤波器420以操作方式耦合到SAO滤波器 428及SAO参数估计器422两者。SAO参数估计器422可以操作方式耦合到偏移按比例缩 小器(down-scaler) 424,偏移按比例缩小器424耦合到熵编码器414及偏移按比例放大器 (up-scaler) 426两者。偏移按比例放大器426可以操作方式耦合到SAO滤波器428,SAO滤 波器428以操作方式耦合到参考图片存储器430,参考图片存储器430又以操作方式耦合到 预测处理单元410。
[0085] 应注意,编码器400的许多组件对应于上文参看图2所描述的编码器20的组件。 然而,在图4的编码器400的实例中,SAO参数估计器422结合偏移按比例缩小器424及偏 移按比例放大器426而工作,以在将经估计偏移值应用于每一像素之前按比例缩小经估计 偏移值且接着按比例放大经估计偏移值,以避免与解码器(例如,图5的解码器500)的失 配。
[0086] 参看图5,解码器500可包含各种组件,诸如,接收经编码视频位流的熵解码单元 510。熵解码单元510可以操作方式耦合到偏移按比例放大器512及解量化/反变换单元 514。偏移按比例放大器512可以操作方式耦合到SAO滤波器520。反变换单元514可耦 合到预测补偿单元516,预测补偿单元516以操作方式耦合到解块滤波器518,解块滤波器 518以操作方式耦合到SAO滤波器520,如所展示。SAO滤波器520可提供经解码图像/视 频数据,且可以操作方式耦合到存储器单元522,存储器单元522以操作方式耦合到预测补 偿单元516,如所展示。
[0087] 虽然解码器500的许多组件对应于上文参看图3所描述的解码器30的组件,但相 对于相邻组件的布置及配置不同。另外,在图5的解码器500的实例中,包含与SAO滤波 器520通信的偏移按比例放大器512。再次应注意,在图4及5所展示的实例中,在编码器 400的侧处,在将经估计偏移值应用于每一像素之前,首先按比例缩小且接着按比例放大经 估计偏移值,以避免与解码器500的失配。下文提供基于位深度的偏移缩放的实例。
[0088] 在一个实例中,针对每一颜色分量而运用灵活缩放比例来进行线性缩放可由编码 器及/或解码器(例如,SAO参数估计器422、偏移按比例缩小器424,及图4的编码器400 的偏移按比例放大器426,及/或图5的偏移按比例放大器512)执行。举例来说,经译码/ 经解码偏移值被线性地缩放,如在HEVC中一样,但运用如下的指定缩放比例。所述缩放比 例针对每一颜色分量(或颜色分量群组,即,用于亮度的一个颜色分量,及用于色度的另一 颜色分量)可不同。
[0089] offset_scaled=offset_coded<<scale_factor
[0090] 在另一实施例中,HEVC函数
[0091]offset_scaled=offset_coded<<(bitDepth-Min(bitDepth, 10))
[0092] 应用于色度分量,而单独scale_factor用于亮度分量,其中scale_factor可被显 式地发信,或针对给定位深度可固定。
[0093] 在另一实例中,针对每一颜色分量而运用灵活缩放比例来进行非线性缩放可由编 码器及/或解码器执行。经译码/经解码偏移值是以非线性方式被缩放。以下C型代码说 明可如何实施此非线性映射。
[0094]offset_scaled=0;
[0095]for(Inti=0;i<offset_coded;i++)
[0096] {
[0097] offset_scaled+=1<<((i>>3)+(scale_factor-1));
[0098] }
[0099] 其中<〈and>>分别为左侧位移位运算符及右侧位移位运算符。
[0100] 应注意,以上实例中的循环可与"〇ffSet_C〇ded"的熵解码程序进行组合,此情形 可进一步缩减计算复杂性。以下表1展示当scale_factor= 2时的根据此实例的经译码 /经解码偏移值及经缩放偏移值。
[0101] 表1.使用缩放比例为1及2的非线性映射进行的经译码偏移值及经缩放偏移值 的映射。


[0104] 如上文且参看图6所展示,可使用简单移位运算及相加运算来执行非线性映射。 为了充分地反映色调映射特性,可使用表映射,其中表含有经译码/经解码偏移值及经缩 放偏移值的一对一映射。还可实施其它非线性映射。
[0105] 举例来说,如图6所展示,可使用分段线性映射,其中所述映射的每一部分以不同 斜率而为线性。举例来说,可在"〇ffset_coded"小于8时使用scale_factor为1的线性 方程式(图6中的迹线100),且否则可使用为2的scale_factor(图6中的迹线104)。
[0106] 在另一实例中,可由编码器及/或解码器执行线性缩放与非线性缩放的组合。举 例来说,有可能针对给定位深度及给定颜色分量选择特定缩放技术及缩放比例。举例来
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1