CN103797803A - 用于熵编码/解码的方法和设备 - Google Patents
用于熵编码/解码的方法和设备 Download PDFInfo
- Publication number
- CN103797803A CN103797803A CN201280042430.9A CN201280042430A CN103797803A CN 103797803 A CN103797803 A CN 103797803A CN 201280042430 A CN201280042430 A CN 201280042430A CN 103797803 A CN103797803 A CN 103797803A
- Authority
- CN
- China
- Prior art keywords
- probability
- coding
- binary value
- coding unit
- unit
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
提供一种用于对图像进行熵编码和熵解码的方法和设备。用于对图像进行熵编码的方法包括以下操作:通过使用基于在当前编码符号之前编码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术编码;根据当前编码符号的二进制值,通过使用多个缩放因子来更新预定义二进制值的概率。
Description
技术领域
本发明涉及熵编码和解码,更具体地,涉及一种用于在基于上下文的二进制算术编码/解码中更新概率模型的方法和设备。
背景技术
在当前国际视频编码标准(诸如,H.264和MPEG-4)中,视频信号被分层地划分为序列、帧、条带、宏块和块,并且块是最小处理单元。在编码中,从帧内预测或经由帧间预测获取块的残差数据。另外,残差数据经由变换、量化、扫描、行程长度编码和熵编码被压缩。在解码中,处理过程相对于编码被反向执行。第一,从比特流提取熵编码中产生的变换块的系数。随后,经由反量化和逆变换恢复块的残差数据,预测信息被用于恢复块的视频数据。
发明内容
技术问题
提供本发明以通过改进在基于上下文的二进制算术编码(CABAC)处理的概率更新处理,来提高图像压缩效率。
技术方案
根据本发明的实施例,通过使用多个缩放因子来更新概率模型。
有益效果
根据本发明的实施例,基于上下文的二进制算术编码(CABAC)的性能被提高。
附图说明
图1是示出根据本发明的实施例的用于对视频进行编码的设备的框图。
图2是示出根据本发明的实施例的用于对视频进行解码的设备的框图。
图3是用于描述根据本发明的实施例的编码单元的构思的示图。
图4是示出根据本发明的实施例的基于编码单元的图像编码器的框图。
图5是示出根据本发明的实施例的基于编码单元的图像解码器的框图。
图6是示出根据本发明的实施例的根据深度的更深层编码单元和分区的的示图。
图7是用于描述根据本发明的实施例的编码单元和变换单元之间的关系的示图。
图8是用于描述据本发明的实施例的与编码深度相应的编码单元的编码信息的示图。
图9是示出根据本发明的实施例的根据深度的更深层编码单元的示图。
图10至图12是用于描述根据本发明的实施例的编码单元、预测单元和变换单元之间的关系的示图。
图13是用于描述根据表1的编码模式信息的编码单元、预测单元和变换单元之间的关系的示图。
图14是示出根据本发明的实施例的熵编码设备的配置的示图。
图15示出与本发明相关的技术领域中执行的用于发生概率的更新处理。
图16是用于将使用多个缩放因子的概率更新处理和使用一个缩放因子的概率更新处理进行比较的示图。
图17是根据本发明的实施例的更新预定义二进制值的概率的处理的流程图。
图18示出根据本发明的实施例的二进制算术编码过程。
图19是根据本发明的实施例的熵编码方法的流程图。
图20是示出根据本发明的实施例的熵解码设备的配置的框图。
图21是根据本发明的实施例的熵解码方法的流程图。
最佳模式
根据本发明的一方面,提供一种对图像进行熵编码的方法,所述方法包括以下操作:通过使用基于在当前编码符号之前编码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术编码;根据当前编码符号的二进制值,通过使用多个缩放因子来更新预定义二进制值的概率。
根据本发明的另一方面,提供一种用于对图像进行熵编码的熵编码设备,熵编码设备包括:二进制算术编码器,用于通过使用基于在当前编码符号之前编码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术编码;上下文建模器,用于根据当前编码符号的二进制值,通过使用多个缩放因子来更新预定义二进制值的概率。
根据本发明的另一方面,提供一种对图像进行熵解码的方法,所述方法包括以下操作:通过使用基于在当前编码符号之前解码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术解码;根据当前编码符号的二进制值,通过使用多个缩放因子来更新预定义二进制值的概率。
根据本发明的另一方面,提供一种用于对图像进行熵解码的熵解码设备,熵解码设备包括:二进制算术解码器,用于通过使用基于在当前编码符号之前解码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术解码;上下文建模器,用于根据当前编码符号的二进制值,通过使用多个缩放因子来更新预定义二进制值的概率。
具体实施方式
以下,参照附图通过解释本发明的示例性实施例,详细描述本发明。
图1是示出根据本发明的实施例的视频编码设备100的框图。
视频编码设备100包括最大编码单元划分器110、编码单元确定器120和输出单元130。
最大编码单元划分器110可基于用于图像的当前画面的最大编码单元,来对当前画面进行划分。如果当前画面大于最大编码单元,则当前画面的图像数据可被划分为至少一个最大编码单元。根据本发明的实施例的最大编码单元可以是具有32×32、64×64、128×128或256×256等尺寸的数据单元,其中,数据单元的形状是具有宽度和长度均为2倍数并大于8的正方形。图像数据可根据所述至少一个最大编码单元被输出到编码单元确定器120。
根据本发明的实施例的编码单元特点可在于最大尺寸和深度。深度表示编码单元从最大编码单元空间划分的次数,并且随着深度加深,根据深度的更深层编码单元可从最大编码单元被划分为最小编码单元。最大编码单元的深度是最上层的深度,最小编码单元的深度是最低层深度。由于随着最大编码单元的深度加深,与每个深度相应的编码单元的尺寸减小,因此与更高深度相应的编码单元可包括多个与更低深度相应的编码单元。
如上所述,当前画面的图像数据根据编码单元的最大尺寸被划分为最大编码单元,并且每个最大编码单元可包括根据深度被划分的更深层编码单元。由于根据深度对根据本发明的实施例的最大编码单元进行划分,因此包括在最大编码单元中的空间域的图像数据可根据深度分层分类。
可预先确定编码单元的最大深度和最大尺寸,所述最大深度和最大尺寸限制对最大编码单元的高度和宽度进行分层划分的总次数。
编码单元确定器120对通过根据深度对最大编码单元的区域进行划分而获取的至少一个划分区域进行编码,并且根据所述至少一个划分区域来确定最终编码结果将被输出的深度。换言之,编码单元确定器120通过根据当前画面的每个最大编码单元对根据深度的更深层编码单元的图像数据进行编码,并选择具有最小编码误差的深度来确定编码深度。因此,与确定的编码深度相应的编码单元的编码图像数据被最终输出。另外,与编码深度相应的编码单元可被视为编码的编码单元。
确定的编码深度和根据确定的编码深度的编码的图像数据被输出到输出单元130。
基于与等于或低于最大深度的至少一个深度相应的更深层编码单元对在最大编码单元中的图像数据进行编码,并且基于每个更深层编码单元中的每一个将对图像数据进行编码的结果进行比较。在将更深层编码单元的编码误差进行比较之后,可选择具有最小编码误差的深度。可针对每个最大编码单元选择至少一个编码深度。
随着编码单元根据深度而被分层划分,并且随着编码单元的数量增加,最大编码单元的尺寸被划分。另外,即使在一个编码单元中编码单元相应于相同的深度,也通过分别测量每个编码单元的图像数据的编码误差来确定是否将与相同的深度相应的每个编码单元划分为更低深度。因此,即使当图像数据被包括在一个最大编码单元中时,由于图像数据根据深度被划分到区域,并且编码误差可根据一个最大编码单元中的区域而不同,因此编码深度可根据在图像数据中的区域而不同。因此,在一个最大编码单元中可确定一个或多个编码的深度,并且可根据至少一个编码深度的编码单元来划分最大编码单元的图像数据。
因此,编码单元确定器120可确定具有包括在当前最大编码单元中的树结构的编码单元。根据本发明的实施例的“具有树结构的编码单元”包括当前最大编码单元中所包含的所有更深层编码单元中与被确定为编码深度的深度相应的编码单元。可在最大编码单元中的相同区域中根据深度来分层确定编码深度的编码单元,并可在不同区域中不同地确定编码深度的编码单元。类似地,可与另一区域的编码深度独立地确定当前区域的编码深度。
根据本发明的实施例的最大深度是关于从最大编码单元到最小编码单元的划分次数的索引。根据本发明的实施例的第一最大深度可表示从最大编码单元到最小编码单元的总划分次数。根据本发明实施例的第二最大深度可表示从最大编码单元到最小编码单元的深度等级的总数量。例如,当最大编码单元的深度是0时,通过对最大编码单元进行一次划分的编码单元的深度可被设置为1,通过对最大编码单元进行两次划分的编码单元的深度可被设置为2。这里,如果最小编码单元是通过对最大编码单元进行四次划分的编码单元,则深度0、1、2、3和4的深度等级存在,并且因此第一最大深度可被设置为4,并且第二最大深度可被设置为5。
可根据最大编码单元执行预测编码和变换。还根据每个最大编码单元,基于根据深度等于或小于最大深度的更深层编码单元,来执行预测编码和变换。可根据正交变换和整数变换执行变换。
由于无论何时根据深度对最大编码单元进行划分,更深层编码单元的数量均增加,因此对所有随着深度加深产生的更深层编码单元执行包括预测编码和变换的编码。为了方便描述,现在将基于最大编码单元中的当前深度的编码单元来描述预测编码和变换。
视频编码设备100可不同地选择用于对图像数据进行编码的数据单元的尺寸和形状。为了对图像数据进行编码,执行诸如预测编码、变换和熵编码的操作,同时,相同的数据单元可被用于所有操作,或者不同数据单元可被用于不同操作。
例如,视频编码设备100可不仅选择用于对图像数据进行编码的编码单元,还可选择不同于编码单元的数据单元,以对在编码单元中的图像数据执行预测编码。
为了在最大编码单元中执行预测编码,可基于与编码深度相应的编码单元(即,不再划分到与更低层深度相应的编码单元的编码单元)来执行预测编码。以下,不再划分且成为用于预测编码的基本单元的编码单元现在被称为“预测单元”。通过划分预测单元获取的分区可包括预测单元或通过对预测单元的高度和宽度中的至少一个进行划分而获取的数据单元。
例如,当2N×2N(其中,N是正整数)的尺寸的编码单元不再被划分并成为2N×2N的预测单元时,分区的尺寸可以是2N×2N、N×N、N×2N或N×N。分区类型的示例可包括通过对预测单元的高度和宽度进行对称地划分而获取的对称分区、通过对预测单元的高度和宽度进行非对称地划分(诸如,按照1:n或n:1)而获取的分区、通过对预测单元进行几何地划分而获取的分区、以及具有任意形状的分区。
预测单元的预测模式可以是帧内模式、帧间模式和跳过模式中的至少一个。例如,可对2N×2N、2N×N、N×2N或N×N的分区执行帧内模式或帧间模式。另外,可仅对2N×2N的分区执行跳过模式。可对编码单元中的一个预测单元独立地执行编码,从而选择具有最小编码误差的预测模式。
视频编码设备100还可不仅基于用于对图像数据进行编码的编码单元,还基于不同于编码单元的数据单元,对编码单元中的图像数据执行变换。
为了在编码单元中执行变换,可基于具有小于或等于编码单元的尺寸的数据单元来执行变换。例如,用于变换的数据单元可包括用于帧内模式的数据单元和用于帧间模式的数据单元。
用作变换的基础的数据单元现在可被称为“变换单元”。还可在变换单元中设置变换深度,所述变换深度指示通过对编码单元的高度和宽度进行划分而到达变换单元的划分次数。例如,在2N×2N的当前编码单元中,当变换单元的尺寸也是2N×2N时,变换深度可以是0,当变换单元的高度和宽度中的每个被划分为两个相等的部分,总共划分为4^1个变换单元,变换单元的尺寸因此是N×N时,变换深度可以是1,当变换单元的高度和宽度中的每个被划分为四个相等的部分,总共划分为4^2个变换单元,变换单元的尺寸因此是N/2×N/2时,变换深度可以是2。例如,可根据分层树结构设置变换单元,其中,较高变换深度的变换单元根据变换深度的分层特征被划分为较低变换深度的四个变换单元。
与编码单元类似,编码单元中的变换单元可被递归地划分为更小尺寸的区域,使得可在区域的单元中独立地确定变换单元。因此,可根据具有根据变换深度的树结构的变换对编码单元中的残差数据进行划分。
根据与编码深度相应的编码单元的编码信息不仅需要关于编码深度的信息,还需要关于与预测编码和变换相关的信息。因此,编码单元确定器120不仅确定具有最小编码误差的编码深度,还确定预测单元中的分区类型、根据预测单元的预测模式和用于变换的变换单元的尺寸。
稍后将参照图3到图12详细解释根据本发明的实施例的最大编码单元中的根据树结构的编码单元和确定分区的方法。
编码单元确定器120可通过使用基于拉格朗日乘数的率失真优化,来测量更深层编码单元的编码误差。
图像数据输出单元130在比特流中输出最大编码单元的图像数据和关于根据编码深度的编码模式的信息,其中,所述最大编码单元的图像数据基于由编码单元确定器120确定的所述至少一个编码深度被编码。
可通过对图像的残差数据进行编码来获取编码图像数据。
关于根据编码深度的编码模式的信息可包括关于编码深度的信息、关于在预测单元中的分区类型的信息、关于预测模式的信息和关于变换单元的尺寸的信息。
可通过使用指示是否对较低层深度而不是当前深度的编码单元执行编码的根据深度的划分信息来定义关于编码深度的信息。如果当前编码单元的当前深度是编码深度,则当前编码单元中的图像数据被编码和输出,因此划分信息可被定义为不将当前编码单元划分到较低层深度。可选择地,如果当前编码单元的当前深度不是编码深度,对较低层深度的编码单元执行编码,因此划分信息可被定义为对当前编码单元进行划分来获取较低层深度的编码单元。
如果当前深度不是编码深度,则对被划分为较低层深度的编码单元执行编码。由于较低层深度的至少一个编码单元存在于当前深度的一个编码单元中,因此对较低层深度的每个编码单元重复执行编码,并因此可对具有相同深度的编码单元递归地执行编码。
由于针对一个最大编码单元确定具有树结构的编码单元,并且针对编码深度的编码单元确定关于至少一个编码模式的信息,所以可针对一个最大编码单元确定关于至少一个编码模式的信息。另外,由于可根据深度分层地对最大编码单元的图像数据进行划分,并因此最大编码单元的图像数据的编码深度可根据位置而不同,因此可针对图像数据设置关于编码深度和编码模式的信息。
因此,输出单元130可将关于相应的编码深度和编码模式的编码信息分配给包括在最大编码单元中的编码单元、预测单元和最小单元中的至少一个。
根据本发明的实施例的最小单元可以是通过将构成最低层深度的最小编码单元划分为4个而获取的正方形数据单元,最小单元可以是可被包括在最大编码单元中所包括的所有编码单元、预测单元和变换单元中的最大正方形数据单元中。
例如,通过输出单元130输出的编码信息可被分类为根据编码单元的编码信息和根据预测单元的编码信息。根据编码单元的编码信息可包括关于预测模式的信息和关于分区的尺寸的信息。关于预测单元的编码信息可包括关于帧间模式的估计方向的信息、关于帧间模式的参考图像索引的信息、关于运动矢量的信息、关于帧内模式的色度分量的信息,以及关于帧内模式的插值方法的信息。另外,根据画面、条带或GOP定义的关于编码单元的最大尺寸的信息和关于最大深度的信息可被插入比特流的头部。
在视频编码设备100中,更深层编码单元可以是通过将作为上一层的更高深度的编码单元的高度或宽度除以二而获取的编码单元。换言之,当当前深度的编码单元的尺寸是2N×2N时,较低层深度的编码单元的尺寸是N×N。另外,当前深度的具有2N×2N的尺寸的编码单元可包括最多4个较低层深度的编码单元。
因此,视频编码设备100可通过基于考虑当前画面的特点而确定的最大编码单元的尺寸和最大深度,针对每个最大编码单元确定具有最优形状和最优尺寸的编码单元来形成具有树结构的编码单元。另外,由于可通过使用任意不同预测模式和变换对每个最大编码单元执行编码,因此可考虑不同图像尺寸的编码单元的特点来确定最优编码模式。
因此,如果按照传统宏块对具有高分辨率或大数据量的图像进行编码,则每个画面的宏块的数量极度增加。因此,针对每个宏块产生的压缩信息的条数增加,因此难以发送压缩的信息,并且数据压缩效率降低。然而,通过使用视频编码设备100,由于在考虑图像的特点增加编码单元的最大尺寸时,考虑图像的尺寸来调整编码单元,所以可提高图像压缩效率。
图2是根据本发明的实施例的视频解码设备200的框图。
视频解码设备200包括接收器210、图像数据和编码信息提取器220和图像数据解码器230。用于视频解码设备200的各种操作的各种术语(诸如编码单元、深度、预测单元、变换单元和关于各种编码模式的信息)的定义与参照图1和视频编码设备100的描述相同。
接收器210接收和解析编码视频的比特流。图像数据和编码信息提取器220针对从解析的比特流提取用于每个编码单元的编码图像数据,并将提取的图像数据输出到图像数据解码器230,其中,所述编码单元具有根据每个最大编码单元的树结构。图像数据和编码信息提取器220可从关于当前画面或SPS的头提取当前画面的编码单元的最大尺寸的信息。
另外,图像数据和编码信息提取器220从解析的比特流提取关于用于具有根据每个最大编码单元的树结构的编码单元的编码深度和编码模式的信息。提取的关于编码深度和编码模式的信息被输出到图像数据解码器230。换言之,比特流中的图像数据被划分为最大编码单元,使得图像数据解码器230针对每个最大编码单元对图像数据进行解码。
可针对关于与编码深度相应的至少一个编码单元的信息设置关于根据最大编码单元的编码深度和编码模式的信息,关于编码模式的信息可包括关于与编码深度相应的相应编码单元的分区类型的信息、关于预测模式的信息和关于变换单元的尺寸的信息。另外,根据深度的划分信息可被提取为关于编码深度的信息。
由图像数据和编码信息提取器220提取的关于根据每个最大编码单元的编码深度和编码模式的信息是关于编码深度和编码模式的信息,其中,所述编码深度和编码模式被确定为在编码器(诸如,视频编码设备100)通过根据最大编码单元重复对每个更深层编码单元执行编码时产生最小编码误差。因此,视频解码设备200可通过根据产生最小编码误差的编码深度和编码模式对数据进行解码来恢复图像。
由于关于编码深度和编码模式的编码信息可被分配给相应的编码单元、预测单元和最小单元中的预定数据单元,因此图像数据和编码信息提取器220可根据预定数据单元提取关于编码深度和编码模式的信息。分配了关于编码深度和编码模式的相同信息的预定数据单元可被推断为是包括在相同的最大编码单元中的数据单元。
图像数据解码器230通过基于关于根据最大编码单元的编码深度和编码模式的信息对每个最大编码单元中的图像数据进行解码来恢复当前画面。换言之,图像数据解码器230可基于提取的关于包括在每个最大编码单元中的具有树结构的编码单元中的每个编码单元的分区类型、预测模式和变换单元的信息,对编码的图像数据进行解码。解码处理可包括包含帧内预测和运动补偿的预测和逆变换。可根据反正交变换或反整数变换来执行逆变换。
编码数据解码器230可基于关于根据编码深度的编码单元的预测单元的分区类型预测模式的信息,根据每个编码单元的每个分区和预测模式,执行帧内预测或运动补偿。
另外,图像数据解码器230可基于关于根据编码深度的编码单元的变换单元的尺寸的信息,根据编码单元中的每个变换单元来执行逆变换,以执行根据最大编码单元的逆变换。
图像数据解码器器230可通过使用根据每个深度的划分信息来确定当前最大编码单元的至少一个编码深度。如果划分信息指示图像数据在当前深度中不再划分,则当前深度是编码深度。因此,图像数据解码器230可通过使用关于与编码深度相应的每个编码单元的预测单元的分区类型、预测模式和变换单元的尺寸的信息,对与当前最大编码单元中的每个编码深度相应的至少一个编码单元的编码数据进行解码,并输出当前最大编码单元的图像数据。
换言之,可通过观察分配给编码单元、预测单元和最小单元中的预定数据单元的编码信息集来收集包含包括相同划分信息的编码信息的数据单元,并且收集的数据单元可被认为是将由图像数据解码器230按照相同编码模式进行解码的一个数据单元。
视频解码设备200可获取关于当递归地对每个最大编码单元执行编码时产生最小编码误差的编码单元的信息,并且可使用所述信息来对当前画面进行解码。换言之,确定为每个最大编码单元中的最优编码单元的具有树结构的编码单元的可被解码。另外,考虑分辨率和图像数据的量确定编码单元的最大尺寸。
因此,即使图像数据具有高分辨率或大数据量,也可通过使用从编码器接收的关于最优编码模式的信息,使用根据图像的特点而自适应确定的编码单元的尺寸和编码模式来有效地解码和恢复图像数据。
现在将参照图3到图13详细描述确定具有树结构的编码单元、预测单元和变换单元的方法。
图3是用于描述根据本发明的实施例的编码单元的概念的示图。
编码单元的尺寸可被表示为宽×高,并可以是64×64、32×32、16×16和8×8。64×64的编码单元可被划分为64×64、64×32、32×64和32×32的分区,32×32的编码单元可被划分为32×32、32×16、16×32和16×16的分区,16×16的编码单元可被划分为16×16、16×8、8×16和8×8的分区,8×8的编码单元可被划分为8×8、8×4、4×8和4×4的分区。
在视频数据310中,分辨率是1920×1080,编码单元的最大尺寸是64,最大深度是2。在视频数据320中,分辨率是1920×1080,编码单元的最大尺寸是64,最大深度是3。在视频数据330中,分辨率是352×288,编码单元的最大尺寸是16,最大深度是1。图3中的最大深度表示从最大编码单元到最小编码单元的划分总次数。
如果分辨率高或数据量大,则编码单元的最大尺寸可以是大的,使得不仅提高编码效率,而且准确地反映图像的特点。因此,具有比视频数据330更高分辨率的视频数据310和视频数据320的编码单元的最大尺寸可以是64。
由于视频数据310的最大深度是2,因此由于通过对最大编码单元进行两次划分,深度加深两层,因此视频数据310的编码单元315可包括具有64的长轴大小的最大编码单元和具有32和16的长轴大小的编码单元。同时,由于视频数据330的最大深度是1,因此由于通过对最大编码单元进行一次划分,深度被加深一层,因此视频数据330的编码单元335可包括具有16的长轴大小的最大编码单元和具有8的长轴大小的编码单元。
由于视频数据320的最大深度是3,因此由于通过对最大编码单元进行三次划分,深度被加深3层,因此视频数据320的编码单元325可包括具有64的长轴大小的最大编码单元和具有32、16和8的长轴大小的编码单元。随着深度加深,详细信息可被精确地表示。
图4是示出根据本发明的实施例的基于编码单元的图像编码器400的框图。
图像编码器400执行视频编码设备100的编码单元确定器120的操作来对图像数据进行编码。换言之,帧内预测器410对当前帧405中的帧内模式的编码单元执行帧内预测,运动估计器420和运动补偿器425通过使用当前帧405和参考帧495对帧间模式的编码单元执行帧间预测和运动补偿。
从帧内预测器410、运动估计器420和运动补偿器425输出的数据通过变换器430和量化器440被输出为量化的变换系数。量化的变换系数通过反量化器460和逆变换器470被恢复为空间域中的数据,恢复的空间域中的数据在通过去块滤波单元408和环路滤波单元490后处理之后被输出为参考帧495。量化的变换系数可通过熵编码编码器450被输出为比特流455。
为了将图像编码器400应用于视频编码设备100,图像编码器400的所有元件,也就是说,帧内预测器410、运动估计器420、运动补偿器425、变换器430、量化器440、熵编码器450、反量化器460、逆变换器470、去块滤波单元480和环路滤波单元490在考虑每个最大编码单元的最大深度时,执行基于具有树结构的编码单元中的每个编码单元的操作。
具体地,帧内预测器410、运动估计器420和运动补偿器425在考虑当前最大编码单元的最大深度和最大尺寸时,确定具有树结构的编码单元中的每个编码单元的预测单元和分区,变换器430确定具有树结构的编码单元中的每个编码单元中的变换单元的尺寸。
图5是根据本发明的实施例的基于编码单元的图像解码器500的框图。
解析器510从比特流505中解析将被解码的编码图像数据和关于解码所需的编码的信息。编码的图像数据通过熵解码器520和反量化器530被输出为反量化的数据,反量化的数据通过逆变换器540被恢复为空间域中的图像数据。
针对空间域中的图像数据,帧内预测器550对帧内模式的编码单元执行帧内预测,运动补偿器560通过使用参考帧585对帧间模式的编码单元执行运动补偿。
通过帧内预测器550和运动补偿器560的空间域中的数据可在通过去块单元570和环路滤波单元580后处理,并随后被输出为恢复帧595。另外,已通过去块单元570和环路滤波580后处理的数据被输出为参考帧585。
为了在视频解码设备200的图像数据解码器230中对图像数据进行解码,图像解码器500可执行在解析器510之后执行的操作。
为了将图像解码器500应用于视频解码设备200,图像解码器500的所有元件(即,解析器510、熵解码器520、反量化器530、逆变换器540、这内预测器550、运动补偿器560、块解码单元570和环路滤波单元580)必须对每个最大编码单元执行基于具有树结构的编码单元的操作。
具体地,帧内预测器550和运动补偿器560必须确定用于每个具有树结构的编码单元的分区和预测模式,逆变换器540必须确定用于每个编码单元的变换单元的尺寸。
图6是示出根据本发明的实施例的根据深度的更深层编码单元和分区的示图。
视频编码设备100和视频解码设备200使用分层编码单元,从而考虑图像的特点。可根据图像的特点自适应地确定编码单元的最大高度、最大宽度和最大深度,或可由用户不同地设置它们。可根据编码单元的预设最大尺寸来确定根据深度的更深层编码单元的尺寸。
在根据本发明的实施例的编码单元的分层结构600中,编码单元的最大高度和最大宽度均是64,最大深度是4。由于沿着分层结构600的垂直轴深度加深,因此更深层编码单元的高度和宽度均被划分。另外,作为每个更深层编码单元的预测编码的基础的预测单元和分区沿着分层结构600的横轴被示出。
换句话说,编码单元610是在分层结构600中的最大编码单元,其中,深度是0,尺寸(即,长乘宽)是64×64。沿着纵轴深度加深,存在具有32×32的尺寸和1的深度的编码单元620、具有16×16的尺寸和2的深度的编码单元630和具有8×8的尺寸和3的深度的编码单元640和具有4×4的尺寸和4的深度的编码单元650。具有4×4的尺寸和4的深度的编码单元650是最小编码单元。
根据每个深度沿着横轴布置编码单元的预测单元和分区。换句话说,如果具有64×64的尺寸和0的深度的编码单元610是预测单元,则预测单元可被划分为包括在编码单元610中的分区,即,具有64×64的尺寸的分区610、具有64×32的尺寸的分区612、具有32×64的尺寸的分区614或具有32×32的尺寸的分区616。
相似地,具有32×32的尺寸和1的深度的编码单元620的预测单元可被划分为包括在编码单元620中的分区,即,具有32×32的尺寸的分区620、具有32×16的尺寸的分区622、具有16×32的尺寸的分区624和具有16×16的尺寸的分区626。
相似地,具有16×16的尺寸和2的深度的编码单元630的预测单元可被划分为包括在编码单元630中的分区,即包括在编码单元630中的16×16的尺寸的分区、具有16×8的尺寸的分区632、具有8×16的尺寸的分区634和具有8×8的尺寸的分区636。
类似地,具有8×8的尺寸和3的深度的编码单元640的预测单元可被划分为包括在编码单元640中的分区,即包括在编码单元640中的8×8的尺寸的分区、具有8×4的尺寸的分区642、具有4×8的尺寸的分区644和具有4×4的尺寸的分区646。
具有4×4的尺寸和4的深度的编码单元650是最小编码单元和最低层深度的编码单元。编码单元650的预测单元仅被分配给具有4×4的尺寸的分区。
为了确定构成最大编码单元610的编码单元的至少一个编码深度,视频编码设备100的编码单元确定器120对与包括在最大编码单元610中的与每个深度相应的编码单元执行编码。
根据深度的包括在相同范围和相同尺寸的更深层编码单元的数量随着深度加深而增加。例如,与2的深度相应的四个编码单元被要求覆盖包括在与1的深度相应的一个编码单元中的数据。因此,为了比较根据深度的相同数据的编码结果,与1的深度相应的编码单元和与2的深度相应的四个编码单元均被编码。
为了针对多个深度中的当前深度执行编码,可通过沿着分层结构600的横轴,对与当前深度相应的编码单元中的每个预测单元执行编码,来针对当前深度选择最小编码误差。可选择地,可通过随着深度沿着分层结构600的纵轴加深对每个深度执行编码来比较根据深度的最小编码误差,来搜索最小编码误差。在编码单元610中的具有最小编码误差的深度和分区可被选择为编码单元610的编码深度和分区类型。
图7是用于描述根据本发明的实施例的编码单元710的变换单元720之间的关系的示图。
视频编码设备100或视频解码设备200针对每个最大编码单元根据具有小于或等于最大编码单元的尺寸的编码单元对图像进行编码或解码。可基于不大于相应的编码单元的数据单元来选择用于在编码期间变换的变换单元的尺寸。
例如,在视频编码设备100或视频解码设备200中,如果编码单元710的尺寸是64×64,则可通过使用具有32×32的尺寸的变换单元720来执行变换。
另外,可通过对具有小于64×64的32×32、16×16、8×8和4×4的尺寸的每个变换单元执行变换来对具有64×64的尺寸的编码单元710的数据进行编码,并随后可选择具有最小编码误差的变换单元。
图8是用于描述根据本发明的实施例的与编码深度相应的编码单元的编码信息的示图。
视频编码设备100的输出单元130可对与编码深度相应的每个编码单元的关于分区类型的信息800、关于预测模式的信息810和关于变换单元的尺寸的信息820进行编码并发送为关于编码模式的信息。
信息800指示关于通过对当前编码单元的预测单元进行划分而获取的分区的形状的信息,其中,所述分区是用于对当前编码单元进行预测编码的数据单元。例如,具有2N×2N的尺寸的当前编码单元CU_0可被划分为具有2N×2N的尺寸的分区802、具有2N×N的尺寸的分区804、具有N×2N的尺寸的分区806和具有N×N的尺寸的分区808中的任意一个。这里,关于分区类型的信息800被设置为指示具有2N×N的尺寸的分区804、具有N×2N的尺寸的分区806和具有N×N的尺寸的分区808中的一个。
信息810指示每个分区的预测模式。例如,信息810可指示对由信息800指示的分区执行预测编码的模式(即,帧内模式812、帧间模式814或跳过模式816)。
信息820指示当对当前编码单元执行变换时所基于的变换单元。例如,变换单元可以是第一帧内变换单元822、第二帧内变换单元824、第一帧间变换单元826或第二帧间变换单元828。
视频解码设备200的图像数据和编码信息提取器220可根据每个更深层编码单元提取并使用用于编码的信息800、信息810和信息820。
图9是示出根据本发明的实施例的根据深度的更深层编码单元的示图。
划分信息可被用于指示深度的变化。划分信息指示当前深度的编码单元是否被划分为更低深度的编码单元。
用于对具有0的深度和2N_0×2N_0的尺寸的编码单元900进行预测编码的预测单元910可包括具有2N_0×2N_0的尺寸的分区类型912、具有2N_0×N_0的尺寸的分区类型914、具有N_0×2N_0的尺寸的分区类型916和具有N_0×N_0的尺寸的分区类型918的分区。图9仅示出通过对预测单元910进行对称划分而获取的分区类型912至918,但是分区类型并不限于此,并且预测单元910的分区可包括非对称分区、具有预定形状的分区或具有几何形状的分区。
根据每个划分类型对具有2N_0×2N_0的尺寸的一个分区、具有2N_0×N_0的尺寸的两个分区、具有N_0×2N_0的尺寸的两个分区和具有N_0×N_0的尺寸的四个分区重复执行预测编码。可对具有2N_0×2N_0、N_0×2N_0、2N_0×N_0和N_0×N_0的尺寸的分区执行帧内模式和帧间模式的预测编码。仅对具有2N_0×2N_0的尺寸的分区执行跳过模式的预测编码。
比较包括分区类型912至918中的预测编码的编码误差,并且确定分区类型中的最小编码误差。如果编码误差在分区类型912至916中的一个中是最小的,则预测单元910可不被划分至较低层深度。
如果编码误差在划分类型918中是最小的,则在操作920中,深度从0被改变为1来对分区类型918进行划分,对具有2的深度和N_0×N_0的尺寸的编码单元930重复执行编码来搜索最小编码误差。
用于对具有1的深度和2N_1×2N_1(=N_0×N_0)的尺寸的编码单元930执行预测编码的预测单元940可包括具有2N_1×2N_1的尺寸的分区类型942、具有2N_1×N_1的尺寸的分区类型944、具有N_1×2N_1的尺寸的分区类型946和具有N_1×N_1的分区类型948的分区。
如果编码误差在分区类型948中是最小的,则在操作950中,深度从1改变为2来对分区类型948进行划分,并且对具有2的深度和N_2×N_2的尺寸的编码单元960重复执行编码来搜索最小编码误差。
当最大深度是d时,根据每个深度的划分信息可被执行直到深度变为d-1位置,并且划分信息可被编码直到深度变为0到d-2中的一个为止。也就是说,在操作970中,在与d-2的深度相应的编码单元被划分之后,当编码被执行直到深度是d-1时,用于对具有d-1的深度和2N_(d-1)×2N_(d-1)的尺寸的编码单元980执行预测编码的预测单元990可包括具有2N_(d-1)×2N_(d-1)的尺寸的分区类型992、具有2N_(d-1)×N_(d-1)的尺寸的分区类型994、具有N_(d-1)×2N_(d-1)的尺寸的分区类型996和具有N_(d-1)×N_(d-1)的尺寸的分区类型998。
可对分区类型992至998中的具有2N_(d-1)×2N_(d-1)的尺寸的一个分区、具有2N_(d-1)×N_(d-1)的尺寸的两个分区和具有N_(d-1)×N_(d-1)的尺寸的四个分区重复执行预测编码,来搜索具有最小编码误差的分区类型。
即使分区类型998具有最小编码误差,但是由于最大深度是d,因此具有d-1的深度的编码单元CU_(d-1)不再被划分至更低深度,并且构成当前最大编码单元900的编码单元的编码深度可被确定为d-1,当前最大编码单元900的分区类型可被确定为N_(d-1)×N_(d-1)。另外,由于最大深度是d,并且具有d-1的最低深度的最小编码单元980不再划分为更低深度,因此不再设置用于最小编码单元980的划分信息。
数据单元999可以是当前最大编码单元的“最小单元”。根据本发明的实施例的最小单元可以是通过将最小编码单元980划分为4个而获取的矩形数据单元。通过重复执行编码,视频编码设备100可通过对根据编码单元900的深度的编码误差进行比较并选择产生最小编码误差的深度来确定编码深度,并且将相应的分区类型和预测模式设置为编码深度的编码模式。
这样,可在1至d的所有深度中比较根据深度的最小编码误差,并且具有最小编码误差的深度可被确定为编码深度。预测单元的编码深度、分区类型和预测模式可被编码并发送为关于编码模式的信息。另外,由于编码单元从0的深度到编码深度被划分,因此仅编码深度的划分信息被设置为0,并且根据除了编码深度以外的深度的划分信息被设置为“1”。
视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的编码深度和预测单元的信息信息来对分区类型912进行解码。视频解码设备200可通过使用根据深度的划分信息将划分信息是“0”的深度确定为编码深度,并且使用关于相应的深度的编码模式的信息来进行解码。
图10至图12是用于描述根据本发明的实施例的编码单元1010、预测单元1060和变换单元1070之间的关系的示图。
编码单元1010是最大编码单元1000中的与由视频编码设备100确定的编码深度相应的具有树结构的编码单元。预测单元1060是每个编码单元1010的预测单元的分区,变换单元1070是每个编码单元1010的变换单元。
当编码单元1010中最大编码单元的深度是0时,编码单元1012和1054的深度是1,编码单元1014、1016、1018、1028、1050和1052的深度是2,编码单元1020、1022、1024、1026、1030、1032和1048的深度是3,编码单元1040、1042、1044和1046的深度是4。
在预测单元1060中,通过对编码单元1010中的编码单元进行划分来获取一些编码单元1014、1016、1022、1032、1048、1050、1052和1054。换句话说,编码单元1014、1022、1050和1054中的分区类型具有2N×N的尺寸,编码单元1016、1048和1052的分区类型具有N×2N的尺寸,编码单元1032的分区类型具有N×N的尺寸。编码单元1010的预测单元和分区小于或等于每个编码单元。
对小于编码单元1052的数据单元中的变换单元1070中的编码单元1052的图像数据执行变换或逆变换。另外,在尺寸和形状方面,变换单元1070中的变换单元1014、1016、1022、1032、1048、1050和1052不同于预测单元1060中的变换单元。换句话说,视频编码设备100和视频解码设备200可对相同编码单元中的数据单元独立地执行帧内预测、运动估计、运动补偿、变换和逆变换。
因此,由于通过对最大编码单元的每个区域中的具有分层结构的编码单元递归地执行编码来确定最优编码单元,因此可获取具有递归树结构的编码单元。编码信息可包括关于编码单元的划分信息、关于分区类型的信息、关于预测模式的信息和关于变换单元的尺寸的信息。表1示出可由视频编码设备100和视频解码设备200设置的编码信息。
表1
视频编码设备100的输出单元130可输出关于具有树结构的编码单元的编码信息,视频解码设备200的图像数据和编码信息提取单元220可从接收到的比特流中提取关于具有树结构的编码单元的编码信息。
划分信息指示当前编码单元是否被划分为较低层深度的编码单元。如果d的当前深度的划分信息是0,则由于不再被划分为下层编码单元的当前编码单元的深度是编码深度,因此可针对编码深度定义关于分区类型的信息、关于预测模式的信息和关于变换单元的尺寸的信息。如果当前编码单元根据划分信息需要进一步被划分时,对较低层深度的4个划分编码单元独立地执行编码。
预测模式可以是帧内模式、帧间模式和跳过模式中的一个。可在所有分区类型中定义帧内模式和帧间模式,可仅在具有2N×2N的尺寸的分区类型中定义跳过模式。
关于分区类型的信息可指示通过对称地对预测单元的高和宽进行划分而获取的具有2N×2N、2N×N、N×2N和N×N的尺寸的对称分区类型,和通过非对称地对预测单元的高或宽进行划分而获取的具有2N×nU、2N×nD、nL×2N和nR×2N的尺寸的非对称分区类型。通过按照1:3和3:1对高进行划分分别获取具有2N×nU和2N×nD的尺寸的非对称分区类型,通过按照1:3和3:1对宽进行划分而分别获取的具有nL×2N和nR×2N的尺寸的非对称分区类型。
变换单元的尺寸可被设置为帧内模式下的两种类型和帧间模式下的两种类型。也就是说,如果关于变换单元的划分信息是0,则变换单元的尺寸被设置为作为当前编码单元的尺寸的2N×2N。如果变换单元的划分信息是1,则可通过对当前编码单元进行划分来获取变换单元。另外,如果具有2N×2N的尺寸的当前编码单元的分区类型是非对称分区类型,则变换单元的尺寸可以是N×N,如果当前编码单元的分区类型是对称分区类型,则变换单元的尺寸可以是N/2×N/2。
具有树结构的编码单元的编码信息可包括与编码深度相应的编码单元、预测单元和最小单元中的至少一个。与编码深度相应的编码单元可包括包含相同编码信息的预测单元和最小单元中的至少一个。
因此,通过比较邻近数据单元的编码信息来确定邻近数据单元是否被包括在与编码深度相应的相同编码单元中。另外,由于通过使用数据单元的编码信息来确定与编码深度相应的相应编码单元,因此可确定在最大编码单元中的编码深度的分布。
因此,如果基于邻近数据单元的编码信息预测当前编码单元,则可直接参照并使用与当前编码单元邻近的更深层编码单元中的数据单元的编码信息。
可选择地,如果基于邻近编码单元的编码信息预测当前编码单元,则使用数据单元的编码信息来搜索与当前编码单元邻近的数据单元,搜索的邻近编码单元可被参考用于预测当前编码单元。
图13是用于描述根据表1的编码模式信息的编码单元、预测单元或分区和变换单元之间的关系的示图。
最大编码单元1300包括编码深度的编码单元1302、编码单元1304、编码单元1306、编码单元1312、编码单元1314、编码单元1316和编码单元1318。这里,由于编码单元1318是编码深度的编码单元,因此划分信息可被设置为0。具有2N×2N的尺寸的编码单元1318的分区类型信息可被设置为具有2N×2N的尺寸的分区类型1322、具有2N×N的尺寸的分区类型1324、具有N×2N的尺寸的分区类型1326、具有N×N的尺寸的分区类型1328、具有2N×nU的尺寸的分区类型1332、具有2N×nD的尺寸的分区类型1334、具有nL×2N的尺寸的分区类型1336和具有nR×2N的尺寸的分区类型1338中的一个。
当分区类型被设置为对称(即,具有2N×N的尺寸的分区类型1322、1324、1326或1328)时,如果变换单元的划分信息(TU尺寸标记)是0,则具有2N×2N的尺寸的变换类型1342被设置,如果变换单元的划分信息是1,则具有N×N的尺寸的变换单元1344被设置。
当分区类型被设置为非对称(即,分区类型1332、1334、1366或1338)时,如果TU尺寸标记是0,则具有2N×2N的尺寸的变换单元1352可被设置,如果TU尺寸标记是1,则具有N/2×N/2的尺寸的变换单元1354被设置。
以下,详细描述由图4中的图像编码器400的熵编码器450和图5中的图像解码器500的熵解码器520执行的熵编码和解码处理。
如上所述,根据本发明的实施例的图像编码器400通过使用通过划分最大编码单元而获取的编码单元来执行编码。熵编码器450对针对每个编码单元产生的多条编码信息(例如,语法元素SE,诸如,量化变换系数、预测单元的预测模式、量化参数、运动矢量等)进行熵编码。更详细地,熵编码器450对语法元素执行基于上下文的二进制算术编码(CABAC)。
图14是示出根据本发明的实施例的熵编码设备1400的配置的框图。
参照图14,熵编码设备1400包括二值化器1410、上下文建模器1420、二进制算法编码器1430。此外,二进制算法编码器1430包括常规编码引擎1432和旁路(bypass)编码引擎1434。
被输入到熵编码设备1400的语法元素可以不是二进制值,因此,当语法元素不是二进制值时,二值化器1410对语法元素进行二值化,并随后输出由0或1的二进制值构成的二进位串。二进位(bin)表示由0或1构成的串的每一个比特,并且经由CABAC对每个二进位进行编码。当语法元素是具有0和1的相同发生率的数据时,语法元素被输出到不使用概率值的旁路编码引擎1434,并随后被编码。
上下文建模器1420将关于当前编码系统的概率模型提供给常规编码引擎1432。更详细地,上下文建模器1420基于先前编码的符号确定预定的二进制值的概率,并将用于对当前编码符号的二进制值进行编码的二进制值的发生概率输出到二进制算术编码器1430。传统的上下文建模器(诸如,H.264/AVC等)经由最大概率符号(MPS)提供关于编码符号的概率模型,并且作为指示0和1中的二进制值的信息的上下文索引ctxIdx与MSP相应。另一方面,根据本实施例的上下文建模器1420不在MPS和最小概率符号(LPS)之间进行区分,但基于先前编码的符号确定指示预定义二进制值(例如“1”)的发生概率的P(1),并将预定义二进制值的概率提供给二进制算术编码器1430。
上下文建模器1420依据当前编码符号的二进制值,通过使用多个缩放因子,更新预定义二进制值的概率。将稍后详细描述预定义二进制值的概率的更新。
常规编码引擎1432基于从上下文建模器1420提供的预定义二进制值的概率和当前编码符号的二进制值,执行二进制算术编码。也就是说,常规编码引擎1432可基于从上下文建模器1420提供的预定义二进制值的概率确定“1”的发生概率P(1)和“0”的发生概率P(0),基于确定的0和1的发生概率P(0)和P(1),根据当前编码符号的二进制值改变指示概率范围的范围,因此执行二进制算术编码。
图15示出与本发明相关的技术领域执行的发生概率的更新处理。
参照图15,根据传统H.264/AVC等,当概率函数中的概率状态索引pStateldx被确定时,如果编码符号的值是指定为MPS的值,则概率状态索引pStateldx被更新,使得概率状态被转移到前方向状态(状态σ+1),其中,LPS概率从当前状态概率(状态σ)减小,并且如果编码符号的值不是MPS,也就是说,如果该值被指定为LPS,则概率状态索引pStateldx被更新,使得概率状态被转移到后方向状态(状态σ-K(K>0)),其中,LPS概率从当前概率状态(状态σ)增加。例如,当概率状态索引pStateldx当前为C时,如果当前编码符号的值被指定为LPS,则当前编码符号被编码,并且概率状态索引pStateldx被更新为A。当下一个编码符号的值被指定为LPS时,概率状态索引pStateldx再次从A更新至B。
如所示,传统的概率函数具有指数形式。在具有指数形式的概率函数中,LPS接近于0的概率分布是非常密集的,并且LPS接近1/2的概率分布是非常稀疏的。因此,如果基于具有指数形式的概率分布,则当0和1的二进制值的发生概率是相似的,即,当0和1的二进制值的发生概率接近1/2时,概率是稀疏分布的,从而概率的预测误差会增加。此外,当具有指数形式的概率函数被使用时,接近0的概率值必须被精细地表示,使得指示概率值的比特深度会增加。因此,用于存储具有带有指数形式的概率函数的概率模型的查找表的大小会增加。因此,根据现有技术,当概率被更新或概率范围被划分时,如果密集概率值被使用,则乘法计算的量增加,而大负载被施加到硬件。
根据本实施例,上下文建模器1420基于具有均匀分布的概率函数确定0和1的二进制值的发生概率。另外,上下文建模器1420通过使用多个缩放因子来更新预定义的二进制值的概率。
以下,将详细描述由上下文建模器1420执行的概率模型的更新处理。
在CABAC中,通过使用下面的等式1执行概率更新。
[等式1]
P_new=a*y+(1-a)*P_old
在等式1中,P_new指示更新的LPS的概率,P_old指示用于对当前编码符号进行算术编码的LPS的概率,a(其中,a是满足a<1的实数)是缩放因子。当先前编码符号的数量为N(其中,N是整数)时,a=1/N是可能的。当当前编码符号具有与MPS的值相应的二进制值时,y具有0的值,并且当当前编码符号具有与LPS的值相应的二进制值时,y具有1的值。
在基于等式(1)的概率更新中,重要参数是作为缩放因子的a。依据缩放因子的值,确定整个CABAC编码过程对噪声或误差的反应的敏感性以及关于整个CABAC编码过程对噪声或误差不反应的稳定性。确定适当的缩放因子a的值的过程是困难并耗时的。
因此,在概率更新中,根据本实施例的上下文建模器1420通过使用多个缩放因子ai产生多个更新概率,并且通过使用所述多个更新概率的加权平均值来确定最终的更新概率。
更详细地,上下文建模器1420根据以下的使用所述多个缩放因子ai的等式2来产生多个更新概率。
[等式2]
Pi_new=ai*y+(1-ai)*P_old
在等式2中,Pi_new指示通过使用缩放因子ai更新的预定二进制值的概率,并且P_old指示用于对当前编码符号进行算术编码的预定二进制值的概率。在等式2中,Pi_new或P_old指示预定义的二进制值,即0或1的发生概率。也就是说,在本实施例中,概率不指示MPS和LPS,而指示特定二进制值(例如,“1”)的发生概率。以下,假设预定二进制值是1,即,Pi_new或P_old指示“1”的发生概率。然而,并不限于此,因此,根据本实施例的概率更新可类似地应用于Pi_new或P_old指示“0”的发生概率的情况。
当通过使用等式2获得了多个概率Pi_new时,上下文建模器1420通过使用等式3计算所述多个概率Pi_new的加权平均值。
[等式3]
p=∑βi*Pi_new
βi是将与所述多个概率Pi_new相乘的权重,并且可被设置以使加权平均值可考虑所有概率Pi_new的数量而被计算。
根据本实施例,为了要跳过概率更新中的乘法处理,2的幂值也可用作概率。
假设通过使用从0到2^k(其中,k为整数)的整数Ai,概率pi具有从等式pi=Ai/(2^k)获取的值。另外,假设通过使用2的幂值的值,多个缩放因子ai具有从等式ai=1/(2^Mi)(其中Mi为整数)获取的值。在这种情况下,等式2可被改变为下面的使用移位计算的等式4。
[等式4]
Pi_new=(Y>>Mi)+P_old-(P_old>>Mi)
如上所述,根据本实施的概率指示预定二进制值的概率,例如,P_old指前一个编码符号具有1的值的概率,Pi_new指通过更新P_old获取具有1的值的下一个编码符号的概率。当在等式4中预定的二进制值为“1”时,如果前一个编码符号为“1”,则Y具有2^k(其中k为整数)的值,并且如果前一个编码符号为“0”,则Y具有0的值。计算“>>Mi”执行右移Mi位,在这种情况下,Mi的值可具有{3,4,5,6,7,8}中的一个。如上所述,因为缩放因子ai与ai=1/(2^Mi)相应,所以如果{3,4,5,6,7,8}中的一个被用作Mi的值,则ai与{8,16,32,64,128,256}相应。此外,当先前编码符号的数量为Ni(其中Ni是整数)时,ai=1/Ni可被设置。因此,Ni=1/ai∈{8,16,32,64,128,256}被建立。Ni可被称为窗口大小。
例如,在N0=16(即,a0=1/16),N1=128(即,a1=1/128)的情况下,上下文建模器1420可通过使用等式P0'=(Y>>4)+P0-(P0>>4);P1'=(Y>>7)+P1-(P1>>7)来获取更新的P0'和P1',并可通过使用等式P=(P0'+P1')>>1获取最终的更新概率P。
如上所述,用于根据本实施例的CABAC的概率不在MPS和LPS之间进行区分,但指示预定义的二进制值(即“1”)的概率。尽管根据现有技术的LPS的概率不能超过1/2,但是用于本发明的实施例的概率指示“1”的预定义的二进制值的概率,因此,概率可超过1/2。
在CABAC编码过程中,在每个条带单元的间隔处执行熵复位。熵复位指二进制算术编码丢弃当前概率值,随后基于预定概率值重新执行CABAC编码。在熵复位处理之后执行的概率更新中,设定为初始值的概率值不是最优值,并且当多次执行更新处理时,概率值收敛到恒定的概率值。
可通过使用通过使用当前量化参数和参考量化参数之间的差值ΔQP,利用等式Pinit=α+β×QP+γ×ΔQP来设置在熵复位被执行之后复位的概率Pinit。α、β和γ是根据上下文模型和当前条带的类型预先设定的权重值。也可基于上下文模型和当前条带类型,在熵复位的每个初始过程改变上述Mi。
图16是用于将使用多个缩放因子的概率更新处理和使用一个缩放因子的概率更新处理进行比较的示图。
参照图16,在通过使用一个缩放因子更新概率的情况下,随着多次执行概率更新,概率急剧变化,从而迅速地收敛到适当值Poptimal,但随着重复执行的概率更新,会容易发生波动。在通过使用多个缩放因子更新概率的情况下,通过使用根据本发明的实施例的等式3、4等,虽然概率不迅速改变,但是如果更新概率几乎收敛到适当值Poptimal,则出现较少波动,使得熵编码设备1400对误差或噪音反应不敏感,而且运行稳定。
因此,考虑使用一个缩放因子或使用多个缩放因子的概率更新处理,上下文建模器1420可在熵复位之后,通过使用用于预定阈值的一个缩放因子来执行概率更新,并在预定阈值之后,上下文建模器1420可通过使用所述多个缩放因子执行概率更新,从而达到系统稳定。
图17是根据本发明的实施例的更新预定义二进制值的概率的处理的流程图。
参照图17,在操作1710,上下文建模器1420在熵复位之后初始化计数器和概率。在操作1720,上下文建模器1420通过使用初始设定的概率对输入的编码符号执行二进制算术编码。
在操作1730,上下文建模器1420通过使用一个缩放因子来更新概率。在操作1740,每当概率被更新时,上下文建模器1420对计数器增加1。在操作1750,上下文建模器1420确定计数器是否达到预定阈值。预定阈值可被定义为窗口大小。在操作1760,上下文建模器1420通过使用最新更新的概率对编码符号执行二进制算术编码,并且在操作1770,上下文建模器1420通过使用多个缩放因子更新预定义的二进制值的概率。在之后的CABAC处理中,上下文建模器1420通过使用所述多个缩放因子来更新概率。
在二进制算术编码处理中,可经由直接计算或通过使用查找表来执行概率范围的划分。在概率可被表示为K比特的情况下,可通过使用等式L=(range×P+2^(k-1))>>k获取关于当前编码符号的概率范围的概率范围L。
图18示出根据本发明的实施例的二进制算术编码过程。
上下文建模器1420将预定义的二进制值的发生概率(例如“1”的发生概率P(1))提供到二进制算术编码器1430,二进制算术编码器1430考虑输入编码符号的概率对概率范围进行划分,并且执行二进制算术编码。在图18中,假定“1”的发生概率P(1)=0.8且P(0)=0.2。为便于描述,假定P(1)和P(0)是固定的,但是如上所述,每当编码符号被编码时,P(1)和P(0)的值可被更新。由于首先输入的符号S1具有1的值,因此二进制算术编码器1430在(0,1)的范围内选择作为“1”的值的概率范围的(0,0.8),由于下一个输入的符号S2具有0的值,因此二进制算术编码器1430在(0,0.8)的范围内选择作为与0.2相应的上部概率范围的(0.64,0.8),并且由于最后输入的符号S3具有1的值,因此二进制算术编码器1430最终确定作为与(0.64,0.8)的0.8相应的范围的(0.64,0.768),随后二进制算术编码器1430选择0.75作为指示(0.64,0.768)的范围的代表值,并输出“11”作为最终的比特流,其中“11”是作为与0.75相应的二进制值的0.11的小数点值。即,输入编码符号“101”被编码为“11”。
图19是根据本发明的实施例的熵编码方法的流程图。
参照图19,在操作1910,二进制算术编码器1430通过使用基于在当前编码符号之前被编码的先前编码的符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术编码。
在操作1920,二进制算术编码器1430根据当前编码符号的二进制值,通过使用通过使用多个缩放因子,更新预定义的二进制值的概率。如上所述,二进制算术编码器1430可计算通过使用所述多个缩放因子产生的多个概率的加权平均值,因此可获取应用到下一个编码符号的概率。此外,在该概率在熵复位过程之后被初始化状态下,二进制算术编码器1430使用一个缩放因子,从而使概率在更新过程期间迅速地收敛到适当值,直到达到预定阈值为止,并在更新概率的数量超过预定阈值之后,二进制算术编码器1430通过使用所述多个缩放因子更新概率,使得整个概率更新过程可迅速且稳定地收敛到适当值。
图20是根据本发明的实施例的熵解码设备2000的配置的框图。
参照图20,熵解码设备2000包括上下文建模器2010、常规解码引擎2020、旁路解码引擎2030和反二值化器2040。熵解码设备2000执行由熵编码设备1400执行的熵编码过程的逆过程。
经由旁路编码所编码的符号被输出到旁路解码引擎2030并由旁路解码引擎2030解码,并且经由常规编码所编码的符号由常规解码引擎2020解码。常规解码引擎2020通过使用基于在当前编码符号之间编码的从上下文建模器2010提供的先前编码符号确定的预定义二进制值的概率,来对当前编码符号的二进制值进行算术解码。如上所述,指示预定概率范围的代表值的二进制值被发送作为根据二进制算术编码结果而编码的符号,使得常规解码引擎2020可通过使用0和1的发生概率来对编码符号进行解码。
上下文建模器2010根据解码的编码符号的二进制值,通过使用多个缩放因子来更新预定义的二进制值。如上所述,上下文建模器1420不在MPS和LPS之间进行区分,但基于先前编码的符号确定指示预定义的二进制值(例如,“1”)的发生概率P(1),并将确定的预定义的二进制值的概率提供到常规解码引擎2020。反二值化器2040将二进位串恢复为语法元素,其中,所述二进位串由常规解码引擎2020或旁路解码引擎2030恢复。
图21是根据本发明的实施例的熵解码方法的流程图。
参照图21,常规解码引擎2020通过使用基于在当前编码符号之前解码的先前编码的符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术解码。
在操作2020,上下文建模器2010根据当前编码符号的二进制值,通过使用多个缩放因子,来更新预定义二进制值的概率。上下文建模器2010可计算通过使用所述多个缩放因子产生的多个概率的加权平均值,并因此可获取将被应用于下一个编码符号的概率。此外,在该概率在熵复位过程之后被初始化状态下,上下文建模器2010使用一个缩放因子,从而使概率在更新处理期间迅速地收敛到适当值直到达到预定阈值为止,并在更新概率的数量超过预定阈值之后,上下文建模器2010可通过使用所述多个缩放因子来更新概率。
示例性实施例还可被实现为计算机可读记录介质上的计算机可读代码。所述计算机可读记录介质可以是可存储其后可被计算机系统读取的数据的任何数据存储装置。所述计算机可读记录介质的示例包括:只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光学数据存储装置。所述计算机可读记录介质还可被分布在联网的计算机系统上,从而所述计算机可读代码以分布式方式被存储和执行。
虽然参照本发明的优选实施例具体地示出和描述了本发明,但是本领域的普通技术人员将理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可在其中进行各种形式和细节的改变。因此,本发明的范围不是由本发明的详细描述限定,而是由权利要求限定,并且所述范围内的所有差别将被解释为包括在本发明中。
Claims (15)
1.一种对图像进行熵编码的方法,所述方法包括:
通过使用基于在当前编码符号之前编码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术编码;
根据当前编码符号的二进制值,通过使用多个缩放因子来更新所述预定义二进制值的概率。
2.如权利要求1所述的方法,其中,当假设所述多个缩放因子是ai,其中,ai是小于1的实数,并且i是等于或大于1的整数,基于关于先前编码的符号的信息确定的所述预定义二进制值的概率是P_old,通过使用缩放因子ai更新的二进制值的概率是Pi_new时,y依据当前编码符号是否具有所述预定义二进制值而具有0或1的值,
更新的步骤包括:通过使用多个更新的二进制值的概率Pi_new的加权平均值来更新所述预定义二进制值的概率,其中,通过使用等式Pi_new=ai×y+(1-ai)×P_old获取所述多个更新的二进制值的概率Pi_new的加权平均值。
3.如权利要求2所述的方法,其中,通过使用2的幂值来确定缩放因子ai。
4.如权利要求3所述的方法,其中,ai=1/(2^Mi),其中,Mi是整数,通过使用等式Pi_new=(y>>Mi)+P_old-(P_old>>Mi)来获取二进制值的更新的概率Pi_new。
5.如权利要求1所述的方法,其中,当概率值被初始化时,在概率被更新的次数超过预定阈值之后,通过使用所述多个缩放因子执行更新。
6.如权利要求5所述的方法,其中,当概率值被初始化时,如果概率被更新的次数等于或小于预定阈值,则通过使用一个缩放因子更新概率。
7.一种用于对图像进行熵编码的熵编码设备,所述熵编码设备包括:
二进制算术编码器,用于通过使用基于在当前编码符号之前编码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术编码;
上下文建模器,用于根据当前编码符号的二进制值,通过使用多个缩放因子来更新所述预定义二进制值的概率。
8.一种对图像进行熵解码的方法,所述方法包括:
通过使用基于在当前编码符号之前解码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术解码;
根据当前编码符号的二进制值,通过使用多个缩放因子来更新所述预定义二进制值的概率。
9.如权利要求8所述的方法,当假设所述多个缩放因子是ai,其中,ai是小于1的实数,并且i是等于或大于1的整数,基于关于先前编码的符号的信息确定的所述预定义二进制值的概率是P_old,通过使用缩放因子ai更新的二进制值的概率是Pi_new时,y依据当前编码符号是否具有所述预定义二进制值而具有0或1的值,
更新的步骤包括:通过使用多个更新的二进制值的概率Pi_new的加权平均值来更新所述预定义二进制值的概率,其中,通过使用等式Pi_new=ai×y+(1-ai)×P_old获取所述多个更新的二进制值的概率Pi_new的加权平均值。
10.如权利要求9所述的方法,其中,通过使用2的幂值来确定缩放因子ai。
11.如权利要求10所述的方法,其中,ai=1/(2^Mi),其中,Mi是整数,通过使用等式Pi_new=(y>>Mi)+P_old-(P_old>>Mi)来获取二进制值的更新的概率Pi_new。
12.如权利要求8所述的方法,其中,当概率值被初始化时,在概率被更新的次数超过预定阈值之后,通过使用所述多个缩放因子执行更新。
13.如权利要求12所述的方法,其中,当概率值被初始化时,如果概率被更新的次数等于或小于预定阈值,则通过使用一个缩放因子更新概率。
14.一种用于对图像进行熵解码的熵解码设备,所述熵解码设备包括:
二进制算术解码器,用于通过使用基于在当前编码符号之前解码的先前编码符号确定的预定义二进制值的概率,对当前编码符号的二进制值进行算术解码;
上下文建模器,用于根据当前编码符号的二进制值,通过使用多个缩放因子来更新所述预定义二进制值的概率。
15.一种记录有用于执行权利要求1的方法的计算机执行程序的记录介质。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161502021P | 2011-06-28 | 2011-06-28 | |
US61/502,021 | 2011-06-28 | ||
PCT/KR2012/005147 WO2013002585A2 (ko) | 2011-06-28 | 2012-06-28 | 엔트로피 부호화/복호화 방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103797803A true CN103797803A (zh) | 2014-05-14 |
Family
ID=47424689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280042430.9A Pending CN103797803A (zh) | 2011-06-28 | 2012-06-28 | 用于熵编码/解码的方法和设备 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9661326B2 (zh) |
EP (1) | EP2760201A4 (zh) |
JP (1) | JP2014523186A (zh) |
KR (1) | KR102106534B1 (zh) |
CN (1) | CN103797803A (zh) |
WO (1) | WO2013002585A2 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105338353A (zh) * | 2014-08-05 | 2016-02-17 | 美国博通公司 | 上下文自适应二进制算法编码的简化的范围和上下文更新 |
CN105578180A (zh) * | 2014-10-16 | 2016-05-11 | 联想(北京)有限公司 | 一种编码方法及装置 |
CN107113445A (zh) * | 2014-11-04 | 2017-08-29 | 三星电子株式会社 | 用于二进制算术编/解码的概率更新方法及使用该方法的熵编/解码器 |
CN107534772A (zh) * | 2015-05-19 | 2018-01-02 | 联发科技股份有限公司 | 基于多表格的上下文自适应二进制算术编码的方法及装置 |
CN107667533A (zh) * | 2015-05-29 | 2018-02-06 | 高通股份有限公司 | 高级算术译码器 |
CN108141594A (zh) * | 2015-10-13 | 2018-06-08 | 三星电子株式会社 | 用于对图像进行编码或解码的方法和设备 |
CN109076230A (zh) * | 2016-05-03 | 2018-12-21 | 高通股份有限公司 | 二值化二次变换指数 |
CN110474876A (zh) * | 2019-07-15 | 2019-11-19 | 湖南遥昇通信技术有限公司 | 一种数据编码解码方法、装置、设备以及存储介质 |
CN112106355A (zh) * | 2018-04-13 | 2020-12-18 | 浙江大学 | 一种信息保持编解码方法与装置 |
CN115334313A (zh) * | 2022-06-22 | 2022-11-11 | 百果园技术(新加坡)有限公司 | 一种视频解码方法、装置、设备及存储介质 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9247257B1 (en) | 2011-11-30 | 2016-01-26 | Google Inc. | Segmentation based entropy encoding and decoding |
US9774856B1 (en) * | 2012-07-02 | 2017-09-26 | Google Inc. | Adaptive stochastic entropy coding |
US9509998B1 (en) | 2013-04-04 | 2016-11-29 | Google Inc. | Conditional predictive multi-symbol run-length coding |
US9392288B2 (en) | 2013-10-17 | 2016-07-12 | Google Inc. | Video coding using scatter-based scan tables |
US9179151B2 (en) | 2013-10-18 | 2015-11-03 | Google Inc. | Spatial proximity context entropy coding |
EP3244610A1 (en) * | 2016-05-12 | 2017-11-15 | Thomson Licensing | Method and device for context-adaptive binary arithmetic coding a sequence of binary symbols representing a syntax element related to video data |
US10554988B2 (en) | 2017-03-22 | 2020-02-04 | Qualcomm Incorporated | Binary arithmetic coding with parameterized probability estimation finite state machines |
WO2019009450A1 (ko) * | 2017-07-06 | 2019-01-10 | 엘지전자(주) | 비디오 신호를 엔트로피 인코딩, 디코딩하는 방법 및 장치 |
WO2019027074A1 (ko) * | 2017-08-04 | 2019-02-07 | 엘지전자(주) | 멀티 심볼 엔트로피 코딩을 위한 멀티 심볼 매핑을 수행하는 방법 및 장치 |
US10791341B2 (en) | 2017-10-10 | 2020-09-29 | Qualcomm Incorporated | Binary arithmetic coding with progressive modification of adaptation parameters |
WO2019140083A1 (en) * | 2018-01-12 | 2019-07-18 | Futurewei Technologies, Inc. | Adaptive multi-hypothesis context-adaptive binary arithmetic coding (mcabac) |
US10986354B2 (en) * | 2018-04-16 | 2021-04-20 | Panasonic Intellectual Property Corporation Of America | Encoder, decoder, encoding method, and decoding method |
US10939115B2 (en) * | 2018-06-19 | 2021-03-02 | Qualcomm Incorporated | Efficient weighted probability estimation for binary arithmetic coding |
KR20210061360A (ko) * | 2018-10-18 | 2021-05-27 | 삼성전자주식회사 | 엔트로피 부호화/복호화 방법 및 장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1874509A (zh) * | 2001-09-14 | 2006-12-06 | 诺基亚有限公司 | 基于上下文的自适应二进制算术编码的方法和系统 |
CN101055720A (zh) * | 2005-12-07 | 2007-10-17 | 三星电子株式会社 | 对音频信号编码和解码的方法和设备 |
CN101080931A (zh) * | 2004-12-14 | 2007-11-28 | 三星电子株式会社 | 用于对图像编码和解码的设备及其方法 |
WO2011022047A1 (en) * | 2009-08-21 | 2011-02-24 | Thomson Licensing | Methods and apparatus for explicit updates for symbol probabilities of an entropy encoder or decoder |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100703776B1 (ko) | 2005-04-19 | 2007-04-06 | 삼성전자주식회사 | 향상된 코딩 효율을 갖는 컨텍스트 기반 적응적 산술 코딩및 디코딩 방법과 이를 위한 장치, 이를 포함하는 비디오코딩 및 디코딩 방법과 이를 위한 장치 |
US8891615B2 (en) * | 2008-01-08 | 2014-11-18 | Qualcomm Incorporated | Quantization based on rate-distortion modeling for CABAC coders |
JP5133950B2 (ja) | 2009-07-16 | 2013-01-30 | 日本電信電話株式会社 | コンテクスト適応エントロピ符号化方法および装置,コンテクスト適応エントロピ復号方法および装置,並びにそれらのプログラム |
JP5809292B2 (ja) * | 2011-01-14 | 2015-11-10 | ジーイー ビデオ コンプレッション エルエルシー | エントロピー符号化および復号化スキーム |
-
2012
- 2012-06-28 CN CN201280042430.9A patent/CN103797803A/zh active Pending
- 2012-06-28 KR KR1020120070366A patent/KR102106534B1/ko active IP Right Grant
- 2012-06-28 EP EP12803573.0A patent/EP2760201A4/en not_active Withdrawn
- 2012-06-28 WO PCT/KR2012/005147 patent/WO2013002585A2/ko active Application Filing
- 2012-06-28 JP JP2014518805A patent/JP2014523186A/ja active Pending
- 2012-06-28 US US14/130,028 patent/US9661326B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1874509A (zh) * | 2001-09-14 | 2006-12-06 | 诺基亚有限公司 | 基于上下文的自适应二进制算术编码的方法和系统 |
CN101080931A (zh) * | 2004-12-14 | 2007-11-28 | 三星电子株式会社 | 用于对图像编码和解码的设备及其方法 |
CN101055720A (zh) * | 2005-12-07 | 2007-10-17 | 三星电子株式会社 | 对音频信号编码和解码的方法和设备 |
WO2011022047A1 (en) * | 2009-08-21 | 2011-02-24 | Thomson Licensing | Methods and apparatus for explicit updates for symbol probabilities of an entropy encoder or decoder |
Non-Patent Citations (1)
Title |
---|
DETLEV MARPE, MEMBER, IEEE, HEIKO SCHWARZ, AND THOMAS WIEGAND: "Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard", 《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》 * |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105338353B (zh) * | 2014-08-05 | 2018-11-16 | 安华高科技股份有限公司 | 上下文自适应二进制算法编码的简化的范围和上下文更新 |
CN105338353A (zh) * | 2014-08-05 | 2016-02-17 | 美国博通公司 | 上下文自适应二进制算法编码的简化的范围和上下文更新 |
CN105578180A (zh) * | 2014-10-16 | 2016-05-11 | 联想(北京)有限公司 | 一种编码方法及装置 |
CN105578180B (zh) * | 2014-10-16 | 2019-01-15 | 联想(北京)有限公司 | 一种编码方法及装置 |
US10432945B2 (en) | 2014-11-04 | 2019-10-01 | Samsung Electronics Co., Ltd. | Probability update method for binary arithmetic coding/decoding, and entropy coder/decoder using the same |
CN107113445A (zh) * | 2014-11-04 | 2017-08-29 | 三星电子株式会社 | 用于二进制算术编/解码的概率更新方法及使用该方法的熵编/解码器 |
CN111614957B (zh) * | 2015-05-19 | 2022-03-22 | 联发科技股份有限公司 | 图像或者视频数据的熵编解码的方法及熵编解码装置 |
CN107534772A (zh) * | 2015-05-19 | 2018-01-02 | 联发科技股份有限公司 | 基于多表格的上下文自适应二进制算术编码的方法及装置 |
US10742984B2 (en) | 2015-05-19 | 2020-08-11 | Mediatek Inc. | Method and apparatus for multi-table based context adaptive binary arithmetic coding |
CN111614957A (zh) * | 2015-05-19 | 2020-09-01 | 联发科技股份有限公司 | 图像或者视频数据的熵编解码的方法及熵编解码装置 |
CN107534772B (zh) * | 2015-05-19 | 2020-05-19 | 联发科技股份有限公司 | 图像或者视频数据的熵编解码的方法及熵编解码装置 |
CN107667533A (zh) * | 2015-05-29 | 2018-02-06 | 高通股份有限公司 | 高级算术译码器 |
CN107667533B (zh) * | 2015-05-29 | 2020-06-05 | 高通股份有限公司 | 高级算术译码器 |
CN112929659A (zh) * | 2015-10-13 | 2021-06-08 | 三星电子株式会社 | 用于对图像进行编码或解码的方法和设备 |
CN108141594A (zh) * | 2015-10-13 | 2018-06-08 | 三星电子株式会社 | 用于对图像进行编码或解码的方法和设备 |
US12088808B2 (en) | 2015-10-13 | 2024-09-10 | Samsung Electronics Co., Ltd. | Method and device for encoding or decoding image |
CN112929660B (zh) * | 2015-10-13 | 2023-12-26 | 三星电子株式会社 | 用于对图像进行编码或解码的方法和设备 |
CN108141594B (zh) * | 2015-10-13 | 2021-02-26 | 三星电子株式会社 | 用于对图像进行编码或解码的方法和设备 |
US10939104B2 (en) | 2015-10-13 | 2021-03-02 | Samsung Electronics Co., Ltd. | Method and device for encoding or decoding image |
CN112929660A (zh) * | 2015-10-13 | 2021-06-08 | 三星电子株式会社 | 用于对图像进行编码或解码的方法和设备 |
CN112929661A (zh) * | 2015-10-13 | 2021-06-08 | 三星电子株式会社 | 解码方法和编码方法 |
CN112929659B (zh) * | 2015-10-13 | 2023-12-26 | 三星电子株式会社 | 用于对图像进行编码或解码的方法和设备 |
US11638006B2 (en) | 2015-10-13 | 2023-04-25 | Samsung Electronics Co., Ltd. | Method and device for encoding or decoding image |
CN112929661B (zh) * | 2015-10-13 | 2023-04-21 | 三星电子株式会社 | 解码方法和编码方法 |
US11553182B2 (en) | 2015-10-13 | 2023-01-10 | Samsung Electronics Co., Ltd. | Method and device for encoding or decoding image |
US11496385B2 (en) | 2016-05-03 | 2022-11-08 | Qualcomm Incorporated | Binarizing secondary transform index |
CN109076230A (zh) * | 2016-05-03 | 2018-12-21 | 高通股份有限公司 | 二值化二次变换指数 |
CN112106355A (zh) * | 2018-04-13 | 2020-12-18 | 浙江大学 | 一种信息保持编解码方法与装置 |
CN110474876A (zh) * | 2019-07-15 | 2019-11-19 | 湖南遥昇通信技术有限公司 | 一种数据编码解码方法、装置、设备以及存储介质 |
CN110474876B (zh) * | 2019-07-15 | 2020-10-16 | 湖南遥昇通信技术有限公司 | 一种数据编码解码方法、装置、设备以及存储介质 |
CN115334313A (zh) * | 2022-06-22 | 2022-11-11 | 百果园技术(新加坡)有限公司 | 一种视频解码方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US9661326B2 (en) | 2017-05-23 |
WO2013002585A3 (ko) | 2013-04-11 |
JP2014523186A (ja) | 2014-09-08 |
KR20130002298A (ko) | 2013-01-07 |
US20140177708A1 (en) | 2014-06-26 |
WO2013002585A2 (ko) | 2013-01-03 |
KR102106534B1 (ko) | 2020-05-04 |
EP2760201A2 (en) | 2014-07-30 |
EP2760201A4 (en) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103797803A (zh) | 用于熵编码/解码的方法和设备 | |
CN102474599B (zh) | 用于对图像进行编码的方法和设备,用于对编码图像进行解码的方法和设备 | |
CN102474612B (zh) | 用于对视频进行编码的方法和设备以及用于对视频进行解码的方法和设备 | |
CN102474614B (zh) | 基于分层编码块样式信息的视频编码方法和设备以及视频解码方法和设备 | |
CN102474609B (zh) | 对图像编码的方法和设备及对图像解码的方法和设备 | |
CN103765887A (zh) | 用于使用分层数据单元进行熵编码的方法和设备、以及用于解码的方法和设备 | |
CN103782597A (zh) | 伴随有算术编码的对视频编码的方法和设备以及对视频解码的方法和设备 | |
CN104094600A (zh) | 用于包括量化参数预测的基于分层数据单元的视频编码和解码的方法和设备 | |
CN104041052A (zh) | 确定用于变换系数级别熵编码和熵解码的上下文模型的方法和设备 | |
CN105049868A (zh) | 对视频进行解码的方法和设备 | |
CN104471934A (zh) | 对视频进行熵编码的方法和设备以及对视频进行熵解码的方法和设备 | |
CN103765893A (zh) | 使用用于定点变换的比特深度调整的视频编码方法及其设备,以及视频解码方法及其设备 | |
CN102939753A (zh) | 用于通过根据像素组补偿像素值来对视频进行编码的方法和设备以及用于通过根据像素组补偿像素值来对视频进行解码的方法和设备 | |
CN104811703A (zh) | 视频的编码方法和装置及视频的解码方法和装置 | |
CN104041053A (zh) | 用于视频的算术编码的方法和装置以及用于视频的算术解码的方法和装置 | |
CN103563382A (zh) | 用于对图像进行编码的方法和设备以及用于进行解码的方法和设备 | |
CN102948145A (zh) | 基于根据树结构确定的编码单元的视频编码方法和视频编码设备以及基于根据树结构确定的编码单元的视频解码方法和视频解码设备 | |
CN102804777A (zh) | 通过考虑跳过和划分顺序来对视频进行编码的方法和设备,对视频进行解码的方法和设备 | |
CN103782595A (zh) | 通过使用用于统一参考可能性的检查处理的帧内预测的视频编码方法、视频解码方法及其装置 | |
CN104205848A (zh) | 使用用于并行处理的统一语法的视频编码方法和设备以及视频解码方法和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140514 |
|
WD01 | Invention patent application deemed withdrawn after publication |