发布信息

具有最小CU大小约束的分离的编解码树编解码的方法和装置与流程

作者:admin      2022-07-10 20:41:44     837



电子通信装置的制造及其应用技术具有最小cu大小约束的分离的编解码树编解码的方法和装置1.【交叉引用】2.本发明要求2019.9.24提交的申请号为62/904,851的美国临时专利申请、2019.9.25提交的申请号为62/905,588的美国临时专利申请、2019.10.7提交的申请号为62/911,946的美国临时专利申请、2019.10.14提交的申请号为62/914,576的美国临时专利申请的优先权。以上美国临时专利申请的内容通过引用一并并入本说明书中。【技术领域】3.本发明涉及在视频编码中使用分离的(separate)划分树的亮度和色度块的块划分(partition)。特别地,本发明公开了当允许分离的划分树时管理最小cu大小的约束的方案。背景技术:4.高效视频编解码(hevc)标准是在itu-t视频编解码专家组(vceg)和iso/iec运动图像专家组(mpeg)标准化组织的联合视频项目,尤其是与称为视频编码联合协作团队(jct-vc)的合作伙伴关系下开发的。在hevc中,一个片被划分为多个编解码树单元(ctu)。在主配置文件中,ctu的最小和最大大小由序列参数集(sps)中的语法元素指定。允许的ctu大小可以是8x8、16x16、32x32或64x64。对于每个切片,将根据光栅扫描顺序处理切片内的ctu。5.ctu被进一步划分成多个编解码单元(cu)以适应各种局部特征。表示为编解码树的四叉树用于将ctu划分为多个cu。假设ctu大小为mxm,其中m是64、32或16的值之一。ctu可以是单个cu(即,不拆分),也可以分为四个相等大小的较小单元(即每个m/2*m/2),它们对应于编解码树的节点。如果单元是编解码树的叶节点,则这些单元将成为cu。否则,可以重复四叉树分割过程,直到节点的大小达到sps(序列参数集)中指定的最小允许cu大小为止。这种表示导致了由编解码树指定的递归结构(也称为划分树结构)。6.在新兴的视频编解码标准(命名为vvc,通用视频编码)中,采用灵活的cu结构,例如四叉树-二叉树(qtbt)(h.huang等人,“quadtree plus binary tree structure integration with jem tools”,itu-t sg 16wp 3和iso/iec jtc 1/sc29/wg 11联合视频探索小组(jvet),第3次会议:2016年5月26日至6月1日,瑞士日内瓦,文档:jvet-c0024),与hevc中的四叉树结构相比,其显示出良好的编解码性能。在qtbt中,如图1所示,首先通过四叉树结构来划分编解码树单元(ctu)。四叉树叶节点进一步由二叉树结构划分。构建二叉树结构后,二叉树叶节点表示为编解码单元(cu),无需进行任何进一步的划分即可用于预测和转换。图1示出了块划分110及其对应的qtbt 120的示例。实线表示四叉树拆分,而虚线表示二叉树拆分。在二叉树的每个拆分节点(即非叶子节点)中,一个标志指示使用哪种拆分类型(水平或垂直),0表示水平拆分,1表示垂直拆分。7.除了四叉树(210)和水平(h)以及垂直(v)二叉树(bt)(220和230)外,如图2所示,采用水平(h)和垂直(v)三叉树(tt)划分(240和250)捕获块中心的对象。首先将ctu按四叉树划分。四叉树叶节点进一步由包含二叉和三叉划分(图2中的划分220到250)的子树划分。在构造子树结构之后,子树叶节点被表示为编解码单元(cu),它们用于预测和转换而无需任何进一步的划分。8.在vvc草案6(b.bross等,“versatile video coding(draft 6)”,itu-t sg 16wp 3和iso/iec jtc 1/sc 29/wg 11的联合视频探索小组(jvet),第15次会议:哥德堡,se,2019年7月3日至12日,文档:jvet-o2001),双树(dual tree)编解码可应用于i切片或i图片。应用双树时,将推断出大小大于64x64的ctu将被划分为64x64的块(在亮度样本中)。对于每个64x64块,将应用双树编解码。在此64x64区域内,亮度分量和色度分量可以具有不同的编解码树结构。技术实现要素:9.公开了一种用于视频编码和解码中的块划分的方法和装置。根据本发明的一种方法,接收与当前图片中的当前块相关联的输入数据,其中当前块包括要被编码或解码的亮度块和色度块,并且其中最小块大小被约束为不大于亮度块的约束最小大小。使用双划分树或单划分树,将亮度块划分为一个或多个亮度叶块,将色度块划分为一个或多个色度叶块。所述一个或多个亮度叶块和所述一个或多个色度叶块被编码或解码。10.在一个实施例中,受约束的最小大小等于64。11.在一个实施例中,最小块大小由包括当前图片的编码数据的视频比特流中的语法指示。根据一个实施例,该语法可以表示与最小块大小的以2为底的对数(log-base-2)有关的值。根据一个实施例,可以在视频比特流的sps(sequence parameter set,序列参数集)级别中发信语法。12.在一个实施例中,在与为当前块选择了双划分树和为当前块选择了单划分树相对应的两种情况下,最小块大小被约束为不大于亮度块的约束最小大小。【附图说明】13.图1示出了块划分及其对应的四叉树加二叉树结构(qtbt)的示例,其中实线指示四叉树划分,而虚线指示二叉树划分。14.图2示出了根据灵活划分的块划分的可行拆分类型的示例。15.图3示出了根据本发明的实施例的当启用双树划分时具有受限的最小块大小的示例性编解码系统的流程图。【具体实施方式】16.以下描述是实施本发明的最佳构想模式。进行该描述是为了说明本发明的一般原理,而不应被认为是限制性的。本发明的范围最好通过参考所附的权利要求来确定。17.在vvc草案6中,导出变量mincbsizey以指示该图片或序列的最小cu大小。该变量根据以下内容导出:18.mincbsizey=1《《mincblog2sizey,19.其中mincblog2sizey如下導出:20.mincblog2sizey=log2_min_luma_coding_block_size_minus2+2。21.mincblog2sizey表示最小亮度块大小的以2为底的对数。在上式中,运算符“《《”表示左移操作。换句话说,“1《《x”等于2x。语法log2_min_luma_coding_block_size_minus2在序列参数集(sps)中发信。但是,如果将mincbsizey设置为128,则表示最小cu大小应为128x128。另一方面,当qtbtt_dual_tree_intra_flag为真(true)并且slice_type等于i(即,应用双树)时,将推断当前的128x128块被划分为64x64块。cu大小从64x64开始,这违反了最小cu大小应为128x128的条件,并且与mincbsizey设置相矛盾。为了支持如此大的cu,提出了几种方法。22.方法1:当mincbsizey大于64时禁用双树23.在vvc草案6中,语法qtbtt_dual_tree_intra_flag在sps中发信。在sps中也发信了log2_min_luma_coding_block_size_minus2语法,但其在语法qtbtt_dual_tree_intra_flag之后。根据一个实施例,在语法log2_min_luma_coding_block_size_minus2之后发信qtbtt_dual_tree_intra_flag语法。此外,当log2_min_luma_coding_block_size_minus2为5(表示mincbsizey等于128)或等于或大于5(表示mincbsizey等于或大于128)时,语法qtbtt_dual_tree_intra_flag不发信且推断为0。在另一个示例中,则可以应用编码器约束。比特流符合性(conformance)要求是,当log2_min_luma_coding_block_size_minus2大于或等于5时,qtbtt_dual_tree_intra_flag应为0。24.在另一个实施例中,可以发信qtbtt_dual_tree_intra_flag。但是,当mincbsizey等于128或等于或大于128时,双树将被禁用。例如,语法修改可以如下表1所示,在这种情况下可以使用单树编解码结构。25.表1[0026][0027]在以上语法设计中,条件“&&mincbsizey《=64”被添加到“if语句”,如注释1所示。[0028]在另一个实施例中,语法qtbtt_dual_tree_intra_flag在sps外部发信。例如,可以在pps(图片参数集)、切片、图块、砖块(brick)、图块组、aps(自适应参数集)或vps(视频参数集)级别报头(header)中发信qtbtt_dual_tree_intra_flag。当log2_min_luma_coding_block_size_minus2为5或等于或大于5(即mincbsizey等于128或等于或大于128)时,不会发信语法qtbtt_dual_tree_intra_flag并将其推断为0。[0029]在一个实施例中,语法log2_min_luma_coding_block_size_minus2也可以在pps、切片、图块、砖块、图块组、aps或vps级别报头中发信。[0030]在另一个实施例中,可以在pps、切片、图块、砖块、图块组、aps或vps级别中导出变量qtbtt_dual_tree_intra_enable。如果mincbsizey等于或大于64,则qtbtt_dual_tree_intra_enable设置为0。语法修改如下表2所示。[0031]表2.[0032][0033]在上面的语法设计中,条件“&&qtbtt_dual_tree_intra_enable”被添加到“if语句”,如注释2所示。[0034]上面提到的5、64、6和128的特定值旨在说明根据本发明实施例的示例,并且这些值可以用其他值代替。[0035]方法2:启用双树时,mincbsizey被约束为不大于64[0036]在该方法中,当应用双树时,mincbsizey被约束为小于或等于64。在一个实施例中,当qtbtt_dual_tree_intra_flag为真时,log2_min_luma_coding_block_size_minus2应小于5。例如,当qtbtt_dual_tree_intra_flag为1时,其为比特流符合性要求。在这种情况下,log2_min_luma_coding_block_size_minus2的值不应大于或等于5。在另一个实施例中,当qtbtt_dual_tree_intra_flag为真时,将log2_min_luma_coding_block_size_minus2裁剪为小于5或将mincblog2sizey裁剪为小于7。[0037]在另一个实施例中,当qtbtt_dual_tree_intra_flag为真或应用双树时,mincblog2sizey应小于5或mincbsizey应不大于64。可以根据maxcblog2sizey确定mincblog2sizey。[0038]在一个实施例中,也可以在pps、切片、图块、砖块、图块组、aps或vps级别报头中发信log2_min_luma_coding_block_size_minus2。[0039]在另一个实施例中,可以为每个切片、每个图块或以一定级别导出或发信/解析mincbsizeyslice或mincbsizeytile。当启用双树时,发信或导出的mincbsizeyslice或mincbsizeytile不得大于64。例如,mincbsizey可以为128,如sps中指示的;但在启用了双树的i切片中,mincbsizeyslice被裁剪为64;而在帧间切片(inter-slice)中,mincbsizeyslice可以为128。[0040]方法3:mincbsizey不得大于64[0041]根据该方法,mincbsizey被约束为小于或等于64,而不管是否应用双树。在一个实施例中,log2_min_luma_coding_block_size_minus2应小于5。例如,比特流符合性要求log2_min_luma_coding_block_size_minus2的值应不大于或等于5。对于另一示例,log2_min_luma_coding_block_size_minus2的值范围应在该0到4的范围内。在另一个实施例中,log2_min_luma_coding_block_size_minus2被裁剪为小于5,或者mincblog2sizey被裁剪为小于7。[0042]在另一个实施例中,mincblog2sizey应当小于5或mincbsizey不应大于64。mincblog2sizey可以根据maxcblog2sizey确定。[0043]在一个实施例中,log2_min_luma_coding_block_size_minus2也可以在pps、切片、图块、砖块、图块组、aps或vps级别报头中发信。[0044]在另一个实施例中,可以针对每个切片、每个图块或以一定级别导出或发信/解析mincbsizeyslice或mincbsizeytile。发信或导出的mincbsizeyslice或mincbsizeytile不得大于64。[0045]大于64的mincbsizeyslice或mincbsizeytile的值可以由其他预定义值替换。该值可以是受支持的转换块大小。例如,在vvc中,支持的最大转换块大小为64。[0046]方法4:启用双树并且mincbsizey大于64时,使用单树或叶cu[0047]根据该方法,当启用双树并且mincbsizey大于64时,可以直接应用叶cu。语法修改如下表3所示。qp信息也可以被重置。[0048]表3[0049][0050][0051]在以上语法设计中,如注释3所示,添加了附加测试条件“if(mincbsizey《=64)”。当不满足条件“if(mincbsizey《=64)”时,添加了附加语句,如注释4至注释5所示。[0052]在另一个实施例中,可以发信qtbtt_dual_tree_intra_flag。但是,当mincbsizey等于128或等于或大于128时,将禁用双树。例如,语法修改可以如下表4所示。在这种情况下,可以使用单树编解码结构。[0053]表4[0054][0055]在以上语法设计中,条件“&&mincbsizey《=64”被添加到“if语句”,如注释6所示。替代语法设计如表5所示。[0056]表5[0057][0058][0059]在以上语法设计中,如注释7所示,将条件“&&mincbsizey《=64”添加到“if语句”。另一种语法设计如下所示。[0060]在另一个实施例中,当应用双树(即,qtbtt_dual_tree_intra_flag等于1)时,对于i切片,其仅当cu大小大于64x64或cu宽度或高度大于64时才可以使用qt-拆分。[0061]在另一个实施例中,当应用双树时(即,qtbtt_dual_tree_intra_flag等于1),对于i切片,当cu大小大于64x64或cu宽度或高度大于64时,其只能使用qt-拆分或bt-拆分。不允许使用tt。[0062]在另一个实施例中,当应用双树(qtbtt_dual_tree_intra_flag)并且当mincbsizey大于64时,对于i切片,当cu大小大于64x64或cu宽度/高度大于64时,才可以使用qt-拆分。[0063]在另一个实施例中,当应用双树(qtbtt_dual_tree_intra_flag)并且当mincbsizey大于64时,对于i切片,在cu大小大于64x64或cu宽度/高度大于64时,只能使用qt-拆分或bt-拆分。不允许使用tt。[0064]方法5:发信mincbsizeydualtree或mincbsizeyi[0065]在该方法中,当启用双树时,可以发信额外的语法mincbsizeydualtree或mincbsizeyi。mincbsizeydualtree或mincbsizeyi指示用于i-切片或启用双树的切片的最小cu大小。例如,可以发信log2_min_luma_coding_block_size_in_i_slice_minus2或log2_min_luma_coding_block_size_dual_tree minus2。当启用双树时,log2_min_luma_coding_block_size_in_i_slice_minus2或log2_min_luma_coding_block_size_dual_tree minus2的值不能大于4。总之,当启用双树时,mincbsizeydualtree或mincbsizeyi不能大于64。对于其他切片,例如,p/b-切片,使用原始mincbsizey。[0066]方法6:将mincbsizey限制为大于64或双树起始拆分大小(dual-tree start split size)[0067]根据该方法,mincbsizey被约束为小于或等于64或双树起始拆分大小,而不管是否应用双树。例如,如果启用了双树,则在dual_tree_implicit_qt_split函数中,推断cu通过四叉树划分拆分为预定义或发信的块大小(例如,如果cu大小、宽度和/或高度大于预定义或发信的块大小,则使用qt-拆分)。然后,双树划分从该预定义或发信的块大小开始。亮度和色度可以具有与此预定义或发信的块大小不同的编解码树结构。在vvc草案6中,大小为64(例如64x64块)。在此方法中,将mincbsizey限制为小于或等于双树起始拆分的大小。在一个实施例中,log2_min_luma_coding_block_size_minus2应小于5或log2(双树起始拆分大小)–2。例如,比特流符合性要求log2_min_luma_coding_block_size_minus2的值不得大于或等于5或log2(双树起始拆分大小)-2。根据另一个实施例,log2_min_luma_coding_block_size_minus2被裁剪为小于5或log2(双树起始拆分大小)-2,或者mincblog2sizey被裁剪为小于7或被裁剪为小于或等于log2(双树起始拆分大小)。[0068]根据另一个实施例,mincblog2sizey应小于5或log2(双树起始拆分大小)-2,或者mincbsizey不得大于64或双树起始拆分大小。可以根据maxcblog2sizey确定mincblog2sizey。[0069]根据一个实施例,log2_min_luma_coding_block_size_minus2也可以在pps、切片、图块、砖块、图块组、aps或vps级别报头中发信。[0070]根据另一实施例,可以针对每个切片、每个图块或在一定级别上导出或发信/解析mincbsizeyslice或mincbsizeytile。发信或导出的mincbsizeyslice或mincbsizeytile不得大于64或双树起始拆分大小。[0071]大于64的mincbsizeyslice或mincbsizeytile的值可以由其他预定义值或双树起始拆分大小替换(例如,double_tree_implicit_qt_split中使用的值,如以下语法表6中的注释8所示)。该值可以是受支持的转换块大小。例如,在vvc中,支持的最大转换块大小为64。[0072]表6[0073][0074][0075]可以在编码器和/或解码器中实现任何前述提出的方法。例如,可以在编码器的帧间、帧内、预测、转换或块划分模块和/或解码器的逆转换、帧间、帧内、预测或块划分模块中实现任何所提出的方法。可替代地,任何所提出的方法可以被实现为与编码器的逆转换、帧间、帧内、预测或块划分模块和/或解码器的帧间/帧内/预测/转换模块耦合的电路,以便提供帧间、帧内、预测、转换或块划分所需的信息。[0076]图3示出了根据本发明的实施例的当启用双树划分时具有受限的最小块大小的示例性编解码系统的流程图。流程图中所示的步骤以及本公开中的其他后续流程图可被实现为可在编码器侧和/或解码器侧的一个或多个处理器(例如,一个或多个cpu)上执行的程序代码。流程图中所示的步骤也可以基于硬件来实现,例如被布置为执行流程图中的步骤的一个或多个电子设备或处理器。根据该方法,在步骤310中接收与当前图片中的当前块相关联的输入数据,其中,当前块包括要被编码或解码的亮度块和色度块,并且其中最小块大小被约束为不大于亮度块的约束最小大小(constrained minimum size)。在步骤320中,使用双划分树或单划分树将亮度块划分为一个或多个亮度叶块,并将色度块划分为一个或多个色度叶块。在步骤330中对所述一个或多个亮度叶块和所述一个或多个色度叶块进行编码或解码。[0077]所示的流程图旨在说明根据本发明的视频编解码的示例。本领域技术人员可以在不脱离本发明的精神的情况下修改每个步骤、重新布置这些步骤、划分一个步骤或组合步骤以实施本发明。在本公开中,已经使用特定的语法和语义来说明用于实现本发明的实施例的示例。本领域技术人员可以通过用等效的语法和语义替换语法和语义来实践本发明,而不脱离本发明的精神。[0078]呈现以上描述是为了使本领域技术人员能够实践在特定应用及其要求的上下文中提供的本发明。对所描述的实施例的各种修改对于本领域技术人员将是显而易见的,并且本文中定义的一般原理可以应用于其他实施例。因此,本发明并不旨在限于所示出和描述的特定实施例,而是与与本文所公开的原理和新颖特征相一致的最广范围相一致。在以上详细描述中,示出了各种具体细节以便提供对本发明的透彻理解。然而,本领域技术人员将理解可以实施本发明。[0079]如上所述的本发明的实施例可以以各种硬件、软件代码或两者的组合来实现。例如,本发明的实施例可以是集成到视频压缩芯片中的一个或多个电路电路,或者是集成到视频压缩软件中以执行本文所述处理的程序代码。本发明的实施例还可以是要在数字信号处理器(dsp)上执行以执行本文描述的处理的程序代码。本发明还可以包括由计算机处理器、数字信号处理器、微处理器或现场可程序化门阵列(fpga)执行的许多功能。这些处理器可以被配置为通过执行定义本发明所体现的特定方法的机器可读软件代码或固件代码来执行根据本发明的特定任务。可以以不同的程序语言和不同的格式或样式来开发软件代码或固件代码。也可以为不同的目标平台编译软件代码。然而,不同的代码格式、软件代码的样式和语言以及配置代码以执行根据本发明的任务的其他手段将不脱离本发明的精神和范围。[0080]在不脱离本发明的精神或基本特征的情况下,本发明可以以其他特定形式实施。所描述的示例在所有方面仅应被认为是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是前述描述来指示。落在权利要求的等同含义和范围内的所有改变均应包含在其范围之内。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部