CN1949873A - Cabac解码系统及方法 - Google Patents
Cabac解码系统及方法 Download PDFInfo
- Publication number
- CN1949873A CN1949873A CN200510112735.4A CN200510112735A CN1949873A CN 1949873 A CN1949873 A CN 1949873A CN 200510112735 A CN200510112735 A CN 200510112735A CN 1949873 A CN1949873 A CN 1949873A
- Authority
- CN
- China
- Prior art keywords
- decoding
- bin
- unit
- information
- cabac
- 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
Images
Classifications
-
- 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- 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
Abstract
本发明涉及一种CABAC解码系统及方法。本发明主要包括:在一个时钟周期内,由级联的至少两个解码bin的单元根据输入的区间值和偏移值对输入的待解码的比特流的若干bin进行解码处理,并输出所述若干个bin的解码结果及更新后的区间值和偏移值信息。本发明不仅实现了高速解码,而且,本发明还使得解码过程中的硬件资源的消耗保持在一个合理的范围内。因此,本发明提供了一种高效、合理的解码方案。
Description
技术领域
本发明涉及视频编码技术领域,尤其涉及一种CABAC解码系统及方法。
背景技术
CABAC(基于上下文的自适应算术编码)是最新国际视频编码标准H.264中所采用的两套熵编码方案之一,其与另外一套熵编码方案CAVLC(基于上下文的自适应变长编码器)相比,具有更好的压缩效率。
熵编码器其功能在于依照宏块扫描顺序将每个宏块中所有的语法元素的值按固定次序依次编码到码流中。所述的宏块是视频图像编码的基本单元块。待编码的每幅图像均需要被划分成为若干宏块后再进行编码处理。视频编码标准H.264中支持两种基本的宏块扫描顺序。
CABAC编码过程包括三个主要部分:二值化,context(上下文)概率模型的选择和更新以及二值算术编码。
其中,所述的二值化过程是对语法元素进行编码前的预处理过程。每个语法元素的值根据一定的规则映射成为一串0和1组成的二值字符串。所述映射规则因语法元素的不同而不同。
在二值算术编码器中还需要采用待编码bin(CABAC编解码基本的比特位)的概率估计值PLPS进行编码,其中,所述context概率模型即是为计算PLPS而设。具体为:在编码每一个bin之前,都要估计其为0和为1的概率,如果其为0的概率大一些,那么MPS(大概率符号标志)就是0,LPS(小概率符号标志)就是1;否则,MPS就是1,LPS就是0。PLPS就是bin的值为LPS的概率估计值,它的取值范围在[0,0.5]之间。CABAC编码过程中需要为每个bin都设置了相对应的context概率模型。每个context概率模型包括一个state(状态)值,一个MPS值,state指示的即PLPS。在编码过程中,会用到已编码完毕的相邻左宏块和上宏块的信息计算编码当前宏块的bin所需要的context概率模型,其计算规则在H.264标准文档[2]中有详细的规定。选择好context概率模型后,即可开始对bin进行二值算术编码。
所述的二值算术编码过程的基本思想是用[0,1]中的实数来编码信源。实数的长度和信源字符序列的概率有关。算术编码过程中要用到两个基本的参数,具体为:各符号的概率估计值和当前区间。编码的具体方法是:首先定义当前区间为[0,1],然后对每个bin做编码或解码,对每个bin的编解码不断重复如下过程:
a、将当前区间分割成若干子区间,各个子区间的长度正比于各个可能输入的符号的概率估计值;
b、将对应实际出现的符号的子区间定义为新的当前区间;
上述编码过程中,由于反复分割当前区间越来越小,为了保持计算精度,在步骤b所述过程结束后如果当前区间长度小于0.5时会进行重正化过程,以保证编码下一个符号时候当前区间长度总是不小于0.5。
下面将对重正化的处理过程进行说明:
1、计算小概率符号的概率值PLPS;
2、计算小概率符号LPS和大概率符号MPS对应的编码区间RLPS和RMPS具体如下:
RLPS=Rangei*PLPS;
RMPS=Rangei-RLPS;
其中,Rangei是指解码区间值;
3、计算新的区间:
如果当前输入bin对应的是LPS的值,则:
Rangei+1=RLPS;
Offseti+1=Offseti+RLPS;
其中,Offseti是指解码过程中的偏移值;
如果当前输入bin对应的是MPS的值,则:
Rangei+1=RLPS;
4、更新小概率符号的概率值RLPS;
5、输出解码结果,并重正化编码区间Rangei+1。
CABAC实现过程是全整数精度的运算。当前子区间下界为Offseti,子区间长度为Rangei都保留9比特整数精度。重正化过程保证Rangei的最高比特第8比特始终是1。
从上面的式子中可以看出,在二值算术编码器中需要用到的数值是Rangei*PLPS。在CABAC中为了降低实现复杂度,并不直接计算小概率符号的概率值PLPS和Rangei的乘积,而是直接把计算好的值存储在一张二维表中直接通过查表得到。表的索引包括6比特state值和2比特qCodIRangeIdx值,所述6比特值来源于context概率模型对应PLPS,所述2比特值来源于Rangei的第7比特和第6比特,即除最高第8比特外的最高两比特。6比特state值取值范围0~63,2比特qCodIRangeIdx值取值0~3。
编码完毕后,需要根据当前编码的bin的值对Context概率模型进行更新。而MPS的值仅在编码前state值为0且当前bin是LPS是才翻转,即原来是0则变成1,原来是1则变成0,否则保持不变。
CABAC算法是2003年JVT(ITU-T国际视频组织ISO的MPEG的联合小组)会议上正式成形推出的。迄今为止,相应的CABAC的解码器主要是纯软件解码和软件解码与硬件解码相结合的结构。
目前的一种是纯软件CABAC解码器,纯软件解码是按照算法流程在PC机上执行解码过程。因而,纯软件解码器实际就是CPU单独起全部的CABAC解码任务,解码速度极慢,无法满足实时应用场合的需要。
目前采用的另一种方案中含有软硬件结合的解码器结构,其中,硬件部分包括单bin的解码硬件结构,该结构中,对于每个bin的解码采用one cycleone bin(一个周期一个bin)硬件解码结构。
可以看出,在该方案中采用one cycle one bin硬件加速方法比之第一种实现方式中提供的纯软件的解码方案,解码效率大大提高,然而,相应的编码效率仍然有继续提高的空间。
发明内容
本发明的目的是提供一种CABAC解码系统及方法,从而可以大大提高CABAC解码效率,有效改善CABAC的编解码性能。
本发明的目的是通过以下技术方案实现的:
本发明提供了一种CABAC解码系统,其结构包括:
至少一组解码bin的单元;
所述的一组解码bin的单元包括至少两个依次串联连接的解码bin的单元,所述的解码bin的单元用于对待解码的比特流中的bin进行解码处理;
所述的各解码bin的单元其输入信息分别包括解码bin需要的参数信息以及待解码的比特流,输出信息分别包括更新后的所述参数信息及针对若干个bin的解码结果;
所述的各解码bin的单元输入的解码bin需要的输入信息包括与其连接的解码bin的单元的输出信息中的更新后的参数信息。
所述的解码bin的单元包括:
解码正常编码模式bin的单元和/或解码旁路编码模式的单元。
所述的系统中,当所述的解码bin的单元包括解码正常编码模式bin的单元时,上一级解码正常编码模式bin的单元输出更新后的区间值和偏移值,并作为下一级解码正常编码模式bin的单元的输入区间值和偏移值信息。
所述的系统还包括重正化处理模块,用于对解码正常编码模式的单元的输出的区间值和偏移值进行重正化处理,并将处理后的结果作为下一级解码正常编码模式的单元或解码旁路编码模式的单元的输入区间值和偏移值信息。
所述的系统还包括多路选择器,所述的多路选择器的输入为上一级解码正常编码模式bin的单元输出的更新后的概率模型和新的概率模型,输出为两输入的概率模型中选择的一种。
所述系统中,当所述的解码bin的单元包括解码旁路编码模式bin的单元时,上一级解码旁路编码模式bin的单元或解码正常编码模式bin的单元输出的更新后的区间值和偏移值作为下一级解码旁路编码模式bin的单元的输入区间值和偏移值。
所述的系统还包括:
输出模块,用于根据控制信号以及解码所得bin值在解码bin的各个单元的输出的重正化后得到的更新的区间值和偏移值信息之间进行选择,由组合逻辑决定最终输出一拍内整个解码过程的更新后的区间值和偏移值。
本发明还提供了一种CABAC解码方法,包括:
A、在一个时钟周期内,由一组控制信号综合控制至少两个解码bin的单元,控制信号和解码单个bin的单元根据输入的区间值和偏移值对输入的待解码的比特流进行解码处理,完成若干个bin的解码;
B、根据控制信号以及解码所得bin值在解码bin的各个单元的输出的重正化后得到的更新的区间值和偏移值信息之间进行选择,并由组合逻辑决定最终输出一拍内整个解码过程的更新后的区间值和偏移值,同时,还输出若干个bin的解码结果。
所述的步骤A包括:对正常编码模式bin解码处理和对旁路编码模式bin的解码处理。
所述的步骤A还包括:
所述的解码bin的单元根据输入的第一控制信号确定当前的解码处理为对正常编码模式bin解码处理还是对旁路编码模式bin的解码处理。
本发明中,当确定所述解码bin的单元解码正常编码模式bin时,所述的步骤A还包括:
根据引入的第二控制信号确定当前进行解码处理的解码bin的单元。
本发明中,当确定所述解码bin的单元解码正常编码模式bin时,所述的步骤A还包括:
所述单元根据引入的第三控制信号确定选择上一级单元更新后的概率模型或者新的概率模型进行解码处理。
所述的步骤A包括:
在上一级解码单元解码的同时并行计算出上一级单元更新后的概率模型的全部可能情况,并根据所述的更新后的概率模型导出概率模型索引得信息,在上一级解码单元解码完毕后在准备好的所有概率模型索引得信息中选择其中之一作为下一级解码单元所需要的更新后的概率模型索引得信息。
本发明中,当确定所述解码bin的单元解码正常编码模式bin时,所述的步骤A还包括:
所述单元根据引入的第四控制信号确定在当前解码周期内是否需要解码正负号信息。
本发明中,当确定所述解码bin的单元解码旁路编码模式bin时,所述的步骤A还包括:
根据所述第一控制信号的取值确定对指数哥伦布码的前缀或后缀进行解码处理,且当解码前缀时,解码到旁路编码模式bin值为0时解码结束,当解码后缀时,根据引入的用于确定当前解码拍内需要解码的旁路编码模式bin的数量第五控制信号确定需要解码的旁路编码模式bin的数量。
所述的步骤B还包括:
在对正常编码模式bin解码处理过程中,如果解码符号位,解码结果还包括符号位信息。
所述的步骤B还包括:
通过重正化处理模块对更新后的区间值和偏移值信息进行重正化处理,并获得重正化处理后的区间值和偏移值,作为该解码单元的最后更新值,用于同一拍内其它解码bin单元输入或者该拍内最终输出的区间值和偏移值。
由上述本发明提供的技术方案可以看出,本发明与现有技术的一个周期一个bin的解码结构相比具有更高的解码效率。同时,本发明不仅实现了高速解码,而且,本发明还使得解码过程中的硬件资源的消耗保持在一个合理的范围内。因此,本发明提供了一种高效、合理的解码系统。
附图说明
图1为解码正常编码模式bin的二级树解码结构示意简图;
图2为解码旁路模式bin的多级树电路解码结构示意简图;
图3为级联两个解码单个正常编码模式bin的二级树结构示意图;
图4为级联两个解码单个旁路编码模式bin的二级树结构示意图;
图5为控制信号控制两个解码正常编码模式bin的单元以及两个解码旁路编码模式bin的单元的结构示意图;
图6为解码过程树状示意图。
具体实施方式
本发明的核心是利用CABAC解码的特点,提供一种多级bin的CABAC解码硬件结构,使得硬件在一个cycle(周期)中可以完成2个甚至更多的bin的解码,实现算术解码bin单元的并行性。进而使得本发明可以充分发挥硬件解码效率高的优势。
本发明中,为了加快解码速度,设计了一拍内解码多个bin的多级树解码结构。也就是采用多个(至少两个)解码一个bin需要的单元,并在多级解码树结构中将原来解码一个bin的单元级联起来,从而实现一拍内可以解码多个bin,而在现有技术中一拍内解码一个bin的解码结构中仅有一个所述单元。
本发明在实现过程中,至少包括一组解码bin的单元,而且,所述的一组解码bin的单元包括至少两个依次串联连接的解码bin的单元(具体为解码正常编码模式bin的单元和解码旁路编码模式bin的单元中的至少一项),例如,图5中的两个解码正常编码模式bin的单元构成一组解码bin的单元,两个解码旁路编码模式bin的单元构成另一组解码bin的单元,所述的解码bin的单元用于对待解码的比特流中的bin进行解码处理。
所述的各解码bin的单元其输入信息分别包括解码bin需要的参数信息以及待解码的比特流,输出信息分别包括更新后的所述参数信息及针对若干个bin的解码结果;
而且,所述的各解码bin的单元输入的解码bin需要的输入信息包括与其连接的解码bin的单元的输出信息中的更新后的参数信息。
在CABAC解码中,需要频繁解码的两种语法元素是mvd(运动矢量)和level(残差系数)以及map_last(位置信息),所以针对这些语法元素的解码是要用硬件加速的重点。
mvd,level的绝对值二值化bin串包括前缀和后缀哥伦布码。前缀是一元码,映射规则是0映射到0,1映射到10,2映射到110,3映射到1110...。后缀哥伦布码包括自己的前缀和后缀部分。哥伦布码的前缀是一元码;其后缀是一个二值化bin串,其长度由哥伦布码的前缀决定,例如mvd的后缀是三阶指数哥伦布码,哥伦布码的后缀长度是前缀长度加2;level的后缀是一阶指数哥伦布码,哥伦布码的后缀长度是前缀长度减1。对非零mvd,其绝对值之后都带有1个bin指示其符号信息;对于所有level(实际上是非零残差系数绝对值减1),其绝对值二值化bin串后都带有1个bin指示其符号信息。
map_last的二值化如下:map,last成对出现。它们都是1个bin。map如果是0,则没有last信息;否则,map后带有1个bin的last信息。
为了实现对mvd,level还有map_last的快速解码,本发明提供了两种基本的多级bin解码结构,下面将分别进行说明。
其中,第一种结构如图1所示,该结构仅以一拍内解码两个bin为例,结构中设置有解码两个正常编码模式bin的单元,且每个单元后面都带有解码旁路编码模式bin的单元。更简单的示意图见图6树a。该结构可以用于加速解码mvd,level的前缀和map_last对部分:
该结构的入口信息包括用于算术编解码的解码区间Rang、偏移值Offset以及待解码的码流信息bits,还有用来表示context信息的state0和state1,分别用来标志两个bin解码过程中可能会用到的上下文信息。
该结构的输出信号有更新的Rang和Offset,即Rang_up和Offset_up,以及更新的context信息,即state_up0和state_up1信息,还有解码所述码流信息得到的两个bin的值bin0、bin1,如果解码符号位,那么输出的还有符号位的信息标志flag。
第二种结构中设置有解码两个旁路编码模式bin的单元,可对mvd,level的后缀部分快速解码。其结构如图2所示,更简单的示意图见图6树b。该结构可以完成功能是采用Golomb(哥伦布码)的方法解码系数,这种解码电路的特点是不需要上下文的维护信息,这是Golomb解码的前缀或后缀的实现电路。电路中包含n个bypass(旁路编码模式)解码电路,所述的n大于等于2,即n的值可以根据需要自由设定,例如可以设定为2、3、4或5等等。
mvd和level二值化后得到的字符串包括前缀和后缀。通常语法元素level和mvd的取值较小,只有前缀,前缀是若干个正常编码模式bin,最后带一个旁路模式编码的bin(正负号)形式编码的,如图1所示的电路结构就能够实现解码功能。
有些情况语法元素level和mvd会有较大的取值,这样解码过程便会带有后缀,所述后缀是若干个旁路编码模式bin,最后也带一个旁路模式的bin(正负号)的形式来编码的,此时,如果解码后缀,则可以采用图2所示的电路结构。
Map_last对可直接用不带解码旁路模式编码bin单元的实现,如采用图1所示的结构实现,这只需要输出时选择解码正常编码模式编码bin单元的输出作为这一拍最终的输出即可。
对于除了mvd,level和map_last之外的其他语法元素二值化后都是一串正常编码模式bin,其在一个宏块内所占的分量很少,因此,其可以无需特别加速,相应的解码过程采用一拍解码一个bin即可。这种情况直接用图1中一个解码正常编码模式bin单元即可。
其中,对于图1所示的结构,如果是同时解码2个bin,而且其中涉及到概率模型的更新,下面详细的说明这部分电路的具体实现及工作原理。
本发明中,小概率符号LPS对应的编码区间rLPS不是直接查二维表2得到的,而是先由6比特的state的值索引得到二维表中一组4个rLPS的值(其中,state取值64种情况,range的2个比特取值4种情况,这样用state和range的2个比特作联合索引一共有256个rLPS值,这里仅用state作第一次索引,得到一组4个rLPS,对应再用range的2个比特作第二次索引时的4个rLPS),这4个值需要在前一拍内需要准备好,记作rlpsg,称为概率模型索引得信息。在当前解码拍直接用range的2个比特在rlpsg中通过多路选择器MUX选出rLPS的值。
相应的级联两个解码单个正常编码模式bin的二级树结构如图3所示。其中,所述的解码bin的单元包括解码正常编码模式bin的单元,即解码第一个正常编码模式bin的单元和解码第二个正常编码模式bin的单元,以及重正化处理模块和多路选择器MUX。
所述的解码正常编码模式bin的单元的输入信息flpsg包含了解码对应bin的context的信息,具体为由6比特的state的值索引通过查表得到的,这个值在前一拍内就可以准备好。可以看到,第一个bin解码完成后,需要对更新的range_new、offset_new进行重正化处理,range、offset更新重正化后获得的值将作为解码第二个bin的输入。
由于解码第二个bin可能用和第一个bin相同的概率模型,也可能用另外的概率模型,因此,在图3中,用一个多路选择器MUX在第一个bin所用概率模型更新并且为第二个bin解码准备的rlpsg和另外的概率模型对应的state_2_rlpsg中选择解码第二个bin解码真正需要的rlpsg。具体选择哪一个rlpsg由控制信号rb2_state_1_ns决定,后面将对该控制信号进行说明。
为了减小延迟,第一个bin所用概率模型更新并且为第二个bin解码准备rlpsg的过程和解码第一个bin同步完成。并不需要第一个bin完全解码完成再对其上下文概率模型更新。预先计算好两组可能的结果:一个是第一个bin出现MPS时,state1的更新值state1_ns_ifMPS,以及由此更新值索引得到的4个rLPS值state1_ns_ifMPS_rlpsg,作为一组概率模型索引得信息;另一个是第一个bin出现LPS时,state1的更新值state1_ns_ifLPS,以及由此更新值索引得到的4个rLPS值state1_ns_ifLPS_rlpsg,作为另一组概率模型索引得信息。这个计算过程和解码第一个bin的过程是同时的,所以可以节省关键路径延迟。根据解码出的第一个bin的值直接在state1_ns_ifMPS_rlpsg和state1_ns_ifLPS_rlpsg这两组中选择更新后的rlpsg作为下一级解码单元的入口信息(即第一个bin解码单元的更新后的概率模型索引得信息)即可。如果解码第二个bin和解码第一个bin所用概率模型相同,多路选择器则选择第一个bin解码更新得到的rlpsg作为第二个bin解码所需的rlpsg_2,否则,多路选择器则选择另外一个概率模型准备的state_2_rlpsg作为第二个bin解码所需的rlpsg_2。
下面再以针对两个旁路编码模式bin的解码为例对图2中的旁路编码模式bin的解码处理过程进行说明。相应的级联的两个解码单个旁路编码模式bypass bin的二级树结构如图4所示,该结构中包括两个解码bin的单元,即解码第一个bypass bin的单元和解码第二个bypass bin的单元。旁路模式的解码相对正常编码模式非常简单,其不涉及到概率模型信息,解码时直接比较range和2*offset,如果2*offset>=range,解码得1,否则解码得0。而且,在解码完成后,offset左移一位即完成重正化步骤,range保持原值不变。
本发明中,为了使得所有语法元素的解码可以复用尽可能少的硬件资源,例化了4个解码bin单元(图1所示的两个解码正常编码模式bin的单元,和图2所示的两个解码旁路模式bin的单元,当然,也可能为更多个单元),并且设计了一组控制信号协调这些解码单元之间的工作,并结合解码单元所得解码bin决定最后的输出结果,包括一拍最终输出的区间值和偏移值信息。这样所有语法元素的解码都可以复用这4个单元而完成。
控制信号控制4个解码单元解码的示意图参见图5所示,在所述图5中,包括四个所述的解码bin的单元,具体包括:解码第一个正常编码模式bin的单元,解码第二个正常编码模式bin的单元。解码第一个旁路编码模式bin的单元和解码第二个旁路编码模式bin的单元。在图5中:
信号range,offset是解码拍入口的range,offset值,range_up,offset_up是解码拍出口的range,offset值。Ctx1,Ctx2分别对应两个正常编码模式的bin可能用到的两个概率模型;其中,在两个bin共用一个概率模型的情况Ctx2是闲置不用的;
信号Range_new和offset_new分别是解码某个bin之后range和offset的更新值。
信号Regular_bin1,Regular_bin2,Bypass_bin1,Bypass_bin2分别是各个解码单bin模块的解码输出。
所有控制信号包括dec_mode,regbinnum,rb2_state_1_ns,sign1_exist,sign2_exist,dec_bp_num。
下面将分别对所述控制信号的功能和工作方式进行说明:
(1)dec_mode(解码模式)控制信号,称为第一控制信号:这个控制信号2比特,取值00或01或10:
取值00时,对应当前解码拍需要解码正常编码模式bin;
取值01或者10时,对应当前解码拍需要解码mvd和level二值化后得到的后缀EG(指数哥伦布码),即进行旁路编码模式bin的解码,所述的EG还包括自己的前缀和后缀,dec_mode取值01和10分别对应这两种情况的解码。EG的前缀是一元码,也就是若干个1加一个0的码字,解码碰到解出bin为0时结束;EG的后缀中bin的总数目是由EG的前缀中1的个数确定的。
所以在dec_mode取值10时还需要一个信号(即后面的dec_bp_num)来决定当前解码拍内需要解码几个旁路编码模式的bin,而在dec_mode取值01时当前解码拍内解出旁路编码模式的bin的值为0时结束。
(2)regbinnum(解码正常编码模式bin数目)控制信号,称为第二控制信号:该控制信号1比特,在dec_mode取值00时有效,regbinnum取1指示当前解码是固定解码一个正常编码模式的bin,调用一拍内解码两个正常编码模式bin的二级树结构的第一分支,regbinnum取0调用整个一拍内解码两个正常编码模式bin的二级树结构的第二个分支,即根据该控制信号确定当前解码的单元;
对除了mvd和level以及map_last之外的语法元素,由于解码是一拍一个bin,所以regbinnum取1。对于mvd和level以及map_last,都是解到0自动结束,它们都调用整个一拍内解码两个正常编码模式bin的二级树结构,regbinnum取0。
(3)rb2_state_1_ns(解码第二个正常bin的概率模型选择控制)控制信号,称为第三控制信号:这个控制信号1比特,在调用整个一拍内解码两个正常编码模式bin的二级树结构(即dec_mode取值00,regbinnum取值0)时有效,指示解码第二个正常编码模式bin所用的上下文概率模型和解码第一个正常编码模式bin所用的上下文概率模型是否是同一个,取值为1则表示是同一个上下文概率模型。
(4)sign1_exist,sign2_exist(第一个解码正常bin的单元是否级联正负号,第二个解码正常bin的单元是否级联正负号)控制信号,称为第四控制信号:这两个控制信号都是1比特,在调用一拍内解码两个正常编码模式bin的二级树结构时指示是否这一拍内还需要解码一个正负号信息:在解码mvd和leVel的前缀时是需要解码正负号的,sign1_exist,sign2_exist都置1,解码map_last时无需解码正负号的,sign1_exist,sign2_exist都置0。
(5)dec_bp_num(解码旁路模式bin数目)控制信号,称为第五控制信号:该控制信号共1比特,在dec_mode取值10时,即解码EG的后缀时有效,决定当前解码拍内需要解码几个旁路编码模式的bin。
有了以上的一组控制信号,用两个解码正常编码模式bin的单元和两个解码旁路编码模式bin的单元就可以完成所有语法元素的解码。每拍内的解码情况都可以被确定,可以实现在一拍内同时多个bin。
为对本发明有进一步理解,下面对图5中各控制信号和解码bin的单元电路结合可能出现的所有情况作详细说明。
第一种情况为解码level或者mvd的前缀部分:
这时dec_mode为00,指示当前拍内解码正常编码模式bin。regbinnum为0,指示当前拍调用图6中树a的两个分支。如果第一个分支解码结果出来是0,则不用第二个分支;否则第一个分支的输出range_new,offset_new送入第二个分支的输入口。
如果不是解码mvd的第一拍或者是解码level,那么mvd和level解码完成后都需要带符号信息。这时sign1_exist和sign2_exist都是1,指示解码绝对值结束后需要再附带解码一个bypass bin,即符号信息。
如果是解码mvd的第一拍,那么树a的第一个分支表明mvd解码值为0,不带符号信息,进入第二个分支表明解码值大于0,所以这一拍的控制信号sign1_exist为0,sign2_exist为1。rb2_state_1_ns由当前解码是第几拍(也就是在解码mvd或者level的第几个bin)决定。dec_bp_num这时没有作用。并且这种情况下图6树a的第一个分支的输出作为树b的第一个分支的输入;树a的第二个分支的输出作为树b的第二个分支的输入。
如果是解码mvd的第一拍,输出模块的处理为:如果树a第一个分支解码出bin为0,则最终输出的range_new,offset_new是树a第一分支的输出,否则如果树a第二个分支解码出bin为0,则需附带解码一个符号,最终输出的range_new,offset_new是树b第二分支的输出,否则如果如果树a第二个分支解码出bin为1,则下一拍继续解码其绝对值,最终输出的range_new,offset_new是树a第二分支的输出。
如果是解码mvd的其它拍或者解码level,输出模块的处理为:如果树a第一个分支解码出bin为0,则需附带解码一个符号,最终输出的range_new,offset_new是树b第一分支的输出,否则如果树a第二个分支解码出bin为0,则需附带解码一个符号,最终输出的range_new,offset_new是树b第二分支的输出,否则,如果如果树a第二个分支解码出bin为1,则下一拍继续解码其绝对值,最终输出的range_new,offset_new是树a第二分支的输出。
第二种情况为解码level或者mvd的后缀哥伦布码的前缀部分:
这时dec_mode为01,指示当前拍内解码旁路编码模式bin。这时regbinnum,sign1_exist,sign2_exist,rb2_state_1_ns,dec_bp_num都没有作用。并且这种情况下图6树b的第一个分支的输出作为树b的第二个分支的输入。输出模块的处理为:如果树b第一个分支解码出bin为0,则最终输出的range_new,offset_new是树b第一分支的输出,否则最终输出的range_new,offset_new是树b第二分支的输出。
第三种情况为解码level或者mvd的后缀哥伦布码的后缀部分:
这时dec_mode为10,指示当前拍内解码旁路编码模式bin。这时regbinnum,sign1_exist,sign2_exist,rb2_state_1_ns都没有作用。dec_bp_num由当前解码是第几拍(也就是在解码哥伦布码的后缀的第几个bin)决定。输出模块的处理为:如果dec_bp_num是0,指示当前拍解码1个旁路bin,则最终输出的range_new,offset_new是树b第一分支的输出,否则最终输出的range_new,offset_new是树b第二分支的输出。
第四种情况为解码map_last对:
这时dec_mode为00,指示当前拍内解码正常编码模式bin。regbinnum为0,指示当前拍调用图6树a的两个分支。如果第一个分支解码结果出来是0,则不用第二个分支;否则第一个分支的输出range_new,offset_new送入第二个分支的输入口。这种情况和情况1很类似,只是不带符号信息。所以sign1_exist,sign2_exist都是0。这种情况rb2_state_1_ns始终是0,因为last和map所用的概率模型总是不一样的。dec_bp_num没有作用。输出模块的处理为:如果树a第一个分支解码出bin为0,则最终输出的range_new,offset_new是树a第一分支的输出,否则最终输出的range_new,offset_new是树a第二分支的输出。
第五种情况为解码其它语法元素的各个bin;
所述的其它语法元素的bin都是正常编码模式bin,采用一拍解码一个bin。这时dec_mode为00,指示当前拍内解码正常编码模式bin。regbinnum为1,指示当前拍仅调用图6树a的第一个分支。输出模块的处理为:最终输出的range_new,offset_new是树a第一分支的输出。
上述本发明中主要以采用二级树的结构为例进行说明,同样,本发明还可以采用三级树或更高级别的电路设计结构,当然,电路设计结构的级别越高,组合电路的深度也越高,关键路径也就越长。
综上所述,本发明与已有CABAC核心解码实现方案相比可以大大加快CABAC的解码速度。同时,硬件资源消耗也较为合理。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (17)
1、一种CABAC解码系统,其特征在于,包括:
至少一组解码bin的单元;
所述的一组解码bin的单元包括至少两个依次串联连接的解码bin的单元,所述的解码bin的单元用于对待解码的比特流中的bin进行解码处理;
所述的各解码bin的单元其输入信息分别包括解码bin需要的参数信息以及待解码的比特流,输出信息分别包括更新后的所述参数信息及针对若干个bin的解码结果;
所述的各解码bin的单元输入的解码bin需要的输入信息包括与其连接的解码bin的单元的输出信息中的更新后的参数信息。
2、根据权利要求1所述的CABAC解码系统,其特征在于,所述的解码bin的单元包括:
解码正常编码模式bin的单元和/或解码旁路编码模式bin的单元。
3、根据权利要求2所述的CABAC解码系统,其特征在于,当所述的解码bin的单元包括解码正常编码模式bin的单元时,上一级解码正常编码模式bin的单元输出更新后的区间值和偏移值,并作为下一级解码正常编码模式bin的单元的输入区间值和偏移值信息。
4、根据权利要求3所述的CABAC解码系统,其特征在于,所述的系统还包括重正化处理模块,用于对解码正常编码模式bin的单元的输出的区间值和偏移值进行重正化处理,并将处理后的结果作为下一级解码正常编码模式bin的单元或解码旁路编码模式bin的单元的输入区间值和偏移值信息。
5、根据权利要求3所述的CABAC解码系统,其特征在于,所述的系统还包括多路选择器,所述的多路选择器的输入为上一级解码正常编码模式bin的单元输出的更新后的概率模型和新的概率模型,输出为两输入的概率模型中选择的一种。
6、根据权利要求2所述的CABAC解码系统,其特征在于,当所述的解码bin的单元包括解码旁路编码模式bin的单元时,上一级解码旁路编码模式bin的单元或解码正常编码模式bin的单元输出的更新后的区间值和偏移值作为下一级解码旁路编码模式bin的单元的输入区间值和偏移值。
7、根据权利要求1至6任一项所述的CABAC解码系统,其特征在于,所述的系统还包括:
输出模块,用于根据控制信号以及解码所得bin值在解码bin的各个单元的输出的重正化后得到的更新的区间值和偏移值信息之间进行选择,由组合逻辑决定最终输出一拍内整个解码过程的更新后的区间值和偏移值。
8、一种CABAC解码方法,其特征在于,包括:
A、在一个时钟周期内,由一组控制信号综合控制多至少两个解码bin的单元,控制信号和解码bin的单元根据输入的区间值和偏移值对输入的待解码的比特流进行解码处理,完成若干个bin的解码;
B、根据控制信号以及解码所得bin值在解码bin的各个单元的输出的重正化后得到的更新的区间值和偏移值信息之间进行选择,并由组合逻辑决定最终输出一拍内整个解码过程的更新后的区间值和偏移值,同时,还输出若干个bin的解码结果。
9、根据权利要求8所述的CABAC解码方法,其特征在于,所述的步骤A包括:对正常编码模式bin解码处理和/或对旁路编码模式bin的解码处理。
10、根据权利要求9所述的CABAC解码方法,其特征在于,所述的步骤A还包括:
所述的解码bin的单元根据输入的第一控制信号确定当前的解码处理为对正常编码模式bin解码处理还是对旁路编码模式bin的解码处理。
11、根据权利要求10所述的CABAC解码方法,其特征在于,当确定所述解码bin的单元解码正常编码模式bin时,所述的步骤A还包括:
根据引入的第二控制信号确定当前进行解码处理的解码bin的单元。
12、根据权利要求10所述的CABAC解码方法,其特征在于,当确定所述解码bin的单元解码正常编码模式bin时,所述的步骤A还包括:
所述单元根据引入的第三控制信号确定选择上一级单元更新后的概率模型或者新的概率模型进行解码处理。
13、根据权利要求12所述的CABAC解码方法,其特征在于,所述的步骤A包括:
在上一级解码单元解码的同时并行计算出上一级单元更新后的概率模型的全部可能情况,并根据所述的更新后的概率模型导出概率模型索引得信息,在上一级解码单元解码完毕后在准备好的所有概率模型索引得信息中选择其中之一作为下一级解码单元所需要的更新后的概率模型索引得信息。
14、根据权利要求10所述的CABAC解码方法,其特征在于,当确定所述解码bin的单元解码正常编码模式bin时,所述的步骤A还包括:
所述单元根据引入的第四控制信号确定在当前解码周期内是否需要解码正负号信息。
15、根据权利要求10所述的CABAC解码方法,其特征在于,当确定所述解码bin的单元解码旁路编码模式bin时,所述的步骤A还包括:
根据所述第一控制信号的取值确定对指数哥伦布码的前缀或后缀进行解码处理,且当解码前缀时,解码到旁路编码模式bin值为0时解码结束,当解码后缀时,根据引入的用于确定当前解码拍内需要解码的旁路编码模式bin的数量第五控制信号确定需要解码的旁路编码模式bin的数量。
16、根据权利要求8至15任一项所述的CABAC解码方法,其特征在于,所述的步骤B还包括:
在对正常编码模式bin解码处理过程中,如果解码符号位,解码结果还包括符号位信息。
17、根据权利要求8至15任一项所述的CABAC解码方法,其特征在于,所述的步骤B还包括:
通过重正化处理模块对更新后的区间值和偏移值信息进行重正化处理,并获得重正化处理后的区间值和偏移值,作为该解码单元的最后更新值,用于同一拍内其它解码bin单元输入或者该拍内最终输出的区间值和偏移值。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005101127354A CN100466739C (zh) | 2005-10-12 | 2005-10-12 | Cabac解码系统及方法 |
CN200680013155.2A CN101164340B (zh) | 2005-10-12 | 2006-06-16 | Cabac解码系统及方法 |
PCT/CN2006/001358 WO2007041911A1 (en) | 2005-10-12 | 2006-06-16 | Cabac decoding system and method thereof |
US11/580,734 US7385535B2 (en) | 2005-10-12 | 2006-10-12 | Decoding system and method based on context-based adaptive binary arithmetic coding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005101127354A CN100466739C (zh) | 2005-10-12 | 2005-10-12 | Cabac解码系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1949873A true CN1949873A (zh) | 2007-04-18 |
CN100466739C CN100466739C (zh) | 2009-03-04 |
Family
ID=37910627
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101127354A Active CN100466739C (zh) | 2005-10-12 | 2005-10-12 | Cabac解码系统及方法 |
CN200680013155.2A Active CN101164340B (zh) | 2005-10-12 | 2006-06-16 | Cabac解码系统及方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200680013155.2A Active CN101164340B (zh) | 2005-10-12 | 2006-06-16 | Cabac解码系统及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7385535B2 (zh) |
CN (2) | CN100466739C (zh) |
WO (1) | WO2007041911A1 (zh) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101809871A (zh) * | 2007-09-27 | 2010-08-18 | 高通股份有限公司 | 经优化的cabac解码器 |
CN102201816A (zh) * | 2010-03-25 | 2011-09-28 | 承景科技股份有限公司 | 并联的五旁路位全文自适应二进制算术编码解码器 |
CN102868882A (zh) * | 2011-06-15 | 2013-01-09 | 索尼公司 | 在cabac中使用分离的绝对值和符号(savs)对dpq进行二元化 |
WO2013017092A1 (en) * | 2011-08-04 | 2013-02-07 | Mediatek Inc. | Method and apparatus for reordered binarization of syntax elements in cabac |
CN103222269A (zh) * | 2011-11-08 | 2013-07-24 | 索尼公司 | 用于较高吞吐量的最后位置的二值化 |
CN103621088A (zh) * | 2012-06-27 | 2014-03-05 | 松下电器产业株式会社 | 图像编码方法、图像解码方法、图像编码装置、图像解码装置和图像编码解码装置 |
CN103650500A (zh) * | 2012-05-25 | 2014-03-19 | 松下电器产业株式会社 | 图像编码方法、图像编码装置、图像解码方法、图像解码装置及图像编码解码装置 |
CN103959782A (zh) * | 2011-11-07 | 2014-07-30 | 夏普株式会社 | 具有增强cabac解码的视频解码器 |
CN104104949A (zh) * | 2013-04-12 | 2014-10-15 | 浙江大学 | 一种方向信息语法元素的熵编解码方法和装置 |
CN104918049A (zh) * | 2015-06-03 | 2015-09-16 | 复旦大学 | 适用于hevc标准的二进制算术编码模块 |
CN105120275A (zh) * | 2015-07-23 | 2015-12-02 | 北京大学 | 帧内模式决策中并行cabac-r算法的实现方法 |
CN105338353A (zh) * | 2014-08-05 | 2016-02-17 | 美国博通公司 | 上下文自适应二进制算法编码的简化的范围和上下文更新 |
CN106415484A (zh) * | 2014-05-27 | 2017-02-15 | 高通股份有限公司 | 专用算术编码指令 |
US9749623B2 (en) | 2012-05-25 | 2017-08-29 | Sun Patent Trust | Moving picture coding method, moving picture decoding method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
CN107277553A (zh) * | 2017-07-10 | 2017-10-20 | 中国科学技术大学 | 一种二元算术编码器 |
CN107277518A (zh) * | 2017-07-07 | 2017-10-20 | 珠海市杰理科技股份有限公司 | Cabac解码方法 |
CN107454407A (zh) * | 2011-04-01 | 2017-12-08 | Lg 电子株式会社 | 熵解码方法和使用其的解码装置 |
US9860541B2 (en) | 2012-06-04 | 2018-01-02 | Sun Patent Trust | Moving picture coding method, moving picture coding apparatus, moving picture decoding method, and moving picture decoding apparatus |
US9894352B2 (en) | 2012-05-25 | 2018-02-13 | Sun Patent Trust | Moving picture coding method, moving picture coding apparatus, moving picture decoding method, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
CN108235015A (zh) * | 2011-11-08 | 2018-06-29 | 三星电子株式会社 | 用于对视频进行解码的设备 |
CN108965878A (zh) * | 2017-05-27 | 2018-12-07 | 深圳市中兴微电子技术有限公司 | 一种熵解码方法及装置 |
US10212425B2 (en) | 2012-06-08 | 2019-02-19 | Sun Patent Trust | Arithmetic coding for information related to sample adaptive offset processing |
CN112422987A (zh) * | 2020-10-26 | 2021-02-26 | 眸芯科技(上海)有限公司 | 适用于avc的熵解码硬件并行计算方法及应用 |
TWI729135B (zh) * | 2016-05-20 | 2021-06-01 | 美商松下電器(美國)知識產權公司 | 編碼裝置、解碼裝置、編碼方法及解碼方法 |
US11245902B2 (en) | 2011-06-30 | 2022-02-08 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100717055B1 (ko) * | 2005-11-18 | 2007-05-10 | 삼성전자주식회사 | Cabac 복호기에서 복수의 이진 값들을 파이프라인방식에 의하여 복호화하는 방법 및 이를 위한 복호화 장치 |
US8599926B2 (en) * | 2006-10-12 | 2013-12-03 | Qualcomm Incorporated | Combined run-length coding of refinement and significant coefficients in scalable video coding enhancement layers |
US9319700B2 (en) * | 2006-10-12 | 2016-04-19 | Qualcomm Incorporated | Refinement coefficient coding based on history of corresponding transform coefficient values |
US8325819B2 (en) * | 2006-10-12 | 2012-12-04 | Qualcomm Incorporated | Variable length coding table selection based on video block type for refinement coefficient coding |
US8565314B2 (en) * | 2006-10-12 | 2013-10-22 | Qualcomm Incorporated | Variable length coding table selection based on block type statistics for refinement coefficient coding |
US8358703B2 (en) * | 2007-03-23 | 2013-01-22 | Thomson Licensing | Modifying a coded bitstream |
KR20080086766A (ko) * | 2007-03-23 | 2008-09-26 | 삼성전자주식회사 | 픽셀 단위의 컨텍스트 모델을 이용한 영상의 부호화,복호화 방법 및 장치 |
TWI341657B (en) * | 2007-04-03 | 2011-05-01 | Nat Univ Tsing Hua | Cabac decoding method |
BRPI0811626B1 (pt) * | 2007-06-14 | 2019-08-20 | Contentarmor | Método e dispositivo imprimir marca d'água em dados codificados de extensão variável, fluxo contínuo de dados codificados de extensão variável e mídia legível por processador |
US9648325B2 (en) | 2007-06-30 | 2017-05-09 | Microsoft Technology Licensing, Llc | Video decoding implementations for a graphics processing unit |
US7777654B2 (en) * | 2007-10-16 | 2010-08-17 | Industrial Technology Research Institute | System and method for context-based adaptive binary arithematic encoding and decoding |
US7714753B2 (en) * | 2007-12-11 | 2010-05-11 | Intel Corporation | Scalable context adaptive binary arithmetic coding |
US8542727B2 (en) * | 2007-12-31 | 2013-09-24 | Intel Corporation | Systems and apparatuses for performing CABAC parallel encoding and decoding |
US7557740B1 (en) * | 2008-04-18 | 2009-07-07 | Realtek Semiconductor Corp. | Context-based adaptive binary arithmetic coding (CABAC) decoding apparatus and decoding method thereof |
US8138956B2 (en) * | 2008-06-02 | 2012-03-20 | Mediatek Inc. | CABAC encoder and CABAC encoding method |
US7592937B1 (en) * | 2008-06-02 | 2009-09-22 | Mediatek Inc. | CABAC decoding unit and method |
US7773004B2 (en) * | 2008-07-08 | 2010-08-10 | Qualcomm Incorporated | CAVLC run-before decoding scheme |
US7961122B1 (en) * | 2010-02-03 | 2011-06-14 | Himax Media Solutions, Inc. | Multi-bin CABAC bypass bin decoder |
TWI458268B (zh) * | 2010-03-16 | 2014-10-21 | Himax Media Solutions Inc | 並聯的五旁路位元全文自適應二進制算術編碼解碼器 |
TWI403170B (zh) * | 2010-05-21 | 2013-07-21 | Univ Nat Chiao Tung | 背景調適性二進制算術解碼裝置及其解碼方法 |
ITVI20100175A1 (it) | 2010-06-21 | 2011-12-22 | St Microelectronics Pvt Ltd | Sistema per la codifica entropica di video h.264 per applicazioni hdtv in tempo reale |
US8576097B2 (en) * | 2010-07-06 | 2013-11-05 | Nokia Corporation | Coding using a mapping between a syntax element and a code word |
US8520740B2 (en) | 2010-09-02 | 2013-08-27 | International Business Machines Corporation | Arithmetic decoding acceleration |
WO2012048053A2 (en) * | 2010-10-05 | 2012-04-12 | Massachusetts Institute Of Technology | System and method for optimizing context-adaptive binary arithmetic coding |
TWI487295B (zh) * | 2011-05-17 | 2015-06-01 | Univ Nat Cheng Kung | 高產出平行化avc/h.264前後文適應性二位元算數解碼器之方法 |
US10123053B2 (en) * | 2011-05-23 | 2018-11-06 | Texas Instruments Incorporated | Acceleration of bypass binary symbol processing in video coding |
CN107529709B (zh) | 2011-06-16 | 2019-05-07 | Ge视频压缩有限责任公司 | 解码器、编码器、解码和编码视频的方法及存储介质 |
CN105357540B (zh) * | 2011-06-28 | 2019-09-06 | 三星电子株式会社 | 对视频进行解码的方法 |
UA114674C2 (uk) | 2011-07-15 | 2017-07-10 | ДЖ.І. ВІДІЕУ КЕМПРЕШН, ЛЛСі | Ініціалізація контексту в ентропійному кодуванні |
RU2601167C2 (ru) * | 2011-07-18 | 2016-10-27 | Сан Пэтент Траст | Способ кодирования изображения, способ декодирования изображения, устройство кодирования изображения, устройство декодирования изображения и устройство кодирования и декодирования изображения |
FR2982447A1 (fr) | 2011-11-07 | 2013-05-10 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
FR2982446A1 (fr) | 2011-11-07 | 2013-05-10 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
EP2600531A1 (en) * | 2011-12-01 | 2013-06-05 | Thomson Licensing | Method for determining a modifiable element in a coded bit-stream and associated device |
CN107707912B (zh) | 2011-12-28 | 2020-05-22 | Jvc 建伍株式会社 | 动图像编码装置以及动图像编码方法 |
US9654139B2 (en) | 2012-01-19 | 2017-05-16 | Huawei Technologies Co., Ltd. | High throughput binarization (HTB) method for CABAC in HEVC |
US9860527B2 (en) * | 2012-01-19 | 2018-01-02 | Huawei Technologies Co., Ltd. | High throughput residual coding for a transform skipped block for CABAC in HEVC |
US20130188736A1 (en) | 2012-01-19 | 2013-07-25 | Sharp Laboratories Of America, Inc. | High throughput significance map processing for cabac in hevc |
US9743116B2 (en) | 2012-01-19 | 2017-08-22 | Huawei Technologies Co., Ltd. | High throughput coding for CABAC in HEVC |
US10616581B2 (en) | 2012-01-19 | 2020-04-07 | Huawei Technologies Co., Ltd. | Modified coding for a transform skipped block for CABAC in HEVC |
US9681133B2 (en) * | 2012-03-29 | 2017-06-13 | Intel Corporation | Two bins per clock CABAC decoding |
US10009606B2 (en) * | 2012-10-11 | 2018-06-26 | Nvidia Corporation | Low power context adaptive binary arithmetic decoder engine |
CN103974066B (zh) * | 2014-05-14 | 2017-02-01 | 华为技术有限公司 | 视频编码方法和设备 |
US9854253B2 (en) * | 2014-06-30 | 2017-12-26 | Qualcomm Incorporated | Method for motion vector difference (MVD) and intra block copy vector difference (BVD) coding of screen content video data |
US9942551B2 (en) * | 2015-01-30 | 2018-04-10 | Qualcomm Incorporated | Palette index grouping for video coding |
US10462462B2 (en) * | 2016-09-29 | 2019-10-29 | Qualcomm Incorporated | Motion vector difference coding technique for video coding |
US11356693B2 (en) | 2016-09-29 | 2022-06-07 | Qualcomm Incorporated | Motion vector coding for video coding |
JP6707045B2 (ja) * | 2017-03-15 | 2020-06-10 | Nttエレクトロニクス株式会社 | 二値算術復号器および二値算術復号装置 |
CN109428603A (zh) * | 2017-08-30 | 2019-03-05 | 前海中科芯片控股(深圳)有限公司 | 一种数据编码方法、装置以及存储介质 |
US20220086445A1 (en) * | 2020-12-03 | 2022-03-17 | Intel Corporation | Methods, apparatus, and articles of manufacture for multi-symbol equiprobable mode entropy coding |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2274224B (en) * | 1993-01-07 | 1997-02-26 | Sony Broadcast & Communication | Data compression |
US5717394A (en) * | 1993-02-10 | 1998-02-10 | Ricoh Company Ltd. | Method and apparatus for encoding and decoding data |
US5583500A (en) * | 1993-02-10 | 1996-12-10 | Ricoh Corporation | Method and apparatus for parallel encoding and decoding of data |
US5381145A (en) * | 1993-02-10 | 1995-01-10 | Ricoh Corporation | Method and apparatus for parallel decoding and encoding of data |
US6351563B1 (en) * | 1997-07-09 | 2002-02-26 | Hyundai Electronics Ind. Co., Ltd. | Apparatus and method for coding/decoding scalable shape binary image using mode of lower and current layers |
FI116642B (fi) * | 1998-02-09 | 2006-01-13 | Nokia Corp | Puheparametrien käsittelymenetelmä, puhekoodauksen käsittely-yksikkö ja verkkoelementti |
CN1310434C (zh) * | 2001-04-06 | 2007-04-11 | 华为技术有限公司 | 特博码阵列解码器 |
JP2003319391A (ja) * | 2002-04-26 | 2003-11-07 | Sony Corp | 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム |
PT1467491E (pt) * | 2002-05-02 | 2007-03-30 | Fraunhofer Ges Forschung | Codificação aritmética de coeficientes de transformação |
US7630440B2 (en) * | 2003-05-28 | 2009-12-08 | Broadcom Corporation | Context adaptive binary arithmetic code decoding engine |
US6876317B2 (en) * | 2003-05-30 | 2005-04-05 | Texas Instruments Incorporated | Method of context based adaptive binary arithmetic decoding with two part symbol decoding |
US20040258162A1 (en) * | 2003-06-20 | 2004-12-23 | Stephen Gordon | Systems and methods for encoding and decoding video data in parallel |
US7418146B2 (en) * | 2004-02-10 | 2008-08-26 | Sanyo Electric Co., Ltd. | Image decoding apparatus |
KR100648258B1 (ko) * | 2004-08-02 | 2006-11-23 | 삼성전자주식회사 | 고속의 디코딩을 수행하는 파이프라인 구조의 내용 기반적응적 이진 산술 디코더 |
-
2005
- 2005-10-12 CN CNB2005101127354A patent/CN100466739C/zh active Active
-
2006
- 2006-06-16 CN CN200680013155.2A patent/CN101164340B/zh active Active
- 2006-06-16 WO PCT/CN2006/001358 patent/WO2007041911A1/zh active Application Filing
- 2006-10-12 US US11/580,734 patent/US7385535B2/en active Active
Cited By (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101809871B (zh) * | 2007-09-27 | 2014-10-29 | 高通股份有限公司 | 经优化的cabac解码器 |
CN101809871A (zh) * | 2007-09-27 | 2010-08-18 | 高通股份有限公司 | 经优化的cabac解码器 |
US8782379B2 (en) | 2007-09-27 | 2014-07-15 | Qualcomm Incorporated | H.264 video decoder CABAC core optimization techniques |
CN102201816A (zh) * | 2010-03-25 | 2011-09-28 | 承景科技股份有限公司 | 并联的五旁路位全文自适应二进制算术编码解码器 |
CN102201816B (zh) * | 2010-03-25 | 2014-01-01 | 承景科技股份有限公司 | 并联的五旁路位全文自适应二进制算术编码解码器 |
US10841622B2 (en) | 2011-04-01 | 2020-11-17 | Lg Electronics Inc. | Entropy encoding method, entropy decoding method, and apparatus using same |
CN107454411A (zh) * | 2011-04-01 | 2017-12-08 | Lg 电子株式会社 | 熵解码方法和使用其的解码装置 |
CN107454407A (zh) * | 2011-04-01 | 2017-12-08 | Lg 电子株式会社 | 熵解码方法和使用其的解码装置 |
US11616989B2 (en) | 2011-04-01 | 2023-03-28 | Lg Electronics Inc. | Entropy decoding method, and decoding apparatus using same |
US10791328B2 (en) | 2011-06-15 | 2020-09-29 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
CN106028039B (zh) * | 2011-06-15 | 2019-04-09 | 索尼公司 | 编码装置和编码方法 |
CN104410859B (zh) * | 2011-06-15 | 2018-07-10 | 索尼公司 | 在cabac中使用分离的绝对值和符号(savs)对dqp进行二元化 |
CN104410859A (zh) * | 2011-06-15 | 2015-03-11 | 索尼公司 | 在cabac中使用分离的绝对值和符号(savs)对dpq进行二元化 |
CN104469365A (zh) * | 2011-06-15 | 2015-03-25 | 索尼公司 | 在cabac中使用分离的绝对值和符号(savs)对dpq进行二元化 |
US11665348B2 (en) | 2011-06-15 | 2023-05-30 | Sony Group Corporation | Binarization of dQP using separate absolute value and sign (SAVS) in CABAC |
US9112526B2 (en) | 2011-06-15 | 2015-08-18 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
CN104469365B (zh) * | 2011-06-15 | 2018-11-27 | 索尼公司 | 一种视频编码装置和方法 |
CN106028039A (zh) * | 2011-06-15 | 2016-10-12 | 索尼公司 | 编码装置和编码方法 |
CN102868882A (zh) * | 2011-06-15 | 2013-01-09 | 索尼公司 | 在cabac中使用分离的绝对值和符号(savs)对dpq进行二元化 |
CN102868882B (zh) * | 2011-06-15 | 2016-09-07 | 索尼公司 | 执行视频编码的装置和方法 |
CN106027065A (zh) * | 2011-06-15 | 2016-10-12 | 索尼公司 | 解码装置和解码方法 |
US11245902B2 (en) | 2011-06-30 | 2022-02-08 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
WO2013017092A1 (en) * | 2011-08-04 | 2013-02-07 | Mediatek Inc. | Method and apparatus for reordered binarization of syntax elements in cabac |
US9838034B2 (en) | 2011-08-04 | 2017-12-05 | Hfi Innovation Inc. | Method and apparatus for reordered binarization of syntax elements in CABAC |
US9516343B2 (en) | 2011-11-07 | 2016-12-06 | Huawei Technology Co., Ltd. | Video decoder with enhanced CABAC decoding |
CN103959782B (zh) * | 2011-11-07 | 2017-04-26 | 华为技术有限公司 | 具有增强cabac解码的视频解码器和视频编码器 |
US9774863B2 (en) | 2011-11-07 | 2017-09-26 | Huawei Technologies Co., Ltd. | Video decoder with enhanced CABAC decoding |
US11006115B2 (en) | 2011-11-07 | 2021-05-11 | Huawei Technologies Co., Ltd. | Video decoder with enhanced CABAC decoding |
US10136137B2 (en) | 2011-11-07 | 2018-11-20 | Huawei Technologies Co., Ltd. | Video decoder with enhanced CABAC decoding |
US11445197B2 (en) | 2011-11-07 | 2022-09-13 | Huawei Technologies Co., Ltd. | Video decoder with enhanced CABAC decoding |
CN103959782A (zh) * | 2011-11-07 | 2014-07-30 | 夏普株式会社 | 具有增强cabac解码的视频解码器 |
US9930337B2 (en) | 2011-11-07 | 2018-03-27 | Huawei Technologies Co., Ltd. | Video decoder with enhanced CABAC decoding |
CN108235015A (zh) * | 2011-11-08 | 2018-06-29 | 三星电子株式会社 | 用于对视频进行解码的设备 |
CN108513129A (zh) * | 2011-11-08 | 2018-09-07 | 三星电子株式会社 | 对视频进行解码的方法、编码的方法和设备及计算机介质 |
CN103222269A (zh) * | 2011-11-08 | 2013-07-24 | 索尼公司 | 用于较高吞吐量的最后位置的二值化 |
CN108471535A (zh) * | 2011-11-08 | 2018-08-31 | 三星电子株式会社 | 用于对视频进行解码的方法 |
CN103222269B (zh) * | 2011-11-08 | 2015-06-17 | 索尼公司 | 用于较高吞吐量的最后位置的二值化 |
US10298924B2 (en) | 2012-05-25 | 2019-05-21 | Sun Patent Trust | Moving picture coding method, moving picture decoding method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
US10567758B2 (en) | 2012-05-25 | 2020-02-18 | Sun Patent Trust | Moving picture coding method, moving picture decoding method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
US9894352B2 (en) | 2012-05-25 | 2018-02-13 | Sun Patent Trust | Moving picture coding method, moving picture coding apparatus, moving picture decoding method, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
CN103650500A (zh) * | 2012-05-25 | 2014-03-19 | 松下电器产业株式会社 | 图像编码方法、图像编码装置、图像解码方法、图像解码装置及图像编码解码装置 |
US9967560B2 (en) | 2012-05-25 | 2018-05-08 | Sun Patent Trust | Moving picture coding method, moving picture decoding method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
US10142624B2 (en) | 2012-05-25 | 2018-11-27 | Velos Media, Llc | Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus |
US9749623B2 (en) | 2012-05-25 | 2017-08-29 | Sun Patent Trust | Moving picture coding method, moving picture decoding method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus |
US10893282B2 (en) | 2012-05-25 | 2021-01-12 | Velos Media, Llc | Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus |
US10652557B2 (en) | 2012-06-04 | 2020-05-12 | Sun Patent Trust | Moving picture coding method, moving picture coding apparatus, moving picture decoding method, and moving picture decoding apparatus |
US9860541B2 (en) | 2012-06-04 | 2018-01-02 | Sun Patent Trust | Moving picture coding method, moving picture coding apparatus, moving picture decoding method, and moving picture decoding apparatus |
US10356429B2 (en) | 2012-06-04 | 2019-07-16 | Sun Patent Trust | Moving picture coding method, moving picture coding apparatus, moving picture decoding method, and moving picture decoding apparatus |
US11849116B2 (en) | 2012-06-08 | 2023-12-19 | Sun Patent Trust | Arithmetic coding for information related to sample adaptive offset processing |
US11375195B2 (en) | 2012-06-08 | 2022-06-28 | Sun Patent Trust | Arithmetic coding for information related to sample adaptive offset processing |
US10212425B2 (en) | 2012-06-08 | 2019-02-19 | Sun Patent Trust | Arithmetic coding for information related to sample adaptive offset processing |
US10812800B2 (en) | 2012-06-08 | 2020-10-20 | Sun Patent Trust | Arithmetic coding for information related to sample adaptive offset processing |
US10542290B2 (en) | 2012-06-27 | 2020-01-21 | Sun Patent Trust | Image decoding method and image decoding apparatus for sample adaptive offset information |
CN103621088A (zh) * | 2012-06-27 | 2014-03-05 | 松下电器产业株式会社 | 图像编码方法、图像解码方法、图像编码装置、图像解码装置和图像编码解码装置 |
US10063862B2 (en) | 2012-06-27 | 2018-08-28 | Sun Patent Trust | Image decoding method and image decoding apparatus for sample adaptive offset information |
CN103621088B (zh) * | 2012-06-27 | 2018-01-30 | 太阳专利托管公司 | 图像解码方法和图像解码装置 |
CN104104949B (zh) * | 2013-04-12 | 2018-01-09 | 浙江大学 | 一种方向信息语法元素的熵编解码方法和装置 |
CN104104949A (zh) * | 2013-04-12 | 2014-10-15 | 浙江大学 | 一种方向信息语法元素的熵编解码方法和装置 |
CN106415484A (zh) * | 2014-05-27 | 2017-02-15 | 高通股份有限公司 | 专用算术编码指令 |
CN106415484B (zh) * | 2014-05-27 | 2019-02-01 | 高通股份有限公司 | 用于执行专用算术编码指令的设备、方法和计算机可读介质 |
CN105338353B (zh) * | 2014-08-05 | 2018-11-16 | 安华高科技股份有限公司 | 上下文自适应二进制算法编码的简化的范围和上下文更新 |
CN105338353A (zh) * | 2014-08-05 | 2016-02-17 | 美国博通公司 | 上下文自适应二进制算法编码的简化的范围和上下文更新 |
CN104918049A (zh) * | 2015-06-03 | 2015-09-16 | 复旦大学 | 适用于hevc标准的二进制算术编码模块 |
CN105120275A (zh) * | 2015-07-23 | 2015-12-02 | 北京大学 | 帧内模式决策中并行cabac-r算法的实现方法 |
CN105120275B (zh) * | 2015-07-23 | 2019-01-18 | 北京大学 | 帧内模式决策中并行cabac-r算法的实现方法 |
TWI729135B (zh) * | 2016-05-20 | 2021-06-01 | 美商松下電器(美國)知識產權公司 | 編碼裝置、解碼裝置、編碼方法及解碼方法 |
CN108965878A (zh) * | 2017-05-27 | 2018-12-07 | 深圳市中兴微电子技术有限公司 | 一种熵解码方法及装置 |
CN107277518A (zh) * | 2017-07-07 | 2017-10-20 | 珠海市杰理科技股份有限公司 | Cabac解码方法 |
CN107277518B (zh) * | 2017-07-07 | 2019-07-16 | 珠海市杰理科技股份有限公司 | Cabac解码方法 |
CN107277553A (zh) * | 2017-07-10 | 2017-10-20 | 中国科学技术大学 | 一种二元算术编码器 |
CN112422987A (zh) * | 2020-10-26 | 2021-02-26 | 眸芯科技(上海)有限公司 | 适用于avc的熵解码硬件并行计算方法及应用 |
CN112422987B (zh) * | 2020-10-26 | 2022-02-22 | 眸芯科技(上海)有限公司 | 适用于avc的熵解码硬件并行计算方法及应用 |
Also Published As
Publication number | Publication date |
---|---|
CN101164340A (zh) | 2008-04-16 |
CN101164340B (zh) | 2010-10-06 |
US7385535B2 (en) | 2008-06-10 |
US20070080832A1 (en) | 2007-04-12 |
CN100466739C (zh) | 2009-03-04 |
WO2007041911A1 (en) | 2007-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1949873A (zh) | Cabac解码系统及方法 | |
CN101034891A (zh) | 基于cabac的编码方法和设备及解码方法和设备 | |
CN106416246B (zh) | 视频编码中的语法的二进制化和上下文自适应编码的方法和装置 | |
CN1183683C (zh) | 使用前缀预测的位自适应编码方法 | |
CN1703089A (zh) | 一种数字信号的二值算术编码方法 | |
CN101061515A (zh) | 表示时变图形模型的数据流的编码方案 | |
CN1230054A (zh) | 自适应概率估计方法、自适应编码方法及自适应解码方法 | |
CN101032172A (zh) | 用于可分级视频比特流的熵编码和解码的方法和系统 | |
CN1207634A (zh) | 数字视频信号块间内插预测编码/解码装置及高效编码方法 | |
CN1144583A (zh) | 用于编码器/译码器系统的紧凑型源编码表 | |
CN1225777A (zh) | 图象编码装置和图象解码装置 | |
CN1905010A (zh) | 编码音频数据的设备和方法及解码音频数据的设备和方法 | |
CN1257621A (zh) | 数字数据无损压缩的方法和设备 | |
CN1243425C (zh) | 速率匹配方法和数字通信系统 | |
CN1930888A (zh) | 用于压缩域视频编辑的方法和设备 | |
CN1589023A (zh) | 一种基于上下文的多码表变长编解码方法及编解码装置 | |
CN1601904A (zh) | 逻辑电路装置以及可编程逻辑电路的工作方法 | |
CN1254921C (zh) | 改进的哈夫曼译码方法和装置 | |
CN1682448A (zh) | 使用贪婪的顺序上下文相关文法变换的改进的无损耗数据压缩方法 | |
CN1826732A (zh) | 霍夫曼编码和解码 | |
CN101051845A (zh) | 一种快速提取比特流哈夫曼解码方法 | |
EP2201781A2 (en) | Variable length coding of coefficient clusters for image and video compression | |
CN101075261A (zh) | 索引压缩的方法和装置 | |
CN103222269A (zh) | 用于较高吞吐量的最后位置的二值化 | |
CN101043353A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |