CN110506420B - 编解码变换块 - Google Patents

编解码变换块 Download PDF

Info

Publication number
CN110506420B
CN110506420B CN201880022340.0A CN201880022340A CN110506420B CN 110506420 B CN110506420 B CN 110506420B CN 201880022340 A CN201880022340 A CN 201880022340A CN 110506420 B CN110506420 B CN 110506420B
Authority
CN
China
Prior art keywords
flag
cbf
block
codeword
chroma
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201880022340.0A
Other languages
English (en)
Other versions
CN110506420A (zh
Inventor
向时达
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of CN110506420A publication Critical patent/CN110506420A/zh
Application granted granted Critical
Publication of CN110506420B publication Critical patent/CN110506420B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提供一种编解码视频编解码系统中单个变换块的编解码块旗标的方法。所述方法通过联合发信来自变换单元或编码单元的Cb变换块和Cr变换块的CBF值来提高编解码效率。单个语法元素cbf_chroma被用于联合编解码来自变换单元的一对同位的Cb变换块和Cr变换块的CBF值。

Description

编解码变换块
相关引用
本申请是要求2017年03月31日提交的申请号为62/479,352美国临时专利申请案的优先权的非临时申请的部分。上述列出的申请案内容以引用方式并入本文。
技术领域
本申请通常涉及视频编解码。具体地,本申请涉及对变换块区域中的存在或不存在非零变换系数进行发信。
背景技术
除非此处另有说明外,本部分所描述的方法相对于下面列出的权利要求而言不是背景技术,并且通过本部分的引入不被承认是背景技术。
高效视频编解码(High-Efficiency Video Coding,HEVC)是由视频编码联合协作小组(Joint Collaborative Team on Video Coding,JCT-VC)开发的最新的视频编解码标准。在HEVC中,已编码图像是由多个已编码切片(slice)表示。每个切片被分割成非重叠的编码树单元(coding tree unit,CTU)。在主配置(main profile)中,CTU的尺寸是由序列参数集合(sequence parameter set,SPS)中的语法元素指定,且范围是从16x16到64x64。CTU可以进一步被分割成一个或多个编码单元(coding unit,CU)以适应不同的局部统计特征。每个CU可以进一步被分割成一个或多个预测单元(prediction unit,PU)。PU作为基本功能单元以用于预测块区域中的样本值。在通过预测流程获得残差块之后,编码单元可以由残差四叉树结构来进一步分割成一个或多个变换单元(transform unit,TU)。TU为用于应用变换和量化操作以表示来自图像块区域的预测残差信号的基本块。变换单元可以由多个变换块(transform block,TB)组成,其对应于来自TU块区域的不同颜色分量。
ITU-T SG16 WP3和ISO/IEC JTC1/SC29/WG11的联合视频探索团队(Joint VideoExploration Team,JVET)目前正在研究下一代国际视频编码标准。在联合探索测试模型5(Joint Exploration Test Mode 5,JEM5)中,四叉树加二叉树(quadtree plus binarytree,QTBT)结构是用于将CTU分割成一个或多个CU。每个CU只包含一个PU和一个TU。得到的TB的尺寸可以为从128x128到2x2的范围,且可以采用正方形或矩形形状。在I-切片中,每个CTU可以被分割成两个单独的编解码树,其分别用于一个亮度分量(Y)和两个色度分量(Cr和Cb)。
发明内容
以下发明内容仅是说明性的,不打算以任何方式加以限制。也就是说,以下发明内容被提供以介绍此处所描述的新且非明显的技术的概念、重点、好处和优势。选择而不是所有的实施方式在下面的详细说明中进行进一步描述。因此,以下发明内容不用于决定所要求主题的本质特征,也不用于决定所要求主题的范围。
本申请的一些实施例提供了一种编解码单个变换块的编解码块旗标的方法,其在视频编解码系统中,所述方法通过联合发信来自变换单元或编解码单元的Cb变换块和Cr变换块的CBF值来提高编解码效率。在一些实施例中,单个语法元素cbf_chroma被用于联合编解码来自变换单元的一对同位的Cb变换块和Cr变换块的CBF值。
在一些实施例中,编码器或解码器接收包括亮度分量、第一色度分量和第二色度分量的像素块。像素块被编码为多个变换系数。编码器或解码器将第一旗标和第二旗标编码为一码字。第一旗标指示第一色度分量的非零变换系数的存在且第二旗标指示第二色度分量的非零变换系数的存在。码字具有用于第一旗标和第二旗标的值的不同组合的不同长度。编码器或解码器通过使用第一旗标和第二旗标来编码像素块以用于传输或显示。
在一些实施例中,码字是通过使用截断一元码被编码的。第一旗标的值为一个比特值,且第二旗标的值为一个比特值,且码字的最短长度不超过一个比特。码字的最短长度表示第一色度分量和第二色度分量均不存在任意非零变换系数。码字的第二最短长度可表示第一色度分量和第二色度分量均存在非零变换系数。码字的第二最短长度可表示第一色度分量存在至少一个非零变换系数和第二色度分量不存在非零变换系数。
在一些实施例中,码字的不同长度是根据查找表(look up table,LUT)被映射至第一旗标和第二旗标的值的不同组合的。查找表是基于选择值从多个查找表中选择的,所述选择值被编码为编码像素块的比特流的序列参数集合(SPS)、图像参数集合(PPS)或切片段头(slice segment header)的一部分。在一些实施例中,当用于像素块的根编解码块旗标为零时,第一旗标和第二旗标被推导为零且所述码字不被编码。
附图说明
下列图式用以提供本发明的进一步理解,并被纳入且构成本发明的一部分。这些图式说明了本发明的实施方式,并与说明书一起用以解释本发明的原理。为了清楚地说明本发明的概念,与实际实施方式中的尺寸相比,一些组件可以不按照比例被示出,这些图式无需按照比例绘制。
图1概念性示出Cb变换块和Cr变换块的CBF值的联合发信。
图2概念性示出对使用单个语法元素以指示两个色度分量的非零变换块的解码比特流的流程。
图3概念性示出对使用单个语法元素以指示两个色度分量的非零变换块的编码比特流的流程。
图4示出与示范性实施例一致的示例视频编码器。
图5示出生成和使用CBF旗标的视频编码器的一部分。
图6示出与示范性实施例一致的示例视频解码器。
图7示出解码以及使用CBF语法元素的视频解码器的部分。
图8概念性示出执行本申请的一些实施例的电子系统。
具体实施方式
在下面详细的说明书中,为了提供相关教导的透彻理解,通过示例的方式给出了大量具体的细节。基于本文所描述的教导内容的任何改变、推导和/或拓展均在本发明的保护范围内。在一些例子中,为了避免不必要地混淆本发明的教导内容的方面,在相对较高的级别而无细节上描述已知的方法、程序、组件和/或关于此处所公开的一个或者多个示例性实施方式的电路。
在视频流中,编解码块旗标(coded block flag,CBF)用于指示在变换块区域中是否存在任意非零变换系数。当CBF为1时,相关的变换块包含至少一个非零系数。否则,相关的变换块不会被进一步编解码且其所有系数均被推导为等于0。在HEVC中,语法元素cbf_luma、语法元素cbf_cb和语法元素cbf_cr分别被采用来从luma分量、Cb分量和Cr分量中推导变换块的CBF。根编解码块旗标语法元素root_cbf(也称为rqt_root_cbf)还被用于帧间预测CU中,以紧凑地指示相关CU中的变换块的任何CBF是否为非零。当root_cbf等于0时,相关CU中的变化块的所有CBF不被编解码,且被推导成等于0。
本申请的一些实施例提供了一种在视频编解码系统中编解码单个变换块的编解码块旗标的方法,所述方法通过联合发信来自变换单元或编解码单元的Cb变换块和Cr变换块的CBF值来提高编解码效率。在一些实施例中,单个语法元素cbf_chroma被用于联合编解码来自变换单元的一对同位的Cb变换块和Cr变换块的CBF值。
在一些实施例中,两个编解码色度块的CBF值的四种可能性组合由被定义为((cbfCb<<1)+cbfCr)的变量cbfCbCr唯一识别,其中,cbfCb(即cbf_cb旗标的值)和cbfCr(即,cbf_cr旗标的值)分别为Cb变换块和Cr变换块的CBF值的二进制变量。(因此,变量cbfCbCr的语法值可以为0、1、2、或3。)在一些实施例中,基于最大码字值等于3的截断一元码,变量cbfCbCr被二值化为语法元素cbf_chroma。例如,当cbfCbCr=0时,cbf_chroma为‘0’;当cbfCbCr=3时,cbf_chroma为‘10’;当cbfCbCr=2时,cbf_chroma为‘110’;当cbfCbCr=1时,cbf_chroma为‘111’。
图1概念性示出Cb变换块和Cr变换块的CBF值的联合发信。图式示出其像素具有亮度分量和两个色度分量(Cr和Cb)的视频图像100。视频图像被编解码为编码树单元(CTU),且包括CTU 110。CTU 110被子分割为编码单元(CU),每个CU编解码视频图像中的像素块。每个CU可进一步被分割成子CU。每个CU可包括一个或多个变换单元(TU),且每个变换单元包含视频图像中的像素块的变换系数。每个TU可进一步被分割成子TU。
如图所示,CTU 100以四叉树方式被子分割成多个像素块。每个像素块对应于TU,包括分别被标记为A、B、C和D的块121-124。这些TU中的一些为不能进一步子分割的叶级TU。
落入在TU内的像素被编码为变换系数。像素的三个颜色分量被编码为这些分量(Y、Cb,和Cr)的各自相应的变换系数集。如图所示,TU 121-124中的每个包括Y(亮度分量)的变换系数集、Cb(第一色度分量)的变换系数集和Cr(第二色度分量)的变换系数集。亮度分量或色度分量的变换系数集也被称为变换块(TB)。如图所示,TU 121(块A)包括Y的TB131、Cb的TB 141、Cr的TB 151;TU 122(块B)包括Y的TB 132、Cb的TB 142、Cr的TB 152;TU123(块C)包括Y的TB 133、Cb的TB 143、Cr的TB 153;TU 124(块D)包括Y的TB 134、Cb的TB144、Cr的TB 154。
对于每个TU,cbf_cb旗标和cbf_cr旗标指示TU的Cb分量TB和Cr分量TB是否具有非零变换系数。在示例中,A的cbf_cb、A的cbf_cr、B的cbf_cr、D的cbf_cb被设置为'1'以指示其相应的变换块(分别为TB 141、TB 151、TB 152、TB 144)具有非零系数。另一方面,B的cbf_cb、C的cbf_cb、C的cbf_cr、D的cbf_cr被设置为'0'以指示其相应的变换块(分别为TB142、TB 143、TB 153、TB 154)不具有非零系数(即,仅具有零系数或者不被编解码)。
不用分别发信每个TU的cbf_cb和cbf_cr,而是cbf_cb旗标和cbf_cr旗标被一起编码为每个TU的语法元素cbf_chroma的截断一元码字。所述码字具有用于cbf_cb旗标和cbf_cr旗标的值的不同组合的不同长度(即,变数cbfCbCr的不同值)。在示例中,TU A的cbf_cb旗标和cbf_cr旗标的值为[1,1],其相应的语法元素cbf_chroma的码字为‘10’。TU B的cbf_cb旗标和cbf_cr旗标的值为[0,1],其相应的语法元素cbf_chroma的码字为‘111’。TU C的cbf_cb旗标和cbf_cr旗标的值为[0,0],其相应的语法元素cbf_chroma的码字为‘0’。TU D的cbf_cb旗标和cbf_cr旗标的值为[1,0],其相应的语法元素cbf_chroma的码字为‘110’。
每当语法元素cbf_chroma的最短码字(例如,'0')被用于表示cbf_cb旗标和cbf_cr旗标的组合时,比特率都会被减低,因为一个比特被用于表示每个至少为一个比特的两个旗标。因此,在一些实施例中,cbf_cb旗标和cbf_cr旗标的不同组合与不同长度码字之间的映射方案被选择为,使更多可能的cbf_cb和cbf_cr的组合被分配更短的码字(例如,‘0’和‘10’)而更少可能的cbf_cb和cbf_cr的组合被分配更长的码字(例如,‘110’和‘111’)。
在一些实施例中,灵活的映射选择方案被使用,使得对于每个TU,从复数查找表集中选择查找表,以决定cbf_cb旗标和cbf_cr旗标的不同组合(例如,变量cbfCbCr的不同值)的码字的分配。表1和表2提供了示例查找表。
表1:cbfCbCr到cbf_chroma的映射
Figure GDA0002218479430000071
表1包括前向LUT集,即cbfCbCrEnc[0:5]。索引k选择LUT cbfCbCrEnc[0:5]中的一个。选择的LUT(即cbfCbCrEnc[k])将索引i(变量cbfCbCr)的每个可能值映射至cbfCbCrEnc[k][i]的相应索引。随后,cbfCbCrEnc[k][i](0,1,2,3)的四个可能索引分别被映射至语法元素cbf_chroma的截断一元码字(‘0’,‘10’,‘110’,‘111’)。例如,如果k=2且LUTcbfCbCrEnc[2]被选择,则:
cbfCbCr=0被映射至cbf_chroma=0(码字‘0’),
cbfCbCr=1被映射至cbf_chroma=3(码字‘111’),
cbfCbCr=2被映射至cbf_chroma=2(码字‘110’),
cbfCbCr=3被映射至cbf_chroma=1(码字‘10’)。
当使用这个特定的LUT,最短长度码字(‘0’)表示两个色度分量都不存在任意非零变换系数(cfb_cb和cfb_cr均为0)。第二最短长度码字(‘10’)表示两个色度分量都存在非零变换系数(cfb_cb和cfb_cr均为1)。
又例如,如果LUT cbfCbCrEnc[1]被选择,则:
cbfCbCr=0被映射至cbf_chroma=0(码字‘0’);
cbfCbCr=1被映射至cbf_chroma=2(码字‘110’);
cbfCbCr=2被映射至cbf_chroma=1(码字‘10’);
cbfCbCr=3被映射至cbf_chroma=3(码字‘111’)。
在这种情况下,最短长度码字(‘0’)表示两个色度分量都不存在任意非零变换系数(cfb_cb和cfb_cr均为0)。最长长度码字(‘111’)表示两个色度分量都存在非零变换系数(cfb_cb和cfb_cr均为1)。码字的第二最短长度和第三最短长度(‘10’和‘110”)表示两个色度分量中只有一个色度分量存在非零变换系数(cfb_cb,cfb_cr=[0,1]或[1,0])。
表2包含相应反向查找表集,即cbfCbCrDec[0:5]。索引k选择LUT cbfCbCrDec[0:5]中的一个。选择的LUT(cbfCbCrDec[k])将索引j映射回cbfCbCr变量值,使得解码器可获得cbf_cb旗标和cbf_cr旗标。索引j(0,1,2,3)的四个可能值对应于cbf_chroma的四个可能码字(‘0’,‘10’,‘110’,‘111’)。
表2:cbf_chroma到cbfCbCr的映射
Figure GDA0002218479430000081
Figure GDA0002218479430000091
例如,如果LUT cbfCbCrDec[2]被选择,则:
j=0(cbf_chroma码字‘0’)被映射至cbfCbCr=0;
j=1(cbf_chroma码字‘10’)被映射至cbfCbCr=3;
j=2(cbf_chroma码字‘110’)被映射至cbfCbCr=2;
j=3(cbf_chroma码字‘111’)被映射至cbfCbCr=1。
在一些实施例中,当多于一个LUT选择可用时,一个或多个高级语法元素可被用于指定所选择的LUT(例如,在视频编码器处,选择cbfCbCrEnc[0:5]中的一个,或者在视频解码器处,选择cbfCbCrDec[0:5]中的一个)。高级语法元素可存在于序列参数集合(SPS或序列头),图像参数集合(PPS或图像头)和/或切片段头的语法元素中。在一些实施例中,不同LUT被分配给不同的切片类型。在一些实施例中,不同LUT被分配给不同的CU预测模式。
当CU被分割成多个TU时,来自每个色度分量的变换块的CBF可由其母分割(parentpartitions)的CBF来联合发信。例如,HEVC对来自色度分量的残差四叉树节点的CBF进行编解码,以指示其子四叉树节点(自当前四叉树节点所分割的所有节点)的任意CBF是否为非零。换言之,TU的cbf_cb旗标可以被用于指示TU的子四叉树节点的Cb TB的CBF是否为非零,且TU的cbf_cr旗标可以被用于指示TU的子四叉树节点的Cr TB的CBF是否为非零。
在一些实施例中,对应于相同块区域的cbf_cb旗标和cbf_cr旗标被联合编解码为语法元素cbf_chroma的一个码字。换言之,一个cbf_chroma码字(在截断一元中)可以被用于指示在当前块分区中是否存在Cb分量和Cr分量的任意非零CBF,包括其任何子四叉树节点。在图1的示例中,TU 123的cbf_chroma语法元素的码字“0”可指示TU 123的所有子四叉树节点均具有用于Cb分量和Cr分量的零CBF,而TU 124的码字“110”可指示TU 124的所有子四叉树节点具有Cr分量的零CBF且至少一个子四叉树节点具有Cb分量的非零CBF。
当变换块被包含在编码单元中时,语法元素可用于指示相关的编码单元是否包含任意非零变换块。例如,JEM5在帧间预测CU中采用语法元素root_cbf以指示在相关CU中的三个分量变换块的任意CBF是否为非零。在一些实施例中,当语法元素root_cbf被设为1以指示不是所有变换块均为零时(即,已包括的变换块的CBF不是全部为0),在CU中的两个色度变换块的CBF被联合编解码为语法元素cbf_chroma的一个码字。换言之,一个cbf_chroma码字(在截断一元中)可以被用于指示在CU被帧间预测编解码且root_cbf被设为1时当前块分割中是否存在用于Cb分量和Cr分量的任意非零CBF。
图2概念性示出对使用单个语法元素以指示两个色度分量的非零变换块的解码比特流的流程200。在一些实施例中,实现视频解码器的计算设备一个或多个处理单元(例如,处理器)通过执行存储于计算机可读介质中的指令来执行流程200。在一些实施例中,实现视频解码器的电子装置执行流程200。下面结合图6描述示例视频解码器600。
在一些实施例中,视频解码器在其解码比特流中的像素块(例如,CU或TU)以用于显示时执行流程200。解码器执行流程200以基于已解码语法元素例如root_cbf和chroma_cbf来决定两个色度分量的TB是否为非零。
流程200始于视频解码器通过解析比特流来接收视频图像中的像素块的编码数据(在步骤210中)。像素块的编码数据可包含像素块的亮度分量和色度分量的编码变换系数。变换系数被设置为用于亮度分量和色度分量中每个的变换块。
视频解码器决定当前像素块是帧内编解码的还是帧间预测编解码的(通过检测比特流)(在步骤215中)。如果该块为帧内编解码的,则该流程进行至260。如果该块为帧间预测编解码的,则该流程进行至220。
在步骤220中,视频解码器决定当前块的root_cbf旗标是否被推导出。对于帧间预测编解码块,root_cbf旗标被用于指示相关CU中的任意变换块是否为非零(例如,相关CU中的三个分量变换块的任意CBF是否为非零)。当帧间预测编解码块的root_cbf旗标(或者rqt_root_cbf)不存在于比特流中时,其值被推导出(例如,基于如约束当前CU的残差信号是否应为零或非零的语法元素cu_skip_flag和语法元素merge_flag)。如果root_cbf旗标被推导出,则流程进行至240。如果root_cbf旗标不被推导出,而是被显性地编码在比特流中,则该流程进行至230。
在步骤230中,视频解码器从比特流中解码或解析root_cbf旗标。视频解码器决定root_cbf旗标是否为零(在步骤240中)。如果root_cbf旗标为非零,则该流程进行至260。如果root_cbf旗标为零,则该流程进行至250,而不解析且解码cbf_chroma语法元素。
在步骤250中,所有三个分量的CBF均被推导为零,且视频解码器设置cbf_luma旗标、cbf_cb旗标和cbf_cr旗标为零,以指示所有三个分量的变换系数(变换块)集均为零。在设置CBF为零之后,该流程进行至290。
在步骤260中,视频解码器根据已解码的cbf_chroma语法元素,解码cbf_chroma语法元素以及设置cbf_cr旗标和cbf_cb旗标。如上所述,cbf_chroma为编码两个色度分量(Cr和Cb)的CBF的单个语法元素。在一些实施例中,cbf_chroma为截断一元码字,其具有用于cbf_cr旗标和cbf_cb旗标的不同组合的不同长度。在该方案中,最短码字使用一个比特,以表示cbf_cr旗标和cbf_cb旗标。在步骤270中,视频解码器决定像素块是否为帧内编解码的。如果是,则该流程进行至280。如果像素块不是帧内编解码的,则该流程进行至275。
上面结合图1进一步详细描述cbf_chroma语法元素的截断一元编解码。cbf_chroma的解码可使用LUT,其将不同长度的码字映射至cbf_cb旗标和cbf_cr旗标的不同组合。在一些实施例中,视频解码器基于比特流中的高级选择语法元素,从LUT集中选择LUT。上面结合表1和表2描述了LUT的使用和选择。
在步骤275中,视频解码器决定cbf_cr旗标和cbf_cb旗标是否为非零(即,cbf_chroma是否为非零)。如果两个色度CBF旗标中的至少一个为非零(指示Cr或Cb的变换系数为非零),则该流程进行至280。如果cbf_cr旗标和cbf_cb旗标均为零,则该流程进行至285。
在步骤280中,视频解码器解码或解析亮度分量的CBF且相应地设置cbf_luma旗标。然后该流程进行至290。
在步骤285中,视频解码器设置亮度的CBF(cbf_luma旗标)为1,以指示亮度变换块为非零且必须被处理,因为视频解码器在此步骤中已经决定root_cbf为非零且色度分量的两个变换块均为零,其指示亮度变换块为非零。然后该流程进行至290。
在步骤290中,视频解码器通过利用已解码的cbf_luma旗标、cbf_cr旗标和cbf_cb旗标来解码像素块以用于显示。具体地,视频解码器分别基于已解码的cbf_luma旗标、cbf_cr旗标和cbf_cb旗标,决定是否执行或跳过(bypass)亮度分量、Cr分量和Cb分量的变换块的逆变换操作。然后流程200结束。在一些实施例中,流程200的步骤可以被重新排序或重新排列,在本申请中不作限定。
图3概念性示出对使用单个语法元素以指示两个色度分量的非零变换块的编码比特流的流程300。在一些实施例中,实现视频编码器的计算设备一个或多个处理单元(例如,处理器)通过执行存储于计算机可读介质中的指令来执行流程300。在一些实施例中,实现视频编码器的电子装置执行流程300。下面结合图4描述示例视频编码器400。
在一些实施例中,在其接收到视频图像的原始视频像素数据且将视频图像的像素块(例如CU或TU)编码到比特流中以用于存储或传输时,视频编码器执行流程300。基于编码语法元素,例如root_cbf和chroma_cbf,执行流程300的编码器发信两个色度分量的TB是否为非零。
流程300开始于视频编码器将像素块编码为不同颜色分量(亮度和色度)的变换系数(在步骤310中)。变换系数被设置为用于每个分量的变换块。
基于非零系数的存在或不存在,视频编码器设置亮度分量和色度分量的CBF旗标(在步骤320中)。变换系数均为零的分量具有被设置为零的其相应的CBF旗标(cbf_luma、cbf_cr、或cbf_cb)。具有非零变换系数的分量具有非零的相应的CBF旗标。
视频编码器决定像素块是否为帧内编解码的(在步骤330中)。如果是,则该流程进行至360。如果像素块为帧间预测编解码的,则该流程进行至340。
在步骤340中,视频编码器决定root_cbf旗标是否可以被推导出,使得root_cbf不需被显性地发信在在比特流中。如果是,则该流程进行至350。如果root_cbf旗标不能被推导出且必须被显性地发信,则该流程进行至345。
在步骤345中,视频编码器将root_cbf旗标编码为比特流中的语法元素。root_cbf旗标的值是基于子四叉树节点的cbf_luma旗标、cbf_cr旗标、cbf_cb旗标的值的。具体地,如果所有子四叉树节点的所有分量的CBF旗标均为零,则视频编码器将root_cbf旗标编码为0。否则,视频编码器将root_cbf旗标编码为1以指示非零变换系数的存在。然后该流程进行至350。
在步骤350中,该流程决定root_cbf旗标是否为1还是0,即所有子四叉树节点的所有分量的CBF旗标是否为零。如果root_cbf旗标为1(存在非零变换块),则该流程进行至360。如果root_cbf旗标为零(所有变换块为零或不被编解码)则该流程300结束,而不编码cbf_chroma语法元素,以使得Y分量、Cr分量、Cb分量的CBF旗标被推导为零。
在步骤360中,视频编码器将cbf_chroma码字编码为比特流中的语法元素。cbf_chroma码字的值是基于两个色度分量的CBF旗标(cbf_cb旗标和cbf_cr旗标)的值。如上所述,在一些实施例中,cbf_chroma是截断一元码字,其具有用于cbf_cb旗标和cbf_cr旗标的值的不同组合的不同长度。上面结合图1进一步详细描述了cbf_chroma码字的截断一元编解码的。cbf_chroma的编码可使用LUT,其将不同长度的码字映射至cbf_cb旗标和cbf_cr旗标的不同组合。在一些实施例中,视频编码器从LUT集中选择LUT。上面结合表1和表2描述了LUT的使用和选择。视频编码器还对语法元素进行编码以在比特流的SPS、PPS或切片段头中指示LUT的选择。然后该流程进行至370。
在步骤370中,视频编码器决定像素块是否被帧内编解码的。如果是,则该流程进行至380。如果像素块不是被帧内编解码的,则该流程进行至375。
在步骤375中,视频编码器决定cbf_cr旗标或cbf_cb旗标是否为非零。如果两个色度CBF旗标中的至少一个为非零(指示Cr或Cb的非零变换系数),则该流程进行至380。如果cbf_cr旗标和cbf_cb旗标均为零,则该流程进行至385。
在380中,视频编码器将cbf_luma的值显性地编码到比特流中,作为一语法元素,以指示亮度分量的变换系数是零还是非零。然后该流程300结束。
在385中,视频编码器跳过将cbf_luma编码到比特流中,并且将cbf_luma值设置成被推导为1,而无需显性地发信在比特流中。然后该流程300结束。在一些其他实施例中,流程300的步骤可以被重新排序或重新按排,在本申请中不作限定。
示例视频编码器
图4示出与示范性实施例一致的示例视频编码器400。如图所示,视频编码器400从视频源405接收输入视频信号并将该信号编码成比特流495。视频编码器400具有用于编码视频信号405的若干组件或模块,包括变换模块410、量化模块411、逆量化模块414、逆变换模块415、帧内图像估计模块420、帧内图像预测模块425、运动补偿模块430、运动估计模块435、回路滤波器445、已重构图像缓存器450、运动向量缓存器465、运动向量预测模块475以及熵编码器490。
在一些实施例中,模块410-490是由计算设备或电子装置的一个或多个处理单元(例如,处理器)执行的软件指令的模块。在一些实施例中,模块410-490是由电子装置的一个或多个集成电路(integrated circuit,IC)实现的硬件电路的模块。虽然模块410-490被示出为分离的模块,但是一些模块可以被组合成单个模块。
视频源405提供原始视频信号,其呈现没有压缩的每个视频帧的像素数据。减法器408计算视频源405的原始视频像素数据与来自于运动补偿430或者帧内图像预测425的已预测像素数据413之间的差。变换模块410将此差(或残差像素数据)转换为变换系数(例如,通过执行离散余弦变换(Discrete Cosine Transform,DCT))。量化器411将变换系数量化为已量化资料(或已量化系数)412,其由熵编码器490编码进比特流495中。
逆量化模块414逆量化已量化资料(或已量化系数)412,以获得变换系数,逆变换模块415对变换系数执行逆变换以产生已重构残差419。已重构残差419被与已预测像素数据413相加以生成已重构像素数据417。在一些实施例中,已重构像素数据417被暂时存储在线缓存器(未示出)中以用于帧内图像预测和空间运动向量预测。已重构像素由回路滤波器445进行滤波并被存储在已重构图像缓存器450中。在一些实施例中,已重构图像缓存器450是视频编码器400的外部的内存。在一些实施例中,已重构图像缓存器450是视频编码器400的内部的内存。
帧内图像估计模块420基于已重构像素数据417执行帧内预测,以产生帧内预测数据。帧内预测数据被提供给熵编码器490以被编码进比特流495中。帧内预测数据还由帧内图像预测模块425使用,以产生已预测像素数据413。
运动估计模块435通过产生存储在已重构图像缓存器450中的先前已解码视频帧的像素数据的运动向量,执行帧间预测。这些运动向量被提供给运动补偿模块430以产生已预测像素数据。不用将完整实际运动向量编码进比特流中,视频编码器400使用运动向量预测产生已预测运动向量,并且用于运动补偿的运动向量与已预测运动向量之间的差被编码为残差运动数据并被存储在比特流495中。
基于用于先前视频帧编码而生成的参考运动向量,即,用于执行运动补偿的运动补偿运动向量,运动向量预测模块475生成已预测运动向量。运动向量预测模块475从来自于运动向量缓存器465的先前视频帧中取回出参考运动向量。视频编码器400将生成以用于当前视频帧的运动向量存储在运动向量缓存器465中作为用于生成已预测运动向量的参考运动向量。
运动向量预测模块475使用参考运动向量创建已预测运动向量。已预测运动向量可以由空间运动向量预测或时间运动向量预测计算。当前视频帧(残差运动数据)的已预测运动向量与运动补偿运动向量(motion compensation MV,MCMV)之间的差由熵编码器490编码进比特流495中。
熵编码器490通过使用诸如上下文适应性二进制算术编码(Context-basedAdaptive Binary Arithmetic Coding,CABAC)或霍夫曼编码(Huffmanen coding)的熵编码技术将各种参数和数据编码进比特流495中。熵编码器490将诸如已量化变换数据和残差运动数据的参数编码进比特流中。反过来,比特流495被存储于存储装置中或通过诸如网络的通信介质传输至解码器。
回路滤波器445对已重构像素数据417进行滤波运算或平滑操作运算以减少编码的失真,特别是在像素块的边界处。在一些实施例中,所执行的滤波操作包括样本自适应偏移(Sample Adaptive Offset,SAO)。在一些实施例中,滤波操作包括自适应环路滤波器(Adaptive Loop Filter,ALF)。
图5示出生成和使用CBF旗标的视频编码器400的一部分。具体地,该图标出视频编码器400的一部分,其基于cbf_cr旗标和cbf_cb旗标生成cbf_chroma语法元素。如图所示,变换模块410接收当前像素块的残差信号409。变换模块410将残差信号409的不同分量(Y,Cr,Cb)变换为变换系数416,其包括不同分量的变换系数或变换块的不同集合。变换模块410还生成Y分量的cbf_luma旗标530、Cb分量的cbf_cb 541和Cr分量的cbf_cr 542。每个分量的CBF旗标的值指示变换模块410是否生成该分量的非零变换系数,或变换模块410是否对该分量执行变换操作。
CBF编码模块510接收cbf_luma旗标530、cbf_cb 541和cbf_cr 542。基于接收到的CBF旗标,CBF编码模块510生成cbf_chroma语法元素540和/或root_cbf语法元素550。CBF编码模块510还接收映射选择信号520,其选择若干可能LUT中的一个(例如表1)以用于将cbf_cr和cbf_cb的组合映射至cbf_chroma语法元素。在一些实施例中,视频编码器400基于当前块的切片类型或CU预测模式来选择LUT。在一些实施例中,视频编码器400选择最可能减短用于cbf_chroma语法元素的码字的长度的LUT。
CBF编码模块510可以是熵编码器490的一部分。在一些实施例中,CBF编码模块510通过执行结合图3所描述的流程300来生成cbf_chroma语法元素540和root_cbf语法元素550。映射选择信号520、cbf_chroma语法元素540、root_cbf语法元素550和cbf_luma语法元素530被提供给熵编码器490以与已量化系数412一起被包含在比特流495中。
示例视频解码器
图6与示范性实施例一致的示例视频解码器600。如图所示,视频解码器600是图像解码或视频解码电路,其接收比特流695并将比特流的内容解码为视频帧的像素数据以用于显示。视频解码器600具有用于解码比特流695的若干组件或模块,包括逆量化模块605、逆变换模块615、帧内图像预测模块625、运动补偿模块635、回路滤波器645、已解码图像缓存器650、运动向量缓存器665、运动向量预测模块675和比特流解析器690。
在一些实施例中,模块610-690是由计算设备的一个或多个处理单元(例如,处理器)执行的软件指令的模块。在一些实施例中,模块610-690是由电子设备的一个或多个集成电路实现的硬件电路的模块。虽然模块610-690被表示为分离的模块,但是一些模块可以被组合成单个模块。
解析器690(或熵解码器)接收比特流695,并且根据由视频编码或图像编码标准定义的语法执行原始解析。所解析的语法元素包括各种头元素,旗标以及已量化数据(或已量化系数)612。解析器690通过使用诸如上下文适应性二进制算术编码(CABAC)或霍夫曼编码的熵编码技术来解析出各种语法元素。
逆量化模块605对已量化数据(或已量化系数)612进行逆量化以获得变换系数,并且逆变换模块615对变换系数616执行逆变换运算以产生已重构残差信号619。已重构残差信号619与来自于帧内预测模块625或运动补偿模块635的已预测像素数据613相加以产生已解码像素数据617。已解码像素数据由回路滤波器645滤波并被存储在已解码图像缓存器650中。在一些实施例中,已解码图像缓存器650是视频解码器600的外部内存。在一些实施例中,已解码图像缓存器650是视频解码器600的内部存储器。
帧内图像预测模块625从比特流695接收帧内预测资料,并且根据其从存储在已解码画面缓存器650中的已解码像素数据617产生已预测像素数据613。在一些实施例中,已解码像素数据617也被存储在用于帧内图像预测和空间运动向量预测的线缓存器(未示出)中。
在一些实施例中,已解码图像缓存器650的内容被用于显示。显示设备655直接取回出已解码图像缓存器650的内容以进行显示,或将已解码图像缓存器的内容取回到显示缓存器。在一些实施例中,显示设备通过像素传输从已解码图像缓存器650接收像素值。
运动补偿模块635根据运动补偿运动向量,从存储在已解码图像缓存器650中的已解码像素数据617产生已预测像素数据613。这些运动补偿运动向量通过将自比特流695接收的残差运动数据与自运动向量预测模块675接收的预测运动向量相加而被解码。
基于用于先前视频帧解码而生成的参考运动向量,例如,用于执行运动补偿的运动补偿运动向量,运动向量预测模块675产生预测运动向量。运动向量预测模块675从运动向量缓存器665中取回先前视频帧的参考运动向量。视频解码器600将用于解码当前视频帧而生成的运动补偿运动向量存储在运动向量缓存器665中作为用于产生预测运动向量的参考运动向量。
回路滤波器645对已解码像素数据617执行滤波操作或平滑操作,以减少编解码伪影,特别是在像素块的分界线处。在一些实施例中,所执行的滤波操作包括采样适应性偏移。在一些实施例中,滤波操作包括适应性回路滤波器。
图7示出了解码和使用CBF语法元素的视频解码器600的一部分。具体地,该图标出视频解码器600的一部分,其通过解码称为cbf_chroma的单个语法元素来决定Cb变换块和Cr变换块的CBF值。如图所示,解析器690解析当前像素块的编码数据的比特流695。解析的编码数据报括映射选择语法元素720、root_cbf语法元素730、cbf_chroma语法元素740、cbf_luma语法元素750和已量化系数612。
CBF解码模块710接收映射选择语法元素720、root_cbf语法元素730和cbf_chroma语法元素740。CBF解码模块710使用映射选择语法元素720来从若干LUT中选择一个LUT(如表2)。CBF解码模块710使用选择的LUT以将cbf_chroma语法元素740映射至Cb分量的CBF旗标(cbf_cb 741)和Cr分量的CBF旗标(cbf_cr 742)。在一些实施例中,CBF解码模块为解析器模块690的部分。在一些实施例中,CBF解码模块710通过执行上面结合图2所描述的流程200以使用cbf_chroma语法元素和root_cbf语法元素来生成cbf_cr旗标和cbf_cb旗标。
逆变换模块615使用CBF旗标以决定亮度分量或色度分量中的哪一个没有非零变换系数。具体地,逆变换模块615使用cbf_luma 750以决定是否跳过亮度分量的逆变换,使用cbf_cb 741以决定是否跳过Cb分量的逆变换,以及使用cbf_cr 742以决定是否跳过Cr分量的逆变换。在一些实施例中,逆变换模块为跳过的分量提供占位符(place holder)或零变换系数。不同分量的逆变换操作的结果为已重构残差619。
示例电子系统
很多上述的特征和应用可以被实现为软件处理,其被指定为记录在计算机可读存储介质(computer readable storage medium)(也被称为计算机可读介质)上的指令集。当这些指令由一个或者多个计算单元或者处理单元(例如,一个或者多个处理器、处理器核或者其他处理单元)来执行时,则这些指令使得该处理单元执行这些指令所表示的动作。计算机可读介质的示例包括但不限于CD-ROM、闪存驱动器(flash drive)、随机存取存储器(random access memory,RAM)芯片、硬盘、可擦写可程序设计只读存储器(erasableprogrammable read only memory,EPROM),电可擦除可程序设计只读存储器(electrically erasable programmable read-only memory,EEPROM)等。该计算机可读介质不包括通过无线或有线连接的载波和电信号。
在本说明书中,术语“软件”意味着包括只读存储器中的固件或者存储在磁存储装置中的应用程序,该应用程序可以被读入到内存中以用于处理器进行处理。同时,在一些实施例中,多个软件发明可以作为更大程序的子部分来实现,而保留不同的软件发明。在一些实施例中,多个软件发明可以作为独立的程序来实现。最后,一起实现此处所描述的软件发明的独立的程序的任何结合是在本发明的范围内。在一些实施例中,当被安装以在一个或者多个电子系统上进行操作时,软件程序定义了一个或者多个特定的机器实现方式,该机器实现方式执行和实施该软件程序的操作。
图8概念性示出在本申请一些实施例中实现的电子系统800。电子系统800可以是计算机(例如,台式计算机、个人计算机、平板计算机等)、电话、PDA或者其他种类的电子设备。这个电子系统包括各种类型的计算机可读媒质和用于各种其他类型的计算机可读媒质的接口。电子系统800包括总线805、处理单元810、图像处理单元(graphics-processingunit,GPU)815、系统存储器820、网络825、只读存储器(read-only memory,ROM)830、永久存储装置835、输入设备840和输出设备845。
总线805集体表示与大量的电子系统800通信连接的内部设备的所有系统总线、外设总线和芯片组总线。例如,总线805通过图像处理单元815、只读存储器830、系统存储器820和永久存储装置835,与处理单元810通信连接。
对于这些各种内存单元,处理单元810取回执行的指令和处理的数据,以为了执行本发明的处理。在不同实施例中,该处理单元可以是单个处理器或者多核处理器。某些指令被传输图像处理单元815和并被其执行。该图像处理单元815可以卸除各种计算或补充由处理单元810提供的图像处理。
只读存储器830存储处理单元810或者电子系统的其他模块所需要的静态数据和指令。另一方面,永久存储装置835是一种读写内存设备(read-and-write memory)。这个设备是一种非易失性(non-volatile)内存单元,其即使在电子系统800关闭时也存储指令和数据。本发明的一些实施例使用大容量存储设备(例如磁盘或光盘及其相应的磁盘驱动器)作为永久存储装置835。
其他实施例使用卸除式存储装置设备(如软盘、闪存设备等,以及其相应的磁盘驱动器)作为该永久存储装置。与永久存储装置835一样,系统存储器820是一种读写存储器设备。但是,与存储装置835不一样的是,该系统存储器820是一种易失性(volatile)读写存储器,例如随机读取存储器。系统存储器820存储一些处理器在运行时需要的指令和数据。在一些实施例中,根据本发明的处理被存储在该系统存储器820、永久存储装置835和/或只读存储器830中。例如,各种内存单元包括用于根据一些实施例的处理多媒体剪辑的指令。对于这些各种内存单元,处理单元810取回执行的指令和处理的数据,以为了执行某些实施例的处理。
总线805也连接到输入设备840和输出设备845。该输入设备840使得用户沟通信息并选择指令到该电子系统上。该输入设备840包括字母数字元键盘和指点设备(也被称为“游标控制设备”),摄像机(如网络摄像机(webcam)),用于接收语音命令的麦克风或类似的设备等。输出设备845显示由电子系统生成的图像或以其他方式输出的数据。输出设备845包括打印机和显示设备,例如阴极射线管(cathode ray tube,CRT)或液晶显示器(liquidcrystal display,LCD),以及扬声器或类似的音讯输出设备。一些实施例包括诸如同时用作输入设备和输出设备的触摸屏等设备。
最后,如图8所示,总线805也通过网络适配器(未示出)将电子系统800耦接到网络825。在这个方式中,计算机可以是计算机网络(例如,局域网(local area network,LAN)、广域网(wide area network,WAN)或者内部网络)或者网络的网络(例如互联网)的一部分。电子系统800的任一或者所有组件可以与本发明结合使用。
一些实施例包括电子组件,例如,微处理器、存储装置和内存,其将计算机程序指令存储到机器可读介质或者计算机可读介质(可选地被称为计算机可读存储介质、机器可读介质或者机器可读存储介质)。计算机可读介质的一些实例包括RAM、ROM、只读光盘(read-only compact disc,CD-ROM),可录制光盘(recordable compact disc,CD-R)、可擦写光盘(rewritable compact disc,CD-RW)、只读数字通用光盘(read-only digitalversatile disc)(例如,DVD-ROM,双层DVD-ROM)、各种可记录/可擦写DVD(例如DVD RAM、DVD-RW、DVD+RW等)、闪存(如SD卡、迷你SD卡,微SD卡等)、磁性和/或固态硬盘、只读和可刻录
Figure GDA0002218479430000242
(Blu-
Figure GDA0002218479430000241
)盘、超高密度光盘和其他任何光学介质或磁介质,以及软盘。计算机可读介质可以存储由至少一个处理单元执行的计算机程序,并且包括用于执行各种操作的指令集。计算机程序或计算机代码的示例包括机器代码,例如编译程序产生的机器代码,以及包含由计算机、电子组件或微处理器使用注释器(interpreter)而执行的高级代码的文档。
当以上讨论主要是指执行软件的微处理器或多核处理器时,很多上述的功能和应用程序由一个或多个集成电路执行,如特定应用的集成电路(application specificintegrated circuit,ASIC)或现场可程序设计门阵列(field programmable gate array,FPGA)。在一些实施例中,这种集成电路执行存储在该电路本身上的指令。此外,一些实施例执行存储在可程序设计逻辑器件(programmable logic device,PLD),ROM或RAM设备中的软件。
如本发明的说明书和任一请求项中所使用,术语“计算机”、“服务器”、“处理器”和“内存”均指电子设备或其他技术设备。这些术语不包括人或群体。为了本说明书的目的,术语显示或显示设备指在电子设备上进行显示。如本发明的说明书和任一请求项中所使用,术语“计算机可读介质”、“计算机可读媒质”和“机器可读介质”完全局限于有形的、实体的物体,其以计算机可读的形式存储信息。这些术语不包括任何无线信号、有线下载信号和其他任何短暂信号。
在结合许多具体细节的情况下描述了本发明时,本领域通常知识者将认识到,本发明可以以其他具体形式而被实施,而不脱离本发明的精神。此外,大量的图(包括图2和图3)概念性示出了处理。这些处理的具体操作可以不以所示以及所描述的确切顺序来被执行。这些具体操作可用不在一个连续的操作系列中被执行,并且不同的具体操作可以在不同的实施例中被执行。另外,该处理通过使用几个子处理而被实现,或者作为更大宏处理的部分。因此,本领域通常知识者将能理解的是,本发明不受前述说明性细节的限制,而是由请求项加以界定。
附加的说明
本文所描述的主题有时表示不同的组件,其包含在或者连接到其他不同的组件。可以理解的是,所描述的结构仅是示例,实际上可以由许多其他结构来实施,以实现相同的功能。从概念上讲,任何实现相同功能的组件的排列实际上是“相关联的”,以便实现所需的功能。因此,不论结构或中间部件,为实现特定的功能而组合的任何两个组件被视为“相互关联”,以实现所需的功能。同样,任何两个相关联的组件被看作是相互“可操作连接”或“可操作耦接”,以实现特定功能。能相互关联的任何两个组件也被视为相互“可操作地耦合”以实现特定功能。可操作连接的具体例子包括但不限于物理可配对和/或物理上相互作用的组件,和/或无线可交互和/或无线上相互作用的组件,和/或逻辑上相互作用和/或逻辑上可交互的组件。
此外,关于基本上任何复数和/或单数术语的使用,本领域的技术人员可以根据上下文和/或应用从复数转换为单数和/或从单数到复数。为清楚起见,本文明确规定了不同的单数/复数排列。
此外,本领域的通常知识者可以理解,通常,本发明所使用的术语特别是请求项中的,如请求项的主题,通常用作“开放”术语,例如,“包括”应解释为“包括但不限于,“有”应理解为“至少有”“包括”应解释为“包括但不限于”等。本领域的通常知识者可以进一步理解,若计划介绍特定数量的请求项内容,将在请求项内明确表示,并且,在没有这类内容时将不显示。例如,为帮助理解,下面请求项可能包含短语“至少一个”和“一个或多个”,以介绍请求项内容。然而,这些短语的使用不应理解为暗示使用不定冠词“a”或“an”介绍请求项内容,而限制了任何特定的请求项。甚至当相同的请求项包括介绍性短语“一个或多个”或“至少有一个”,不定冠词,例如“a”或“an”,则应被解释为表示至少一个或者更多,对于用于介绍请求项的明确描述的使用而言,同样成立。此外,即使明确引用特定数量的介绍性内容,本领域通常知识者可以认识到,这样的内容应被解释为表示所引用的数量,例如,没有其他修改的“两个引用”,意味着至少两个引用,或两个或两个以上的引用。此外,在使用类似于“A、B和C中的至少一个”的表述的情况下,通常如此表述是为了本领域通常知识者可以理解该表述,例如,“系统包括A、B和C中的至少一个”将包括但不限于单独具有A的系统,单独具有B的系统,单独具有C的系统,具有A和B的系统,具有A和C的系统,具有B和C的系统,和/或具有A、B和C的系统,等。本领域通常知识者进一步可理解,无论在说明书中、请求项中或者附图中,由两个或两个以上的替代术语所表现的任何分隔的单词和/或短语应理解为,包括这些术语中的一个,其中一个,或者这两个术语的可能性。例如,“A或B”应理解为,“A”,或者“B”,或者“A和B”的可能性。
从前述可知,为了说明目的,此处已描述了各种实施方案,并且在不偏离本发明的范围和精神的情况下,可以进行各种变形。因此,此处所公开的各种实施方式不用于限制,专利申请范围表示真实的范围和精神。

Claims (11)

1.一种用于编解码变换块的方法,其特征在于,包括:
接收包括亮度分量、第一色度分量和第二色度分量的像素块,其中所述像素块被编码为多个变换系数;
将第一旗标和第二旗标编码为单个码字,所述码字是截断一元码,以联合指示所述第一旗标和所述第二旗标的值,其中所述第一旗标指示所述第一色度分量的非零变换系数的存在以及所述第二旗标指示所述第二色度分量的非零变换系数的存在,以及其中所述码字针对所述第一旗标和所述第二旗标的值的四种不同组合具有从1个比特至3个比特的不同长度;以及
通过使用所述第一旗标和所述第二旗标,编码所述像素块以用于传输或显示。
2.如权利要求1所述的用于编解码变换块的方法,其特征在于,其中所述第一旗标的值为一个比特的值,以及所述第二旗标的值为一个比特的值,且所述码字的最短长度不超过一个比特。
3.如权利要求1所述的方法,其特征在于,其中当所述码字的长度为1个比特时,所述码字为‘0’。
4.如权利要求1所述的用于编解码变换块的方法,其特征在于,其中所述码字的最短长度表示所述第一色度分量和所述第二色度分量均不存在任意非零变换系数。
5.如权利要求4所述的用于编解码变换块的方法,其特征在于,其中所述码字的第二最短长度表示所述第一色度分量和所述第二色度分量均存在非零变换系数。
6.如权利要求4所述的用于编解码变换块的方法,其特征在于,其中所述第一色度分量为蓝色度和所述第二色度分量为红色度,以及其中所述码字的第二最短长度表示所述第一色度分量存在至少一个非零变换系数和所述第二色的分量不存在任意非零变换系数。
7.如权利要求1所述的用于编解码变换块的方法,其特征在于,进一步包括编解码用于指示所述像素块存在非零变换系数的根编解码块旗标,其中当所述像素块的所述根编解码旗标为零时,所述第一旗标和所述第二旗标被推导为零并且所述码字不被编码。
8.如权利要求1所述的用于编解码变换块的方法,其特征在于,其中所述码字的不同长度是根据查找表被映射至所述第一旗标和所述第二旗标的值的不同组合的,以及所述查找表是基于选择值从多个查找表中来选择,所述选择值被编码为编码所述像素块的比特流的序列参数集合、图像参数集合或切片段头的一部分。
9.如权利要求1所述的用于编解码变换块的方法,其特征在于,其中进一步包括编解码用于指示亮度分量存在非零变换系数的第三旗标,其中编解码所述像素块以用于传输或显示是进一步基于所述第三旗标。
10.一种用于编解码变换块的电子装置,其特征在于,包括:
视频解码器电路,用于:
接收包括已编码像素块的比特流,所述已编码像素块包括亮度分量、第一色度分量和第二色度分量的多个变换系数;
解码单个码字来获得第一旗标和第二旗标,所述码字是截断一元码,以联合指示所述第一旗标和所述第二旗标的值,其中所述第一旗标指示所述第一色度分量的非零变换系数的存在,以及所述第二旗标指示所述第二色度分量的非零变换系数的存在,所述码字针对所述第一旗标和第二旗标的值的四种不同组合具有从1个比特至3个比特的不同长度;
基于所述第一旗标和所述第二旗标解码所述像素块,以识别具有非零变换系数的所述像素块的多个分量;以及
输出已解码像素块以用于显示。
11.一种用于编解码变换块的电子装置,其特征在于,包括:
视频编码器电路,用于:
接收包括亮度分量、第一色度分量和第二色度分量的像素块;
将所述像素块编码为多个变换系数;
将第一旗标和第二旗标编码为单个码字,所述码字是截断一元码,以联合指示所述第一旗标和所述第二旗标的值,其中所述第一旗标指示所述第一色度分量的非零变换系数的存在,以及所述第二旗标指示所述第二色度分量的非零变换系数的存在,所述码字针对所述第一旗标和所述第二旗标的值的四种不同组合具有从1个比特至3个比特的不同长度;以及
将已编码的所述码字和已编码的所述多个变换系数存储于比特流中。
CN201880022340.0A 2017-03-31 2018-03-30 编解码变换块 Active CN110506420B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762479352P 2017-03-31 2017-03-31
US62/479,352 2017-03-31
US15/939,980 US10523966B2 (en) 2017-03-31 2018-03-29 Coding transform blocks
US15/939,980 2018-03-29
PCT/CN2018/081360 WO2018177419A1 (en) 2017-03-31 2018-03-30 Coding transform blocks

Publications (2)

Publication Number Publication Date
CN110506420A CN110506420A (zh) 2019-11-26
CN110506420B true CN110506420B (zh) 2021-09-03

Family

ID=63671250

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880022340.0A Active CN110506420B (zh) 2017-03-31 2018-03-30 编解码变换块

Country Status (5)

Country Link
US (1) US10523966B2 (zh)
EP (1) EP3603063A4 (zh)
CN (1) CN110506420B (zh)
TW (1) TWI685246B (zh)
WO (1) WO2018177419A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10986340B2 (en) 2018-06-01 2021-04-20 Qualcomm Incorporated Coding adaptive multiple transform information for video coding
PH12019000380A1 (en) * 2018-12-17 2020-09-28 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
WO2020140274A1 (zh) * 2019-01-04 2020-07-09 富士通株式会社 图像编解码方法及装置、电子设备
WO2020175970A1 (ko) * 2019-02-28 2020-09-03 삼성전자 주식회사 크로마 성분을 예측하는 비디오 부호화 및 복호화 방법, 및 크로마 성분을 예측하는 비디오 부호화 및 복호화 장치
JP7251882B2 (ja) * 2019-03-01 2023-04-04 ホアウェイ・テクノロジーズ・カンパニー・リミテッド Cbfフラグの効率的なシグナリング方法
CN113906749B (zh) * 2019-04-30 2023-05-23 北京达佳互联信息技术有限公司 色度残差联合编码方法和装置
WO2020248954A1 (en) * 2019-06-09 2020-12-17 Beijing Bytedance Network Technology Co., Ltd. Significant coefficient signaling in video coding
CN117478913A (zh) * 2019-06-13 2024-01-30 北京达佳互联信息技术有限公司 用于视频编解码的子块变换的方法和系统
CN113632471B (zh) * 2019-08-23 2024-02-27 腾讯美国有限责任公司 视频编解码的方法和装置
CN116600126A (zh) * 2019-09-17 2023-08-15 华为技术有限公司 基于子图像的视频译码中的子图像id指示
WO2021060804A1 (ko) * 2019-09-27 2021-04-01 에스케이텔레콤 주식회사 크로마블록의 잔차블록 복원 방법 및 복호화 장치
EP4097979A4 (en) 2020-02-29 2023-07-26 Beijing Bytedance Network Technology Co., Ltd. RESTRICTIONS ON HIGH-LEVEL SYNTAX ELEMENTS
WO2021233449A1 (en) 2020-05-22 2021-11-25 Beijing Bytedance Network Technology Co., Ltd. Reserved bits in general constraint information of a video
CN115699770A (zh) * 2020-06-08 2023-02-03 北京达佳互联信息技术有限公司 色度残差的联合编解码中的色度编解码增强

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8942282B2 (en) * 2010-04-12 2015-01-27 Qualcomm Incorporated Variable length coding of coded block pattern (CBP) in video compression
KR20120035096A (ko) * 2010-10-04 2012-04-13 한국전자통신연구원 쿼드 트리 변환 구조에서 부가 정보의 시그널링 방법 및 장치
US9172963B2 (en) * 2010-11-01 2015-10-27 Qualcomm Incorporated Joint coding of syntax elements for video coding
KR101955374B1 (ko) * 2011-06-30 2019-05-31 에스케이 텔레콤주식회사 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치
KR20140034209A (ko) 2011-07-11 2014-03-19 파나소닉 주식회사 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
WO2013118485A1 (ja) 2012-02-08 2013-08-15 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置
GB2531004A (en) 2014-10-06 2016-04-13 Canon Kk Residual colour transform signalled at sequence level for specific coding modes

Also Published As

Publication number Publication date
WO2018177419A1 (en) 2018-10-04
TWI685246B (zh) 2020-02-11
TW201842772A (zh) 2018-12-01
US20180288437A1 (en) 2018-10-04
EP3603063A4 (en) 2020-12-09
EP3603063A1 (en) 2020-02-05
US10523966B2 (en) 2019-12-31
CN110506420A (zh) 2019-11-26

Similar Documents

Publication Publication Date Title
CN110506420B (zh) 编解码变换块
CN112640448B (zh) 编码转换系数的熵编解码方法与装置
JP7200320B2 (ja) 画像フィルタ装置、フィルタ方法および動画像復号装置
US10887594B2 (en) Entropy coding of coding units in image and video data
KR20220084059A (ko) 크로스 컴포넌트 적응적 루프 필터
US11297320B2 (en) Signaling quantization related parameters
JP2020504973A (ja) 画像処理方法及びそのための装置
KR20220083834A (ko) 비디오 및 이미지 코딩에서의 상위 레벨 정보의 시그널링
JP6532467B2 (ja) ビデオ符号化および復号におけるシンタックス要素符号化方法および装置
EP3350995A1 (en) Palette predictor initialization and merge for video coding
CN113826383B (zh) 变换跳过模式的块维度设置
TWI750624B (zh) 編解碼變換係數的方法及裝置
CN114731414A (zh) 发信图像以及视频的块分割
CN113853787B (zh) 基于子块使用变换跳过模式
WO2020228716A1 (en) Usage of transquant bypass mode for multiple color components
KR20220044279A (ko) 팔레트 이스케이프 심벌에 대한 엔트로피 코딩
JP2024014958A (ja) ローカルデュアルツリー向けのパレットモード
CN113497935A (zh) 视频编解码方法及设备
KR20220063268A (ko) 양자화 행렬의 시그널링
WO2021136486A1 (en) Palette size signaling in video coding
US20230041262A1 (en) Coefficients coding in transform skip mode
CN114375579A (zh) 子图像结构的发送技术
TW202412522A (zh) 約束卷積模型的係數

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant