CN101267559A - 视频解码器的通用熵解码方法及装置 - Google Patents
视频解码器的通用熵解码方法及装置 Download PDFInfo
- Publication number
- CN101267559A CN101267559A CN 200810037106 CN200810037106A CN101267559A CN 101267559 A CN101267559 A CN 101267559A CN 200810037106 CN200810037106 CN 200810037106 CN 200810037106 A CN200810037106 A CN 200810037106A CN 101267559 A CN101267559 A CN 101267559A
- Authority
- CN
- China
- Prior art keywords
- decoding
- syntax element
- entropy
- entropy decoding
- bit
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 230000003044 adaptive effect Effects 0.000 claims description 7
- 238000007906 compression Methods 0.000 claims description 3
- 230000006835 compression Effects 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一种多媒体数字信号处理领域的视频解码器的通用熵解码方法及装置,本发明熵解码方法根据视频解码中各种熵解码之间的相似性关系,将视频解码运算重组为比特解码、语法元素解码、熵解码控制三个部分。本发明视频解码器中的熵解码装置,包括:比特解码模块,语法元素解码模块和控制模块、存储器。本发明方法中在每个步骤内的运算具有相似的运算粒度和数据局部特性,有利于合理地分配运算资源,简化视频解码器中通用熵解码装置的内部接口,提高视频解码中熵解码的效率。
Description
技术领域
本发明涉及一种多媒体数字信号处理领域的方法及装置,具体是一种视频解码器的通用熵解码方法及装置。
背景技术
目前最新的视频编解码技术,包括MPEG-x系列、H.26x系列和中国的AVS标准等,其中熵编码技术采用了变长编码技术、基于上下文的自适应变长编码技术(CAVLC:Context-based Adaptive Variable Length Coding)和基于上下文的算术编码技术(CABAC:Context-based Adaptive Binary Arithmetic Coding),从而达到了很高的数据压缩率。
经对现有技术的文献检索发现,专利号为200410093097.1,专利名称为“单时钟周期可变长熵解码装置”,该专利中,从外部读取的码字首先送入FIFO缓存器中缓存,FIFO缓存器的输出端口为整字宽,FIFO缓存器的读取信号由长度累加器进位信号控制,FIFO缓存器的输出送入第一级桶型移位寄存器中锁存,在当前解码符号长度累加和控制下移位,移位输出信号送入第二级桶型移位寄存器中,第二级桶型移位寄存器的移位由当前解码符号长度控制,经过两级桶型移位寄存器处理后的数据通过内部互连总线送到硬件查表单元,通过选通器选择一个工作子表的结果作为输出。该专利的局限在于,只能进行变长熵解码,并不能适应于现在的最新的视频编解码记数,例如基于上下文的算术编码技术等。
发明内容
本发明针对上述现有技术的不足,提供了一种视频解码器的通用熵解码方法及装置,使其将视频熵解码分重组为比特解码、语法元素解码、熵解码控制三个步骤,在每个步骤内的运算具有相似的性质,从而有利于合理地分配运算资源,提高视频熵解码的效率。
本发明是通过如下技术方案实现的。
本发明提供了一种视频解码器的通用熵解码方法,包括如下步骤:
步骤一,输入一段已压缩的的视频比特流,根据该比特流遵循的视频压缩标准,决定比特流应用的熵解码模式,并得到上下文参数;
所述的熵解码模式,是指各视频标准中对于熵解码的模式,包括算术解码模式、定长解码模式和变长解码模式,变长解码模式又分为有符号指数哥伦布解码、无符号指数哥伦布解码、一阶到三阶的指数哥伦布解码、截断式指数哥伦布解码、特殊语法元素查表等。
所述的上下文参数,是指在基于上下文的自适应变长解码或基于上下文的算术解码中,解码时所需的已解码相邻块的语法元素信息。
步骤二,如果熵解码模式为算术解码,根据步骤一中的熵解码模式和上下文参数进行算术解码,得到算术解码后的比特并输出;如果熵解码模式为定长解码或变长解码,则直接输出原始比特。
步骤三,根据第一步中所得到的熵解码模式和上下文参数、第二步中所得到的比特,进行语法元素解码,循环步骤二和步骤三,直到解码得到一个语法元素完成并输出,并记录后续熵解码所需的语法元素信息;
所述的语法元素信息,是指与比特流中的码字对应的,能够通过定长解码、变长解码和基于上下文解码等熵解码方法得到的信息。
步骤四,循环以上第一步到第三步,直到解码完成所有的输入比特流。
本发明还提供一种视频解码器中的通用熵解码装置,包括:比特解码模块、语法元素解码模块、控制模块、存储器,其中:
比特解码模块中输入比特流,并从控制模块中接收熵解码模式信息和上下文参数;
在算术解码模式下,进行算术解码中的比特解码,比特解码即根据上下文参数选取表格查表,并根据输入的比特流解码出一个比特,将处理后的比特输出到语法元素解码模块;
在定长解码或变长解码模式下,将输入的比特流直通输出到语法元素解码模块。
语法元素解码模块接受比特解码模块输出的比特和控制模块中的熵解码模式和上下文参数,进行语法元素解码,并将解码得到的语法元素信息传输给控制模块;
控制模块接受语法元素解码模块输出的语法元素信息,将后续基于上下文熵解码会用到的语法元素存入存储器,并从存储器中取得下一个语法元素解码所需的相邻宏块的语法元素,根据MPEG-x系列、H.26x系列或中国的AVS标准计算得到上下文参数,并得到下一个语法元素的熵解码模式;然后将下一个语法元素的熵解码模式和所需的上下文参数输出给比特解码模块和语法元素解码模块;
存储器中存储控制模块存入的后续基于上下文熵解码会用到的语法元素。
所述语法元素解码模块,其根据控制模块输出的熵解码模式和上下文参数将比特解码模块输出的比特解码为语法元素,解码模式包括定长解码、有符号指数哥伦布解码、无符号指数哥伦布解码、一阶到三阶的指数哥伦布解码、截断式指数哥伦布解码、特殊语法元素查表等。
与现有技术相比,本发明具有以下有益效果:本发明根据视频解码中各种熵解码之间的相似性关系,将视频解码运算重组为比特解码、语法元素解码、熵解码控制(包含上下文参数存储与读取)三个步骤,并根据三个步骤提供了的相应的装置,在每个步骤内的运算具有相似的运算粒度和数据局部特性,从而有利于合理地分配运算资源,简化视频解码器中通用熵解码装置的内部接口,提高视频解码中熵解码的效率,其中算术熵解码模式下平均每时钟周期解码比特数达到0.66以上,变长熵解码模式下每时钟周期解码比特数达到0.72以上。
附图说明
图1是本发明的熵解码方法的流程图;
图2是本发明熵解码装置的结构框图。
具体实施方式
下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
本实施例基于H.264标准基准规格(MAIN PROFILE)。
如图1所示,本实施例提供了一种视频解码中通用熵解码方法,包括如下步骤:
步骤一,输入一段的视频比特流,根据该比特流遵循的视频压缩标准,决定对其应用何种熵解码模式,本实施例中熵解码模式为算术解码,同时得到上下文参数;
所述的熵解码模式,是指不同视频标准中对于熵解码的不同模式,包括算术解码模式、定长解码模式和变长解码模式,变长解码模式又分为有符号指数哥伦布解码、无符号指数哥伦布解码、一阶到三阶的指数哥伦布解码、截断式指数哥伦布解码、特殊语法元素查表等。本实施例中为选取了上下文参数的基于上下文的算术解码技术(CABAC:Context-based Adaptive Binary Arithmetic Coding)。
所述的上下文参数,是指在基于上下文的自适应变长解码或基于上下文的算术解码中,熵解码时所需的已解码相邻块的语法元素信息。本实施例中为熵解码时所需的已解码相邻块的语法元素信息,包括宏块类型(MB TYPE)、8x8块解码信息(TRANSFORM SIZE 8X8 FLAG)、场解码信息(MB FIELD DECODING FLAG)、宏块跳跃信息(MB SKIP FLAG)、块幅值存在信息(CODED BLOCK PATTERN & CODEDBLOCK FLAG)、运动矢量残差(MVD)以及参考索引(REF INDEX)等宏块级别以及宏块以下级别语法元素信息。
步骤二,根据第一步中的熵解码模式和上下文参数进行算术解码,得到算术解码后的比特并输出。
步骤三,据第一步中所得到的熵解码模式和上下文参数、第二步中所得到的比特,进行语法元素解码,循环步骤二和步骤三,直到得到解码一个语法元素完成并输出,并记录后续熵解码所需的语法元素信息。
所述的语法元素信息,是指与比特流中的码字对应的,能够通过定长解码、变长解码和基于上下文解码等熵解码方法得到的信息。在本实施例中,语法元素包括宏块类型(MB TYPE)、8x8块解码信息(TRANSFORM SIZE 8X8 FLAG)、场解码信息(MB FIELD DECODING FLAG)、宏块跳跃信息(MB SKIP FLAG)、幅值信息(RUN-LEVEL)、运动矢量残差(MVD)以及参考索引(REF INDEX)等宏块级别以及宏块以下级别语法元素信息。
步骤四,循环以上第一步到第三步,直到解码完成所有的输入比特流。
如图2所示,本实施例涉及的视频解码器中的通用熵解码装置,包括:比特解码模块、语法元素解码模块、控制模块、存储器,其中:
比特解码模块中输入比特流,接受控制模块的熵解码模式信息和上下文参数。在算术解码模式下,进行算术解码中的比特解码,比特解码即根据熵解码模式信息和上下文参数选取表格查表,并根据输入的比特流解码出一个比特。在定长解码或变长解码模式下,将输入的比特流直通输出。然后将处理后的比特输出到语法元素解码模块;
语法元素解码模块接受比特解码模块输出的比特和控制模块输出的熵解码模式和上下文参数,进行语法元素解码。语法元素解码即根据控制模块输出的熵解码模式和上下文参数将比特解码模块输出的比特解码为语法元素,包括定长解码、有符号指数哥伦布解码、无符号指数哥伦布解码、一阶到三阶的指数哥伦布解码、截断式指数哥伦布解码、特殊语法元素查表等解码模式。然后将解码得到的语法元素信息传输给控制模块;
控制模块接受语法元素解码模块输出的语法元素信息,将后续基于上下文熵解码会用到的语法元素存入存储器,并从存储器中取得下一个语法元素解码所需的上下文参数,并根据标准得到下一个语法元素的熵解码模式。然后将下一个语法元素的熵解码模式和所需的上下文参数输出给比特解码模块和语法元素解码模块;
存储器中存储控制模块存入的后续基于上下文熵解码会用到的语法元素。
所述语法元素解码模块,其根据控制模块输出的熵解码模式和上下文参数将比特解码模块输出的比特解码为语法元素,包括定长解码、有符号指数哥伦布解码、无符号指数哥伦布解码、一阶到三阶的指数哥伦布解码、截断式指数哥伦布解码、特殊语法元素查表等解码模式。
本实施例根据视频解码中各种熵解码之间的相似性关系,将视频解码重组为比特解码、语法元素解码、熵解码控制(包含上下文参数存储与读取)三个步骤,并根据三个步骤提供了的相应的装置,在每个步骤内的运算具有相似的运算粒度和数据局部特性,从而有利于合理地分配运算资源,简化视频解码器中通用熵解码装置的内部接口,提高视频解码中熵解码的效率,其中算术熵解码模式下平均每时钟周期解码比特数达到0.66以上,变长熵解码模式下每时钟周期解码比特数达到0.72以上。
Claims (6)
1.一种视频解码器的通用熵解码方法,其特征在于,包括以下步骤:
步骤一,输入一段已压缩的的视频比特流,根据该比特流遵循的视频压缩标准,决定比特流应用的熵解码模式,并得到上下文参数;
步骤二,如果熵解码模式为算术解码,根据步骤一中的熵解码模式和上下文参数进行算术解码,得到算术解码后的比特并输出;如果熵解码模式为定长解码或变长解码,则直接输出原始比特;
步骤三,根据第一步中所得到的熵解码模式和上下文参数、第二步中所得到的比特,进行语法元素解码,循环步骤二和步骤三,直到解码得到一个语法元素完成并输出,并记录后续熵解码所需的语法元素信息;
步骤四,循环以上第一步到第三步,直到解码完成所有的输入比特流。
2.根据权利要求1所述的视频解码器的通用熵解码方法,其特征是,所述的熵解码模式,是指各视频标准中对于熵解码的模式,包括算术解码模式、定长解码模式和变长解码模式,变长解码模式又分为有符号指数哥伦布解码、无符号指数哥伦布解码、一阶到三阶的指数哥伦布解码、截断式指数哥伦布解码、特殊语法元素查表。
3.根据权利要求1所述的视频解码器的通用熵解码方法,其特征是,所述的上下文参数,是指在基于上下文的自适应变长解码或基于上下文的算术解码中,解码时所需的已解码相邻块的语法元素信息。
4.根据权利要求1或3所述的视频解码器的通用熵解码方法,其特征是,所述的语法元素信息,是指与比特流中的码字对应的,能够通过定长解码、变长解码和基于上下文解码熵解码方法得到的信息。
5.一种视频解码器中的通用熵解码装置,其特征在于,包括:比特解码模块、语法元素解码模块、控制模块、存储器,其中:
比特解码模块中输入比特流,并从控制模块中接收熵解码模式信息和上下文参数,在算术解码模式下,比特解码模块进行算术解码中的比特解码,比特解码即根据上下文参数选取表格查表,并根据输入的比特流解码出一个比特,将处理后的比特输出到语法元素解码模块;在定长解码或变长解码模式下,比特解码模块将输入的比特流直通输出到语法元素解码模块;
语法元素解码模块接受比特解码模块输出的比特和控制模块中的熵解码模式和上下文参数,进行语法元素解码,并将解码得到的语法元素信息传输给控制模块;
控制模块接受语法元素解码模块输出的语法元素信息,将后续基于上下文熵解码会用到的语法元素存入存储器,并从存储器中取得下一个语法元素解码所需的相邻宏块的语法元素,根据MPEG-x系列、H.26x系列或中国的AVS标准计算得到上下文参数,并得到下一个语法元素的熵解码模式,然后将下一个语法元素的熵解码模式和所需的上下文参数输出给比特解码模块和语法元素解码模块;
存储器中存储控制模块存入的后续基于上下文熵解码会用到的语法元素。
6.根据权利要求5所述的视频解码器的通用熵解码装置,其特征是,所述语法元素解码模块,其根据控制模块输出的熵解码模式和上下文参数将比特解码模块输出的比特解码为语法元素,解码模式包括定长解码、有符号指数哥伦布解码、无符号指数哥伦布解码、一阶到三阶的指数哥伦布解码、截断式指数哥伦布解码、特殊语法元素查表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810037106 CN101267559A (zh) | 2008-05-08 | 2008-05-08 | 视频解码器的通用熵解码方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810037106 CN101267559A (zh) | 2008-05-08 | 2008-05-08 | 视频解码器的通用熵解码方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101267559A true CN101267559A (zh) | 2008-09-17 |
Family
ID=39989642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810037106 Pending CN101267559A (zh) | 2008-05-08 | 2008-05-08 | 视频解码器的通用熵解码方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101267559A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231830A (zh) * | 2010-11-23 | 2011-11-02 | 浙江大学 | 用于上下文算术编解码的运算单元 |
CN103563380A (zh) * | 2011-05-27 | 2014-02-05 | 联发科技股份有限公司 | 减少用于视频处理的行缓冲的方法及装置 |
CN107396109A (zh) * | 2011-04-01 | 2017-11-24 | Lg 电子株式会社 | 熵解码方法和使用其的解码装置 |
CN107770559A (zh) * | 2011-06-16 | 2018-03-06 | Ge视频压缩有限责任公司 | 支持模式切换的熵编码 |
-
2008
- 2008-05-08 CN CN 200810037106 patent/CN101267559A/zh active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231830A (zh) * | 2010-11-23 | 2011-11-02 | 浙江大学 | 用于上下文算术编解码的运算单元 |
CN102231830B (zh) * | 2010-11-23 | 2013-04-17 | 浙江大学 | 用于上下文算术编解码的运算单元 |
CN107396109A (zh) * | 2011-04-01 | 2017-11-24 | Lg 电子株式会社 | 熵解码方法和使用其的解码装置 |
US10841622B2 (en) | 2011-04-01 | 2020-11-17 | Lg Electronics Inc. | Entropy encoding method, entropy decoding method, and apparatus using same |
US11616989B2 (en) | 2011-04-01 | 2023-03-28 | Lg Electronics Inc. | Entropy decoding method, and decoding apparatus using same |
CN103563380A (zh) * | 2011-05-27 | 2014-02-05 | 联发科技股份有限公司 | 减少用于视频处理的行缓冲的方法及装置 |
CN103563380B (zh) * | 2011-05-27 | 2017-07-21 | 寰发股份有限公司 | 减少用于视频处理的行缓冲的方法及装置 |
US9762918B2 (en) | 2011-05-27 | 2017-09-12 | Hfi Innovation Inc. | Method and apparatus for line buffer reduction for video processing |
US9866848B2 (en) | 2011-05-27 | 2018-01-09 | Hfi Innovation Inc. | Method and apparatus for line buffer reduction for video processing |
US9986247B2 (en) | 2011-05-27 | 2018-05-29 | Hfi Innovation Inc. | Method and apparatus for line buffer reduction for video processing |
CN107770559A (zh) * | 2011-06-16 | 2018-03-06 | Ge视频压缩有限责任公司 | 支持模式切换的熵编码 |
CN107770559B (zh) * | 2011-06-16 | 2020-06-26 | Ge视频压缩有限责任公司 | 解码器、编码器、解码方法、编码方法、介质和存储方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7839311B2 (en) | Architecture for multi-stage decoding of a CABAC bitstream | |
US8320447B2 (en) | Encoding apparatus and encoding method, and decoding apparatus and decoding method | |
WO2012159301A1 (zh) | 一种视频熵编码、熵解码方法、装置及介质 | |
CN103119849A (zh) | 概率区间分割编码器和译码器 | |
CN1735209A (zh) | 使用流水线结构的二进制算术解码装置和方法 | |
CN103227924B (zh) | 一种算术编码器及编码方法 | |
CN102186075B (zh) | 一种熵编码器及其实现方法 | |
US10070127B2 (en) | Method and apparatus for arithmetic coding and termination | |
CN108235013B (zh) | 一种基于hevc的低周期cabac解码器及其解码方法 | |
CN104581154B (zh) | 一种熵编码方法和熵编码器电路 | |
CN100440979C (zh) | 基于上下文的自适应二维变长解码方法和装置 | |
CN105025296B (zh) | 一种高级算术编码器及其实现方法 | |
CN101267559A (zh) | 视频解码器的通用熵解码方法及装置 | |
CN100433560C (zh) | 包含cpu处理器接口的可编程变长解码器 | |
WO2012159295A1 (zh) | 一种熵解码方法、装置 | |
EP3149947B1 (en) | Dedicated arithmetic encoding instruction | |
US9154158B2 (en) | Macro-block encoding of skipped video frames | |
Chen et al. | A low cost context adaptive arithmetic coder for H. 264/MPEG-4 AVC video coding | |
CN107277518B (zh) | Cabac解码方法 | |
US8421655B2 (en) | Apparatus for parallel entropy encoding and decoding | |
CN102201815B (zh) | 高运算频率的二进制运算解码装置 | |
Petrovsky et al. | Pipeline processing in real-time of CABAC decoder based on FPGA | |
CN114079774B (zh) | 帧间预测信息的编解码方法及装置 | |
CN112073729B (zh) | 模型更新方法、装置、电子设备及计算机可读存储介质 | |
CN201910880U (zh) | Jpeg图像中范式霍夫曼的硬件解码装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080917 |