CN108965878A - 一种熵解码方法及装置 - Google Patents
一种熵解码方法及装置 Download PDFInfo
- Publication number
- CN108965878A CN108965878A CN201710390040.5A CN201710390040A CN108965878A CN 108965878 A CN108965878 A CN 108965878A CN 201710390040 A CN201710390040 A CN 201710390040A CN 108965878 A CN108965878 A CN 108965878A
- Authority
- CN
- China
- Prior art keywords
- binary
- syntactic element
- context model
- arithmetic decoding
- character
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 229910002056 binary alloy Inorganic materials 0.000 claims description 18
- 101000970561 Homo sapiens Myc box-dependent-interacting protein 1 Proteins 0.000 description 9
- 102100021970 Myc box-dependent-interacting protein 1 Human genes 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 101100381423 Arabidopsis thaliana BAD1 gene Proteins 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 101100003180 Colletotrichum lindemuthianum ATG1 gene Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
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/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/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/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/24—Systems for the transmission of television signals using pulse code modulation
Abstract
本申请提供一种熵解码方法及装置;其中,熵解码方法包括:对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。本申请可以提高解码吞吐率。
Description
技术领域
本发明涉及视频压缩与编解码领域,尤其涉及一种熵解码方法及装置。
背景技术
随着高清、超高清视频应用的发展,视频压缩技术面临了越来越大的挑战。HEVC(High efficiency video coding,高效视频编码)是JCT-VC在2013年发布的新一代视频编码标准。CABAC(Context-based Adaptive Binary Arithmetic Coding,基于上下文的自适应二进制算术编码)是H.265/HEVC标准的熵编码方法,包括3个基本步骤:二值化,上下文模型选择,二进制算术编码。
在HEVC解码器端,熵解码过程需要在二进制算术解码后,才能进行相关模型的更新操作,然后再进行下一次算术解码。上述两个步骤具有顺序性和数据依赖性,很难采用并行的方式提高吞吐率,成为解码器性能瓶颈。
目前,可以使用专用集成电路实现HEVC解码器,现有熵解码技术采用组合逻辑电路在一个时钟周期内可以完成一个二进制符号的算法解码,上下文模型的更新。当比特流码率较高时,如果要求在一个时钟周期内完成多个二进制符号的恢复,则需要在一个时钟周期内串行完成二进制符号BIN0的算术解码,上下文模型更新,二进制符号BIN1的算术解码,上下文模型更新,会造成严重的时序违例。
由此可见,现有技术由于数据的依赖性,串行实现二进制算术解码和上下文模型更新,两级组合电路的时序违例很大,无法在一个时钟周期内恢复两个二进制符号,无法实现高吞吐率的CABAC解码。
发明内容
本申请提供一种熵解码方法及装置,可以提高解码吞吐率。
本申请实施例提供如下技术方案。
一种熵解码方法,包括:
对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
其中,所述预定的语法元素可以包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
其中,所述对二进制符号进行二进制算术解码可以包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
其中,对一个时钟周期内解析的两个二进制符号,可以分别采用第一二进制算术解码单元和第二二进制算术解码单元进行二进制算术解码,可以分别采用第一上下文模型选择单元和第二上下文模型选择单元,预测二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。
其中,所述根据二进制算术解码得到的所述二进制符号的数值,从预测得到的结果中选择相应的上下文模型可以包括:
将预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型分别作为选择器的输入信号;将根据二进制算术解码得到的所述二进制符号的数值作为所述选择器的控制信号;所述选择器的输出信号为所选择的上下文模型。
一种熵解码装置,包括:
解析模块,用于对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
选择模块,用于根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
其中,所述预定的语法元素可以包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
其中,所述对二进制符号进行二进制算术解码可以包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
其中,所述解析模块可以包括:
第一二进制算术解码单元、第一上下文模型选择单元、第二二进制算术解码单元、第二上下文模型选择单元;
所述第一二进制算术解码单元和第二二进制算术解码单元,可以分别用于对一个时钟周期内解析的两个二进制符号进行二进制算术解码;
所述第一上下文模型选择单元和第二上下文模型选择单元,可以分别用于对一个时钟周期内解析的两个二进制符号,预测分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。
其中,所述选择模块可以包括:
第一选择器、第二选择器;
所述第一选择器的输入信号可以为所述第一上下文模型选择单元所预测的二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;控制信号可以为所述第一二进制算术解码单元得到的二进制符号的数值;输出信号可以为所选择的第一上下文模型,输入给所述第二二进制算术解码单元;
所述第二选择器的输入信号可以为所述第二上下文模型选择单元所预测的二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;控制信号可以为所述第二二进制算术解码单元得到的二进制符号的数值;输出信号可以为所选择的第二上下文模型。
一种熵解码装置,包括:处理器和存储器;
所述存储器用于保存进行熵解码的程序;
所述处理器用于执行所述进行熵解码的程序,实现以下操作:
对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
其中,所述预定的语法元素可以包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
其中,所述对二进制符号进行二进制算术解码可以包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
本申请实施例可以减小电路的时序路径,能够大幅提升HEVC标准熵解码电路的吞吐率。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1是实施例一的熵解码的方法的流程图;
图2是实施例一的例子中解码的流程图;
图3是二进制算术解码单元工作示意图;
图4是使用偏移值与最小概率符号比较计算二进制符号的示意图;
图5是实施例二的熵解码的装置的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例一、一种熵解码方法,如图1所示,包括S110~S120:
S110、对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
S120、根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
本实施例中,可以实现在一个时钟周期内解析两个二进制符号,缩短电路的时序路径,提高HEVC解码器CABAC吞吐率。
本实施例中,在解码的同时预测,是指预测和解码是同步进行的,是并行的过程;可以但不限于同一时刻启动对一个二进制符号的解码和预测过程。
本实施例中,所预测的结果包含二进制符号为0这个分支的预测结果,和二进制符号为1这个分支的预测结果;当解码得到二进制符号的数值后,就可以根据数值直接选择相应的预测结果。
可选地,所述预定的语法元素可以但不限于包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
可选地,所述对二进制符号进行二进制算术解码可以包括:
如果当前区间R与偏移值Offset的差小于或等于LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于MPS。
可选地,对一个时钟周期内解析的两个二进制符号,可以分别采用第一二进制算术解码单元和第二二进制算术解码单元进行二进制算术解码,可以分别采用第一上下文模型选择单元和第二上下文模型选择单元,预测二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。
可选地,所述根据二进制算术解码得到的所述二进制符号的数值,从预测得到的结果中选择相应的上下文模型可以包括:
将预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型分别作为选择器的输入信号;将根据二进制算术解码得到的所述二进制符号的数值作为所述选择器的控制信号;所述选择器的输出信号为所选择的上下文模型。
下面用一个CABAC解码的例子说明本实施例。
本例子对H.265/HEVC标准中两部分语法元素,即:残差编码语法元素和运动矢量差值语法元素,在常规解码流程中,采用预测的方式提前确定上下文模型;在二进制算术解码过程中,采用偏移值与最小概率符号(Least Probable Symbol,LPS)的区间大小比较的方式,实现在一个时钟周期内恢复两个二进制符号,缩短了电路的时序路径,从而提高HEVC解码器CABAC吞吐率。
本例子可以采用软件与硬件协同的方式完成HEVC标准中的熵解码功能。软件完成视频层参数集(VPS),序列参数集(SPS),图像参数集(PPS)参数集的解析。硬件电路完成条带头(slice header)及以下语法元素的解析。熵解码硬件可以包含状态机控制单元,两套二进制算术解码单元,两套上下文模型选择单元。
本例子按照如下步骤工作,如图2所示,包括如下步骤201~207:
201、读入比特流。软件完成VPS,SPS,PPS参数集的解析,通过高级外围总线(Advanced Peripheral Bus,APB)配置硬件,将解码参数写入硬件寄存器。
202、在解析一个新的条带(Slice),新的tile(格)或新的一行编码树单元(codingtree unit,CTU)时,按照HEVC标准所述,进行二进制算术解码器初始化,上下文概率模型初始化。
对于二进制算术解码器,按照如下初始化:
(1)当前区间(currange)设置为十进制510;
(2)读取码流起始9比特作为当前区间偏移值(Offset)。
对于概率模型,按照HEVC标准中描述,初始化各概率模型,包括:
pStateIdx和valMps。
203、状态机控制单元根据HEVC语法元素选择概率模型,转入对应语法元素的熵解码流程,选择概率模型。例如在解析编码树单元(coding tree unit,CTU)时,首先解码的语法元素为样本点自适应补偿(sample adaptive offset)。
在本例子中,选择对残差(residual)和运动矢量差值(motion vectordifference)两部分语法元素进行分支预测,提高吞吐率;即:对于残差系数语法元素和运动矢量差值语法元素,采用步骤204到207的操作。对于其他语法元素,则在一个时钟周期解析一个二进制符号。
204、启动二进制算术解码单元BAD1解析第一个二进制符号BIN0。在启动BAD1的同时,启动上下文模型选择单元CM1预测BIN0分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。在二进制算术解码过程中,采用了偏移值与最小概率符号(LPS)的区间大小比较的方式。经过区间划分后得到的新区间如果小于256,就需要进行重归一化过程。
本步骤中,当进入到残差语法元素时(进入到运动矢量语法元素时的情况可以类推,这里不再赘述),二进制算术解码单元如图3所示。在时钟周期clk0选择残差系数第一个需解码的二进制符号BIN0的上下文模型CM_0。如果BIN0的解码方式为常规解码,则在下一个时钟周期clk1,启动BAD1解析BIN0。在解析BIN0时,启动CM1预测BIN0分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型,分别记为CM_1_if=0和CM_1_if=1。
在BAD1解析过程中,如图4所示,采用了偏移值与LPS的区间大小比较的方式。首先计算区间(range)的索引值ρ:
ρ=(R>>6)&3;
其中,R为当前区间的大小。
通过查表得到LPS对应的子区间的大小(即LPS的区间大小)RLps:
RLps=rangeTablps[σ][ρ]
其中,σ为概率状态索引,不同的σ值对应不同的LPS的概率,以及不同的概率状态转化结果:当前待编解码的二进制符号为MPS,则概率状态将转化为transIdxMps[σ],如果当前待编解码的二进制符号为LPS,则概率状态将转化为transIdxLps[σ];比如σ=0时,LPS的概率为0.5,transIdxLps[σ]为0,transIdxMps[σ]为1。
获取当前最大概率符号(Most Probable Symbol,MPS)的子区间的大小RMps:
RMps=R-RLps
使用当前区间R与偏移值Offset的差进行判决。如果差值R-Offset小于或等于RLps,则当前二进制符号Bin等于LPS;如果差值R-Offset大于RLps,则当前二进制符号Bin等于MPS。
如果当前二进制符号Bin等于MPS,则MPS的编码区间RMps作为下一个二进制符号的编码区间R(即:R=RMps),区间下限L不变;σ=transIdxMps[σ]。
如果当前二进制符号Bin等于LPS,则LPS的区间RLps作为下一个二进制符号的编码区间R(即:R=RLps),区间下限要增加RMps的长度。Offset更新为:RLps-(R-Offset)。
判断σ是否等于0;如果σ=0即LPS的概率和MPS的概率相同,而由于目前再次出现LPS,因此MPS和LPS需要互换,即MPS=1-MPS;然后σ=transIdxLps[σ]。σ不等于0则直接σ=transIdxLps[σ]。
随后根据当前Bin值更新上下文模型。
经过区间划分后得到的新区间如果小于256,就需要进行重归一化过程。
205、根据二进制算术解码单元BAD1解析的BIN0的数值为0或1,从CM1的预测结果中选择相应的上下文模型CM_1。
如图3所示,可以将BIN0的数值作为第一选择器的控制信号,第一选择器的两路输入分别是CM_1_if=0和CM_1_if=1,输出连接BAD2的输入端;如果BIN0的数值为0,则选择CM_1_if=0作为CM_1输出;如果BIN0的数值为1,则选择CM_1_if=1作为CM_1输出。
206、启动二进制算术解码单元BAD2解析下一个二进制符号BIN1。在启动BAD2时,也启动上下文模型选择单元CM2预测BIN1分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型,分别记为CM_2_if=0和CM_2_if=1。经过区间划分后得到的新区间如果小于256,就需要进行重归一化过程。
对BIN0和BIN1进行反二值化,得到对应语法元素的数值。语法元素数量很大,需要较大的存储空间。在本例子中,将语法元素通过高级可扩展接口(Advanced eXtensibleInterface,AXI)总线存储到双倍速率同步动态随机存储器(Dual Data Rate,DDR)中。
根据BAD2解析的BIN1的数值为0或1,从CM2的结果中选择相应的上下文模型CM_2。如图3所示,可以将BIN1的数值作为第二选择器的控制信号,第二选择器的两路输入分别是CM_2_if=0和CM_2_if=1,输出的是所选择的上下文模型;如果BIN1的数值为0,则选择CM_2_if=0作为CM_2;如果BIN1的数值为1,则选择CM_2_if=1作为CM_2。
207、下一个时钟周期,重复步骤204到步骤206的操作,直到残差或运动矢量差值语法元素熵解码完成。
H.265/HEVC语法元素很多,如果对所有语法元素均做分支预测,熵解码部分的复杂度会大大增加。针对比特流中残差和运动矢量占比较大的情况,本例子中只对残差编码语法元素和运动矢量差值语法元素进行预测,既提高了CABAC的吞吐率,又减小了硬件设计的难度。这是本申请的改进点之一。对于其它语法元素,可以按传统方案恢复。
在一个时钟周期完成两个二进制符号BIN0和BIN1的解析。通常步骤是在BAD1和BAD2解码后更新上下文模型,使用组合逻辑电路实现时,会引起严重的时序违例。本申请采用分支预测方式,在启动BAD1解析BIN0的同时,启动第一上下文模型选择单元CM1预测BIN0分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。对于BAD2、CM2也进行同样的操作。如图3所示,本申请中在二进制算术解码单元解析二进制符号的同时,采用进行分支预测的上下文模型选择单元预先进行上下文模型的确定,这是本申请的改进点之一。
在进行二进制算术解码时,本申请没有采用HEVC标准中偏移值与最大概率符号(MPS)比较的方法,而是采用偏移值与最小概率符号(LPS)的区间大小比较的方法。减小了硬件电路的时序路径,使一个时钟周期内完成两个二进制符号的解析能够实现。这是本申请的改进点之一。具体如图4所示。
实施例二、一种熵解码装置,如图5所示,包括:
解析模块21,用于对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
选择模块22,用于根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
可选地,所述预定的语法元素可以包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
可选地,所述对二进制符号进行二进制算术解码可以包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
可选地,所述解析模块可以包括:
第一二进制算术解码单元、第一上下文模型选择单元、第二二进制算术解码单元、第二上下文模型选择单元;
所述第一二进制算术解码单元和第二二进制算术解码单元,分别用于对一个时钟周期内解析的两个二进制符号进行二进制算术解码;
所述第一上下文模型选择单元和第二上下文模型选择单元,分别用于对一个时钟周期内解析的两个二进制符号,预测分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。
可选地,所述选择模块可以包括:
第一选择器、第二选择器;
所述第一选择器的输入信号为所述第一上下文模型选择单元所预测的二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;控制信号为所述第一二进制算术解码单元得到的二进制符号的数值;输出信号为所选择的第一上下文模型,输入给所述第二二进制算术解码单元;
所述第二选择器的输入信号为所述第二上下文模型选择单元所预测的二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;控制信号为所述第二二进制算术解码单元得到的二进制符号的数值;输出信号为所选择的第二上下文模型。
其它实现细节可参见实施例一。
实施例三、一种熵解码装置,包括:处理器和存储器;
所述存储器用于保存进行熵解码的程序;
所述处理器用于执行所述进行熵解码的程序,实现以下操作:
对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
可选地,所述预定的语法元素可以包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
可选地,所述对二进制符号进行二进制算术解码可以包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
其它实现细节可参见实施例一。
虽然本申请所揭露的实施方式如上,但所述的内容仅为便于理解本申请而采用的实施方式,并非用以限定本申请。任何本申请所属领域内的技术人员,在不脱离本申请所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本申请的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (13)
1.一种熵解码方法,包括:
对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
2.如权利要求1所述的熵解码方法,其特征在于,所述预定的语法元素包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
3.如权利要求1所述的熵解码方法,其特征在于,所述对二进制符号进行二进制算术解码包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
4.如权利要求1所述的熵解码方法,其特征在于:
对一个时钟周期内解析的两个二进制符号,分别采用第一二进制算术解码单元和第二二进制算术解码单元进行二进制算术解码,分别采用第一上下文模型选择单元和第二上下文模型选择单元,预测二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。
5.如权利要求1所述的熵解码方法,其特征在于,所述根据二进制算术解码得到的所述二进制符号的数值,从预测得到的结果中选择相应的上下文模型包括:
将预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型分别作为选择器的输入信号;将根据二进制算术解码得到的所述二进制符号的数值作为所述选择器的控制信号;所述选择器的输出信号为所选择的上下文模型。
6.一种熵解码装置,其特征在于,包括:
解析模块,用于对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
选择模块,用于根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
7.如权利要求6所述的熵解码装置,其特征在于,所述预定的语法元素包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
8.如权利要求6所述的熵解码装置,其特征在于,所述对二进制符号进行二进制算术解码包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
9.如权利要求6所述的熵解码装置,其特征在于,所述解析模块包括:
第一二进制算术解码单元、第一上下文模型选择单元、第二二进制算术解码单元、第二上下文模型选择单元;
所述第一二进制算术解码单元和第二二进制算术解码单元,分别用于对一个时钟周期内解析的两个二进制符号进行二进制算术解码;
所述第一上下文模型选择单元和第二上下文模型选择单元,分别用于对一个时钟周期内解析的两个二进制符号,预测分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型。
10.如权利要求9所述的熵解码装置,其特征在于,所述选择模块包括:
第一选择器、第二选择器;
所述第一选择器的输入信号为所述第一上下文模型选择单元所预测的二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;控制信号为所述第一二进制算术解码单元得到的二进制符号的数值;输出信号为所选择的第一上下文模型,输入给所述第二二进制算术解码单元;
所述第二选择器的输入信号为所述第二上下文模型选择单元所预测的二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;控制信号为所述第二二进制算术解码单元得到的二进制符号的数值;输出信号为所选择的第二上下文模型。
11.一种熵解码装置,包括:处理器和存储器;
其特征在于:
所述存储器用于保存进行熵解码的程序;
所述处理器用于执行所述进行熵解码的程序,实现以下操作:
对二进制符号进行二进制算术解码;对于预定的语法元素,在进行二进制算术解码的同时,预测所述二进制符号分别为0和1时,下一个解码的语法元素及二进制符号对应的上下文模型;
根据二进制算术解码得到的所述二进制符号的数值,从所预测的结果中选择相应的上下文模型。
12.如权利要求11所述的熵解码装置,其特征在于,所述预定的语法元素包括以下一项或多项:
残差编码语法元素、运动矢量差值语法元素。
13.如权利要求11所述的熵解码装置,其特征在于,所述对二进制符号进行二进制算术解码包括:
如果当前区间与偏移值的差小于或等于最小概率符号LPS的区间大小,则当前二进制符号等于LPS;如果当前区间R与偏移值Offset的差大于LPS的区间大小,则当前二进制符号等于最大概率符号MPS。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710390040.5A CN108965878B (zh) | 2017-05-27 | 2017-05-27 | 一种熵解码方法及装置 |
PCT/CN2017/119256 WO2018218950A1 (zh) | 2017-05-27 | 2017-12-28 | 熵解码方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710390040.5A CN108965878B (zh) | 2017-05-27 | 2017-05-27 | 一种熵解码方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108965878A true CN108965878A (zh) | 2018-12-07 |
CN108965878B CN108965878B (zh) | 2019-11-15 |
Family
ID=64455171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710390040.5A Active CN108965878B (zh) | 2017-05-27 | 2017-05-27 | 一种熵解码方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108965878B (zh) |
WO (1) | WO2018218950A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111818335A (zh) * | 2020-07-03 | 2020-10-23 | Tcl华星光电技术有限公司 | 一种熵编码方法和装置、电子设备 |
CN112449189A (zh) * | 2019-08-27 | 2021-03-05 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法、装置及视频编码器、存储介质 |
CN113038140A (zh) * | 2019-12-24 | 2021-06-25 | 扬智电子科技(中国)有限公司 | 视频解码方法与视频解码装置 |
CN114531595A (zh) * | 2022-04-24 | 2022-05-24 | 浙江芯昇电子技术有限公司 | cabac二进制化和上下文模型产生的编码方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1610265A (zh) * | 2003-10-22 | 2005-04-27 | 松下电器产业株式会社 | 算术解码/编码装置、携带终端、活动图像摄影及记录/重放装置 |
CN1949873A (zh) * | 2005-10-12 | 2007-04-18 | 华为技术有限公司 | Cabac解码系统及方法 |
US20070103347A1 (en) * | 2005-11-08 | 2007-05-10 | Samsung Electronics Co., Ltd. | Method and device for decoding syntax element in CABAC decoder |
CN101001373A (zh) * | 2006-01-12 | 2007-07-18 | Lsi罗吉克公司 | 高清晰度视频的上下文自适应二进制算术解码 |
-
2017
- 2017-05-27 CN CN201710390040.5A patent/CN108965878B/zh active Active
- 2017-12-28 WO PCT/CN2017/119256 patent/WO2018218950A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1610265A (zh) * | 2003-10-22 | 2005-04-27 | 松下电器产业株式会社 | 算术解码/编码装置、携带终端、活动图像摄影及记录/重放装置 |
CN1949873A (zh) * | 2005-10-12 | 2007-04-18 | 华为技术有限公司 | Cabac解码系统及方法 |
US20070103347A1 (en) * | 2005-11-08 | 2007-05-10 | Samsung Electronics Co., Ltd. | Method and device for decoding syntax element in CABAC decoder |
CN101001373A (zh) * | 2006-01-12 | 2007-07-18 | Lsi罗吉克公司 | 高清晰度视频的上下文自适应二进制算术解码 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112449189A (zh) * | 2019-08-27 | 2021-03-05 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法、装置及视频编码器、存储介质 |
CN112449189B (zh) * | 2019-08-27 | 2022-02-11 | 腾讯科技(深圳)有限公司 | 一种视频数据处理方法、装置及视频编码器、存储介质 |
CN113038140A (zh) * | 2019-12-24 | 2021-06-25 | 扬智电子科技(中国)有限公司 | 视频解码方法与视频解码装置 |
CN111818335A (zh) * | 2020-07-03 | 2020-10-23 | Tcl华星光电技术有限公司 | 一种熵编码方法和装置、电子设备 |
CN114531595A (zh) * | 2022-04-24 | 2022-05-24 | 浙江芯昇电子技术有限公司 | cabac二进制化和上下文模型产生的编码方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2018218950A1 (zh) | 2018-12-06 |
CN108965878B (zh) | 2019-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108965878B (zh) | 一种熵解码方法及装置 | |
US7443318B2 (en) | High speed context memory implementation for H.264 | |
US8604951B2 (en) | System and method for optimizing context-adaptive binary arithmetic coding | |
KR101118089B1 (ko) | 가변장 복호화 장치 및 방법 | |
CN103227924A (zh) | 一种算术编码器及编码方法 | |
US11431978B2 (en) | Video decoding method and video decoding device for improving decoding efficiency | |
CN108235013B (zh) | 一种基于hevc的低周期cabac解码器及其解码方法 | |
CN111787325A (zh) | 一种熵编码器及其编码方法 | |
CN101267559A (zh) | 视频解码器的通用熵解码方法及装置 | |
Vizzotto et al. | Area efficient and high throughput CABAC encoder architecture for HEVC | |
US8970405B2 (en) | Method and apparatus for entropy decoding | |
Li et al. | A vlsi implement of cabac encoder for h. 265/hevc | |
CN103024380B (zh) | 一种数据的熵编码方法和装置 | |
Gomes et al. | Area and power efficient 8K real-time design for AV1 arithmetic decoding | |
JP2013009167A (ja) | エントロピー符号化装置、エントロピー復号装置、エントロピー符号化方法及びエントロピー復号方法 | |
Chen et al. | A low cost context adaptive arithmetic coder for H. 264/MPEG-4 AVC video coding | |
CN102751994B (zh) | 一种基于两个有限群符号的短码长分组码译码器装置 | |
US8421655B2 (en) | Apparatus for parallel entropy encoding and decoding | |
Bingbo et al. | A high-performance VLSI architecture for CABAC decoding in H. 264/AVC | |
Pastuszak | High-speed architecture of the CABAC probability modeling for H. 265/HEVC encoders | |
Liang et al. | A high throughput parallel AVC/H. 264 context-based adaptive binary arithmetic decoder | |
TWI323130B (en) | Device for video decoding | |
CN116582669A (zh) | 二进制算术编码结构、装置、方法及存储介质 | |
CN116016944A (zh) | 一种适用于hevc的熵解码解码器及其优化方法 | |
KR20220119643A (ko) | 데이터 스트림의 압축 |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221102 Address after: 610213 Industrial land in Southwest Airport Industrial Development Zone, Shuangliu District, Chengdu, Sichuan Patentee after: Chengdu Kress Semiconductor Technology Co.,Ltd. Address before: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province Patentee before: SANECHIPS TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |