算术译码的方法及设备技术

技术编号:13584832 阅读:43 留言:0更新日期:2016-08-24 14:20
一种在一视频译码器中具高吞吐量的熵译码的设备和方法被揭露。上述设备包括一算术译码处理电路及一可变长度译码器。上述算术译码处理电路通过一位元串流接收一视频位元串流,应用算术译码至上述视频位元串流至少一部分以推导一或多个算术译码二进制字符串,其中上述算术译码二进制字符串不包含算术编码二进制字符串,接着储存上述算术译码二进制字符串至一储存装置。上述可变长度译码器耦接至上述算术译码处理电路、上述储存装置及一可变长度译码器输出。当储存在上述储存装置中的算术译码位元串流对一选择影像单元为完整时,上述可变长度译码器接收算术译码位元串流至少一部分,译码上述算术译码位元串流至少一部分为一或多个译码语法元素,并通过上述可变长度译码器输出提供上述一或多个译码语法元素。

【技术实现步骤摘要】

专利技术是关于用于压缩数据的熵译码器。特别地,本专利技术是有关于由算术编码所产生熵编码位元串流的高吞吐量算术译码设计。
技术介绍
视频数据需要大量的储存空间来储存或一宽的频宽来传输。随着日益增长的高分辨率和高帧率,如果视频数据以未压缩的形式被储存或传输,将会需要巨大的储存或传输频宽的需求。因此,视频数据通常由使用一视频编码技术以一压缩格式被储存或被传输。编码效率已通过使用较新的视频编码标准,像是H.264/AVC及新兴的HEVC(High EfficiencyVideo Coding)(高效视频编码)标准而大幅改善。为了维持可管理的复杂性,一影像常被分为多个区块,例如宏块(Macroblock,MB)或最大编码单元(Largest Coding Unit,LCU)/编码单元(Coding Unit,CU)以应用视频编码。视频编码标准通常在一区块基础上采用自适应的帧间/帧内预测。图1为显示一支援HEVC视频标准的视频译码器100的一示例性的系统方块图。HEVC(High Efficiency Video Coding)(高效视频编码)由视频编码的联合协作小组(JointCollaborative Team on Video Coding,JCT-VC)所研发的一种新的国际视频编码标准。HEVC系基于混合区块基础的运动补偿DCT-型(DCT-1ike)变换的编码架构。压缩的基本单位,称为编码单元(coding unit,CU),是一2N×2N的平方区块。一编码单元可开始于一最大编码单元(large st CU,LCU),其在HEVC中也被称为编码树单元(coded tree unit,CTU),且每一编码单元可递回地分割成四个更小的编码单元,直到达到一个预定义的最小尺寸为止。一旦编码单元分层树的分割完成后,每一编码单元进一步根据预测类型及预测单元分割被分成的一或多个预测单元(prediction unit,PU)。每一编码单元或每一编码单元的残值被分为一转换单元(Transform units,TUs)树,以应用二维(two-dimensional,2D)转换。在图1中,首先通过使用可变长度译码器(variable length decoder,VLD)110处理输入视频位元串流以执行可变长度译码及语法分析。经分析的语法可对应外部/内部残值信号(来自可变长度译码器110中较上方的输出路径)或运动信息(来自可变长度译码器110中较下方的输出路径)。在熵编码位元串流间,一些二进制(bin)可由算术编码来编码。算术编码元素将需要一算术译码器以恢复编码数据。如图1所示,算术译码引擎132被用作熵译码引擎110的一部分。此外,算术译码操作通常较其它类型的熵译码,如可变长度编码,更为复杂。因此,相对于其他译码过程,算术译码可能相对缓慢,因而成为整体译码器吞吐量的瓶颈。残余信号通常被转换编码。因此,编码残值信号是通过逆扫描(inverse scan,IS)/逆量化(inverse quantization,IQ)方块112,以及逆转换(inverse transform,IT)方块114所处理。逆转换(inverse transform,IT)方块114的输出对应重建残值信号。重建残值信号连同与通过帧间/帧内选择方块122来自帧内预测方块118中用于一帧内编码区块的帧内预测或来自运动补偿方块120中用于一帧间编码区块的帧间预测被加到重建方块116中。帧间/帧内选择方块122选择用于重建视频信号的帧内预测或帧间预测取决于上述区是否为帧间或帧内编码。对于运动补偿,上述处理将存取储存在已编码图像缓冲器124中的一或多个参考区块及由运动矢量(motion vector,MV)产生方块126所决定的运动矢量。为了改善视觉质量,去块滤波器128及取样自适应偏移(Sample Adaptive Offset,SAO)滤波器(130)被用以在已重建视频被储存在译码图像缓冲器124之前处理已重建视频。在H.264/AVC的标准中,只有使用去块滤波器(deblocking filter,DF),而无需取样自适应偏移滤波器。图2为显示一具有内建音频/视频译码器的一典型的电子系统,如一电视。如图2所示,该系统使用一CPU总线及动态随机存取存储器(dynamic random access memory,DRAM)总线。外部存储器储存器(210)用于储存用于视频译码的参考图像、用于显示的译码图像以及其它数据的译码图像。外部存储器储存器通常使用动态随机存取存储器(dynamicrandom access memory,DRAM)。外部存储器存取引擎(220)被用以连接外部存储器储存器至数据总线。该系统可包括一CPU(230)、一视频译码器(240)、一音频引擎(250)和一显示引擎(260)。视频译码器240将执行压缩视频数据的视频译码任务。音频引擎250将已压缩音频数据的进行音频译码。音频引擎250还可以支援其他音频任务,像是产生用于使用者界面的音频提示。显示引擎260负责处理视频显示及产生显示信息。举例来说,该显示引擎260可以产生用于使用者界面的图形或文字信息。该显示引擎也负责合并用于主视窗及副视窗口显示、或分割荧幕显示的两个已译码视频数据。该CPU230可被用以初始化系统、控制其他子系统、或提供用于该电子系统的使用者界面。算术编码系为高效率熵编码工具且已被广泛用于先进视频编码系统中,上述操作为高数据相关。图3显示基于上下文自适应性二进制算术编码(context-based adaptivebinary arithmetic coding,CABAC)过程的一示例性方块图。由于CABAC引擎中算术编码器可以仅编码二进制符元值,CABAC过程需转换语法元素值为使用二值化器(binarizer)(310)的一二进制字符串。此转换过程通常称为二值化。在编码过程中,机率模型逐渐从不同上下文中的编码符号中建立起来。上下文建模器(320)用于建立模型目的且模型使用译码输出数据进行更新。因此,来自常规编码引擎(330)的上下文建模器(320)输出的一路径335被提供。在正常基于上下文编码间,常规编码引擎(330)被使用,其对应一二进制算术编码器。用于编码下一二进制符元的建模上下文的选择可以由编码信息来决定。符元也可无须上下文建模阶段而编码并假定相等的机率分布,其通常被称为旁路(bypass)模式,用以降低复杂性。对于旁路符元,一旁路编码引擎(340)可以被使用。如图3所示,开关(S1、S2及S3)被用以指引在常规CABA模式与旁路模式之间的数据流。当常规CABAC模式被选择时,开关被转至与上方接触。当旁路模式被选择时,开关被转至与下方接触。对于算术编码,上下文形成和上下文更新为高数据相关。上下文模型可涉及多个相邻重建样本。此外,上下文更新必须等待直到所涉及样本为可用时。算术译码器可成为在译码过程中吞吐量的瓶颈。因此,开发高吞吐量算术译码器是值得期待的。
技术实现思路
一种在一视频译码器中具高吞吐量熵译码的方法及设备被揭露。上述设备包括一算术译码处理电路及一可变长度译码器(variable-length decoder,VLD)。上述本文档来自技高网
...

【技术保护点】
一种在一视频译码器中使用可变长度编码和算术编码所编码的二进制字符串的熵译码的方法,上述方法包括:接收与视频数据相关的一视频位元串流的输入数据;应用算术译码至上述视频位元串流至少一部分以推导出一或多个算术译码二进制字符串,其中上述一或多个算术译码二进制字符串不包括算术编码二进制字符串;储存上述一或多个算术译码二进制字符串在一存储器中;当储存在上述存储器中的算术译码位元串流对一选择影像单元为完整时,从上述存储器中接收上述算术译码位元串流至少一部分,用于一可变长度译码器,其中上述算术译码位元串流包括用于上述选择影像单元的算术译码二进制字符串;以及译码上述算术译码位元串流至少一部分为一或多个译码语法元素。

【技术特征摘要】
2015.02.17 US 62/117,101;2016.02.04 US 15/016,2211.一种在一视频译码器中使用可变长度编码和算术编码所编码的二进制字符串的熵译码的方法,上述方法包括:接收与视频数据相关的一视频位元串流的输入数据;应用算术译码至上述视频位元串流至少一部分以推导出一或多个算术译码二进制字符串,其中上述一或多个算术译码二进制字符串不包括算术编码二进制字符串;储存上述一或多个算术译码二进制字符串在一存储器中;当储存在上述存储器中的算术译码位元串流对一选择影像单元为完整时,从上述存储器中接收上述算术译码位元串流至少一部分,用于一可变长度译码器,其中上述算术译码位元串流包括用于上述选择影像单元的算术译码二进制字符串;以及译码上述算术译码位元串流至少一部分为一或多个译码语法元素。2.如权力要求1所述的方法,其中上述算术译码包括执行基于上下文译码,以基于一上下文模型产生一或多个译码位元(bin),以及根据上述上下文译码位元更新上述上下文模型。3.如权力要求1所述的方法,其中上述选择影像单元对应一图像、切片、宏块列、一编码树单元列、一宏块、一编码树单元、一编码单元或一区块。4.如权力要求1所述的方法,其中上述可变长度译码器能译码一或多个可变长度译码器码。5.如权力要求4所述的方法,其中上述一或多个可变长度译码器码包括霍夫曼码、一元码及指数哥伦布码。6.如权力要求1所述的方法,其中上述算术译码为平行使用多个算术译码处理电路以被应用至于至少一部分的上述视频位元串流至少一部分的平行使用多个算术译码处理电路。7.如权力要求1所述的方法,更进一步包括检查储存在上述存储器中用于上述选择影像单元的上述算术译码位元串流中的任何错误。8.如权力要求7所述的方法,更进一步包括当检测到任何错误时,提供错误信息给一之后的视频译码器用于处理错误。9.如权力要求1所述的方法,其中一算术译码处理电路用于上述算术译码,以及上述算术译码处理电路及上述可变长度译码器被安排用以执行在选择影像单元中同时执行管线化算术译码和可变长度译码。10.如权力要求9所述的方法,其中每一选择影像单元对应一编码树单元或一宏块。11.一种在一视频译码器中使用可变长度编码和...

【专利技术属性】
技术研发人员:郑佳韵张永昌
申请(专利权)人:联发科技股份有限公司
类型:发明
国别省市:中国台湾;71

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1