一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于视频编码系统之跨元件适应性回路滤波器的语法传讯限制方法和装置与流程

2022-07-11 04:37:45 来源:中国专利 TAG:

用于视频编码系统之跨元件适应性回路滤波器的语法传讯限制方法和装置
1.【相关申请的交叉引用】
2.本发明要求2019.12.5提交的申请号为62/943,836,名称为“cross-component adaptive loop filter signaling constraints”,以及2020.1.10提交的申请号为62/959,707,名称为“method of sequence-level on-off of ccalf”的美国临时专利申请的优先权。这些美国临时专利申请的内容通过引用一并并入本说明书中。
【技术领域】
3.本发明涉及用于视频编码或视频解码的视频数据处理方法和装置。特别地,本发明涉及用于视频编码或解码系统中的交叉元件(cross-component)适应性回路滤波器(adaptive loop filter)的语法传讯(signaling)约束。


背景技术:

4.高效视频编解码(hevc)标准是由itu-t研究组的视频编解码联合协作团队(jct-vc)的视频编解码专家组开发的最新视频编解码标准。hevc标准依赖于基于块的编解码结构,该结构将每个切片(slice)划分为多个编解码树单元(ctu)。编解码的图片由一个切片或切片的集合表示,每个切片包括整数个ctu。切片中的各个ctu根据栅格扫描顺序进行处理。使用最多两个运动矢量和参考索引的图片内预测或图片间预测,对双向预测(b)切片中的每个块的采样值进行解码。仅使用一个运动矢量和参考索引,使用图片内预测(intra picture prediction)或图片间预测(inter picture prediction)对预测(p)切片中的每个块的采样值进行解码。仅使用图片内预测对帧内(i)切片进行解码。根据四叉树划分方法,将每个ctu进一步递归地划分为一个或多个编解码单元(cu),以适应各种局部运动和纹理特征。
5.预测决定是在cu级做出的,其中每个cu是通过图片间预测或图片内预测进行编解码的。一旦完成了cu分层树的划分,则根据用于预测的pu划分类型,将每个cu进一步划分成一个或多个预测单元(pu)。pu与关联的cu语法一起,用作共享预测信息的基本代表块,因为对pu中的所有像素都应用了相同的预测过程,并且预测相关信息正在以pu为基础传递给解码器。采用指定的预测过程来预测pu内部关联像素采样的值。在获得由预测过程生成的残差信号之后,属于cu的残差信号的残差数据根据残差四叉树(rqt)块划分结构(residual quadtree(rqt)block partitioning structure),被分成一个或多个变换单元(tu),以将残差数据转换成变换系数以用紧凑的数据表示。tu是用于在编码过程中对残差信号进行变换和量化的基本代表块。对于每个tu,将具有与tu相同大小的变换矩阵应用于残差信号以生成变换系数,并且将这些变换系数量化并基于tu传送给解码器。
6.术语“编解码树块”(ctb)、“编解码块”(cb)、“预测块”(pb)和“变换块”(tb)定义为指定分别与ctu、cu、pu和tu相关联的一个颜色元件(colour component)的二维采样阵列。例如,ctu由一个亮度(luma,y)ctb、两个色度(chroma,cb和cr)ctb及其相关的语法元素组
成。在hevc标准中,除非达到色度块的最小尺寸,否则通常将相同的四叉树块划分结构应用于亮度和色度元件。
7.itu-t和iso/iec的联合视频专家组(jvet)目前正在建立下一代视频编解码标准多功能视频编解码(versatile video coding,简写为vvc)。提出了一种交叉元件适应性回路滤波器(cross-component adaptive loop filter,简写为ccalf),通过根据亮度采样值细化(refine)每个色度元件的alf滤波色度采样值来提高编解码效率。ccalf基于从亮度元件中提取细节的概念,这些细节在编解码循环内的色度元件中丢失了。ccalf与现有的亮度alf操作并行运行。图1说明了ccalf相对于其他回路滤波器的位置。由亮度采样适应性偏移(sample adaptive offset,简写为sao)102处理的亮度采样是亮度alf 104、ccalf cb106和ccalf cr108的输入。由亮度alf 104生成的滤波后的亮度采样y被存储在参考图像缓冲器中。色度cb采样首先由cb sao 110处理,然后由色度alf 114处理,类似地,色度cr采样首先由cr sao 112处理,然后由色度alf114处理。cb元件106的ccalf输出滤波后的色度cb采样的校正值(correction value),cr元件108的ccalf输出滤波后的色度cr采样的校正值。与滤波后的色度cb采样组合的cb的校正值被存储在参考图片缓冲器中,并且与滤波后的色度cr采样组合的cr的校正值也被存储在参考图片缓冲器中。
8.ccalf将如图2所示的线性菱形滤波器应用于每个色度元件的亮度通道。线性菱形滤波器的滤波器系数在适应性参数集(aps)中传输,缩放系数为2
10
,并针对定点表示(fixed point representation)进行四舍五入。滤波器系数动态范围限制为6比特有符号值(signed value)。滤波器选择在ctu级执行,最多支持四个滤波器。为了更好地与alf设计协调,在虚拟边界处使用对称线选择,并且不使用时间层系数缓冲器(temporal layer coefficient buffer)。每个残差输出都从
‑‑2bitdepthc-1
剪切為2
bitdepthc-1-1(包括两个端点)。每个aps中携带的数据可以在多个图片或切片之间共享和引用。每个aps都有一个唯一的标识符(id),当当前图片的图片报头(picture header,简写为ph)或当前切片的切片报头(slice header,简写为sh)包含aps id时,用于识别当前图片或当前切片所引用的aps。滤波器的应用在可变的块大小上控制,并通过为每个采样块接收的上下文编解码标志传讯。ccalf是基于块启用或禁用的。对于每个色度元件,在切片级接收块大小以及ccalf启用标志。色度元件支持的块大小为16x16、32x32、64x64和128x128。
9.在vtm4中,每个aps包含一组适应性回路滤波器(alf)系数,并且在视频编码或解码期间最多可以使用32个aps。图块组或切片可重新使用来自aps的alf信息以减少开销。32个aps被更新为先进先出(fifo)缓冲器。在基于ctb的alf方案中,当将alf处理应用于亮度ctb时,由视频编码器选择5个时间或1个传讯的alf滤波器组中的选择,并且通过在编码比特流中传讯滤波器组索引来指示。传讯滤波器组索引以指示所选择的alf滤波器组。对于每个切片,只能传讯一组新的25个alf滤波器。如果为当前切片传讯了一组新的alf滤波器,则当前切片中的所有亮度ctb共享这组新的alf滤波器。将alf处理应用于色度ctb时,如果传讯了当前切片的新alf滤波器组,则色度ctb将使用该新的alf滤波器组;否则,应用满足时间可伸缩性约束(temporal scalability constraint)的最新时间色度滤波器(most recent temporal chroma filter)。对于切片级时间滤波器,将aps更新为fifo缓冲器,并且将fifo索引用于标识时间滤波器的参考。


技术实现要素:

10.在视频编码或解码系统中处理视频数据的方法接收与当前图片中的当前块相关联的输入视频数据,基于ccalf系数在当前块上进行ccalf处理以根据当前块的亮度元件细化当前块的一个或多个色度元件cb和cr,在aps参数类型等于alf的aps中传讯两个alf信号标志和两个ccalf信号标志,或在aps参数类型等于alf的aps中解析两个alf信号标志和两个ccalf信号标志,并在当前图片中对当前块进行编码或解码。aps参数类型等于alf的aps也称为alf aps。ccalf系数在alf aps中传讯。两个alf信号标志指定是否分别在alf aps中传讯了亮度和色度元件的alf系数,并且两个ccalf信号标志指定了在alf aps中是否分别传讯了色度元件cb和cr的ccalf系数。每个alf aps中,两个alf信号标志和两个ccalf信号标志的值不都等于0。
11.在一个实施例中,当在alf aps中不存在ccalf信号标志时,两个ccalf信号标志中的每一个被推断为等于0。对于每个alf aps,当没有在亮度和色度元件的alf aps中传讯alf系数时,在色度元件cb和cr中至少一个的alf aps中传讯ccalf系数。
12.在一个特定实施例中,每个alf aps中的两个alf信号标志的值不均等于0,同时,每个alf aps中的两个ccalf信号标志的值均不均等于0。
13.本发明的一些实施例允许当前图片内的不同切片参考不同的alf aps以获得ccalf系数。例如,当前图片内的不同切片能够参考多达8个alf aps以获得ccalf系数。在本发明的一些实施例中,可用于通过当前图片中的切片参考ccalf系数的不同alf aps的最大数量与可用于通过当前图片中的切片参考alf系数的不同alf aps的最大数量相同。
14.在一些实施例中,视频数据处理方法还包括:由于alf和ccalf传讯均存在于ph或sh中,因此传讯或解析一个或多个图片报头(ph)ccalf语法元素或切片报头(sh)ccalf语法元素。根据一个实施例,ccalf传讯以图片级alf使能标志或切片级alf使能标志为条件。在另一个实施例中,ccalf传讯以序列参数集(sps)级alf使能标志和图片级alf使能标志为条件。
15.视频数据处理方法还包括,根据一个实施例,传讯或解析sps alf启用标志,然后根据sps alf启用标志有条件地用传讯或解析单独的sps ccalf启用标志。sps alf启用标志指定是启用还是禁用alf处理,sps ccalf启用标志指定是启用还是禁用ccalf处理。当sps alf启用标志指示启用alf处理时,即传讯或解析sps ccalf启用标志,换句话说,仅在启用alf处理时才能启用ccalf处理。在一个实施例中,在通用约束信息语法表中传讯或从通用约束信息语法表中解析出用于ccalf处理的单独的通用约束标志。当用于ccalf处理的单独的一般约束标志等于1时,sps ccalf启用标志等于0。如果用于alf处理的一般约束标志等于1,则用于ccalf处理的单独的一般约束标志等于1,表示在禁用alf处理时必须禁用ccalf处理。当sps alf启用标志指定启用了alf处理时,视频编码或解码系统基于alf系数在当前块上应用alf处理。
16.本公开的各方面还提供一种用于视频编码或解码系统的装置,该装置通过接收当前图片中当前块的输入视频数据,基于ccalf系数在当前块上进行ccalf处理以根据当前块的亮度元件细化当前块的一个或多个色度元件cb和cr,在alf aps中传讯两个alf信号标志和两个ccalf信号标志,或者从alf aps解析两个alf信号标志和两个ccalf信号标志,并对当前图片中的当前块进行编码或解码。ccalf系数在alf aps中发送。alf aps的两个alf信
号标志指定是否在alf aps中传讯亮度和色度元件的alf系数,而alf aps的两个ccalf信号标志指定是否在alf aps中传讯色度元件cb和cr的ccalf系数。每个alf aps中的两个alf信号标志和两个ccalf信号标志的值都被约束为不全部等于0。本发明的其他方面和特征对于本领域技术人员而言,通过阅读以下具体实施方式的描述将变得显而易见。
【附图说明】
17.将参考以下附图详细描述作为示例提出的本公开的各种实施例,相同的附图标志表示相同的元件,并且其中:
18.图1示出了视频编码或解码系统中的回路滤波器处理的示例性框图。
19.图2示出了在ccalf中使用的示例性菱形滤波器。
20.图3示出本发明的实施例的流程图,该实施例用于通过基于在一个或多个alf aps中传讯的alf和ccalf系数来应用alf和ccalf来对当前图片的视频数据进行编码。
21.图4是说明本发明的实施例的流程图,该实施例用于通过基于在一个或多个alf aps中传讯的alf和ccalf系数来应用alf和ccalf来解码当前图片的视频数据。
22.图5示出了根据本发明实施例的,结合了视频数据处理方法的视频编码系统的示例性系统框图。
23.图6示出了根据本发明实施例的,结合了视频数据处理方法的视频解码系统的示例性系统框图。
【具体实施方式】
24.将容易地理解,如本文的附图中一般性描述和示出的,本发明的功能模块可以以多种不同的配置来布置和设计。因此,如附图所示,对本发明的系统和方法的实施例的以下更详细的描述并非旨在限制所要求保护的本发明的范围,而仅是本发明的选定实施例的代表。
25.在整个说明书中,对“一个实施例”、“一些实施例”或类似语言的引用意味着结合这些实施例描述的特定特征、结构或特性可以包括在本发明的至少一个实施例中。因此,在整个说明书中各处出现的短语“在一个实施例中”或“在一些实施例中”并不一定全都指同一实施例,这些实施例可以单独实现或与一个或多个其他实施例结合实现。此外,在一个或多个实施例中,所描述的特征、结构或特性可以以任何合适的方式组合。然而,相关领域的技术人员将认识到,可以在没有一个或多个特定细节的情况下,或者在利用其他方法、部件等的情况下实践本发明。在其他情况下,未展示或示出公知的结构或操作的详细描述以避免混淆本发明的方面。
26.根据vvc标准的vtm-5.0,根据aps的aps参数类型,每个适应参数集(adaptation parameter set,简写为aps)被分为三个类别之一。vtm-5.0中的三种aps参数类型是适应性回路滤波器(alf)类型、亮度映射色度缩放(luma mapping chroma scaling,简写为lmcs)类型和保留类型。当前aps的aps参数类型指定了当前aps中携带的参数的类型,即当aps参数类型为alf类型时,在当前aps中传讯alf系数;类似地,当当前aps的aps参数类型为lmcs类型时,在当前aps中传讯lmcs系数。
27.ccalf标志的约束值在当前的alf设计中,在aps中传讯两个alf信号标志alf_
luma_filter_signal_flag和alf_chroma_filter_signal_flag,其aps参数类型等于alf类型,其指定是否在该信号中分别传讯亮度和色度滤波器aps。例如,当alf信号标志alf_luma_filter_signal_flag的值等于1时,在aps中传讯亮度滤波器系数,而当alf信号标志alf_chroma_filter_signal_flag的值等于1时,在aps中传讯色度滤波器系数。对这两个alf信号标志的值有一定的限制,以避免在没有任何滤波器系数的情况下传讯空的aps。对于每个alf aps,两个alf信号标志alf_luma_filter_signal_flag和alf_chroma_filter_signal_flag的值不应均等于0。在ccalf的当前设计中,存在两个ccalf信号标志:alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag,在aps参数类型等于alf类型的aps中传讯,其指定是否在aps中传讯交叉元件(cross-component)cb和cr滤波器系数。在当前的ccalf设计中,在每个alf aps中传讯的这两个ccalf信号标志的值没有限制。这意味着,如果没有alf亮度滤波器和alf色度滤波器,不可能在alf aps中,传讯ccalf系数用于至少一种cb或cr颜色元件。但是,可能会出现如下情况,例如当使用预定义的alf滤波器进行滤波时,意味着alf不需要传讯,而仍会应用alf。ccalf应用于一种或多种色度元件。本发明的一些实施例对两个alf信号标志和两个ccalf信号标志的值设置限制,以使得aps参数类型等于alf的每个aps不完全为空。在一个实施例中,两个alf信号标志alf_luma_filter_signal_flag和alf_chroma_filter_signal_flag的值以及两个ccalf信号标志alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag的值不均等于0。换句话说,两个alf信号标志和两个ccalf信号标志中至少一个必须等于1。语法元素alf_cross_component_cb_filter_signal_flag(也称为alf_cc_cb_filter_signal_flag)指定是否发新cb颜色元件的交叉元件滤波器系数信号。例如,当语法元素alf_cc_cb_filter_signal_flag等于1时,会在aps中传讯cb颜色元件的交叉元件滤波器系数,而当alf_cc_cb_filter_signal_flag等于0时不传讯cb颜色元件的交叉元件滤波器系数。如果alf_cc_cb_filter_signal_flag的值在aps中不存在,则推断为等于0。语法元素alf_cross_component_cr_filter_signal_flag(也称为alf_cc_cr_filter_signal_flag)指定是否传讯cr颜色元件的交叉元件滤波器系数。例如,当语法元素alf_cc_cr_filter_signal_flag等于1时,会在aps中传讯cr颜色元件的交叉元件滤波器系数,而当alf_cc_cr_filter_signal_flag等于0时不发送cr颜色元件的交叉元件滤波器系数。当alf_cc_cr_filter_signal_flag的值不存在于aps中时,推断其等于0。在本发明的一个实施例中,在没有针对当前aps中的亮度元件和色度元件两者均传讯alf滤波器系数的情况下,针对cb和cr颜色元件中的至少一者在当前aps中传讯ccalf滤波器系数。本发明的各种实施例确保每个alf aps携带用于亮度alf滤波器、色度alf滤波器、用于cb的交叉元件滤波器和用于cr的交叉元件滤波器中的至少一个的滤波器系数,使得当aps是alf aps时,它不会完全为空。
28.实现本发明的上述实施例的视频编码器将每个alf aps中的两个alf信号标志和两个ccalf信号标志中的至少一个设置为等于1,并在每个alf aps中传讯两个alf信号标志和两个ccalf信号标志,以确保每个alf aps中有传讯滤波器系数。实现本发明的上述实施方式的视频解码器从每个参考的alf aps解析两个alf信号标志和两个ccalf信号标志,并且每个参考的alf aps中的两个alf信号标志和两个ccalf信号标志的值不是全部等于0。
29.在另一个实施例中,该限制被分别施加于alf和ccalf滤波器系数。例如,alf信号
标志alf_luma_filter_signal_flag和alf_chroma_filter_signal_flag的值不应均等于0,并且同时,两个ccalf信号标志alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag的值不应均等于0。
30.一张图片的切片所引用的alf aps数量的限制在ccalf设计的当前版本中,存在限制一个图片中的不同切片只能引用一个alf aps的约束。比特流一致性(bitstream conformance)的要求限制了当以切片级传讯的ccalf启用标志指示启用ccalf时,当前图片的所有切片所引用的alf aps的aps id必须相同。但是,在alf设计的当前版本中,当前图片的切片最多可以引用8个alf aps。即,语法元素adaptation_parameter_set_id提供用于aps的标识符以供其他语法元素参考,并且当aps类型aps_params_type等于alf或scaling时,adaptation_parameter_set_id的值在0至7的范围内(包括0和7)。具有adaptation_parameter_set_id的特定值和aps_params_type的特定值的aps网路抽象层(nal)单元可以在图片之间共享,并且图片内的不同切片可以参考不同的alf aps。在一实施例中,ccalf设计与alf设计一致(aligned),因此消除了仅引用用于ccalf的一个alf aps的限制。当根据本实施例启用ccalf时,图片内的不同切片可参考一个以上alf aps以获得ccalf系数。在一实施例中,用于ccalf系数的不同可参考alf aps的最大数量与用于alf系数的不同可参考alf aps的最大数量相同。例如,对于alf和ccalf二者,一个图片的不同切片所引用的alf aps的最大数量等于8。在一个替代实施例中,alf设计与当前ccalf设计对准,从而当前图片的所有切片只能参考一个alf aps获得alf系数。
31.关于ccalf的条件调整在当前版本的alf设计中,通过sps alf启用标志sps_alf_enabled_flag在序列参数集(sps)级启用alf,并且如果sps alf使能标志等于1,可以图片级或切片级传讯alf参数(例如alf启用标志和alf aps id)。alf参数可以在图片报头(ph)或切片报头(sh)中传讯。但是,当前版本的ccalf设计仅在切片级通过传讯切片级启用标志slice_cross_compon ent_alf_cb_enabled_flag和slice_cross_component_alf_cr_enabled_flag来启用。如下所示,当sps alf使能标志指示在序列级中使能了alf时,会传讯这两个切片级的使能标志。
[0032][0033]
在本发明的一个实施例中,如下所述,ccalf设计与alf设计对准,使得在图片报头(ph)或切片报头(sh)中,alf和ccalf传讯均可能。ccalf的控制与alf的控制相同,因为alf和ccalf语法元素都在ph或sh处传讯。
[0034]
[0035][0036]
[0037][0038]
在另一个实施例中,如下将ccalf设计与alf设计对准,并且在ph或sh中同时存在alf和ccalf传讯。ccalf传讯取决于ph中发送的图片级alf启用标志pic_alf_enabled_flag或sh中的切片级alf启用标志slice_alf_enabled_flag。
[0039]
[0040][0041]
[0042][0043]
在又一个实施例中,仅当sps级启用标志和图片级启用标志都指示alf被启用并且alf相关语法元素出现在ph或sh中时,ccalf设计与alf设计对准并且与ccalf有关的语法元素在ph或sh中传讯。在ph中传讯的与ccalf相关的语法元素的一些示例是pic_cross_component_alf_enabled_present_flag、pic_cross_component_alf_cb_enabled_flag、pic_cross_component_alf_cr_enabled_flag、pic_cross_component_alf_cb_aps_id和pic_cross_component_alf_cr_aps_id。在sh中传讯的与ccalf相关的语法元素的一些示例是slice_cross_component_alf_cb_enabled_flag、slice_cross_component_alf_cr_enabled_flag、slice_cross_component_alf_cb_aps_id和slice_cross_component_alf_cr_aps_id。
[0044]
[0045][0046]
[0047][0048]
在以下实施例中,当sps级启用标志和图片级启用标志均指示alf被启用时,取决于色度alf在ph或sh中传讯ccalf语法元素。
[0049]
[0050]
[0051]
[0052][0053]
在一个实施例中,根据色度alf和图片级ccalf使能当前标志来传讯ccalf语法元素。
[0054]
[0055][0056]
[0057]
[0058][0059]
在以下实施例中,仅当sps级启用标志和图片级启用标志指示alf被启用时才传讯ccalf语法元素,并且有可能在ph处进行覆盖。
[0060]
[0061]
[0062]
[0063]
[0064][0065]
在一个实施例中,可以针对cb和cr元件分别执行重写(overwritten)。例如,cb和cr元件的ccalf参数都在ph处传讯,但只有cr元件的ccalf参数在切片级被重写。
[0066]
用于序列级的ccalf和alf的单独控制在一些实施例中,与用于alf的sps级控制分开,存在用于ccalf的sps级控制。根据这些实施例,用于ccalf的sps级控制取决于用于alf的sps级控制。通过传讯或解析sps级ccalf启用标志来实现对ccalf的sps级控制,其中,使用sps级ccalf启用标志来控制ccalf传讯。下面说明根据sps级alf启用标志sps_alf_enabled_flag传讯单独的sps级ccalf启用标志的实施例,其中语法元素sps_cross_component_alf_enabled_flag指定针对当前序列启用还是禁用交叉元件适应性回路滤波器。
[0067]
[0068][0069]
[0070][0071]
在传讯ccalf的sps启用标志的一个实施例中,相关的语法元素和语义如下所示。
[0072][0073]
[0074]
在sps中传讯的语法元素sps_ccalf_enabled_flag指定启用还是禁用交叉元件适应性回路滤波器。如果sps_ccalf_enabled_flag等于0,则禁用交叉元件适应性回路滤波器;如果sps_ccalf_enabled_flag等于1,则启用交叉元件适应性回路滤波器。如果sps中不存在语法元素sps_ccalf_enabled_flag,则将其推断为0。
[0075]
[0076][0077]
在ph中传讯的语法元素pic_alf_enabled_flag等于1,表示为与ph关联的所有片段启用了适应性回路滤波器,并且可以应用于切片中的y,cb或cr颜色元件。当pic_alf_enabled_flag等于0时,对于与ph有关的一个、多个或所有切片,适应性回路滤波器可以被禁用,当语法元素pic_alf_enabled_flag等于0时,pic_cross_component_cb_filters_signalled_minus1、pic_cross_component_alf_cr_enabled_flag、pic_cross_component_alf_cr_aps_id以及pic_cross_component_cr_filters_signalled_minus1不存在于ph。语法元素pic_alf_enabled_flag在ph中不存在时推断其等于0。语法元素pic_cross_component_alf_cb_enabled_flag指示交叉元件cb滤波器是针对与ph关联的所有切片启用的,还是针对与ph关联的一个或多个或所有切片禁用的。当pic_cross_component_alf_cb_enabled_flag等于1时,可以将交叉元件cb滤波器应用于切片中的cb颜色元件。如果在ph中不存在此语法元素pic_cross_compnent_alf_cb_enabled_flag,则可以将其推断为等于0。语法元素pic_cross_component_alf_cb_aps_id指定与ph关联的切片的cb颜色元件所引用的alf aps的适应性参数集(aps)id。具有aps参数类型等于alf以及adaptation_parameter_set_id等于pic_cross_component_alf_cb_aps_id的aps nal单元的alf_cross_component_cb_filter_signal_flag的值应当等于1语法元素pic_cross_component_cb_filters_signalled_minus1加1表示交叉元件cb滤波器的数量,且该语法元素的值应在0~3之间。当pic_cross_component_alf_cb_enabled_flag等于1时,比特流一致性要求pic_cross_component_cb_filters_signalled_minus1应小于等于pic_cross_component_alf_cb_aps_id所参考的alf aps中的alf_cross_component_cb_filters_signalled_minus1的值。语法元素pic_cross_component_alf_cr_enabled_flag、pic_cross_component_alf_cr_aps_id,以及pic_cross_component_cr_filters_signalled_minus1的语义类似于语法元素pic_cross_component_alf_cb_enabled_flag、pic_cross_component_alf_cb_aps_id,以及pic_cross_component_cb_filters_signalled_minus1的
语义。
[0078]
[0079][0080]
在切片报头中,等于1的语法元素slice_alf_enabled_flag指定启用了适应性回路滤波器,并且可以将其应用于切片中的y、cb或cr颜色元件。语法元素slice_alf_enabled_flag等于0指定对切片中的所有彩色元件禁用适应性回路滤波器,且当slice_alf_enabled_flag等于0时,语法元素slice_cross_component_alf_cb_enabled_flag、slice_cross_component_alf_cb_aps_id、slice_cross_component_cb_filters_signalled_minus1、slice_cross_component_alf_cr_enabled_flag、slice_cross_component_alf_cr_aps_id和slice_cross_component_cr_filters_signalled_minus1不存在于切片报头中。当sh中不存在此语法元素时,可以将此语法元素slice_alf_enabled_flag推断为pic_alf_enabled_flag的值。语法元素slice_cross_component_alf_cb_enabled_flag指示是否将交叉元件cb滤波器应用于cb颜色元件。在一个实施例中,当sh中不存在该语法元素时,推断该语法元素等于pic_cross_component_alf_cb_enabled_flag的值。在另一个实施例中,当sh中不存在该语法元素时,推断该语法元素等于(!pic_cross_component_alf_cb_enabled_flag)的值。语法元素slice_cross_component_alf_cb_aps_id指定切片的cb颜色元件所引用的适应性参数集id。具有等于alf的aps参数类型以及等于slice_cross_component_alf_cb_aps_id的适应性参数集id的aps nal单元的temporalid应当小于或等于编码的切片nal单元的temporalid。当slice_cross_component_alf_cb_enabled_flag等于1并且sh中不存在slice_cross_component_alf_cb_aps_id时,推断
slice_cross_component_alf_cb_aps_id的值等于pic_cross_component_alf_cb_aps_id的值。具有等于alf的aps参数类型和等于slice_cross_component_alf_cb_aps_id的适应性参数集id的aps nal单元的alf_cross_component_cb_filter_signal_flag的值应等于1。语法元素slice_cross_component_cb_filters_signalled_minus1加1指定交叉元件cb滤波器的数量。slice_cross_component_cb_filters_signalled_minus1的值应在0到3的范围内。当slice_cross_component_alf_cb_enabled_flag等于1且sh中不存在slice_cross_component_cb_filters_signalled_minus1时,推断slice_cross_component_cb_filters_signalled_minus1等于当前切片的pic_cross_component_alf_cb_aps_id。在另一个实施例中,当slice_cross_component_alf_cb_enabled_flag等于1并且slice_cross_component_cb_filters_signalled_minus1不存在于sh中时,slice_cross_component_cb_filters_signalled_minus1的值被推断为等于当前切片的pic__cross_component_cb_filters_signalled_minus1的值。语法元素slice_cross_component_alf_cr_enabled_flag、slice_cross_component_alf_cr_aps_id和slice_cross_component_cr_filters_signalled_minus1的语义与相应的语法元素slice_cross_component_alf_cb_enabled_flag、slice_cross_component_alf_cb_aps_id和slice_cross_component_cb_filters_signalled_minus1的语义相同。
[0081]
用于ccalf的单独的通用约束标志在ccalf设计的一个实施例中,将用于ccalf的单独的通用约束标志no_ccalf_constraint_flag添加到通用约束信息语法表general_constraint_info()中。sps级ccalf启用标志sps_ccalf_enabled_flag等于0,指示当此单独的通用约束标志no_ccalf_constraint_flag等于1时,ccalf被禁用。语法元素no_ccalf_constraint_flag等于1,指定sps级ccalf启用标志sps_ccalf_enabled_flag应等于0,并且no_ccalf_constraint_flag等于0,表示未施加此约束。比特流一致性的要求是,如果alf no_alf_constraint_flag的一般约束标志等于1,则ccalf的单独的通用约束标志no_ccalf_constraint_flag的值应等于1。如下示出了general_constraint_info()语法表的示例。
[0082]
no_sao_constraint_flagu(1)no_alf_constraint_flagu(1)no_ccalf_constraint_flagu(1)no_joint_cbcr_constraint_flagu(1)
[0083]
alf aps中的适应性回路滤波器数据语法下面示出了alf aps中传讯的适应性回路滤波器数据语法元素和交叉元件alf数据语法元素的示例。
[0084]
[0085]
[0086]
[0087][0088]
语法元素alf_cross_component_cb_filter_signal_flag等于1,表示传讯了交叉元件cb滤波器,而alf_cross_component_cb_filter_signal_flag等于0,表示未发送交叉元件cb滤波器。当chromaarraytype等于0时,alf_cross_component_cb_filter_signal_flag也应等于0。比特流一致性要求,如果alf_luma_filter_signal_flag等于1,则alf_
cross_component_cb_filter_signal_flag的值应等于0。语法元素alf_cross_component_cr_filter_signal_flag等于1表示在该aps中传讯交叉元件cr滤波器,而alf_cross_component_cr_filter_signal_flag等于0,表示未传讯交叉元件cr滤波器。类似地,当chromaarraytype等于0时,alf_cross_component_cr_filter_signal_flag应当等于0。如果alf_luma_filter_signal_flag等于1,则比特流一致性要求alf_cross_component_cr_filter_signal_flag的值必须等于0。每个alf aps仅携带亮度alf滤波器参数或交叉元件滤波器参数。语法元素alf_cross_component_cb_filters_signalled_minus1加1指定在当前alf aps中传讯的交叉元件cb滤波器的数量。alf_cross_component_cb_filters_signalled_minus1的值应在0到3的范围内。语法元素alf_cross_component_cb_coeff_plus32[k][j]减32指定传讯的第k个交叉元件cb滤波器集的第j个系数的值。
[0089]
当不存在此语法时,则推断其等于32。具有元素ccalfapscoeffcb[适应性参数集id][k][j]的传讯的第k个交叉元件cb滤波器系数ccalfapscoeffcb[适应性参数集id][k]的导出如下,其中j=0..7:
[0090]
ccalfapscoeffcb[adaptation_parameter_set_id][k][j]=alf_cross_component_cb_coeff_plus32[k][j]-32
[0091]
语法元素alf_cross_component_cr_filters_signalled_minus1加1指定在当前alf aps中传讯的交叉元件cr滤波器的数量。alf_cross_component_cr_filters_signalled_minus1的值应在0到3的范围内。语法元素alf_cross_compnent_cr_coeff_plus32[k][j]减32指定传讯的第k个交叉元件cr滤波器集合的第j个系数的值。当alf_cross_component_cr_coeff_abs[k][j]不存在时,推断其等于32。具有元素ccalfapscoeffcb[适应性参数集id][k][j]的传讯的第k个交叉元件cb滤波器系数ccalfapscoeffcb[适应性参数集id][k]的导出如下,其中j=0..7:ccalfapscoeffcr[adaptation_parameter_set_id][k][j]=alf_cross_component_cr_coeff_plus32[k][j]-32
[0092]
用于示例性视频编码和解码系统的代表性流程图图3示出了用于通过视频编码系统对当前图片进行编码的本发明的示例性实施例的流程图。在步骤s302中,由视频编码系统接收与当前图片相关联的视频数据。图3示出了当同时启用alf和ccalf时通过alf处理和ccalf处理来滤波当前图片的重构数据的实施例。在步骤s304中通过帧内预测或帧间预测来预测视频数据,然后在步骤s306中对其进行重构。在步骤s304中的预测和步骤s306中的重构之后,在步骤s308中,将alf处理应用于视频数据,以基于alf系数,对当前图片的亮度元件、色度元件或亮度和色度元件两者进行滤波。在步骤s310中,基于ccalf系数来应用ccalf处理,以根据亮度元件细化一个或两个色度元件。在具有等于alf的aps参数类型的aps(也被称为alf aps)中传讯alf系数和ccalf系数。在步骤s312中,视频编码系统通过将每个alf aps的alf_luma_filter_signal_flag、alf_chroma_filter_signal_flag、alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag中的至少一个设为1,确保每个alf aps携带至少一组alf或ccalf系数。这两个alf信号标志alf_luma_filter_signal_flag和alf_chroma_filter_signal_flag和两个ccalf信号标志alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag在每个alf aps中传讯。alf aps中的两个alf信号标志alf_luma_filter_
signal_flag和alf_chroma_filter_signal_flag分别指示在该alf aps中是否传讯了亮度滤波器系数和色度滤波器系数。alf aps中的两个ccalf信号标志alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag指示在此alf aps中是否分别传讯了交叉元件cb滤波器系数和交叉元件cr滤波器系数。在步骤s314中,视频编码系统对当前图片中的视频数据进行编码。
[0093]
图4示出用于通过视频解码系统对当前图片的视频数据进行解码的本发明的示例性实施例的流程图。在步骤s402中,由视频解码系统接收与当前图片相关联的编码的视频数据。图4示出了当同时启用alf和ccalf处理时利用alf处理和ccalf处理对当前图片的重构数据进行滤波的实施例。例如,针对当前序列解析的sps级alf启用标志和sps ccalf启用标志均指示针对当前序列启用了alf和ccalf处理,并且针对该当前图片解析的图片级alf启用标志和图片级ccafl启用标志指示针对当前图片启用了alf和ccalf处理。视频解码系统在步骤s404中对视频数据执行熵解码,在步骤s406中进行预测,并在步骤s408中进行重构。在步骤s410中,从由当前图片中的一个或多个切片所参考的每个alf aps获得两个alf信号标志alf_luma_filter_signal_flag和alf_chroma_filter_signal_flag以及两个ccalf信号标志alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag。比特流一致性的要求是,每个alf aps中的两个alf信号标志和两个ccalf信号标志的值不都等于0,以确保在每个alf aps中传讯至少一组alf或ccalf系数。视频解码系统在步骤s412中基于从一个或多个参考alf aps获得的alf系数对亮度元件和色度元件进行alf处理,并且在步骤s414中,基于从一个或多个参考alf aps获得的ccalf系数应用ccalf处理,以根据亮度元件细化色度元件中的一个或两个。视频解码系统在步骤s416中输出解码的视频。
[0094]
代表性系统框图图5示出了用于实现与ccalf传讯相关联的实施例的视频编码器500的示例性系统框图。帧内预测模块510基于当前图片的重构视频数据来提供帧内预测子。帧间预测模块512基于参考来自其他图片的视频数据来执行运动估计(me)和运动补偿(mc)以提供预测子。开关514从帧内预测模块510或帧间预测模块512中选择预测子,并将所选择的预测子提供给加法器516以形成残差。当前块的残差由变换模块(t)518,然后由量化模块(q)520进一步处理。量化模块520从变换模块518接收每个变换块的缩放变换系数,并应用量化处理生成经过变换和量化的残差信号。然后,经变换和量化的残差信号由熵编码器530编码以形成视频比特流。然后,将视频比特流与辅助信息(side information)打包在一起。当前块的经变换和量化的残差信号由逆量化模块(iq)522和逆变换模块(it)524进行处理以恢复预测残差。如图5所示,通过在重构模块(rec)526处将其加回到所选择的预测子来恢复残差,以产生重构的视频数据。重建的视频数据可以存储在参考图片缓冲器(reference picture buffer)532中,并用于其他图片的预测。由于编码处理,来自rec模块526的重构视频数据可能遭受各种损害,因此,在将重构视频数据存储在参考图片缓冲器532中之前,将适应性回路滤波器(alf)528和交叉元件适应性回路滤波器(ccalf)529应用到重构视频数据,以进一步提高图片质量。ccalf 529根据相应的亮度元件细化一个或多个色度元件。在一个或多个alf aps中传讯当前切片或当前图片的alf系数和ccalf系数。对于每个alf aps,两个alf信号标志和两个ccalf信号标志的值不都等于0,以确保alf aps都不是空aps。在一些实施例中,ccalf约束或传讯方法与alf约束或传讯方法对准。对准ccalf约
束和alf约束更加有效,因为ccalf语法元素也在alf aps中传讯。在一实施例中,当前图片内的不同切片可参考多达八个不同的aps以检索ccalf系数,因为这些切片还可参考多达八个不同的aps用于alf系数。在一个实施例中,在与alf传讯对准的ph或sh上的ccalf传讯都是可能的。在另一个实施例中,取决于序列级alf使能标志有条件地传讯序列级ccalf使能标志。例如,仅当序列级alf启用标志指示启用了alf时,才在sps中传讯序列级ccalf启用标志。在又一个实施例中,用于ccalf的单独的约束标志被添加到通用约束信息语法表中。语法元素被提供给熵编码器530以合并到视频比特流中。
[0095]
在图6中示出了用于对由诸如图5的视频编码器500之类的视频编码器生成的视频比特流进行解码的对应的视频解码器600。视频比特流是视频解码器600的输入,并且被熵解码器610解码,以解析和恢复经变换和量化的残差信号和其他系统信息。熵解码器610解析当前变换块的编码变换系数级。解码器600的解码过程类似于编码器500处的重建循环,除了解码器600仅需要帧间预测模块614中的运动补偿预测。每个块由帧内预测模块612或帧间预测模块614解码。开关616根据解码的模式信息从帧内预测模块612中选择帧内预测子,或者从帧间预测模块614中选择帧间预测子。通过逆量化模块(iq)620和逆变换模块(it)622来恢复经变换和量化的残差信号。通过在重构模块618中将预测子加回去来重构所再现的残差信号以产生重构视频。重构的视频由适应性回路滤波器(alf)624和交叉元件适应性回路滤波器(ccalf)625进一步处理,以生成最终的解码视频。ccalf根据相应的亮度元件细化一种或多种色度元件。为了用ccalf处理来处理当前图片,从由当前图片中的切片所引用的一个或多个alf aps获得ccalf系数。在本发明的一些实施例中,每个alf aps中的两个alf信号标志alf_luma_filter_signal_flag和alf_chroma_filter_signal_flag以及两个ccalf信号标志alf_cross_component_cb_filter_signal_flag和alf_cross_component_cr_filter_signal_flag的值不均等于0。换言之,在每个alf aps中至少传讯一组亮度alf系数、色度alf系数、cb元件的交叉元件滤波器系数和cr元件的交叉元件滤波器系数。如果当前解码的图片是参考图片,则当前解码的图片的重构视频也存储在参考图片缓冲器626中用于按解码顺序的后续图片。
[0096]
图5和图6中的视频编码器500和视频解码器600的各种元件可以通过硬件元件、配置为执行存储在存储器中的程序指令的一个或多个处理器,或硬件和处理器的组合来实现。例如,处理器执行程序指令以基于在一个或多个alf aps中传讯的ccalf系数来控制应用ccalf处理。该处理器配备有一个或多个处理核心。在一些示例中,处理器执行程序指令以执行编码器500和解码器600中的某些元件中的功能,并且与处理器电耦合的存储器用于存储程序指令、与块的重构图像相对应的信息和/或编码或解码过程中的中间数据。在一些实施例中的存储器包括非暂时性计算机可读介质,例如半导体或固态存储器、随机存取存储器(ram)、只读存储器(rom)、硬盘、光盘或其他合适的存储介质。存储器也可以是以上列出的非暂时性计算机可读介质中的两个或更多个的组合。参照图5和图6,编码器500和解码器600可以在同一电子设备中实现,因此,如果在同一电子设备中实现,则编码器500和解码器600的各种功能元件可以被共享或重用。例如,图5中的重构526、逆变换524、逆量化522、alf 528、ccalf529和参考图片缓冲器532中的一个或多个也可以分别用作图6中的重构618、逆变换622、逆量化620、alf 624、ccalf 625和参考图片缓冲器626。
[0097]
在视频编解码系统中对当前切片执行特定处理的视频数据处理方法的实施例可
以在集成到视频压缩芯片中的电路或集成到视频压缩软件中的程序代码中实现,以执行上述处理。例如,可以在要在计算机处理器、数字信号处理器(dsp)、微处理器或现场可程序化门阵列(fpga)上执行的程序代码中实现应用ccalf处理。这些处理器可以被配置为通过执行定义本发明所体现的特定方法的机器可读软体代码或固件代码来执行根据本发明的特定任务。
[0098]
在不脱离本发明的精神或基本特征的情况下,本发明可以以其他特定形式实施。所描述的示例在所有方面仅应被认为是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是前述描述来指示。落入权利要求等同含义和范围内的所有改变均应包含在其范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献