一种视频解码方法及装置的制作方法

文档序号:7710455阅读:82来源:国知局
专利名称:一种视频解码方法及装置的制作方法
技术领域
本申请涉及视频解码领域,特别涉及一种视频解码方法及装置。
背景技术
在视频解码领域中,解码流程通常包括以下几个步骤熵解码、变换系数解码、反 扫描、反变换、帧内预测或帧间运动补偿、滤波平滑处理。顺序经过这几个步骤后便可以从 编码码流解码得到一帧视频图像,按此步骤连续解码多帧视频图像便组成最终观看到的视 频影像。在上述视频解码流程中,在得到熵解码结果后,需要对获得的熵解码结果进行变 换系数解码以及反扫描,才能得到反变换的输入数据。针对这一环节,通常采用游程码对 (run-level)的编码形式来对熵解码结果内包含的变换系数进行描述,术语上将这种游程 码对称为“游程编码数据”,英文表示为“rlc data", rlc是单词rim、level, coded的首字 母缩写,其中,rim表示游程码数据中连续存在的零数据的个数,level表示排列在这些零 数据后面的一个非零数据的具体取值。现有技术下,对采用rim-level编码形式的熵编码 结果进行变换系数解码时,通常采用以下方式每获得一个rlc data时,分开记录其中的rim值(假设为χ)和level值(假设 为m),接着,在解码结果存储区域内的前χ个地址单元中填充χ个0,并在第x+1个地址单 元中填充level值m ;如此反复获取多个rlc data,并顺序填充至解码结果存储区域内的 相应位置,直至熵解码结果包含的rlc data全部处理完毕,便得到了变换系数解码的结果。 例如,假设需要对一个4x4大小的图像块的熵解码结果进行变换系数解码,并且将变换系 数解码后得到的16个变换系数解码结果值分别称为resultO reSUltl5,那么,假设获得 的第一个rlc data中run值=2,level值=99,则4x4大小图像块的变换系数解码结果 值内的 resultO = 0、resultl = 0、result2 = 99 ;假设获得的第二个 rlc data 中 run 值 =12,level值=120,则4x4大小图像块的变换系数解码结果值内的result3 resultl4 均等于0,resultl5 = 120,至此,便完成了 4x4大小图像块的变换系数解码,得到16个变 换系数 resultO resultl5。随着视频解码技术的发展,针对熵解码结果,已提出了一类新的编码形式,这种新 的编码形式,不再使用连串零附加一个非零系数的rim-level方式对熵解码结果内包含的 变换系数进行描述,而是对一个4x4大小图像块的变换系数进行“区域性”的描述,它将该 4x4图像块划分为四个2x2子区域,对每个存在非零变换系数的子区域进行具体的变换系 数编码表述,而对于全零的子区域则只用一个标志信息指示。例如,首先给出图像块左上角 2x2子区域的变换系数信息(因为非零的变换系数往往集中在图像块的左上角),如果图像 块仅在左上角2x2子区域存在非零变换系数,则只需具体描述这一块的信息,对于其他三 个2x2子区域只需使用一个标志符号指示它们没有取值,即可表示出其他三个2x2子区域 部分全部为零。如果其他三个2x2子区域还存在非零变换系数,则再继续给出另一块2x2 子区域的变换系数信息。如此反复执行,直至表述完整个4x4图像块的变换系数情况。
采用新的编码形式对熵解码结果进行描述后,现有的针对rim-level型熵解码结 果进行变换系数解码的方法便已不再适用,因为,一方面它不能针对区域传输信息进行解 码,另外一方面它不能通过原有的统计、填充方法来解码非rim-level型的变换系数。有鉴于此,为了适应这类新的熵解码结果编码结构,需要提出一种新的变换系数 解码方法。

发明内容
本申请实施例提供一种视频解码方法及装置,用以适应新型的熵解码结果编码结 构。本申请实施例提供一种视频解码方法,在对视频编码码流进行熵解码后,对熵解 码所产生的数据进行变换系数解码,对熵解码所产生的数据进行变换系数解码包括按照 设定数据长度读取视频编码码流经熵解码后产生的数据,在每读取一次设定长度的数据 后,根据读取的数据针对相应单位图像块的变换系数进行解码,其中,针对一个单位图像块 进行变换系数解码包括确定读取的设定长度的数据中每一个比特位的取值,作为标志位解码结果,并对 该标志位解码结果进行保存;若根据所述标志位解码结果确定本次读取的设定长度的数据中包含常数变换系 数,则根据该标志位解码结果获得所述常数变换系数的解码值;若根据所述标志位解码结果确定本次读取的设定长度的数据中包含逃逸escape 数据变换系数,则在指定时机继续按照设定长度读取数据,并根据继续读取的数据获得所 述escape数据变换系数的解码值。本申请实施例还提供一种视频解码装置,所述装置在对视频编码码流进行熵解码 后,对熵解码所产生的数据进行变换系统解码,所述视频解码装置包括读取单元,用于按照设定数据长度读取视频编码码流经熵解码后产生的数据;解码单元,用于在每读取一次设定长度的数据后,根据读取的数据针对相应单位 图像块的变换系数进行解码,该解码单元具体包括标志位解码单元,用于对所确定读取的设定长度的数据中每一个比特位的取值, 作为标志位解码结果;存储单元,用于保存所述标志位解码结果;第一处理单元,用于根据所述标志位解码结果确定本次读取的设定长度的数据中 包含常数变换系数时,根据该标志位解码结果获得所述常数变换系数的解码值;第二处理单元,用于根据所述标志位解码结果确定本次读取的设定长度的数据中 包含逃逸escape数据变换系数时,在指定时机继续按照设定长度数据,并根据继续读取的 数据获得所述escape数据变换系数的解码值。采用上述变换系数解码方案,可以适应新型的熵解码结果编码结构,从而使视频 解码技术得到了进一步的发展,另一方面,每一次读取的设定长度的数据内每个比特位的 具体含义可以根据应用环境而进行相应调整,只需在后续流程中对具体标志位的含义记录 进行适应性调整即可,整体流程并不需要进行大规模调整,从而减少了后期维护的工作量, 节省了维护成本。


图1为本申请实施例中熵解码结果结构示意图;图2-图4为图1的熵解码结果中L4、L5和L6包含的数据结构示意图;图5A为本申请实施例中反扫描前数据位置示意图;图5B为本申请实施例中反扫描后数据位置示意图;图6为本申请实施例中,熵解码结果读取方式示意图;图7为本申请实施例中用于进行变换系数解码的控制装置功能结构示意图;图8为本申请实施例中控制装置进行变换系数解码流程图;图9为本申请实施例中4*4block基地址及偏移量示意图。
具体实施例方式本申请实施例中,在视频解码过程内,针对采用新型编码结构的熵解码结果所提 出的视频解码方法包括在对视频编码码流进行熵解码后,按照设定数据长度读取视频编 码码流经熵解码后产生的数据,在每读取一次设定长度的数据后,根据读取的数据针对一 个单位图像块的变换系数进行解码,其中,针对单位图像块进行变换系数解码包括确定读 取的设定长度的数据中每一个比特位的取值,作为标志位解码结果,并对该标志位解码结 果进行保存;若根据所述标志位解码结果确定本次读取的设定长度的数据中包含常数变 换系数,则根据该标志位解码结果获得所述常数变换系数的解码值(以下称为常数level 值);若根据所述标志位解码结果确定本次读取的设定长度的数据中包含逃逸escape数 据变换系数,则在指定时机继续按照设定长度读取数据,并根据继续读取的数据获得所述 escape数据变换系数的解码值(以下称为escape数据level值)。基于上述方案,为了进一步提高视频解码流程的整体执行效率,较佳的,每获得一 个常数level值或者escape数据level值,便通过反扫描操作确定其需要写入的寄存器地 址,并将获得的一个常数level值或者escape数据level值写入相应的寄存器。下面对非全零4X4block为例,对本申请实施例中变换系数解码的流程进行概括 性介绍。假设某个非全零4x4block的熵解码结果的数据结构如图1所示。实际应用中,熵 解码结果内包含的变换系数通常分为两类,一类为常数变换系数,一类为escape数据变换 系数。本申请实施例中,对熵解码结果进行变换系数解码时,先依次对4x4block内的各个 2x2block包含的常数变换系数进行“区域性”解码,再依次对4X4block内的各个2x2block 包含的escape数据变换系数进行“区域性”解码,对一个2X2block每解码一次,都需要输 入一轮16比特的数据。本申请实施例中,视频解码装置会按照以下步骤对获得的熵解码结果进行变换系 数解码(1)第一轮输入如图1所示,4x4图像单元被划分为LO L6几个部分,第一轮输入总共输入16比 特数据,用于解码level 0、level 1、level 2和level3 (分别对应于图1中的L0、Li、L2 和L3);该16比特数据用于传输IevelO level3这四个数据的取值信息、符号位以及L4、L5、L6中是否存在下层2x2block的信息。参阅表1所示,第一轮输入的16比特数据的各 比特位的含义如下表 权利要求
一种视频解码方法,在对视频编码码流进行熵解码后,对熵解码所产生的数据进行变换系数解码,其特征在于,对熵解码所产生的数据进行变换系数解码包括按照设定数据长度读取视频编码码流经熵解码后产生的数据,在每读取一次设定长度的数据后,根据读取的数据针对相应单位图像块的变换系数进行解码,其中,针对单位图像块进行变换系数解码包括确定读取的设定长度的数据中每一个比特位的取值,作为标志位解码结果,并对该标志位解码结果进行保存;若根据所述标志位解码结果确定本次读取的设定长度的数据中包含常数变换系数,则根据该标志位解码结果获得所述常数变换系数的解码值;若根据所述标志位解码结果确定本次读取的设定长度的数据中包含逃逸escape数据变换系数,则在指定时机继续按照设定长度读取数据,并根据继续读取的数据获得所述escape数据变换系数的解码值。
2.如权利要求1所述的方法,其特征在于,在根据读取的数据针对相应单位图像块的 变换系数进行解码之前包括根据熵解码产生的数据中指定标志位的取值判断需解码的所 有单位图像块是否均为全零图像块,若是中,则结束当前变换系数解码流程;否则,执行针 对单位图像块的变换系数进行解码的过程。
3.如权利要求1所述的方法,其特征在于,根据所述标志位解码结果确定本次读取的 设定长度的数据中包含常数变换系数包括根据所述标志位解码结果中指定标志位的取 值,计算出本次读取的设定长度的数据包含的常数变换系数总数目Ni,若m > 0,则确定本 次读取的设定长度的数据中包含常数变换系数;m为整数;以及根据所述标志位解码结果确定本次读取的设定长度的数据中包含escape数据变换系 数包括根据所述标志位解码结果中指定标志位的取值,计算出本次读取的设定长度的数 据包含的escape数据变换系数总数目N2,若N2 > 0,则确定本次读取的设定长度的数据中 包含escape数据变换系数;N2为整数。
4.如权利要求1所述的方法,其特征在于,根据所述标志位解码结果获得常数变换系 数的解码值包括根据所述标志位解码结果中与该常数变换系数对应的标志位的取值,获得常数变换系 数解码值的绝对值和正/负符号。
5.如权利要求1所述的方法,其特征在于,所述指定时机为确定获得标志位解码结果 的次数达到设定阈值。
6.如权利要求5所述的方法,其特征在于,在指定时机继续按照设定长度读取数据,并 根据继续读取的数据获得escape数据变换系数的解码值包括每读取到一个设定长度的 数据,截取其中的指定长度的数据作为相应的escape数据变换系数的解码值。
7.如权利要求1-6任一项所述的方法,其特征在于,在获得一个常数变换系数的解码 值或者escape数据变换系数的解码值后包括通过反扫描操作确定其需要写入的寄存器 地址,并将该常数变换系数的解码值或者escape数据变换系数的解码值写入相应的寄存ο
8.如权利要求7所述的方法,其特征在于,通过反扫描操作确定一个常数变换系数的 解码值或者escape数据变换系数的解码值需要写入的寄存器地址包括2确定所述一个常数变换系数的解码值或者escape数据变换系数的解码值的基地址和 偏移量;将获得的基地址和偏移量进行拼接,得到相应的寄存器地址;其中,所述基地址为所述一个常数变换系数的解码值或者escape数据变换系数的解 码值归属的单位图像块的标识信息,所述偏移量为所述一个常数变换系数的解码值或者 escape数据变换系数的解码值在其归属的单位图像块中具体位置的标识信息。
9.一种视频解码装置,所述装置在对视频编码码流进行熵解码后,对熵解码所产生的 数据进行变换系统解码,其特征在于,所述视频解码装置包括读取单元,用于按照设定数据长度读取视频编码码流经熵解码后产生的数据;解码单元,用于在每读取一次设定长度的数据后,根据读取的数据针对相应单位图像 块的变换系数进行解码,该解码单元具体包括标志位解码单元,用于对所确定读取的设定长度的数据中每一个比特位的取值,作为 标志位解码结果;存储单元,用于保存所述标志位解码结果;第一处理单元,用于根据所述标志位解码结果确定本次读取的设定长度的数据中包含 常数变换系数时,根据该标志位解码结果获得所述常数变换系数的解码值;第二处理单元,用于根据所述标志位解码结果确定本次读取的设定长度的数据中包含 逃逸escape数据变换系数时,在指定时机继续按照设定长度数据,并根据继续读取的数据 获得所述escape数据变换系数的解码值。
10.如权利要求9所述的装置,其特征在于,所述第一处理单元根据所述标志位解码结 果,计算常数变换系数的解码值时,根据所述标志位解码结果中与该常数变换系数对应的 标志位的取值,获得常数变换系数解码值的绝对值和正/负符号。
11.如权利要求9所述的装置,其特征在于,所述第二处理单元在获知标志位解码单元 获得标志位解码结果的次数达到设定阈值时,确定符合所述指定时机,并指示读取单元继 续按照设定长度读取数据,每获得一个设定长度的数据,便截取其中的指定长度的数据作 为相应escape数据变换系数的解码值。
12.如权利要求9-11任一项所述的装置,其特征在于,还包括反扫描单元,用于在解码单元每获得一个常数变换系数的解码值或者escape数据变 换系数的解码值后,通过反扫描操作确定其需要写入的寄存器地址,并将获得的一个常数 变换系数的解码值或者escape数据变换系数的解码值写入相应的寄存器。
13.如权利要求12所述的装置,其特征在于,所述反扫描单元确定一个常数变换系数 的解码值或者escape数据变换系数的解码值需要写入的寄存器地址时,先确定所述一个 常数变换系数的解码值或者escape数据变换系数的解码值的基地址和偏移量,再将获得 的基地址和偏移量进行拼接,以获得相应的寄存器地址;其中,所述基地址为所述一个常数 变换系数的解码值或者escape数据变换系数的解码值归属的单位图像块的标识信息,所 述偏移量为所述一个常数变换系数的解码值或者escape数据变换系数的解码值在其归属 的单位图像块中具体位置的标识信息。
14.如权利要求9所述的装置,其特征在于,所述视频解码装置还包括解码器,用于从至少两个存储器中按照乒乓操作方式读取设定长度的数据,并将获得的数据传输至所述读取单元。
全文摘要
本申请公开了一种视频解码方法及装置,该方法包括按照设定数据长度读取视频编码码流经熵解码后产生的数据,每读取一次设定长度的数据,便根据其针对相应单位图像块的变换系数进行解码,包括确定读取的设定长度的数据中每一个比特位的取值,作为标志位解码结果并保存;若根据所述标志位解码结果确定本次读取的设定长度的数据中包含常数变换系数,则根据该标志位解码结果获得所述常数变换系数的解码值;若根据所述标志位解码结果确定本次读取的设定长度的数据中包含逃逸escape数据变换系数,则在指定时机继续按照设定长度读取数据,并根据其获得所述escape数据变换系数的解码值。
文档编号H04N7/30GK101959064SQ200910158568
公开日2011年1月26日 申请日期2009年7月14日 优先权日2009年7月14日
发明者易湖, 李洁珺 申请人:炬力集成电路设计有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1