APP下载

H.264/AVC帧内4×4预测算法的高效流水线结构

2012-06-25任怀鲁张德学

电视技术 2012年7期
关键词:宏块重构像素

任怀鲁,张德学

(山东科技大学信息科学与工程学院,山东 青岛 266590)

MPEG-4 AVC/H.264(以下简称为 H.264/AVC)标准[1]与 MPEG-2 标准相比,码流节省了 50% 以上[2-3]。H.264标准中所用的编码技术主要有帧内预测、运动估计、整形变换、环路滤波等。H.264/AVC性能的提高是以高复杂度和大运算量为代价的,为了能够实时用H.264/AVC标准编码图像,人们对H.264/AVC的高效算法和硬件结构做了大量的工作。在这些工作中,很多研究者把重心放到了帧内4×4预测部分,这是因为帧内4×4预测在整个H.264/AVC标准中占有很大的比重,而且比较难以用硬件设计。

H.264/AVC预测编码部分分为帧内预测和帧间预测,帧内预测用于减少视频图像空间上的冗余,帧间预测用于减少视频图像时间上的冗余。根据预测技术的不同,H.264/AVC中的图像可以分为I,P,B帧,每一帧都由宏块(16×16的像素块)组成。宏块可以分为帧内宏块(以帧内预测技术编码)和帧间宏块(以帧间预测技术编码)。I帧只由帧内宏块组成,P帧和B帧可以由帧内宏块或帧间宏块组成。参考文献[4]中的研究发现,在场景变换比较剧烈的视频序列中,即使在P帧和B帧图像中,帧内宏块的数量也要高于帧间宏块的数量。帧内宏块按预测块的大小又可分为帧内4×4宏块(I4MB)和帧内16×16宏块(I16MB)。其中在图像细节比较细腻的图像中帧内4×4宏块将占据绝对大的比例。本文在H.264的参考软件JM15.1中对foreman_cif码流作了测试(IPPP,260帧,QP设为24),结果表明I4MB的比例占整个帧内宏块数的85.9%。由此可见,帧内4×4预测在整个H.264/AVC视频编码过程中占有非常重要的地位。

但是I4MB宏块中的各个4×4块之间有着严重的数据依赖性,这使帧内4×4预测成为H.264/AVC编码器中的一个主要瓶颈。在之前的设计中,主要有3种方法缓解帧内4×4预测过程中的数据依赖性问题:第一种方法是在帧内4×4预测的闲置周期中让硬件执行帧内16×16预测[5-7],这可以提高硬件的利用率,但是它的关键路径长度并没有改变,不适用于高性能的视频编码器;第二种方法是重新对I4MB 的4×4块进行重排序[8-9],它可以在一定程度上解决各个4×4块间的数据依赖性问题,但是仍有至少5个4×4块的数据依赖性问题它是解决不了的;第三种方法是采用原始图像进行帧内预测[10-11],但是它会导致解码端和编码端的重构图像不一致,有较大图像PSNR损失。

针对这种情况,本文提出了一种新的硬件结构,在没有明显的图像PSNR损失和没有增加额外硬件资源的前提下,可以使硬件的利用率几乎达到100%,使处理一个宏块的时钟周期数减少到215个。

1 帧内4×4预测相关算法简介

一个I4MB可以分为16个4×4块,编码一个帧内4×4块首先需要用各种模式执行帧内预测,进而进行模式判决,得出最佳模式,把用最佳模式预测出的像素与原始像素做差,把残差传送给重构循环模块。由重构循环模块得出的重构数据进一步作为之后4×4块的参考像素。在DCT变换和量化之后的数据需输出给之后的模块(熵编码)进行进一步处理。

1.1 帧内4×4预测相关算法

帧内4×4预测以之前已经重构的边沿像素作为参考像素,帧内4×4块最多可以有13个参考像素,根据预测方向的不同帧内4×4预测有8种预测模式[3],此外帧内4×4预测还有一种没有方向特性的DC模式(即是可得参考像素的平均值)。

对于每一个4×4块都要用这9种模式遍历执行帧内4×4预测,由模式判决算法选出最优预测模式[12]。模式判决所做的工作主要是评估帧内预测各种模式的SATD(Sum of Absolute Transformed Difference)值。T代表着Hadamard变换。

重构循环主要包括DCT变换、量化(Q)、反量化(IQ)和IDCT变换4个部分。在IDCT变换之后需把得出的残差数据与预测像素相加,得出重构像素,一个4×4块边沿部分的重构像素(其位置如图1所示)将作为之后4×4块的参考像素。

1.2 帧内预测过程中的数据依赖关系

I4MB的16个4×4块是按照zig-zag的顺序进行编码的,如图1a所示。在一个4×4块进行预测之前必须保证相邻的(左、上、右上、左上)4×4块已经重构完成,这就导致相邻的4×4块之间有很复杂的数据依赖关系,如图1b所示。在图1b中,箭头所指4×4块必须等待箭头开始端所在4×4块完成重构循环之后才可进行预测。因此,帧内4×4预测(和模式判决)和重构循环之间无法用流水线的方式实现,它们之间只能串行执行(其时序如图2a所示),这会导致编码器的硬件利用率很低。而且由于帧内4×4预测模式比较多,I4MB分成的4×4块也比较多,使整个宏块的执行时间增长了1倍,已经成为了整个H.264编码器中的瓶颈。

图1 4×4块扫描顺序和数据依赖关系

2 所提解决方案及其执行时序

在之前针对帧内4×4预测的研究中,或者没能彻底解决帧内4×4预测的关键路径过长的问题,或者使图像的质量有较大损失。为了解决1.2节中所分析的数据依赖性问题,又不令图像的质量有较大损失,笔者提出以下解决方案:在模式判决时使用原始图像进行帧内预测,当模式判决完成后,上一个4×4块的重构数据也已经准备好,再用重构像素和选择的最佳模式进行一次帧内预测,把得到的预测数据和残差数据交给重构循环模块,而帧内预测和模式判决模块则在同时对下一个4×4块用原始图像预测并进行模式判决。此方法可使帧内预测(带模式判决)模块和重构循环模块完全流水线化,同时又克服了文献[10-11]中用原始图像预测所导致的编码端和解码端重构数据不一致的问题,减少了图像PSNR损失(时序见图2b)。

图2 帧内4×4预测原始时序和所提出方案的流水线时序

3 所提出的帧内4×4预测总体结构

笔者提出的帧内4×4预测整体结构如图3所示,与传统的帧内预测结构相比,主要不同是:采用16像素并行结构,1个周期可以生成16个预测像素和16个重构像素;用原始图像进行模式判决,用重构图像进行帧内4×4预测,帧内4×4预测模块和重构循环模块完全流水线执行。这样1个4×4块可在13个时钟周期内生成最佳预测数据,1个宏块可以在215个时钟周期内完成整个帧内4×4预测过程。以下对其中的主要模块进行介绍。

图3 所提出的帧内4×4预测整体结构

3.1 预测像素生成器模块

帧内预测算法[3]主要就是以2抽头或者3抽头滤波器组成,为了提高硬件的利用率,笔者设计了一种通用的可处理所有帧内4×4预测模式的滤波器,如图4所示。而且帧内4×4预测的算法中并不是所有位置的像素都各不相同,各种模式最多只有13个各不相同的值,由此最多只需用13个如图4a所示的PE滤波器就可以了。帧内4×4预测的整体结构如图4b所示。

图4 提出的帧内4×4处理单元和16并行预测结构

3.2 重构循环模块

整个重构循环模块也是16像素并行的,其结构如图5所示。重构循环模块的IDCT与DCT模块结构相同,反量化(IQ)和量化(Q)模块结构相似,所以图5只给出了DCT变换和量化模块的详细结构图。首先一个二维DCT变换可变换成两个一维的DCT变换,一维的DCT变换也可以采用蝶形结构分两级完成,其结构如图5所示。笔者采用的DCT变换结构有8个一维DCT变换模块,其中4个做行变换,4个做列变换,中间的交叉互联(cross connection)结构可实现DCT变换中间参数的行列转换。量化模块的处理单元参照参考文献[1]中所述算法设计,量化模块除量化处理单元外还包括一个存储H.264/AVC标准中的量化矩阵的ROM和一个用于计算量化过程中所需参数的参数计算器(Parameters Calculator)。量化模块有16个并行的处理单元,可并行处理16个像素。

图5 重构循环模块

4 实验结果和比较

对于第3节中所提出的算法,基于H.264/AVC的参考软件JM15.1进行了测试。其主要参数配置是:测试序列 foreman_cif,260 帧,全I帧,30 f/s(帧/秒)。在QP 从4变化到48时所提算法与JM15.1参考算法的PSNR变化如图6所示。结果显示所提出的算法与JM15.1中的参考算法平均只有0.03 dB的PSNR损失。

图6 所提算法在各种QP下的PSNR值及与JM15.1中的比较

对提出的帧4×4预测的硬件结构用SMIC 0.13 μm工艺库进行了综合。结果显示,在SMIC 0.13 μm工艺下,用synopsys的DC综合工具把时钟约束设为250 MHz时,所需门数为116000(以一个NAND2X1为单位),它与之前相关设计的对比如表1所示。

表1 所提出帧内4×4预测结构的性能及与之前工作的对比

文献[5]中由于没有处理好帧内4×4预测的数据依赖问题,它处理一个宏块的时间很长;文献[10]和[11]都是采用原始图像预测,图像质量损失比较大;文献[13]为了减少帧内4×4预测的延迟采用了多了帧内4×4预测核并行执行的方法,但是这使面积有了很大的增加。

5 结论

针对H.264/AVC标准中帧内4×4预测过程中所存在的数据依赖性问题,本文中提出了一种新的解决方案,它通过使用原始像素进行模式判决和使用重构像素进行帧内预测的方法,使帧内预测和重构循环可以采用流水线技术执行,同时与直接用原始图像做帧内预测的方案相比又有效地减少了图像的PSNR损失。本设计采用了16像素并行结构,此结构可以在215个时钟周期内完成一个宏块的帧内预测。最后,本文对所设计的结构面向ASIC作了综合,与以往的相关工作相比较,结果显示本设计在没有增加额外的资源的情况下,达到了更高的性能。

[1]ITU-T Rec.H.264/AVC.Advanced video coding for generic audiovisual services[S].2005.

[2]WIEGAND T,SULLIVAN G J,BJONTEGAARD G,et al.Overview of the H.264/AVC video coding standard[J].IEEE TCSVT,2003,13(7):560-576.

[3]苏磊,李国源,张家谋.基于帧内空间域预测的快速文理逼近算法[J].电视技术,2004,28(9):11-14.

[4]SHAFIQUE M,BAUER L,HENKEL J.A parallel approach for high performance hardware design of intra prediction in H.264/AVC video codec[C]//Proc.IEEE DATE 2009.[S.l.]:IEEE Press,2009:1434-1439.

[5]HUANG Y W,HSIEH B Y,CHEN T C,et al.Analysis,fast algorithm,and VLSI architecture design for H.264/AVC intra frame coder[J].IEEE TCSVT,2005,15(3):378-401.

[6]KU C W,CHENG C C,YU G S,et al.A high-definition H.264/AVC intra-frame codec IP for digital video and still camera applications[J].IEEE TCSVT,2006,16(8):917-928.

[7]LIN Y K,KU C W,LI D W,et al.A 140-MHz 94 k gates HD1080p 30-frames/s intra-only profile H.264/AVC encoder[J].IEEE TCSVT,2009,19(3):432-436.

[8]SMAOUI S,LOUKIL H,BEN ATITALLAH A,et al.An efficient pipeline execution of H.264/AVC intra 4x4 frame design[C]//Proc.20107th International Multi-Conference on Systems Signals and Devices(SSD).[S.l.]:IEEE Press,2010:1-5.

[9]JIN G H,JUNG J S,LEE H J.An efficient pipelined architecture for H.264/AVC intra frame processing[C]//Proc.IEEE ISCAS 2007.[S.l.]:IEEE Press,2007:1605-1608.

[10]CHUANG T D,CHEN Y H,TSAI C H,et al.Algorithm and architecture design for intra prediction in H.264/AVC high profile[EB/OL].[2011-05-01].http://video.ee.ntu.edu.tw/publication/paper/[C][2007][PCS][Tzu-Der.Chuang][1].pdf.

[11]DING L F,CHEN W Y,TSUNG P K.A 212 Mpixels/s 4096 imes 2160p multiview video encoder chip for 3D/quad full HDTV applications[J].IEEE Journal of Solid-State Circuits,2010,45(1):46-58.

[12]王海勇,孙雁飞,吴启宗.H.264编码中帧内预测算法研究[J].电视技术,2009,33(8):9-12.

[13]KUO H C,LIN Y L.An H.264/AVC full-mode Intra-frame Encoder for 1080HD Video[C]//Proc.IEEE ICME 2008.[S.l.]:IEEE Press,2008:1037-1040.

猜你喜欢

宏块重构像素
像素前线之“幻影”2000
视频压缩感知采样率自适应的帧间片匹配重构
长城叙事的重构
基于运动估计与补偿的雷达拼图预测分析*
“像素”仙人掌
北方大陆 重构未来
ÉVOLUTIONDIGAE Style de vie tactile
北京的重构与再造
高像素不是全部
基于选择特征宏块的快速视频稳像