CN104378634A - 输入符号二值化的方法以及从码字中产生索引值的方法 - Google Patents

输入符号二值化的方法以及从码字中产生索引值的方法 Download PDF

Info

Publication number
CN104378634A
CN104378634A CN201410394373.1A CN201410394373A CN104378634A CN 104378634 A CN104378634 A CN 104378634A CN 201410394373 A CN201410394373 A CN 201410394373A CN 104378634 A CN104378634 A CN 104378634A
Authority
CN
China
Prior art keywords
code word
rice
parameter
pattern
binarization
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
Application number
CN201410394373.1A
Other languages
English (en)
Other versions
CN104378634B (zh
Inventor
李坤傧
周汉良
林亭安
陈翊豪
朱启诚
赖彦杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of CN104378634A publication Critical patent/CN104378634A/zh
Application granted granted Critical
Publication of CN104378634B publication Critical patent/CN104378634B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1887Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a variable length codeword

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明提供一种输入符号二值化的方法,使用带赖斯参数的混合截断赖斯/k阶次指数哥伦布二值化方案,包含:决定阈值;将该输入符号与该阈值做比较;当比较结果属于第一类型比较结果时,对于该输入符号,使用截断赖斯二值化过程来构建码字;以及当该比较结果属于第二类型比较结果时,对于该输入符号,以初始前缀和后缀来构建码字;其中该后缀是使用指数哥伦布二值化过程而被构建的。本发明还提供一种用于数字视频或数字图像编/解码的从码字中产生索引值的方法。本发明的编/解码速度比现有技术更快、效率更高。

Description

输入符号二值化的方法以及从码字中产生索引值的方法
【技术领域】
本发明关于数字视频或图像的输入符号二值化以及去二值化的方法,尤其关于一种使用带赖斯参数的混合截断赖斯/k阶次指数哥伦布二值化方案来二值化输入符号的方法以及相关的用于数字视频或图像编/解码的从码字中产生索引值的方法。
【背景技术】
无论生活在哪里,数字电视(Digital television)和视频流媒体技术已经使人们能够有机会获得大量信息。虽然视频通常占用了大量的空间,但是数字压缩技术意味着许多百万字节(megabyte)的数据能够以存储文件的形式以及实时数据(媒体流直播,live streaming)的形式来传输。这项技术的应用是深远的:高品质的媒体流直播已经呈现了其在中东最新的应用,那里发生的世界性变化的事件,已即刻被记录并在世界各地传输。
数字压缩(Digital compression)分为两种类型:无损压缩和有损压缩。有损压缩涉及到对视频数据进行压缩使压缩后文件的数据比原始数据更少。因此当接收及观看文件时,相比原始素材将有品质损失。无损压缩,如名称所指示,能够压缩文件使其包含的数据量与原始数据相同,从而保持了品质。目前采用无损压缩工具(tool)的编码标准的例子是MPEG-4和H.264,其在高清晰度视频中处于领先水平。
由于在无损压缩中必须保留所有的信息,因此,能够减少欲发送的文件的大小的压缩技术是非常重要的。H.264能够利用可变长编码(Variable LengthCoding,VLC)和基于上下文的自适应二进制算术编码(Context Adaptive BinaryArithmetic Coding,CABAC)来执行几乎无损的压缩,可以以低比特率数字地补偿(render)信息。CABAC将数据转换为比特,将它们编码为二进制符号,并对自适应选择的二进制符号应用多个概率模型。有许多二值化技术可使用。在完整的编码过程中,二值化为其中的一个步骤。在解码过程中,去二值化也为其中一个环节。一元二值化是将码字(codeword)转换成字串(string)1(其后跟随一个终止0)的技术。这具有的优点是使每一个码字可唯一地区别,但较大的码字会很长,这是由于二进制(bin)的数目依赖于最大值的大小。另一种二值化方法是指数哥伦布(Exponential-Golomb,exp-Golomb)二值化,其中码字被分成一元前缀(unary prefix)和二进制后缀(suffix)。这种形式的二值化处理减少了需要通过二进制算术编码器(binary arithmetic coder,BAC)来发送的二进制的数量,但具有的缺点是无法快速区分较小和较大的码字。
为了利用这两种二值化系统的积极因素,经常使用混合二值化方案。对于HEVC编码(其为H.264和MPEG-4之后的下一代编码标准),使用混合赖斯(hybrid Rice)二值化方案。该二值化由前缀部分和(如果存在)后缀部分组成。通过调用截断赖斯(Truncated Rice,TR)二值化过程获得二值化的前缀部分。当前缀位串(bit string)不符合预定标准时,将使用EGk(k-th orderExponential-Golomb)二值化来创建后缀二进制串(bin string)。例如,当前缀二进制串等于长度为4的位串(所有位等于1)时,二进制串由前缀二进制串和后缀二进制串组成。通过使用EGk二值化获得后缀二进制串。
在EGk二值化方案中,赖斯参数(Rice Parameter)用来将后缀划分为商数和余数,且k由赖斯参数来定义。将使用一元二值化来编码商数部分,以及将以二进制来编码余数。因此,代表超过阈值的码字可以说是由第一部分(初始前缀)、第二部分(商数)和第三部分(余数)组成。图2A和图2B分别为对于EGk和EG0,对于不同的赖斯参数值,使用混合(hybrid)截断赖斯二值化、指数哥伦布二值化方案来编码输入符号的示范性表格。
请注意,图2A表中所示的所有码字(除了对于赖斯参数等于0的输入符号超过4的码字以及对于赖斯参数等于1的输入符号超过8的码字)仅使用TR二值化方案来被二值化;换言之,码字只包含初始前缀。类似地,图2B表中所示的所有码字(除了对于赖斯参数等于0和1,输入符号分别超过7和14的码字)只使用TR二值化方案来被二值化。TR二值化将输入符号编码为具有一个前缀和一个后缀的码字,其中后缀可从二进制形式的输入符号的最低有效位(leastsignificant bit)中直接选出。最低有效位的数量将由赖斯参数定义。前缀的二进制数量接着由最高有效位(most significant bit)的十进制值来定义。例如,对于输入符号12,假设赖斯参数为2(即cRP=2)。首先输入符号被转换成二进制,给出值‘1100’。这个二进制值的cRP最低有效位为‘00’;这两位将形成码字的后缀。接着值‘1100’被右移两位(后缀位的数量),得到值‘11’。这个值被转换回十进制,即‘3’。因此,码字的前缀部分由三个1和一个截断0组成(即‘1110’)。使用截断赖斯cRP=2编码输入符号12,因此得到‘1110 00’。当数值13-15被右移cRP位时,也产生十进制‘3’,即它们的最高有效位都相同。它们对应的TR码字为‘1110 01’,‘1110 10’和‘1110 11’。对于相同的输入符号12将给出另一个例子,但假设赖斯参数为1(例如cRP=1)。输入符号首先被转换成二进制,得到值‘1100’。该二进制值的cRP最低有效位为‘0’;这个单一位将形成码字的后缀。值‘1100’接着被右移一位(后缀位的数量),得到值‘110’。该值被转换回十进制,即‘6’。因此,该码字的前缀部分由六个1和一个截断0组成,即‘1111110’。使用截断赖斯cRP=1编码输入符号12,因而得到‘1111110 0’。在这种情况下,然而,最后的码字可能太长,因此可能要应用带前缀的EGk。如图2D所示,赖斯参数为1的输入符号12由‘1111 100 00’编码,在图2D中,通过选择正确的赖斯参数可达到最佳的编码效率,码字长度相较于TR码字更短。优选实施方案将检查TR码字的长度,以决定是否要使用TR码或切换到带初始前缀的EGk基础码字。另一优选实施方案将检查TR码字的前缀部分中1的数量。如果这个数量大于预定标准,则以带有初始码字的EGk来编码输入符号。图2D和图2E中1的数量分别为4和3。请注意,当赖斯参数为零时,相应的码字等于使用截断一元二值化编码的输入符号。
根据上述混合二值化方案编码输入符号的传统方法包含:首先使用截断赖斯二值化创建码字,判定前缀位串是否不符合预定标准,如果是这样,则通过使用上述EGk二值化来创建后缀二进制串。另一种传统方法首先通过TR二值化过程来创建前缀码字。当前缀二进制串多于预定长度(分别例如:图2D中的4和图2E中的3)的位串(其所有位等于1)时,后缀二进制串存在。在这种情况下,只有固定数量的1输出作为前缀。然后通过使用输入符号减去预定值的EGk二值化过程来产生后缀二进制串,其中预定值根据赖斯参数来选择。指数-哥伦布阶次(order)k可根据赖斯参数来设定。上述传统方法在图1中示出。图1的步骤详述如下。
步骤100:开始编码过程;
步骤102:创建截断赖斯码字的前缀位串;
步骤104:前缀位串符合预定标准码?如果是,转到步骤110;如果不是,转到步骤106;换句话说,TR码字的前缀位串超过阈值了吗?如果是,转到步骤106;如果不是,转到步骤110;
步骤106:创建码字的后缀二进制串以及使用EGk二值化方案来编码该后缀;
步骤108:将该后缀二进制串添加到TR码字的前缀位串;
步骤110:结束。
根据正被编码的输入符号,赖斯参数和预定标准可不断更新。因此,本发明的目的在于提供一种更直接的编码方法。
【发明内容】
有鉴于此,本发明提供一种输入符号二值化的方法,以及用于数字视频或数字图像编/解码的从码字中产生索引值的方法。
一种输入符号二值化的方法,使用带赖斯参数的混合截断赖斯/k阶次指数哥伦布二值化方案,包含:决定阈值;将该输入符号与该阈值做比较;当比较结果属于第一类型比较结果时,对该输入符号,使用截断赖斯二值化过程来构建码字;以及当该比较结果属于第二类型比较结果时,对该输入符号,以初始前缀和后缀来构建码字;其中该后缀是使用指数哥伦布二值化过程而被构建的。
另一种用于数字视频或数字图像编码的从码字中产生索引值的方法,包含:决定赖斯参数;判定该码字是否包含第一样式;当该码字包含该第一样式时,通过使用指数哥伦布去二值化过程来解码该码字的余数部分;以及当该码字不包含该第一样式时,通过使用截断赖斯去二值化过程来解码该整个码字。除数字视频外,也能用在数字图像编码/解码。
再一种用于数字视频或数字图像解码的从码字中产生索引值的方法,包含:因应具有第一样式的该码字的第一部分决定选定阈值,其中该选定阈值是基于赖斯参数;基于该第一部分后的该码字的第二部分中的第二样式,产生位移以因应具有该第一样式的该第一部分;基于该第二部分后的该码字的第三部分中的第三样式,产生一数值以因应具有该第一样式的该第一部分;将该选定阈值、该位移、以及该数值组合,以产生该索引值;以及基于该产生的索引值,更新该赖斯参数。
上述输入符号二值化以及从码字中产生索引值的方法比现有技术的编/解码方法更快、效率更高。
【附图说明】
图1为依据传统技术将输入符号编码成截断赖斯码字的方法流程图。
图2A和图2B为对于不同的赖斯参数,使用混合截断赖斯二值化、指数哥伦布二值化方案来编码输入符号的表格。
图2C为使用指数哥伦布方案编码输入符号的表格。
图2D和图2E为代表图2A分别包含四个1和三个1前缀类型的表格。
图3为依据本发明实施例的编码输入符号的方法流程图。
图4为依据本发明实施例的解码码字的方法流程图。
图5为依据传统技术的解码码字的方法流程图。
图6为本发明阈值选择、TR和EG二值化平行处理的编码实施例示意图。
图7为用于数字视频或数字图像的从码字中产生索引值的实施例示意图。
图8为用于数字视频或数字图像的从码字中产生索引值的实施例示意图。
【具体实施方式】
请参阅图2A,其为对于赖斯参数从0到4,使用混合二值化方案所编码的一系列输入符号。如表格第二列所示,当赖斯参数(cRP)等于0时,阈值(cTRMax)为4,其中低于该阈值时使用截断赖斯二值化来编码输入符号;当赖斯参数等于1时,阈值为8,其中低于该阈值时使用截断赖斯二值化来编码输入符号;当赖斯参数等于2时,阈值为16,其中低于该阈值时使用截断赖斯二值化来编码输入符号;当赖斯参数等于3时,阈值为32,其中低于该阈值时使用截断赖斯二值化来编码输入符号;以及当赖斯参数等于4时,阈值为64,其中低于该阈值时使用截断赖斯二值化来编码输入符号。此外,当赖斯参数等于0时,对低于阈值的输入符号的TR二值化相当于截断一元二值化方案。类似地,在图2B的情况下,对于赖斯参数等于0,1,2,3和4,阈值(cTRMax)分别是7,14,26,46和78,其中低于该阈值时使用TR二值化对输入符号进行编码。
此外,当输入符号等于或大于阈值时,可使用前缀和后缀来编码输入。该后缀可单独由EGk编码来编码,或由一个跟随了后缀的EG0来编码。图2C为k=0~4的一些EGk编码。图2D和图2E为图2A具有不同前缀类型的代表。从图2D表格的第二列来看,可以观察到等于或超过阈值的任何输入符号将具有由四个1组成的初始前缀,然而当输入符号低于阈值时,所创建的码字会有所不同。以赖斯参数等于0为例,超过3(例如4,5等)的输入符号将具有由四个1组成的初始前缀以及由EGK码所编码的后缀,其中K=1。以赖斯参数等于1为例,超过7(例如8,9,10等)的输入符号将具有由四个1组成的初始前缀以及由EGK码所编码的后缀,其中K=2。对于赖斯参数等于1的输入符号12,阈值为8。通过使用EG2函数与等于4(来自于输入符号与阈值之间的差异,12-8)的输入来编码码字后缀。参照图2C,相应的码字是‘100 00’。因此,最后的码字CW-2D是‘1111 100 00’。类似地,当赖斯参数等于0时,如图2E的表中所示,超过2(例如3,4等)的输入符号将具有由三个1组成的初始前缀以及由EGK码所编码的后缀,其中K=0。当赖斯参数等于1时,如图2E的表中所示,超过5(例如6,7,8等)的输入符号将具有由三个1组成的初始前缀以及由EGK码所编码的后缀,其中K=1。对于赖斯参数等于1的输入符号12,阈值为6。通过使用EG1函数与等于6(由12-6得到)的输入来编码码字后缀。参照图2C,相应的码字是‘11000 0’。因此,最后的码字CW-2E是‘111 11000 0’。码字CW-2D和CW-2E实际上是相同的。
对于赖斯参数等于1(例如cRP=1)的输入符号12,阈值为8且其相应的初始前缀为‘1111’。接着依据该cRP,通过将其剩余值(12-8=4)划分为商数和余数,可产生剩余码字(remaining codeword),或者说后缀码字。使用EG0二值化来编码商数,而由二进制定长码(fixed-length code)(其长度取决于cRP)来编码余数(remainder)。在这种情况下,cRP=1,因此其剩余值4可以被右移2(cRP+1)比特,以产生商数1且其对应的EG0码为‘100’,如图2C所示。通过自剩余值减去左移2比特的商数,获得余数,且结果为0。接着用cRP+1二进制长度的定长码字‘00’表示余数。或者可以从二进制格式的输入符号的(cRP+1)比特最低有效位(LSB)中选出余数。在这种情况下,输入符号12的二进制格式为‘1100’且其2比特最低有效位部分为‘00’。或者可以从二进制格式的剩余值的(cRP+1)比特最低有效位中选出余数。在这种情况下,剩余值4的二进制格式为‘100’且其2比特最低有效位部分为‘00’。简单地说,cRP=1的输入符号12具有初始前缀‘1111’、EG0码字部分‘100’、以及定长码字部分‘00’。其整个码字是‘1111 100 00’,这与CW-2D和CW-2E相同。总之,优选方法基于指数哥伦布二值化来产生相同的码字。
如前所述,当输入符号等于或大于阈值时,也可使用前缀和后缀来编码输入,其中后缀可以由EG0编码,其后跟随另一后缀。从图2D中表格第三列来看,以赖斯参数等于1为例,超过7(例如8,9,10等)的输入将具有由四个1组成的初始前缀以及EG0码,该EG0码后跟随一个定长编码的2比特二进制格式的后缀。定长码字的长度可由赖斯参数来决定。以图2D为例,对于赖斯参数等于0,1,2,3,4,定长码字的长度分别是1,2,3,4,5。
较小码字的编码用较小的赖斯参数更高效,但较大码字用较大的赖斯参数编码更高效。这就是为何赖斯参数(以及因此cTRMax)将被更新,并根据该更新的赖斯参数来编码输入符号。从图2B的表格来看,可以看到超过阈值的任何输入符号将有由8个1组成的初始前缀,然而低于阈值时,所创建的码字会有所不同。
由于阈值和赖斯参数是可变的,本发明首先提出,判定欲编码的输入符号是否高于或低于当前阈值。如果输入符号低于阈值,则可以通过使用上述TR二值化来直接创建该码字。然而,如果输入符号高于阈值,则可以使用预定义样式(predefined pattern)(例如,一连串的四个1)来立即创建初始前缀。接着可以从输入符号中减去阈值来确定后缀,以及上述EGk二值化可用来创建该码字的后缀部分。对于超过阈值的输入符号,不需要考虑TR二值化,并且根据已设定的样式(set pattern)可以创建初始前缀。此方法在图3中示出,步骤如下:
步骤300:开始;
步骤302:输入符号小于阈值吗?如果是,则转到步骤310;如果不是,则转到步骤304;
步骤304:创建初始前缀;
步骤306:使用EGk二值化过程来创建后缀二进制串;
步骤308:将后缀二进制串添加到前缀;转到步骤312;步骤310:使用TR二值化方案来创建码字;
步骤312:结束。
如图3所示,当判定输入符号低于阈值时,可使用截断赖斯二值化方案来直接创建该码字。当输入符号超过阈值时,可依据第一样式(例如,一连串的四个1)来直接创建初始前缀,接着使用EGk二值化来创建后缀位。
本发明也可以描述如下。本发明首先提出,通过比较输入符号与阈值来确定输入符号被编码的方式,其中该阈值是依据当前的赖斯参数(cRP)来选择的。如果比较结果指示第一状态——例如,输入符号小于该阈值,则对于所述输入符号,使用截断赖斯二值化过程来构建码字。如果比较结果指示第二个状态——例如,输入符号大于或等于所述阈值,则对于所述输入符号,使用初始前缀和后缀来构建码字,其中后缀是使用指数哥伦布二值化来构建的。
更具体地,阈值的选择方法可能会影响到输入符号与选定阈值的比较方法。图2D的表格第二列的情况,以赖斯参数(cRP)为0为例。当阈值被选择为4时,比较输入符号3与阈值4的结果指示第一状态,即,输入符号小于选定阈值。在这种情况下,对于输入符号3应用TR二值化过程。比较另一输入符号4与阈值4的结果指示第二个状态,即,输入符号等于选定阈值。在这种情况下,对于具有初始前缀(步骤304)的输入符号4应用指数哥伦布二值化(步骤306)。
在图2E中,当阈值被选择为3时,比较输入符号3与阈值3的结果指示第三状态,即,输入符号等于选定阈值。在这种情况下,对于具有初始前缀(步骤304)的输入符号3应用指数哥伦布二值化(步骤306)。比较另一输入符号4与阈值3的结果指示第四状态,即,输入符号大于选定阈值。在这种情况下,对于具有初始前缀(步骤304)的输入符号4仍然应用指数哥伦布二值化(步骤306)。
本发明还提供了一种使用混合去二值化方案解码码字的方法。该方法依赖于一个事实,即对于每一赖斯参数和其相应的阈值,等于及大于阈值的输入符号将包含第一样式Pi(例如由四个1组成的初始前缀)。
对于由四个1组成的第一样式(这里指定为样式Pi),可知输入符号必须等于或高于阈值。接着将确定赖斯参数和阈值,并由此可获得对应于初始前缀的第一索引值(在本文中,“索引值”也可称为“解码值”)。例如,如果cRP为1,初始前缀对应的第一索引值将等于8。然后可使用EGk解码得出后缀。
当没有发现样式Pi时,应用更复杂的解码流程。在这种情况下,如果赖斯参数等于0,则由TR二值化来编码码字,且该码字只由商数部分组成。因此,基于一元格式的位串样式1来产生商数。码字的值将等于获得的商数。例如,码字“110”不包含样式Pi。因此,使用TR去二值化来解码码字“110”的值,且解码后等于2。
如果赖斯参数大于0,则该码字由商数部分和余数部分组成。基于上述方法使用TR二值化来编码商数部分。在产生商数部分之后,接着基于二进制格式的位串样式2来产生余数部分。通过将码字的后缀部分当做二进制值处理,可产生余数部分。然后,将商数(二进制格式)和余数连结(concatenation)获得码字的值。或者,通过将余数与位移后的商数部分相加,也可获得码字的值。例如,对于赖斯参数等于1的码字“1101”不包含样式Pi。商数部分等于2(或2’b10以二进制格式)且余数部分等于1。这个码字的值是{2’b10,1’1}=5。或者,这个码字的值也可以由1+2<<1=5来得到。
请参阅图4和图5,分别为上述方法的范例以及根据传统技术解码码字的方法的范例。通过比较这两个图,可以看到,本发明的方法提供了当索引值等于或大于预定阈值时两种快速解码码字的方法,这与传统技术相比可实现更直接的解码。
步骤400:开始;
步骤402:发现了什么样式?如果该样式包含第一样式Pi,则转到步骤412;如果该样式不包含样式Pi,则转到步骤404;
步骤404:基于第一部分来产生商数;
步骤406:赖斯参数大于0吗?如果是,则转到步骤408;如果否,则转到步骤416;
步骤408:基于第一部分后的第二部分来产生余数;
步骤410:将余数与商数连结;转到步骤416;
步骤412:确定赖斯参数以将索引值设定为对应于赖斯参数的阈值;
步骤414:基于样式Pi后的第三部分,将一数值与索引值相加;
步骤416:结束。
在上述说明中,截断赖斯去二值化应用在以下情形中:样式包含一个一元样式作为码字的第一部分,该码字不等于样式Pi。第一部分之后的码字的第二部分是使用截断赖斯二值化编码的码字的非一元(non-unary)部分(即后缀)。在另一种情况下,如果码字包含样式Pi,则第三部分是该码字的后缀且将由EGk过程来解码其值(步骤414)。接着,这个值将与根据cRP和样式Pi所产生的索引值相加。以码字“1111 0 01”和cRP=1为例,这个码字包含样式Pi“1111”且对应于cRP=1的其索引值为8。这个码字的后缀为“0 01”且EGk去二值化后,其对应的值为1。因此,cRP=1的码字“1111 0 01”表示值8+1=9。
如前所述,也可利用码字的三个部分来编码输入:前缀、EG0以及后缀。在码字“1111 0 01”与cRP=1的情况中,发现样式Pi“1111”,其EG0码字部分为‘0’,代表EG0去二值化后的0。接着通过将这个值位移cRP+1位,产生位移(offset)值且结果为0(0<<2)。后缀是cRPP+1比特长的二进制码字‘01’(表示数值1)。因此,cRP=1的码字“1111001”代表值8+0+1=9。对于另一个例子,输入码字为‘1111 100 00’,发现样式Pi“1111”,且其EG0码字部分为‘100’,其代表位移值4(1<<2)。二进制格式的后缀码字‘00’表示值0。因此,cRP=1的码字‘1111 100 00’表示值8+4+0=12。
码字“110 1”与cRP=1作为另一个例子。这个码字不包含样式Pi。在应用TR去二值化处理后,商数和余数分别是2和1。因此,cRP=1的码字“1101”表示数值{2’b10,1’b1}=5。当应用图2B所示的EG0时,第一部分是一元样式,其不等于样式Pi。第二部分为使用截断赖斯二值化所编码的码字的非一元部分(即二进制)。
作为比较,图5为传统的解码码字的方法。图5的步骤如下:
步骤500:开始;
步骤502:基于第一部分来产生商数;
步骤504:赖斯参数大于0吗?如果是,则转到步骤506;如果不是,则转到步骤510;
步骤506:基于第二部分来产生余数;
步骤508:将余数与商数连结以产生索引值;
步骤510:索引值大于TRMax+1吗?如果是,则转到步骤512;如果不是,则转到步骤514;
步骤512:基于第三部分,将一数值与索引值相加;
步骤514:结束。
以上所述,第一部分、第二部分和第三部分与图4中所定义的部分相同。通过比较这两个图可以看到,寻找样式匹配的步骤(图4的步骤402)使得包含样式Pi的码字的索引值的解码速度远远超过现有技术。此外,当该方法确定发现第一部分(即不同于样式Pi的一元样式)时,所述解码方法比现有技术更快,因为该方法并不需要搜索第三部分,或基于第一和第二部分判定所解码的索引值是否大于阈值。
进一步说明,上述混合TR/EGk二值化方案的编码和解码方法可以通过软件来实现,也可以利用硬件实现,关于硬件的实际做法也有各种变化。下面是以速度为考量的平行处理,若速度要求可以慢一点,则还可以用顺序方式来做。
图6的电路为本发明阈值选择单元602、TR单元604的二值化和EG单元606的二值化平行处理的编码实施例示意图。由于平行处理,本实施例具有较短的处理延迟。在功耗更为重要的情况下,可先产生比较结果,接着TR单元604和EG单元606中只有一个会激活(active)。比较器608将输入符号和基于赖斯参数产生的阈值进行比较,如果比较结果属于第一类型,则多工器610选择由TR单元604执行截断赖斯二值化过程来产生码字;如果比较结果属于第二类型,则以EG单元606执行指数哥伦布二值化过程产生的码字连同初始前缀一起被多工器610选择。
在一实施例中,截断赖斯二值化过程还可包含构建前缀和后缀。前缀是由一系列比特“1”(其后跟随1比特“0”)而形成。“1”的比特数目依据输入符号和赖斯参数(cRP)来决定。前缀还可通过包含输入符号和赖斯参数的查找表来实现。由截断赖斯二值化过程产生的码字的后缀为定长编码,其中后缀的比特长度由赖斯参数来决定。
在一个优选实施例中,最低有效位的数目与赖斯参数相同,并且通过选择二进制形式输入符号的最低有效位的数目可以实现后缀。由截断赖斯二值化产生的码字接着可以表示为:
N比特TR码字={Xn Xn-1…X4 X3 X2 X1}={M{1’b1},1’b0,Symbol[A:B]}
其中,前缀为{M{1’b1},1’b0},后缀为Symbol[A:B]。更具体地,A=cRP以及B=0为其中一种实施方式,如使用图2D所述表格的实施例。在另一优选实施例中,例如使用图2E所示表格的实施例,A=cRP-1以及B=0。
当指数哥伦布二值化过程的结果被选择时,初始前缀也产生了。初始前缀不依赖于赖斯参数而构建。这个过程不同于以截断赖斯二值化来产生前缀,以截断赖斯二值化来产生前缀依赖于赖斯参数。所提出的的方法简化了初始前缀的产生,进而导致降低实施成本和处理时间来产生初始前缀。
通过具有输入符号和赖斯参数的查找表可容易实现指数哥伦布二值化过程。为了降低查找表的输入比特,通过从符号中减去阈值(依据赖斯参数来决定)可获得剩余量。接着通过具有输入剩余量和赖斯参数的查找表可容易地实现指数哥伦布二值化过程。为了进一步降低查找表的大小,可通过不同的方法来产生指数哥伦布二值化过程的商数部分和余数部分。商数仍然通过具有输入残余量(或符号)及赖斯参数的查找表来获得。指数哥伦布二值化过程的余数部分可以通过类似于产生截断赖斯二值化过程的后缀部分的方法,选择输入符号的最低有效位的数目来产生。此外,用于产生指数哥伦布二值化过程的余数的硬件和用于产生截断赖斯二值化过程的后缀的硬件可以共享。实施成本可以进一步降低。
图7为用于数字视频或数字图像的从码字中产生索引值的实施例示意图。码字被输入至样式检测单元702以检测码字中是否包含预定样式。如果预定样式在码字中,则多工器712会选择指数哥伦布去二值化过程来产生对应于输入码字的索引值;否则使用截断赖斯去二值化过程。
当选择指数哥伦布去二值化过程时,位移产生单元708使用赖斯参数来产生位移(例如,cTRMax)。该位移可以通过具有赖斯参数的查找表作为输入表来产生。接着加法器710将该位移加上由EG单元706执行指数哥伦布去二值化过程产生的数值以产生索引值。
当选择截断赖斯去二值化过程时,TR单元704使用赖斯参数来确定码字的商数和余数部分。接着依据确定的商数和余数部分来产生索引值。
在两种情况中,产生的索引值都被用来更新赖斯参数以用于解码下一个码字。
在一些优选实施例中,样式检测的结果被用来作为位移产生单元708、EG单元706的指数哥伦布去二值化过程和TR单元704的截断赖斯去二值化过程的门控制(gating control),以减少信号转换进而导致降低功耗。在这些实施例中,上述示意图中的多工器610/712可以被替换为组合逻辑的OR功能。
在一些优选实施例中,产生索引值还包含标识(identify)码字的一部分作为二进制数;以及将该二进制数与依据码字另一部分所解码的数值相加。这简化了硬件设计复杂度。将该二进制数标识方法应用至截断赖斯去二值化过程,可以容易地产生余数并将其与商数相加以产生索引值。该二进制数标识方法也可被应用至指数哥伦布去二值化过程。以码字“1111 0 01”为例,“01”可被视为这一目的的二进制数。
图8为用于数字视频或数字图像的从码字中产生索引值的实施例示意图。码字被输入至第一部分确定单元802以检测该码字是否具有预定样式。如果预定样式存在,则基于赖斯参数来选择阈值(例如,cTRMax),该阈值可通过具有赖斯参数的查找表作为输入表来产生。此外,因应具有第一样式的第一部分,该第一部分后的该码字的第二部分中的第二样式被EG单元806用来产生位移值以及该第二部分后的该码字的第三部分中的第三样式被第三部分确定单元808用来产生后缀值。该后缀为cRPP+1比特长度的二进制编码。因此,后缀可轻易从输入码字的最低有效位cRPP+1比特中提取。EG单元806执行指数哥伦布去二值化过程。更具体地,EG单元806执行EG0去二值化过程。接着组合单元810通过将阈值、位移值和后缀值相加计算出最后的索引值。此外,如果EG单元806执行EGk去二值化过程,则赖斯参数也被要求作为其输入。
另一方面,如果码字不包含预定样式,则对应于该码字的索引值通过使用TR单元804来产生,该TR单元804执行截断赖斯去二值化过程,以基于赖斯参数来产生商数和余数。接着可以从商数和余数获得索引值。
在一些实施例中,余数部分可以通过标识码字的一部分作为二进制数来产生,并利用第三部分确定单元来产生余数。接着基于组合单元810中的商数和余数计算得到最后的索引值。
综上所述,针对混合TR/EGk二值化方案,提供编码和解码方法,在进行编码和解码之前,先进行阈值比较,根据比较结果决定具体编码和解码的方案,结果比现有技术的方法更快、编码效率更高,需要的成本更小,也就是需要的硅面积更小。所提出的方法可以用于各种图像/视频编码系统中,如H265/HEVC。
本发明虽以较佳实施例揭露如上,然其并非用以限定本发明的范围,任何本领域技术人员,在不脱离本发明的精神和范围内,当可做些许的更动与润饰,因此本发明的保护范围当以权利要求所界定者为准。

Claims (20)

1.一种输入符号二值化的方法,使用带赖斯参数的混合截断赖斯/k阶次指数哥伦布二值化方案,其特征在于,包含:
决定阈值;
将该输入符号与该阈值做比较;
当比较结果属于第一类型比较结果时,对该输入符号使用截断赖斯二值化过程来构建码字;以及
当该比较结果属于第二类型比较结果时,对该输入符号以初始前缀和后缀来构建码字;
其中该后缀是使用指数哥伦布二值化过程而被构建的。
2.如权利要求1所述的方法,其特征在于,该第一类型比较结果指示该输入符号小于该阈值,以及该第二类型比较结果指示该输入符号等于或大于该阈值。
3.如权利要求1所述的方法,其特征在于,该阈值是基于该赖斯参数来决定的,以及该赖斯参数依据每一编码的输入符号来更新。
4.如权利要求1所述的方法,其特征在于,使用截断赖斯二值化过程来构建码字还包含使用定长码来构建该码字的后缀,其中该码字的该后缀的比特长度等于该赖斯参数。
5.如权利要求1所述的方法,其特征在于,使用截断赖斯二值化过程来构建码字的步骤包含:
依据该输入符号和该赖斯参数,形成等于一数量的1的初始前缀;
附加一个0至该初始前缀;以及
通过从二进制形式的该输入符号的最低有效位中选择,确定至少一个最低有效位作为后缀,其中该最低有效位的数量是依据该赖斯参数来决定的。
6.如权利要求1所述的方法,其特征在于,使用截断赖斯二值化过程来构建码字的步骤还包含:
通过包含该赖斯参数的输入的查找表来构建前缀。
7.如权利要求1所述的方法,其特征在于,该码字的该初始前缀不依赖于该赖斯参数被构建,以及该后缀依赖于该赖斯参数被构建。
8.如权利要求1所述的方法,其特征在于,对于该输入符号,以初始前缀和后缀来构建码字还包含:
通过从二进制形式的该输入符号的最低有效位中选择,确定至少一个最低有效位作为后缀,其中该最低有效位的数量是依据该赖斯参数来决定的。
9.如权利要求1所述的方法,其特征在于,该构建码字的步骤包含:
通过从二进制形式的该输入符号的最低有效位中选择,产生该码字的至少一个最低有效位,其中该最低有效位的数量是依据该赖斯参数来决定的。
10.如权利要求1所述的方法,其特征在于,通过使用该指数哥伦布二值化过程构建该后缀的步骤包含:
从该输入符号中减去该阈值。
11.一种用于数字视频或数字图像编码的从码字中产生索引值的方法,其特征在于,包含:
决定赖斯参数;
判定该码字是否包含第一样式;
当该码字包含该第一样式时,通过使用指数哥伦布去二值化过程来解码该码字的余数部分;以及
当该码字不包含该第一样式时,通过使用截断赖斯去二值化过程来解码该整个码字。
12.如权利要求11所述的方法,其特征在于,还包含:
当该码字包含该第一样式时,通过基于该赖斯参数决定位移来决定该第一样式的解码后的值;以及
对该指数哥伦布去二值化过程解码后的值加上该位移,以产生该索引值。
13.如权利要求11所述的方法,其特征在于,还包含基于该产生的索引值来更新该赖斯参数。
14.如权利要求11所述的方法,其特征在于,当该码字不包含该第一样式时,通过使用截断赖斯去二值化过程来解码该码字包含:基于该赖斯参数来产生商数和余数。
15.如权利要求11所述的方法,其特征在于,产生该索引值的步骤包含:
标识该码字的一部分作为二进制数;以及
将该二进制数添加至依据该码字的其他部分所解码的值。
16.一种用于数字视频或数字图像解码的从码字中产生索引值的方法,其特征在于,包含:
因应具有第一样式的该码字的第一部分决定选定阈值,其中该选定阈值是基于赖斯参数;
因应具有该第一样式的该第一部分并基于该第一部分后的该码字的第二部分中的第二样式,产生位移;
因应具有该第一样式的该第一部分并基于该第二部分后的该码字的第三部分中的第三样式,产生一数值;
将该选定阈值、该位移、以及该数值组合,以产生该索引值;以及
基于该产生的索引值,更新该赖斯参数。
17.如权利要求16所述的方法,其特征在于,基于该码字的该第二部分中的该第二样式的该位移是基于指数哥伦布去二值化过程而产生的。
18.如权利要求16所述的方法,其特征在于,基于该码字的该第三部分中的该第三样式的该数值是基于二进制定长解码而产生的,且该长度由该赖斯参数决定。
19.如权利要求16所述的方法,其特征在于,还包含:
判定该码字是否包含第一样式;以及
当该码字不包含该第一样式时,基于该赖斯参数,使用截断赖斯去二值化过程来解码该整个码字,以产生商数和余数。
20.如权利要求16所述的方法,其特征在于,还包含:
判定该码字是否包含第一样式;以及
当该码字不包含该第一样式时,使用截断赖斯去二值化过程来解码该整个码字,其中该解码包含:标识该码字的一部分作为二进制数,并将该二进制数添加至依据该码字的另一部分所产生的值。
CN201410394373.1A 2013-08-15 2014-08-12 输入符号二值化的方法以及从码字中产生索引值的方法 Active CN104378634B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/968,361 US9503760B2 (en) 2013-08-15 2013-08-15 Method and system for symbol binarization and de-binarization
US13/968,361 2013-08-15

Publications (2)

Publication Number Publication Date
CN104378634A true CN104378634A (zh) 2015-02-25
CN104378634B CN104378634B (zh) 2017-07-07

Family

ID=52466840

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410394373.1A Active CN104378634B (zh) 2013-08-15 2014-08-12 输入符号二值化的方法以及从码字中产生索引值的方法

Country Status (2)

Country Link
US (1) US9503760B2 (zh)
CN (1) CN104378634B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108243342A (zh) * 2016-12-23 2018-07-03 晨星半导体股份有限公司 二元编码运算装置以及方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3090543A4 (en) * 2013-12-30 2017-08-02 QUALCOMM Incorporated Simplification of delta dc residual coding in 3d video coding
KR20240023238A (ko) * 2018-03-29 2024-02-20 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 변환 계수 블록 코딩
CA3101091A1 (en) * 2018-06-06 2019-12-12 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
CN118175313A (zh) 2019-04-16 2024-06-11 Lg电子株式会社 图像解码和编码方法、数据的发送方法及存储介质
CN114079780A (zh) * 2020-08-20 2022-02-22 腾讯科技(深圳)有限公司 视频解码方法、视频编码方法、装置、设备及存储介质
WO2022217245A1 (en) * 2021-04-07 2022-10-13 Innopeak Technology, Inc. Remaining level binarization for video coding
US20240179304A1 (en) * 2022-11-29 2024-05-30 Tencent America LLC Systems and methods for signaling of downsampling filters for chroma from luma intra prediction mode

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1984336A (zh) * 2005-12-05 2007-06-20 华为技术有限公司 一种二进制化方法及装置
US20130114693A1 (en) * 2011-11-04 2013-05-09 Futurewei Technologies, Co. Binarization of Prediction Residuals for Lossless Video Coding
WO2013070974A2 (en) * 2011-11-08 2013-05-16 General Instrument Corporation Method of determining binary codewords for transform coefficients
US20130188727A1 (en) * 2012-01-21 2013-07-25 General Instrument Corporation Method of determining binary codewords for transform coefficients

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013116874A1 (en) * 2012-02-05 2013-08-08 General Instrument Corporation Method of determining binary codewords for transform coefficients

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1984336A (zh) * 2005-12-05 2007-06-20 华为技术有限公司 一种二进制化方法及装置
US20130114693A1 (en) * 2011-11-04 2013-05-09 Futurewei Technologies, Co. Binarization of Prediction Residuals for Lossless Video Coding
WO2013070974A2 (en) * 2011-11-08 2013-05-16 General Instrument Corporation Method of determining binary codewords for transform coefficients
US20130188727A1 (en) * 2012-01-21 2013-07-25 General Instrument Corporation Method of determining binary codewords for transform coefficients

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108243342A (zh) * 2016-12-23 2018-07-03 晨星半导体股份有限公司 二元编码运算装置以及方法

Also Published As

Publication number Publication date
CN104378634B (zh) 2017-07-07
US20150049819A1 (en) 2015-02-19
US9503760B2 (en) 2016-11-22

Similar Documents

Publication Publication Date Title
CN104378634A (zh) 输入符号二值化的方法以及从码字中产生索引值的方法
US7385535B2 (en) Decoding system and method based on context-based adaptive binary arithmetic coding
US9838034B2 (en) Method and apparatus for reordered binarization of syntax elements in CABAC
KR101994869B1 (ko) 움직임 벡터 차분값의 엔트로피 코딩
JP6352452B2 (ja) ビデオ符号化における構文の2値化とコンテキスト適応型符号化の方法と装置
TWI658702B (zh) 資料編碼及解碼
KR100750165B1 (ko) 압축률 향상을 위해 개선된 컨텍스트 모델 선택을 사용하는cabac 부호화 방법 및 장치, 그리고 cabac복호화 방법 및 장치
US7079057B2 (en) Context-based adaptive binary arithmetic coding method and apparatus
KR100729270B1 (ko) 이미지 및/또는 비디오 인코더 및 디코더에서의변환계수를 인코딩하는 방법 및 장치, 및 이에 대응하는컴퓨터 프로그램 및 컴퓨터로 읽을 수 있는 저장매체
KR102462386B1 (ko) 데이터 인코딩 및 디코딩
JP5944510B2 (ja) 構文要素のコンテキスト−適応バイナリ算術符号化(Context−AdaptiveBinaryArithmeticCoding)の方法と装置
JP2008289125A (ja) 算術復号化装置及びその方法
KR20080082147A (ko) 컨텍스트 기반 적응적 이진 산술 부호화, 복호화 방법 및장치
CN104469365A (zh) 在cabac中使用分离的绝对值和符号(savs)对dpq进行二元化
CN103931188A (zh) 语法元素的上下文自适应二进制算术编码装置及方法
CN103974066A (zh) 视频编码方法和设备
IL235057A (en) Video parameter coding method, video parameter quantization decoding method, device and program
CN100551064C (zh) 变长编码方法及装置
CN104980749A (zh) 算术编码的解码装置及方法
US8854233B2 (en) Method and system for de-binarization
JPS62108663A (ja) エントロピ−符号化方式
KR102109768B1 (ko) Uhd 영상의 고속 처리를 위한 cabac 이진 산술 부호화기
US11134249B2 (en) Binary arithmetic decoder and binary arithmetic decoding device
WO2013065262A1 (ja) 映像符号化装置、映像復号装置、映像符号化方法、映像復号方法およびプログラム
KR20160126855A (ko) 데이터 부호화 및 복호화 방법과 장치

Legal Events

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