CN103024389B - 一种用于hevc的解码装置和方法 - Google Patents

一种用于hevc的解码装置和方法 Download PDF

Info

Publication number
CN103024389B
CN103024389B CN201210566569.5A CN201210566569A CN103024389B CN 103024389 B CN103024389 B CN 103024389B CN 201210566569 A CN201210566569 A CN 201210566569A CN 103024389 B CN103024389 B CN 103024389B
Authority
CN
China
Prior art keywords
prediction
data
submodule
size
decoding
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.)
Active
Application number
CN201210566569.5A
Other languages
English (en)
Other versions
CN103024389A (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.)
Xinyuan Microelectronics (Shanghai) Co., Ltd.
VeriSilicon Microelectronics Beijing Co Ltd
VeriSilicon Microelectronics Chengdu Co Ltd
Original Assignee
VeriSilicon Microelectronics Shanghai Co Ltd
VeriSilicon Microelectronics Beijing Co Ltd
VeriSilicon Microelectronics Chengdu Co Ltd
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 VeriSilicon Microelectronics Shanghai Co Ltd, VeriSilicon Microelectronics Beijing Co Ltd, VeriSilicon Microelectronics Chengdu Co Ltd filed Critical VeriSilicon Microelectronics Shanghai Co Ltd
Priority to CN201210566569.5A priority Critical patent/CN103024389B/zh
Publication of CN103024389A publication Critical patent/CN103024389A/zh
Application granted granted Critical
Publication of CN103024389B publication Critical patent/CN103024389B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供了一种用于HEVC的解码装置和方法,该装置的解码子模块处理的基本数据单元不是尺寸最大到64x64的编码单元,而是在较小的数据区域(如32x32、16x16或8x8区域)内的变换单元或预测单元。基于这种设计的H EVC解码装置不需要每个解码子模块都支持最大尺寸可能为64x64的编码单元,而是根据产品定义的子模块处理的最大数据区域来设计系统流水线架构,这样可以显著的节省本地存储器的开销。

Description

一种用于HEVC的解码装置和方法
技术领域
本发明涉及一种用于HEVC的解码装置和方法,特别是能够节省片内存储器的解码装置和方法。
背景技术
高效率视频编码HEVC(High Efficiency Video Codec)是目前由国际电信组织(ITU)和运动图像专家组(MPEG)正在联合制定中的下一代国际视频编码标准。与现在的国际视频标准H.264/AVC相比,HEVC在保证相同图像质量的前提下,可以将视频的码率降低50%,也就是说达到H.264两倍的编码效率。为实现这一目标,HEVC的运算复杂度提高了2至3倍。
HEVC仍然是一种面向块的基于运动补偿的视频编解码系统,与H.264相比最大的区别在于HEVC对一帧图像内的基本数据单元的划分。在HEVC中,基本数据单元在亮度分量里不再是尺寸为16x16的宏块(macroblock),而是最大尺寸可以达到64x64的编码树单元(coding tree unit)。如图1所示,编码树单元再按照4分树的结构组织数据,称为编码单元(coding unit),HEVC规定编码单元的尺寸可以是64x64,32x32,16x16以及8x8。每个编码单元主要包括两方面数据:预测单元(prediction unit)和变换树(transformtree)。预测单元包括帧间预测和帧内预测。如图2所示,帧间预测包括7种模式:PART_2Nx2N,PART_2NxN,PART_Nx2N,PART_2NxnU,PART_2NxnD,PART_nLx2N和PART_nRx2N。HEVC规定帧间预测的尺寸最大为64x64最小为4x8与8x4。帧内预测包括2种模式:PART_2Nx2N,PART_NxN。HEVC规定帧内预测的尺寸最大为64x64最小为4x4。如图3所示,变换树以四分树的结构组织变换单元(transform unit),标准规定变换单元的尺寸最大为32x32最小为4x4,变换单元内包含预测之后的残差信号。
HEVC的解码器必须兼容满足标准语法规定的所有码流,也就是说需要支持从上述各种尺寸的编码单元,以及各种尺寸的编码工具。与基于宏块(尺寸为固定的16x16)的H.264解码器相比,基于编码单元(尺寸变化,最大尺寸为64x64)的HEVC的硬件解码器不仅增加了控制逻辑和运算逻辑的复杂度,而且大大提高了本地存储器占用的面积。
发明内容
本发明提供了一种用于HEVC的解码装置,该装置包括:
解码单元,用于对一个按照HEVC标准编码的数据流中所有编码树单元信息进行解码;
总线,为系统总线,用于解码单元与外部存储器之间的数据传输;
外部存储器,用于为HEVC解码过程中的输入、输出数据提供了外部的存储空间。
进一步,解码单元包括:
熵解码子模块,用于一次从编码码流中解析出HEVC标准定义的尺寸为32x32的编码树单元及对应的语法元素;
帧间预测子模块,用于根据熵解码子模块输出的预测数据首先重建运动向量,然后根据运动向量读入参考像素,最终通过插值构建预测信号;
帧内预测子模块,用于根据熵解码子模块输出的预测数据首先确定帧内预测的模式,然后利用当前预测区域的边界像素构成预测信号;
反扫描子模块,用于根据熵解码子模块输出的预测数据推导出扫描模式,然后按照扫描模式对熵解码子模块输出的量化系数重新排列顺序;
反量化/反变换子模块,用于首先利用熵解码子模块输出的量化因子对反扫描子模块输出的量化系数进行反量化,然后进行反变换;
图像重构子模块,其输入包括经过反变换之后的残差信号以及经过预测之后的帧内预测或帧间预测信号,图像重构子模块按照HEVC标准里定义的算法进行图像重构;
后处理子模块,用去块效应滤波器进行滤波并进行像素自适应偏移。
进一步,外部存储器包括:
输入待解码数据流缓冲存储器,用于存储输入待解码数据流;
参考图像缓冲存储器,用于存储参考图像,参考图像提供给帧间预测子模块构建预测信号。
进一步,所述语法元素包括:
编码四分树的划分、预测模式、预测数据、变换四分树的划分、量化因子及变换系数。
进一步,如果帧间或帧内预测子模块支持的最大处理数据尺寸为16x16或8x8,在预测之前需要对预测数据重新分配。
本发明还提供了一种用于H EVC的解码方法,该方法包括:
解码步骤,用于对一个按照H EVC标准编码的数据流中所有编码树单元信息进行解码;
通过总线将解码单元的输出传输到外部存储器;
将HEVC解码过程中的输入、输出数据存储在外部的存储空间。
进一步,解码步骤包括:
熵解码步骤,用于一次从编码码流中解析出H EVC标准定义的尺寸为32x32的编码树单元及对应的语法元素;
帧间预测步骤,用于根据熵解码步骤输出的预测数据首先重建运动向量,然后根据运动向量读入参考像素,最终通过插值构建预测信号;
帧内预测步骤,用于根据熵解码步骤输出的预测数据首先确定帧内预测的模式,然后利用当前预测区域的边界像素构成预测信号;
反扫描步骤,用于根据熵解码步骤输出的预测数据推导出扫描模式,然后按照扫描模式对熵解码步骤输出的量化系数重新排列顺序;
反量化/反变换步骤,用于首先利用熵解码步骤输出的量化因子对反扫描步骤输出的量化系数进行反量化,然后进行反变换;
图像重构步骤,输入包括经过反变换之后的残差信号以及经过预测之后的帧内预测或帧间预测信号,按照HEVC标准里定义的算法进行图像重构;
后处理步骤,用去块效应滤波器进行滤波并进行像素自适应偏移。
进一步,所述语法元素包括:
编码四分树的划分、预测模式、预测数据、变换四分树的划分、量化因子及变换系数。
进一步,如果帧间或帧内预测子模块支持的最大处理数据尺寸为16x16或8x8,在预测之前需要对预测数据重新分配。输出的量化系数进行反量化,然后进行反变换;
进一步,当待解码的视频流中编码树单元尺寸为64x64,熵解码/反扫描/反变换支持的最大处理数据尺寸为32x32,帧间或帧内预测/重构/后处理支持的最大处理数据尺寸为16x16,包括以下步骤:
(1)把待解码的第n个编码树单元分成4个32x32区域,以变量q表示这4个区域的索引,q=0,1,2,3,并把q初始化为0;
(2)熵解码子模块读入可以提供解析区域q的码流,解析所有的语法元素,在编码单元尺寸为64x64的情况下重新分配预测数据;
(3)在熵解码之后,可以分成2个分支并行处理:反变换分支与预测分支,反变换分支每次处理1个变换单元,用变量t表示当前正在处理的变换单元内的首个像素在区域q内的编码排列顺序,0≤t<32x32,并把变量t初始化为0;反扫描子模块对当前变换单元的量化系数进行重新排序;反量化/反变换子模块对重新排序之后的当前变换单元的量化系数进行反量化和反变换得到残差信号;以变量sizeTU表示当前变换单元尺寸,在完成反变换之后把变量t增加sizeTU,如果变量t小于32x32,那么返回重新排序步骤;预测分支把区域q分成4个16x16区域,以变量p表示这4个区域的索引,p=0,1,2,3,并把p初始化为0;以变量s记录区域p内完成图像重构的区域尺寸,0≤s<16x16,并把s初始化为0;预测分支根据预测模式把处理流程分成2个分支:如果是帧内模式,就进行帧内预测,如果是帧间模式,就进行帧间预测;
(4)根据变换分支与预测分支的完成情况进行判断,如果满足t≥p*256+s的条件,就继续步骤(5),否则等待直至条件满足;
(5)把预测之后的数据与对应位置上的残差信号相加,得到重构的图像;
(6)判断条件s<256,满足条件就返回预测分支根据预测模式把处理流程分成2个分支的步骤,否则继续步骤(7);
步骤(7)后处理子模块对重构图像进行去块滤波和像素自适应偏移处理,每次处理的数据区域尺寸为16x16;
(8)变量p加1,变量s恢复成0,判断条件p<4,满足条件就返回预测分支根据预测模式把处理流程分成2个分支的步骤,否则进入步骤(9);
(9)变量q加1,判断条件q<4,满足条件就返回步骤(2),否则返回步骤(1)处理下一个编码树单元。
附图说明
附图1为HEVC编码树单元结构图例。
附图2为HEVC预测单元划分模式图。
附图3为HEVC变换树结构图例。
附图4为本发明的预测子模块支持的最大数据区域尺寸为16x16时的HEVC解码装置结构示意图。
附图5为编码树单元尺寸为64x64情况下1/4区域图示。
附图6为图像解码中需要保留的用于帧内预测参考的边界像素示意图
附图7为帧内预测中边界像素更新示意图
附图8为本发明的当预测单元处理数据块尺寸为16x16时的HEVC解码方法流程图。
具体实施方式
为使本发明的上述目的、特征和优点更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明:
本发明的目的在于提出一种能够减少本地存储器尺寸的HEVC解码装置和方法。这种装置的解码单元的子模块处理的基本数据单元不是尺寸最大到64x64(本发明的各个子模块都会同时处理亮度分量和色度分量,亮度信号和色度信号的尺寸比例可以包括HEVC规定的YUV422和YUV420,在下文中涉及尺寸的描述均以亮度分量为代表进行)的编码单元,而是在较小的数据区域(例如最大编码单元64x64内部的32x32、16x16或8x8区域)内的变换单元或预测单元。由于各个子模块的功能不同,它们需要支持的数据区域的尺寸也不一样,比如与反变换相关的解码单元的子模块需要支持的最大数据区域尺寸为32x32,与预测相关的解码单元的子模块需要支持的最大数据区域尺寸可以根据硬件设计的需要设定为32x32、16x16或者8x8。基于这种设计的HEVC解码装置不需要每个解码单元的子模块都支持最大尺寸可能为64x64的编码单元,而是根据产品定义的子模块处理的最大数据区域来设计系统流水线架构,这样可以显著的节省本地存储器的开销。图4给出了本发明的当帧内帧间预测子模块支持的最大数据区域尺寸为16x16时的HEVC解码装置结构示意图。如图4所示,本发明装置包括解码单元、总线和外部存储器。
为达到上述目的,本发明装置包括以下内容:
1.解码单元
解码单元包括H EVC解码装置的所有运算逻辑,一个按照HEVC标准编码的数据流中所有编码树单元信息的解码过程都是在解码单元中完成的。解码单元包括以下子模块:
1.1熵解码子模块
熵解码子模块负责从编码码流中解析出HEVC标准定义的编码树单元及以下所有语法元素,包括编码四分树的划分、预测模式、预测数据、变换四分树的划分、量化因子及变换系数。熵解码子模块支持的最大数据区域尺寸为32x32,即一次运行可以解析尺寸为32x32的区域对应的所有语法元素。HEVC标准规定编码树单元的尺寸可以为64x64、32x32或者16x16,熵解码子模块针对这三种尺寸分别进行处理:
1)编码树单元尺寸为64x64。如图5所示,1个尺寸为64x64的编码树单元可以划分为4个尺寸为32x32的区域(在本段中称为1/4区域),熵解码子模块每次解出1个1/4区域对应的所有语法元素。尺寸为64x64的编码树单元中的编码单元尺寸可以为64x64、32x32、16x16或8x8,在编码单元尺寸小于64x64的情况下,1个1/4区域会包括1个或多个编码单元,熵解码子模块每次解出1/4区域内的所有编码单元的语法元素。在编码单元尺寸等于64x64的情况下,按照HEVC的语法规定,变换树一定会进一步分裂,所以1个1/4区域会包括1个或多个变换单元;但是预测单元的尺寸可能大于32x32,由于在编码流中预测单元在变换单元之前,所以首先要把整个编码单元的预测单元全部解析,然后依次解析4个1/4区域的变换单元,下面2个例子描述了在这类情况下熵解码子模块的处理办法。例1)在帧间预测单元的尺寸为64x64的情况下,熵解码子模块只解析出的一份预测数据,但是这份预测信息会被使用4次,分别用于4个1/4区域的后续解码。例2)在帧间预测单元的尺寸为64x48/64x16的情况下,熵解码子模块会解析出的2份预测数据,第1份是区域64x48的预测数据,第2份是区域64x16的预测数据,第1份预测数据会被第1和第2个1/4区域用作后续解码,而且会被第3和第4个1/4区域分别用作上半部分(32x16)区域的预测数据;第2份预测数据会被第3和第4个1/4区域分别用作下半部分(32x16)区域的预测数据。熵解码子模块针对其它的预测方式的处理办法类似于上述2例。
2)编码树单元尺寸为32x32。熵解码子模块每次解出1个编码树单元的所有语法元素。
3)编码树单元尺寸为16x16。熵解码子模块每次解出4个连续的编码树单元的所有语法元素。
1.2帧间预测子模块
帧间预测子模块根据熵解码子模块输出的预测数据首先重建运动向量,然后根据运动向量读入参考像素,最终通过插值构建预测信号,具体算法参照HEVC标准。帧间预测子模块支持的最大处理数据尺寸可以根据需要设计成32x32、16x16或8x8。由于熵解码子模块每次输出尺寸为32x32的数据区域对应的预测数据,在预测尺寸大于32x32时会对预测数据重新分配,帧间预测子模块接收到的预测数据只包括预测尺寸不大于32x32的预测数据,如果帧间预测子模块支持的最大处理数据尺寸同样设计成32x32,预测过程可以与HEVC标准中描述的解码过程完全一致。但是如果帧间预测子模块支持的最大处理数据尺寸设计成16x16或8x8,在预测之前需要对预测数据重新分配。下面描述了在支持的最大处理数据尺寸分别为16x16和8x8的情况下帧间预测子模块分配预测数据的过程。
1)帧间预测子模块支持的最大处理数据尺寸为16x16。等比于图5的划分方法,把32x32的预测区域划分成4个16x16的预测区域(在本段中称为1/4区域),帧间预测子模块每次处理1个1/4区域中的采用帧间预测的数据区域,尺寸用变量sizePU’表示。如果当前处理的像素所在的预测单元尺寸为sizePU,那么sizePU’=min(sizePU,16x16)。如果32x32的数据区域内的帧间预测单元尺寸都不大于16x16,那么直接使用熵解码子模块输出的预测数据就可以按照标准进行预测。但是如果32x32的数据区域内的帧间预测单元尺寸大于16x16,需要把熵解码子模块输出的预测数据重新分配。下面给出2个例子描述重新分配的过程:例1)如果32x32的数据区域的预测尺寸为32x32,那么熵解码子模块只会输出1份预测数据,这份数据会在预测每个1/4区域时使用,也就是说这份数据会被重复使用4次。例2)如果32x32的数据区域的预测尺寸为32x24和32x8,那么熵解码子模块会输出2份预测数据,第1份预测数据会用来重构第1和第2个1/4区域,在重构第3和第4个1/4区域时,第1份预测数据会用来预测上16x8区域,第2份预测数据会用来预测下16x8区域。帧间预测子模块针对其它的预测尺寸的处理办法类似于上述2例。
2)帧间预测子模块支持的最大处理数据尺寸为8x8。等比于图5的划分方法,把32x32的预测区域划分成16个8x8的预测区域(在本段中称为1/16区域),帧间预测子模块每次处理1个1/16区域中的采用帧间预测的数据区域,尺寸用变量sizePU’表示。如果当前处理的像素所在的预测单元尺寸为sizePU,那么sizePU’=min(sizePU,8x8)。如果32x32的数据区域内的预测尺寸都不大于8x8,那么直接使用熵解码子模块输出的预测数据就可以按照标准进行预测。但是如果32x32的数据区域内的预测尺寸大于8x8,需要把熵解码子模块输出的预测数据重新分配。下面给出2个例子描述重新分配的过程:例1)如果32x32的数据区域的预测尺寸为32x32,那么熵解码子模块只会输出1份预测数据,这份数据会在预测每个1/16区域时使用,也就是说这份数据会被重复使用16次。例2)如果32x32的数据区域的预测尺寸为32x24和32x8,那么熵解码子模块会输出2份预测数据,第1份预测数据会用来预测第1到第12个1/16区域,第2份预测数据会用来预测第13到第16个1/16区域。帧间预测子模块针对其它的预测尺寸的处理办法类似于上述2例。
1.3帧内预测子模块
帧内预测子模块根据熵解码子模块输出的预测数据首先确定帧内预测的模式,然后利用当前预测区域的边界像素构成预测信号,具体算法参照HEVC标准。由于帧内预测的参考像素采用的是图像重构之后未经后处理的像素,所以要在完成图像重构之后及时保存边界像素作为帧内预测的参考数据,图6给出了在解码一帧图像过程中必须保存的用于帧内预测参考的边界像素位置示意图。边界像素既可以保存在本地存储器也可以保存在外部存储器,图4的HEVC解码装置图给出的是把边界像素保存在本地存储器的例子。
帧内预测子模块支持的最大处理数据尺寸与帧间预测子模块支持的最大处理数据尺寸一致,可以根据需要设计成32x32、16x16或8x8。由于熵解码子模块每次输出尺寸为32x32的数据区域对应的预测数据,如果帧内预测子模块支持的最大处理数据尺寸同样设计成32x32,预测过程和边界像素更新可以与HEVC标准中描述的解码过程完全一致。但是如果帧内预测子模块支持的最大处理数据尺寸设计成16x16或8x8,在预测之前需要对预测数据重新分配,在图像重构之后还要根据处理区域内变换单元的尺寸来更新边界像素。下面以支持的最大处理数据尺寸16x16为例介绍帧内预测子模块分配预测数据和更新边界像素的过程:
等比于图5的划分方法,把32x32的预测区域划分成4个16x16的预测区域(在本段中称为1/4区域),帧内预测子模块每次处理1个1/4区域内采用帧内预测的变换单元对应的数据区域,尺寸以sizeTU’表示,如果正在处理的像素所在变换单元尺寸为sizeTU,sizeTU’=min(sizeTU,16x16)。例如某个1/4区域采用尺寸为16x16的帧内预测,但是变换单元的尺寸为8x8,那么子模块每次针对1块8x8区域进行帧内预测,总共需要运行4次才能完成整个1/4区域的帧内预测。如果32x32的预测区域内的帧内预测尺寸都不大于16x16,那么直接使用熵解码子模块输出的预测数据就可以按照HEVC标准进行预测。但是如果32x32的数据区域内的预测尺寸大于16x16,那么熵解码子模块只会输出1个针对于区域32x32的预测模式,这个预测模式会在预测每个1/4区域时使用,也就是说这个预测模式会被重复使用4次。
图7给出了帧内预测中边界像素更新的例子,其中0/1/2/3分别表示4个相邻的尺寸为16x16的数据区域,a/b/c/d分别表示长度为16的图像重构之后的像素边界。区域0在采用帧内预测时会把边界a和b上的像素作为参考。如果区域0内有1个或多个变换单元,那么在区域0完成图像重构之后,将会更新参考边界像素,用边界c替代边界a,边界d替代边界b,也就是说区域1在采用帧内预测时会参考边界c而不会参考边界a,区域2在采用帧内预测时将会参考边界d而不会参考边界b。如果区域0是1/4个变换单元,那么在区域0完成图像重构之后,不能更新参考边界像素,需要继续保留边界a和b,也就是说区域1在采用帧内预测时会参考边界a而不会参考边界c,区域2在采用帧内预测时会参考边界b而不会参考边界d。
在处理区域尺寸设计为8x8的情况下,帧内预测子模块分配预测数据和更新边界像素的过程与上述描述类似。
1.4反扫描子模块
反扫描子模块根据熵解码子模块输出的预测数据推导出扫描模式,然后按照扫描模式对熵解码子模块输出的量化系数重新排列顺序。扫描模式包括对角线模式,水平模式和垂直模式3种,具体算法参照HEVC标准。反扫描子模块支持的最大处理数据尺寸设置成HEVC标准规定的最大的变换单元尺寸32x32,按照HEVC的标准,尺寸为32x32的区域会包括1个或多个变换单元,反扫描子模块每次对1个变换单元进行操作,完成量化系数的重新排列。
1.5反量化/反变换子模块
反量化/反变换子模块首先利用熵解码子模块输出的量化因子对反扫描子模块输出的量化系数进行反量化,然后进行反变换,具体算法参照HEVC标准。反量化/反变换子模块支持的最大处理数据尺寸设置成HEVC标准规定的最大的变换单元尺寸32x32,由于HEVC标准规定变换单元的尺寸包括32x32、16x16、8x8和4x4,尺寸为32x32的区域会包括1个或多个变换单元。反量化/反变换子模块每次对1个变换单元进行操作,完成反量化及反变换过程。
1.6图像重构子模块
图像重构子模块的输入包括经过反变换之后的残差信号以及经过预测之后的帧内预测或帧间预测信号,图像重构子模块按照H EVC标准里定义的算法进行图像重构。图像重构子模块支持的最大处理数据尺寸与帧间/帧内预测子模块一致,即可以根据需要设计成32x32、16x16或8x8。图像重构子模块每次运行的处理的数据区域的尺寸与预测子模块的输出数据尺寸一致,即预测子模块每输出一次预测信号,图像重构子模块会把预测信号与对应位置上的残差信号求和,生成重构信号。重构信号不仅会输送到后处理子模块进行后处理,而且编码单元边界和帧内预测模式下变换单元边界上的重构的像素点会输送到帧内预测子模块作为帧内预测的参考点。
1.7后处理子模块
后处理子模块包括两个处理过程:用去块效应滤波器(de-blocking filter)进行滤波和像素自适应偏移(sampleadaptive offset),像素自适应偏移在去块效应滤波之后进行,具体算法参照HEVC标准。后处理子模块功能上独立于前面所述的预测、反变换和重构子模块,因此支持的最大处理数据尺寸可以更加灵活的设定,为了节省本地存储器的开销同时提高运算效率,可以设定后处理子模块支持的最大处理数据尺寸与图像重构子模块相同。后处理子模块的输入为图像重构子模块的输出的图像重构信号,经过去块效应滤波和像素自适应偏移处理之后最终生成的输出图像,输出图像同时会存储到外部存储器作为由于帧间预测的参考图像。
2.外部存储器
外部存储器可以是任意一种存储设备,外部存储器包括输入待解码数据流缓冲存储器和参考图像缓冲存储器,这些缓冲存储器为HEVC解码过程中所需要的输入、输出数据提供了外部的存储空间。
2.1输入待解码数据流缓冲存储器
本缓冲存储器用于存储输入待解码数据流。
2.2参考图像缓冲存储器
本缓冲存储器用于存储参考图像,参考图像提供给帧间预测子模块构建预测信号。
3.总线
总线可以是任意一种系统总线,负责解码单元与外部存储器之间的数据传输。
图8给出了本发明的解码流程图例。该流程图的假设条件为:待解码的视频流中编码树单元尺寸为64x64,熵解码/反扫描/反变换子模块支持的最大处理数据尺寸为32x32,帧间及帧内预测/重构/后处理子模块支持的最大处理数据尺寸为16x16。该方法包括以下步骤:1)把待解码的第n个编码树单元按照图5分成4个32x32区域,以变量q(q=0,1,2,3)表示这4个区域的索引,并把q初始化为0。2)熵解码子模块读入可以提供解析区域q的码流,解析所有的语法元素,在编码单元尺寸为64x64的情况下需要重新分配预测数据。3)在熵解码之后,可以分成2个分支并行处理:反变换分支与预测分支。3.1)反变换分支每次处理1个变换单元,用变量t(0≤t<32x32)表示当前正在处理的变换单元内的首个像素在区域q内的编码排列顺序,并把变量t初始化为0。3.1.1)反扫描子模块对当前变换单元的量化系数进行重新排序。3.1.2)反量化/反变换子模块对重新排序之后的当前变换单元的量化系数进行反量化和反变换得到残差信号。3.1.3)以变量sizeTU表示当前变换单元尺寸,在完成反变换之后把变量t增加sizeTU,如果变量t小于32x32,那么返回步骤3.1.1。3.2)预测分支把区域q分成4个16x16区域,以变量p(p=0,1,2,3)表示这4个区域的索引,并把p初始化为0。以变量s(0≤s<16x16)记录区域p内完成图像重构的区域尺寸,并把s初始化为0。3.2.1)预测分支根据预测模式把处理流程分成2个分支:a)如果是帧内模式,就进行帧内预测,处理区域尺寸以变量sizeTU’表示(含义见前文描述),在完成帧内预测之后把变量s增加sizeTU’;b)如果是帧间模式,就进行帧间预测,处理区域尺寸以变量sizePU’表示(含义见前文描述),在完成帧间预测之后把变量s增加size PU’。4)根据变换分支与预测分支的完成情况进行判断,如果满足t≥p*256+s的条件,就继续步骤5,否则等待直至条件满足。5)把预测之后的数据与对应位置上的残差信号相加,得到重构的图像。6)判断条件s<256,满足条件就返回步骤3.2.1,否则继续步骤7)后处理子模块对重构图像进行去块滤波和像素自适应偏移处理,在本例中每次处理的数据区域尺寸为16x16。8)变量p加1,变量s恢复成0,判断条件p<4,满足条件就返回步骤3.2.1,否则9)变量q加1,判断条件q<4,满足条件就返回步骤2,否则返回步骤1处理下一个编码树单元。
综上所述,本发明方法和装置通过控制各个子模块支持的最大数据区域尺寸,节省了本地存储开销。

Claims (8)

1.一种用于HEVC的解码装置,其特征在于该装置包括:
解码单元,用于对一个按照HEVC标准编码的数据流中所有编码树单元信息进行解码;
总线,为系统总线,用于解码单元与外部存储器之间的数据传输;
外部存储器,用于为HEVC解码过程中的输入、输出数据提供了外部的存储空间;
其中,所述解码单元进一步包括:
熵解码子模块,用于一次从编码码流中解析出HEVC标准定义的尺寸为32×32的编码树单元及对应的语法元素;
帧间预测子模块,用于根据熵解码子模块输出的预测数据首先重建运动向量,然后根据运动向量读入参考像素,最终通过插值构建预测信号;
帧内预测子模块,用于根据熵解码子模块输出的预测数据首先确定帧内预测的模式,然后利用当前预测区域的边界像素构成预测信号;
反扫描子模块,用于根据熵解码子模块输出的预测数据推导出扫描模式,然后按照扫描模式对熵解码子模块输出的量化系数重新排列顺序;
反量化/反变换子模块,用于首先利用熵解码子模块输出的量化因子对反扫描子模块输出的量化系数进行反量化,然后进行反变换;
图像重构子模块,其输入包括经过反变换之后的残差信号以及经过预测之后的帧内预测或帧间预测信号,图像重构子模块按照HEVC标准里定义的算法进行图像重构;
后处理子模块,用去块效应滤波器进行滤波并进行像素自适应偏移。
2.根据权利要求1所述的解码装置,其特征在于外部存储器进一步包括:
输入待解码数据流缓冲存储器,用于存储输入待解码数据流;
参考图像缓冲存储器,用于存储参考图像,参考图像提供给帧间预测子模块构建预测信号。
3.根据权利要求1所述的解码装置,其特征在于所述语法元素包括:
编码四分树的划分、预测模式、预测数据、变换四分树的划分、量化因子及变换系数。
4.根据权利要求1所述的解码装置,其特征在于:
如果帧间或帧内预测子模块支持的最大处理数据尺寸为16×16或8×8,在预测之前需要对预测数据重新分配。
5.一种用于HEVC的解码方法,其特征在于该方法包括:
解码步骤,用于对一个按照HEVC标准编码的数据流中所有编码树单元信息进行解码;
通过总线将解码单元的输出传输到外部存储器;
将HEVC解码过程中的输入、输出数据存储在外部的存储空间;
其中,所述解码步骤进一步包括:
熵解码步骤,用于一次从编码码流中解析出H EVC标准定义的尺寸为32×32的编码树单元及对应的语法元素;
帧间预测步骤,用于根据熵解码步骤输出的预测数据首先重建运动向量,然后根据运动向量读入参考像素,最终通过插值构建预测信号;
帧内预测步骤,用于根据熵解码步骤输出的预测数据首先确定帧内预测的模式,然后利用当前预测区域的边界像素构成预测信号;
反扫描步骤,用于根据熵解码步骤输出的预测数据推导出扫描模式,然后按照扫描模式对熵解码步骤输出的量化系数重新排列顺序;
反量化/反变换步骤,用于首先利用熵解码步骤输出的量化因子对反扫描步骤输出的量化系数进行反量化,然后进行反变换;
图像重构步骤,输入包括经过反变换之后的残差信号以及经过预测之后的帧内预测或帧间预测信号,按照HEVC标准里定义的算法进行图像重构;
后处理步骤,用去块效应滤波器进行滤波并进行像素自适应偏移。
6.根据权利要求5所述的解码方法,其特征在于所述语法元素包括:
编码四分树的划分、预测模式、预测数据、变换四分树的划分、量化因子及变换系数。
7.根据权利要求5所述的解码方法,其特征在于:
如果帧间或帧内预测子模块支持的最大处理数据尺寸为16×16或8×8,在预测之前需要对预测数据重新分配。
8.根据权利要求5所述的解码方法,其特征在于:
当待解码的视频流中编码树单元尺寸为64×64,熵解码/反扫描/反变换支持的最大处理数据尺寸为32×32,帧间或帧内预测/重构/后处理支持的最大处理数据尺寸为16×16,包括以下步骤:
(1)把待解码的第n个编码树单元分成4个32×32区域,以变量q表示这4个区域的索引,q=0,1,2,3,并把q初始化为0;
(2)熵解码子模块读入可以提供解析区域q的码流,解析所有的语法元素,在编码单元尺寸为64×64的情况下重新分配预测数据;
(3)在熵解码之后,可以分成2个分支并行处理:反变换分支与预测分支,反变换分支每次处理1个变换单元,用变量t表示当前正在处理的变换单元内的首个像素在区域q内的编码排列顺序,0≤t<32×32,并把变量t初始化为0;反扫描子模块对当前变换单元的量化系数进行重新排序;反量化/反变换子模块对重新排序之后的当前变换单元的量化系数进行反量化和反变换得到残差信号;以变量sizeTU表示当前变换单元尺寸,在完成反变换之后把变量t增加sizeTU,如果变量t小于32×32,那么返回重新排序步骤;预测分支把区域q分成4个16×16区域,以变量p表示这4个区域的索引,p=0,1,2,3,并把p初始化为0;以变量s记录区域p内完成图像重构的区域尺寸,0≤s<16×16,并把s初始化为0;预测分支根据预测模式把处理流程分成2个分支:如果是帧内模式,就进行帧内预测,如果是帧间模式,就进行帧间预测;
(4)根据变换分支与预测分支的完成情况进行判断,如果满足t≥p*256+s的条件,就继续步骤(5),否则等待直至条件满足;
(5)把预测之后的数据与对应位置上的残差信号相加,得到重构的图像;
(6)判断条件s<256,满足条件就返回预测分支根据预测模式把处理流程分成2个分支的步骤,否则继续步骤(7);
(7)后处理子模块对重构图像进行去块滤波和像素自适应偏移处理,每次处理的数据区域尺寸为16×16;
(8)变量p加1,变量s恢复成0,判断条件p<4,满足条件就返回预测分支根据预测模式把处理流程分成2个分支的步骤,否则进入步骤(9);
(9)变量q加1,判断条件q<4,满足条件就返回步骤(2),否则返回步骤(1)处理下一个编码树单元。
CN201210566569.5A 2012-12-24 2012-12-24 一种用于hevc的解码装置和方法 Active CN103024389B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210566569.5A CN103024389B (zh) 2012-12-24 2012-12-24 一种用于hevc的解码装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210566569.5A CN103024389B (zh) 2012-12-24 2012-12-24 一种用于hevc的解码装置和方法

Publications (2)

Publication Number Publication Date
CN103024389A CN103024389A (zh) 2013-04-03
CN103024389B true CN103024389B (zh) 2015-08-12

Family

ID=47972462

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210566569.5A Active CN103024389B (zh) 2012-12-24 2012-12-24 一种用于hevc的解码装置和方法

Country Status (1)

Country Link
CN (1) CN103024389B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103237240A (zh) * 2013-05-08 2013-08-07 无锡北斗星通信息科技有限公司 地面信道传输超高清数字电视信号的数字机顶盒
CN103369326B (zh) * 2013-07-05 2016-06-29 西安电子科技大学 适于高性能视频编码标准hevc的变换编码器
CN103702126B (zh) * 2013-12-10 2017-01-18 清华大学深圳研究生院 一种基于视频标准hevc的并行编码优化方法
CN103888782B (zh) * 2014-03-04 2017-02-08 上海交通大学 一种hevc解码器并行任务划分方法
CN103997650B (zh) * 2014-05-30 2017-07-14 华为技术有限公司 一种视频解码的方法和视频解码器
US11477484B2 (en) 2015-06-22 2022-10-18 Qualcomm Incorporated Video intra prediction using hybrid recursive filters
CN105163126B (zh) * 2015-09-06 2018-05-25 福州瑞芯微电子股份有限公司 一种基于hevc协议的硬件解码方法和装置
US10542294B2 (en) 2016-03-16 2020-01-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding
CN107734331A (zh) * 2017-11-17 2018-02-23 南京理工大学 一种基于hevc标准的视频转码方法
US11616966B2 (en) * 2019-04-03 2023-03-28 Mediatek Inc. Interaction between core transform and secondary transform
CN113382252B (zh) * 2019-06-21 2022-04-05 杭州海康威视数字技术股份有限公司 一种编解码方法、装置、设备及存储介质
CN112887729B (zh) * 2021-01-11 2023-02-24 西安万像电子科技有限公司 图像编解码的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102547294A (zh) * 2012-02-16 2012-07-04 复旦大学 适用于h.264和hevc视频标准的cabac硬件解码器架构
CN102595124A (zh) * 2011-01-14 2012-07-18 华为技术有限公司 图像编码解码方法、处理图像数据方法及其设备
CN102801980A (zh) * 2012-08-09 2012-11-28 芯原微电子(北京)有限公司 一种用于可伸缩视频编码的解码装置和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8553769B2 (en) * 2011-01-19 2013-10-08 Blackberry Limited Method and device for improved multi-layer data compression

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102595124A (zh) * 2011-01-14 2012-07-18 华为技术有限公司 图像编码解码方法、处理图像数据方法及其设备
CN102547294A (zh) * 2012-02-16 2012-07-04 复旦大学 适用于h.264和hevc视频标准的cabac硬件解码器架构
CN102801980A (zh) * 2012-08-09 2012-11-28 芯原微电子(北京)有限公司 一种用于可伸缩视频编码的解码装置和方法

Also Published As

Publication number Publication date
CN103024389A (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN103024389B (zh) 一种用于hevc的解码装置和方法
CN104995919B (zh) 用于最末重要系数位置编码中的上下文减少的设备和方法
CN107197264B (zh) 解码视频信号的方法
CN103891293B (zh) 用于色度分量的自适应环路滤波的方法及设备
CN104956674B (zh) 用于最末重要系数位置编解码中的上下文减少的设备和方法
CN104094597B (zh) 基于帧内预测的自适应变换方法及使用该方法的装置
CN106464894B (zh) 视频处理方法及装置
CN103891283B (zh) 帧内预测的方法和设备
CN103621099B (zh) 熵解码方法和使用其的解码装置
US10623742B2 (en) Method of determining binary codewords for transform coefficients
KR102145782B1 (ko) 동화상 부호화 장치, 동화상 부호화 방법 및 컴퓨터 독취 가능한 기억 매체
CN104685874B (zh) 用于在高效率视频编解码中处理分区模式的设备和方法
CN107343204B (zh) 利用解码装置解码视频信号的方法
CN103891280B (zh) 用于确定视频数据的上下文模型的方法和系统
US9270988B2 (en) Method of determining binary codewords for transform coefficients
CN104285444A (zh) 视频编码方法、视频解码方法和使用其的设备
CN102124739A (zh) 图像编码方法及其装置、图像解码方法及其装置
CN103796029A (zh) 视频编码设备
CN102057680A (zh) 运动图像编码/解码方法和装置
KR20150009984A (ko) 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법
CN106576168A (zh) 图像压缩解压缩装置
CN104702959B (zh) 一种视频编码的帧内预测方法及系统
CN110495175A (zh) 用于对用于并行处理的运动信息进行处理的图像处理方法、用于使用该图像处理方法进行解码和编码的方法、以及用于该方法的设备
He et al. A high parallel way for processing IQ/IT part of HEVC decoder based on GPU
CN116233419A (zh) 一种avs3帧内块划分方法及相关设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: VERISILICON (SHANGHAI) INC. VERISILICON MICROELECT

Free format text: FORMER OWNER: VERISILICON (SHANGHAI) INC.

Effective date: 20130724

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20130724

Address after: 100193 A, building A106, building 1, Zhongguancun Software Park, Beijing, Haidian District

Applicant after: VeriSilicon Microelectronics (Beijing) Co., Ltd.

Applicant after: VeriSilicon Microelectronics (Shanghai) Co., Ltd.

Applicant after: VERISILICON MICROELECTRONICS (CHENGDU) CO., LTD.

Address before: 100193 A, building A106, building 1, Zhongguancun Software Park, Beijing, Haidian District

Applicant before: VeriSilicon Microelectronics (Beijing) Co., Ltd.

Applicant before: VeriSilicon Microelectronics (Shanghai) Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: HEVC (high efficiency video coding) decoding device and method

Effective date of registration: 20170621

Granted publication date: 20150812

Pledgee: National integrated circuit industry investment fund, Limited by Share Ltd

Pledgor: VeriSilicon Microelectronics (Beijing) Co., Ltd.|(Shanghai) virisilicon Microelectronics Co., Ltd.|virisilicon Microelectronics (Chengdu)

Registration number: 2017990000508

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20190415

Granted publication date: 20150812

Pledgee: National integrated circuit industry investment fund, Limited by Share Ltd

Pledgor: VeriSilicon Microelectronics (Beijing) Co., Ltd.|VeriSilicon Microelectronics (Shanghai) Co., Ltd.|VERISILICON MICROELECTRONICS (CHENGDU) CO., LTD.

Registration number: 2017990000508

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100193 Block A106, Building 1, Zhongguancun Software Park, Haidian District, Beijing

Co-patentee after: Xinyuan Microelectronics (Shanghai) Co., Ltd.

Patentee after: VeriSilicon Microelectronics (Beijing) Co., Ltd.

Co-patentee after: VERISILICON MICROELECTRONICS (CHENGDU) CO., LTD.

Address before: 100193 Block A106, Building 1, Zhongguancun Software Park, Haidian District, Beijing

Co-patentee before: VeriSilicon Microelectronics (Shanghai) Co., Ltd.

Patentee before: VeriSilicon Microelectronics (Beijing) Co., Ltd.

Co-patentee before: VERISILICON MICROELECTRONICS (CHENGDU) CO., LTD.