刘梅锋, 钟国韵, 徐洪珍
(东华理工大学 机械与电子工程学院,江西 抚州 344000)
MPEG-4 中采用的是视频对象平面(Video Object Plannar,缩写VOP)编码方式,其运动估计采用VOP 形状运动搜索模式,这样可以较准确地搜索到参考VOP,得到较小的残差,但是该种方式计算复杂度极高,且VOP 内部纹理数据的总编码比特率较高(夏金祥,2004)。在后来的H.264/AVC(Ostermarm et al.,2004;ITU-T,2003;Wiegand et al.,2003),即MPEG-4 第10 部分中,采用了块匹配的运动估计方式,极大地降低了计算复杂度。
针对H.264/AVC 中基于块匹配运动估计不准确的情况,Zhibin 等(2010)、Milani 等(2011)提出了非规则形状分块方式。Muhit 等(2012)、Liwei 等(2010)、Bordes 等(2011)提出了几何自适应分块方式。Servais 等(2005)、焦卫东等(2007)提出网格分块方式。
H.264/AVC 最大为16 ×16 尺寸的编码块尺寸已不能满足高清视频压缩编码的需求,因此,视频编码联合协作小组(Joint Collaborative Team on Video Coding,缩写JCT-VC)制定了下一代国际视频压缩编码标准:高效率视频编码标准HEVC(High Efficiency Video Coding,缩写HEVC)(Kim,2012;Bross,2012),该标准在保持视频质量的前提下,编码压缩率比H.264/AVC 提高一倍。
目前HEVC 标准仍然采用块匹配法进行运动估计,而块匹配方法是以整个正方形块的刚体运动为前提的,但是,在实际的视频图像中,运动对象边界往往都不是水平或者垂直的,一个运动对象的各个部分的运动速度也可能不同,在正方形块匹配前提下,分块尺寸越大,该情况出现的概率越高,运动估计越不准确,帧间预测的残差也将越大,从而导致编码比特率较高。
若采用三角形分块的方式,则其块边界(三角形斜边)将更接近实际运动对象的边界,运动估计将更准确,比特率将有较大程度的降低,即能较大程度的提高压缩率。因此,本文将研究基于三角形分块的HEVC 帧间预测方法,通过从三角形分块方法、三角形分块运动估计、三角形分块滤波等几个方面进行研究。
在HEVC 中,由于高清视频分块尺寸增大,帧间预测残差也可能随之增大。采用非规则分块可以有效地减小预测残差。然而在引入非规则分块后,其增加的分块模式比特数是不能忽略的。由于HEVC 采用了新的单元模式的表示方式(Han et al.,2010),帧间预测语法元素在帧、片、宏块三级得到了有效的统一。采用非规则分块后,其分块模式增加的比特数相比H.264 较小(在H.264 中,帧间预测的语法元素在帧、片、宏块三级需要部分重复定义,当额外定义新的语法元素时,其码率相当于在帧、片、宏块三级重叠增加,造成码率增幅较大)。
Xiaozhen(2011)提出了HEVC 视频编码框架下的非规则分块方式,此类分块方式的引入,较H.264降低了8%左右的整体视频编码的比特率。
HEVC 中的运动估计大致与H.264/AVC 中的相同,主要在于MV 的预测的不同,HEVC 中的MV预测主要从空间域和时间域等两个方面进行预测。
HEVC 中提出了一种新的技术,称为运动向量融合,该技术有点类似H. 264/AVC 中的“直接”(DIRECT)和SKIP 模式,只不过HEVC 中运动向量融合技术多了对空域上相邻块的比较技术。如图所示,主要是比较当前的PU 分块与空域或者时域上相邻的分块有着相同的MV 或者相同的块。MERGE 有两种情况:第一,当前块与相邻块有相同的MV;第二,当前块与相邻块有相同的MV 及相同的像素块(即它们的残差块经变换量化后系数为零)。在去方块滤波方面,HEVC 采用三种策略:不进行滤波、弱滤波和强滤波。
根据上述各种非规则运动分块的优缺点,一方面,为了避免增加过多的分块模式而增加比特数,另一方面,为了更准确地对分块进行运动补偿,对各种尺寸的CU 均采用非规则分块的设计,因此,本文拟提出如图1 所示的三角形运动分块的方法,图中,N 的取值可为8、16、32 和64。
由于要加入三角形PU 运动分块方式,则有必要加入新的句法元素。在HEVC 中,PU 预测模式可分为三种分割方式:横向分割、竖向分割和不分割等。非对称的PU 预测模式有四种,其中两种为横向分割,另外两种为竖向分割。在横向分割和竖向分割的编码过程中,需另外增加1 ~2个比特,其中一个比特表示是否为非对称的PU 分块,另一个比特表示非对称PU 分块的种类。
图1 三角形运动分块方法Fig.1 Proposed triangle motion block method
本文提出的三角形PU 运动分块有两种模式,因此,只要在原来的横向分割或竖向分割其中一种类型中添加即可。为了降低编码的比特率,通过实验统计了多个视频序列的横向分割和竖向分割出现的概率(表1)。显然,横向分割出现的概率要小于竖向分割的概率,若将提出的三角形PU 分块的句法元素信息加到横向分割的模式中,则对整体的编码信息的增加量将相对较小。因此,本文将三角形PU 分块的比特添加入横向分割的PU 预测模式中(表2),其中PART_45 和PART_135 分别为两种三角形PU 运动分块方式。
表1 三角形PU 模式实验统计表Table 1 Experimental Statistics of the triangle PU mode
表2 加入三角形PU 模式后的HEVC 中PU 模式熵编码信息Table 2 Entropy coding information of PU mode after the triangle PU modes are added
为了根据本文的三角形方法,本文采用如图2所示的MV 预测方法。
图2 三角形MV 预测方法Fig.2 Proposed MV prediction method for the triangle
从图中可以看出,本文并未把同一个CU 中的相邻块的MV 作为当前块的参考MV 之一,该措施的依据如下:既然在同一个CU 里面,当前PU 与相邻PU 被分为两个不同的PU,说明把该CU 分为两个此模式的PU 分块单独进行运动估计,最终通过运动补偿所得的残差更小,即这两块PU 分块有着不同的MV。因此,对于当前的PU 分块来说,同一个CU 内的相邻PU 的MV 没什么参考价值。
在三角形分块的运动向量融合策略方面,相比HEVC 中规则块的融合方式,本文保持空域上左边块和上边块、时域上的块的融合策略不变,对于其它几种方向的块增加如图所示的几种融合策略:从图3 中可以看出,在本文提出的三角形分块的运动向量融合方法中,(a)、(b)和(c)中的当前PU 分块分别与右上方块、左下方块及左上方块等空域的相邻块之间相隔了一个与当前PU 分块同一个CU的相邻PU 分块。因此,当前PU 分块不太可能与这些参考块有相同的MV,于是,这些情况下不必进行融合。
图3 三角形分块的融合策略Fig.3 Proposed merge strategy for triangle block
对于普通的规则运动分块,其视频编码产生的“方块效应”主要包括2个方面的原因:一个重要的原因是基于块的帧内和帧间预测残差的DCT 变化,变化系数的量化过程相对粗糙,因而反量化过程恢复的变换系数带有误差,会造成在图像块边界上产生数据不连续。第二个原因来自运动补偿预测。运动补偿块可能是从不是同一帧的不同位置上通过插值运算而获得的,由于运动补偿块的匹配不可能是绝对准确的,所以就会在数据块的边界出现不连续的数据。对于本文提出的三角形运动分块而言,由于同一个CU 内的不同的两个三角形PU是处于同一个TU 内。因此,它们之间的对角线PU边界并不会产生因反量化过程恢复的变换系数带有误差而带来的边界数据不连续。但是,这两个三角形PU 分块是单独进行运动估计和运动补偿的。因此,它们之间的边界也会产生因运动补偿的不完全准确匹配而产生的边界数据不连续的情况。因此,本文的三角形运动分块的滤波只采用弱滤波的方法。为了节省滤波的计算复杂度,本文对于三角形运动分块的滤波,将参考规则运动分块滤波判决的方法,当一个CU 的四个边中有一个需要进行滤波(不管是强滤波还是弱滤波),对该CU 中的三角形PU 分块的边界进行滤波(图4)。
在本文的三角形分块的滤波方法中,当CU 的四边中有一边判决为滤波,则当前CU 中的两块三角形PU 分块边界将进行滤波,滤波公式定义如下:
式中括号内加5 的目的为四舍五入用,各个像素点的滤波顺序如图5 中灰色像素及箭头所示。
为了检验本文提出的三角形运动分块方法,本文将所提方法与HM7.0 及文献(Xiaozhen,2011)进行比较,实验平台为HM7.0。
图4 三角形分块滤波方法Fig.4 Proposed filtering method for triangle block
图5 三角形分块滤波像素点顺序Fig.5 Proposed pixels sequence of filtering for triangle block
表3 显示了本文转码算法与文献算法之间的BD-rate 性能。从表中可以看出,相比文献算法,在编码时间平均上升23%的前提下,本文提出算法在BD-rate 方面平均降低了2.1%。
除了BD-rate,本文的编码性能还基于以下三个性能指标:
表3 本文算法与文献(Xiaozhen,2011)算法之间的BD-rate 性能(%)比较Table 3 BD-rate performance between the proposed algorithm and the one in reference(Xiaozhen,2011)(%)
其 中 ΔBitrate 是 比 特 率 增 量,Bitratepro和Bitrateref分别是所提出的快速模式选择算法和HM7.0 的比特率。ΔPSNR 峰值信号噪声比(Peak Signal to Noise Ratio,缩写PSNR)的增量,PSNRpro和PSNRref分别是所提出的算法和HM7.0 的PSNR。ΔTime 是模拟时间增量,Timepro和Timeref分别是所提出的算法和HM7.0 的仿真时间。
表4 本文算法与文献(Xiaozhen,2011)之间比特率、视频质量和编码时间的比较表Table 4 Comparison of bitrate,video quality and coding time between the proposed algorithm and Ref. (Xiaozhen,2011)
本文提出了一种基于三角形运动分块的HEVC 编码方法。首先提出了将一个CU 分块分为两种情况PU 的三角形分块方法,接着根据所提出的三角形分块方法分析设计了三角形分块的运动向量预测及融合模式的方法,然后提出的三角形分块之间边界的特性,分析设计了简单但有效的基于三角形分块的去方块滤波方法。最终根据新增添的三角形PU 分块模式与其它已有的PU 模式之间的关系,重新分析设计了三角形PU 分块模式的熵编码中的码字编码方法。实验结果显示,相比已有的基于三角形的HEVC 编码方法,本文提出的三角形运动分块方法能在保持视频质量基本不变及编码时间平均上升23%的前提下,BD-rate 平均降低2.1%。在一些对比特率较敏感,而对编码计算复杂度要求不高或者已具备较强的计算能力的场合,本文算法有一定的实际应用价值。
焦卫东,卢朝阳,何华君,等. 2007. 基于Delaunay 三角形网格的彩色视频帧内编码方法[J]. 西安电子科技大学学报:自然科学版,34(4):543-548.
夏金祥. 2004. 面向MPEG-4 的视频分割和视频编码算法[D]. 电子科技大学博士学位论文.
Bordes P,Francois E,Thoreau D. 2011. Fast encoding algorithms for geometry-adaptive block partitioning[C]. 18th IEEE International Conference on Image Processing,1205-1208.
Bross B. 2012. JCTVC-I1003. High eföciency video coding (HEVC)text specification draft 7[C]. Geneva,Switzerland. JCTVC of ISO/IEC and ITU-T.
Han W J,Min J,Kim I K,et al. 2010. Improved Video Compression Efficiency Through Flexible Unit Representation and Corresponding Extension of Coding Tools[J]. IEEE Transactions on Circuits and Systems for Video Technology,20(12):1709-1720.
ITU-T.2003. Rec. H.264 and ISO/IEC 14496-10 Version 1,Recommendation H. 264 Advanced Video Coding for Generic Audiovisual Services[S].
Kim I-K. 2012. JCTVC-I1002. High efficiency video coding (HEVC)test model 7 (HM 7)encoder description[C]. Geneva,Switzerland.JCTVC of ISO/IEC and ITU-T.
Liwei G,Peng Y,Yunfei Z,et al. 2010.Simplified geometry-adaptive block partitioning for video coding[C]. Proceedings of 2010 IEEE 17th International Conference on Image Processing,Hong Kong,965-968.
Milani S,Calvagno G. 2011. Segmentation-based motion compensation for enhanced video coding[C].18th IEEE International Conference on Image Processing,1649-1652.
Muhit A A,Pickering M R,Frater M R,et al. 2012. Video coding using fast geometry-adaptive partitioning and an elastic motion model[J]. Journal of Visual Communication and Image Representation,23(1):31-41.
Ostermarm J,Bormans J,List P,et al. 2004. Video Coding with H.264/AVC:Tools,Performance,and Complexity[J]IEEE Circus and System Magazine,4(1):7-28.
Servais M,VlachosT,Davies T. 2005. Affine motion compensation using a content-based mesh[J]. Journal of Image Signal Process,152(4):414-423.
Wiegand T,Van G J S,Bjontegaard G,et al. 2003. Overview of the H.264/AVC Video Coding Standard[J],IEEE Tran. Circuits Syst.Video Technol,13 (7):560-576.
Xiaozhen Z,Haoping Y,Shao L,et al. 2011. JCT-VC F415,CE2:Non-rectangular motion partitioning[C]. Torino,IT. JCTVC of ISO/IEC and ITU-T.
Zhibin L,Yilin C. 2010. Content-based irregularly shaped macroblock partition for inter frame prediction in video coding[J]. Signal Processing:Image Communication,25(8):610-621.