一种基于纹理分析的hevc帧内预测快速模式选择方法
【专利摘要】本发明公布了一种基于纹理分析的HEVC帧内预测快速模式选择方法,该方法在对编码树单元进行帧内预测之前,根据水平、垂直、左下、右下等四个方向上的梯度绝对值和确定编码树单元中每一个4×4单元的主纹理方向和纹理复杂度,并根据纹理平滑区域采用较大编码单元,纹理复杂区域采用较小编码单元的原则确定当前编码树单元的划分。在预测时,根据预测单元的主纹理方向,排除掉最不可能的若干预测模式,然后按照HEVC编码标准进行粗略模式选择和率失真优化模式选择。本发明所提出的基于纹理分析的HEVC帧内预测快速模式选择方法能够在保证编码质量的前提下,显著提高编码速度。
【专利说明】—种基于纹理分析的HEVC帧内预测快速模式选择方法
【技术领域】
[0001]本发明属于多媒体编码领域,具体涉及一种针对HEVC视频编码标准的帧内预测快速模式选择方法,是一种根据图像纹理分析进行编码单元划分和预测方向快速模式选择的方法。
【背景技术】
[0002]随着新一代视频编码标准HEVC (High Efficiency Video Coding)的发布,视频的编码效率进一步提升。相比于以前的视频编码标准H.264/AVC,在相同编码质量的情况下,可以节省近一半的码率,然而这是以牺牲编码复杂度为代价的。如何在不改变码流结构和保持原有码率的前提下,最大程度的降低算法复杂度,显著提高编码速度,是HEVC大规模推广与应用的关键所在。
[0003]帧内编码可以为帧间编码提供参考信息,并且可以阻止由误码引起的错误漂移,因此在视频编码中帧内编码是必不可少的。影响HEVC帧内编码耗时的主要有两个部分:编码单元的划分和预测方向的选择。
[0004]针对编码单元的快速划分主要有两种方法,一是根据已编码单元的率失真代价利用贝叶斯等统计学习的方法确定编码单元的划分,然而离线的学习结果不能很好的通用于所有的视频序列,在线的学习方式又会引入额外的计算复杂度;二是根据当前编码单元的图像内容复杂度确定编码单元的划分,这种方法的关键在于计算图像复杂度以及选择合适的阈值。
[0005]针对预测方向的快速模式选择主要有三种方法,一是根据相邻区域或者相邻帧间具有较强的相关性,利用周围编码单元的信息减少当前编码单元的预测方向候选集,然而实际应用中,经常出现场景切换或纹理丰富的视频,这种情况下时空相关性较弱,导致编码性能明显下降;二是利用最佳的预测方向与编码单元的纹理方向间较高的相关性,减少候选预测方向的数量;三是通过一种低复杂度的方式估计每一种预测模式的码率和失真降低率失真代价的计算复杂度,这种方法保留了所有的预测方向,并且没有增加额外的计算复杂度,但是由于自然图像视频序列的随机性较强,很难构造一个适用于所有视频序列的率失真估计模型,相比于第二种方法,这种方法的编码性能下降比较明显。
[0006]在新一代视频编码标准中,HEVC引入了新的编码树单元(Coding Tree Unit, CTU)概念,用于替代现有视频编码标准中的宏块概念,另外还有编码单元、预测单元、变换单元等概念。编码树单元是一个递归的四叉树结构,深度可以从O到3,即编码单元的大小可以从64X64到8X8。对于最小的编码单元来说,HEVC的帧内编码又可以将其划分为4X4的预测单元,预测单元的大小可以从64X64到4X4。而对于巾贞内预测来说,HEVC对每一个预测单元都提供了 35种预测模式。相比于现有视频编码标准H.264/AVC,编码单元划分和预测方向选择的优化问题更为复杂。本发明根据纹理分析构造当前编码树单元的图像复杂度描述,并据此快速确定编码单元的划分;利用纹理分析获得的纹理方向与预测方向间较强的相关性,减少预测模式的数量。
【发明内容】
[0007]为了克服现有技术的上述缺陷,本发明提出了一种基于纹理分析的HEVC帧内预测快速模式选择方法,该方法根据视频内容的复杂度确定编码树单元的划分,并根据图像的纹理方向减小预测方向的候选集。实验证明本方法能够很好的适应高清视频图像的实时压缩应用,大大提高了编码速度。
[0008]为实现上述目的,本发明采用的技术方案为:
[0009]一种基于纹理分析的HEVC帧内预测快速模式选择方法,该方法步骤如下:
[0010]步骤(I)、对当前编码树单元,计算每个可能的编码单元的图像复杂度和主纹理方向;
[0011]步骤(2)、对当前编码树单元,按照Z扫描顺序从上往下重复执行步骤(3)至步骤
(6),直至扫描完当前编码树单元;
[0012]步骤(3)、若当前编码单元的图像复杂度小于或等于阈值,则判定该编码单元为平滑单元,否则判定为复杂单元;
[0013]步骤(4)、对于平滑的编码单元,利用步骤(5)计算当前编码单元的率失真代价;
[0014]步骤(5)、对于当前编码单元中的每一个预测单元,保留该单元主纹理方向周围的8个预测方向以及planar预测和DC预测模式,按照HEVC视频编码标准进行粗略模式选择和率失真优化选择;
[0015]步骤(6)、对于复杂的编码单元,按照步骤(3)至步骤(6)依次递归扫描四个子单元,若四个子单元都判定为平滑单元,则利用步骤(5)计算当前编码单元的率失真代价,并根据率失真代价最小原则判定当前编码单元是否划分,同时更新阈值。
[0016]所述步骤(I)具体包括如下步骤:
[0017]步骤(11)、对当前编码树单元中的每一个4X4的单元,分别沿水平、垂直、左下、右下四个方向计算梯度并计算梯度的绝对值和SAG ;
[0018]步骤(12)、将最小梯度绝对值和的梯度方向作为该单元的主纹理方向,所述主纹理方向是指该单元大部分像素的纹理方向;
[0019]步骤(13)、将主纹理方向与其正交方向上SAG差的绝对值定义为该单元的纹理复杂度,并利用量化步长与该单元大小的乘积作为初始阈值。
[0020]所述步骤(5)具体包括如下步骤:
[0021]步骤(51)、定义一个候选预测模式数组;
[0022]步骤(52)、根据步骤(I)获取当前预测单元的主纹理方向,并将主纹理方向及其周围的8个预测方向作为候选预测方向;
[0023]步骤(53)、将候选预测方向映射到HEVC编码标准中的角度预测模式,并将选择的角度预测模式和Planar以及DC模式添加到候选预测模式数组;
[0024]步骤(54)、对候选预测模式数组中的每一个预测模式,按照HEVC编码标准进行粗略模式选择和率失真优化模式选择。
[0025]所述步骤(6)具体包括如下步骤:
[0026]步骤(61)、按照步骤(3)至步骤(6)依次递归扫描四个子单元,若四个子单元都判定为平滑单元,则利用步骤(5)计算当前编码单元的率失真代价Costramse,否则继续递归扫描下一层次的子单兀;
[0027]步骤(62)、若当前编码单元的率失真代价Costcostse于或等于四个子单元的率失真代价和Costfim,则将阈值调大,否则将阈值调小。
[0028]所述步骤(62)中阈值调大的更新策略为:
[0029]TH' = TH+α X (Costfine-Costcoarse)/2
[0030]式中TH为更新前的阈值,TH'为更新后的阈值,α为纹理复杂度与率失真代价间的线性模型的乘法因子。
[0031]所述步骤(62)中阈值调小的更新策略为:
[0032]TH' = TH-a
[0033]式中TH为更新前的阈值,TH'为更新后的阈值,a为常数。
[0034]本发明与现有技术相比的优点在于:
[0035]1、本发明从纹理分析的角度出发,将编码树单元的划分与预测方向的选择结合考虑,利用梯度既能够提取纹理复杂度又可以提取纹理的方向,在保证编码质量的前提下,可以节省更多的编码时间。
[0036]2、本发明根据最终的率失真代价及时更新决定编码单元是否划分的阈值,能够充分利用编码树单元内相邻区域的强相关性,以减弱阈值选取对编码质量的影响。
【专利附图】
【附图说明】
[0037]图1为基于纹理分析的HEVC帧内预测快速模式选择方法流程图;
[0038]图2为HEVC视频编码标准中的编码树单元划分结构图;
[0039]图3为方向梯度计算方法示意图;
[0040]图4为基于梯度的编码单元快速划分详细流程图。
【具体实施方式】
[0041]下面结合附图和【具体实施方式】对本发明作进一步的说明。
[0042]为了满足高清视频图像的实时压缩应用需求,提高HEVC视频编码器的编码速度,本发明提出了一种基于纹理分析的HEVC帧内预测快速模式选择方法。该方法主要包括两部分:基于纹理复杂度的编码单元快速划分和基于纹理方向的预测模式快速选择,编码单元的快速划分涉及
【发明内容】
中的步骤(1)至步骤(4)以及步骤(6),预测模式的快速选择涉及
【发明内容】
中的步骤(5)。首先利用梯度算子计算当前编码树单元中各子单元的复杂度,确定一个较细的编码单元划分,再根据该划分确定一个较粗的编码单元划分,最终根据后续帧内预测的率失真代价确定最终的编码单元划分;在选择最佳预测方向的过程中,排除掉与主纹理方向相差较远的预测模式,以节省帧内预测的时间。下面展开具体说明。
[0043]1.基于纹理复杂度的编码单元快速划分
[0044]新一代视频编码标准HEVC引入了编码树单元(Coding Tree Unit, CTU)概念,一帧视频由多个互不重叠的编码树单元组成。默认情况下,编码树单元的大小为64X64。编码树单元是一个四叉树形式的递归结构,它可以灵活的划分为多个层次的编码单元,如图1所示。编码单元的大小可以从64X64到8X8。在HEVC标准的参考编码器中,利用率失真优化选择的方法对每一种可能的划分都进行一次预测、变换、量化、熵编码、反量化、反变换、重建等过程,相比于H.264/AVC,编码复杂度大幅提升,严重制约了 HEVC的实际应用。
[0045]通过实验统计发现,编码单元的大小与图像内容的纹理复杂度密切相关。纹理简单的区域采用较大的编码单元,而纹理复杂的区域采用较小的编码单元。纹理复杂度的度量方式有多种,如方差、梯度、熵等。梯度不仅包含图像的纹理复杂度信息,还包含了图像的纹理方向信息,可以协助快速确定预测单元的预测模式。基于此,本发明提出一种基于梯度的编码单元快速划分方法。
[0046]在介绍编码单元快速划分的实施方式之前,首先给出本发明中所使用的梯度的计算方法以及主纹理方向、纹理复杂度的定义。本发明中的梯度是指像素亮度值沿水平、垂直、左下、右下等方向获得的方向导数,如图3所示。计算公式如(I) - (4)式所示。
【权利要求】
1.一种基于纹理分析的HEVC帧内预测快速模式选择方法,其特征在于:该方法步骤如下: 步骤(1)、对当前编码树单元,计算每个可能的编码单元的图像复杂度和主纹理方向;步骤(2)、对当前编码树单元,按照Z扫描顺序从上往下重复执行步骤(3)至步骤(6),直至扫描完当前编码树单元; 步骤(3)、若当前编码单元的图像复杂度小于或等于阈值,则判定该编码单元为平滑单元,否则判定为复杂单元; 步骤(4)、对于平滑的编码单元,利用步骤(5)计算当前编码单元的率失真代价; 步骤(5)、对于当前编码单元中的每一个预测单元,仅保留该单元主纹理方向周围的8个预测方向以及Planar预测和DC预测模式,按照HEVC视频编码标准进行粗略模式选择和率失真优化选择; 步骤(6)、对于复杂的编码单元,按照步骤(3)至步骤(6)依次递归扫描四个子单元,若四个子单元都判定为平滑单元,则利用步骤(5)计算当前编码单元的率失真代价,并根据率失真代价最小原则判定当前编码单元是否划分,同时更新阈值。
2.如权利要求1所述的基于纹理分析的HEVC帧内预测快速模式选择方法,其特征在于:所述步骤(1)具体包括如下步骤: 步骤(11)、对当前编码树单元中的每一个4X4的单元,分别沿水平、垂直、左下、右下四个方向计算梯度并计算梯度的绝对值和SAG ; 步骤(12)、将最小梯度绝对值和的梯度方向作为该单元的主纹理方向,所述主纹理方向是指该单元大部分像素的纹理方向; 步骤(13)、将主纹理方向与其正交方向上SAG差的绝对值定义为该单元的纹理复杂度,并利用量化步长与该单元大小的乘积作为初始阈值。
3.如权利要求1所述的基 于纹理分析的HEVC帧内预测快速模式选择方法,其特征在于:所述步骤(5)具体包括如下步骤: 步骤(51)、定义一个候选预测模式数组; 步骤(52)、根据步骤(1)获取当前预测单元的主纹理方向,并将主纹理方向及其周围的8个预测方向作为候选预测方向; 步骤(53)、将候选预测方向映射到HEVC编码标准中的角度预测模式,并将选择的角度预测模式和Planar以及DC模式添加到候选预测模式数组; 步骤(54)、对候选预测模式数组中的每一个预测模式,按照HEVC编码标准进行粗略模式选择和率失真优化模式选择。
4.如权利要求1所述的基于纹理分析的HEVC帧内预测快速模式选择方法,其特征在于:所述步骤(6)具体包括如下步骤: 步骤(61)、按照步骤(3)至步骤(6)依次递归扫描四个子单元,若四个子单元都判定为平滑单元,则利用步骤(5)计算当前编码单元的率失真代价Costramse,否则继续递归扫描下一层次的子单元; 步骤(62)、若当前编码单元的率失真代价Costramse小于或等于四个子单元的率失真代价和Costfim,则将阈值调大,否则将阈值调小。
5.如权利要求4所述的基于纹理分析的HEVC帧内预测快速模式选择方法,其特征在于:所述步骤(62)中阈值调大的更新策略为:
TH' = TH+ α X (Costfine-Costcoarse)/2 式中TH为更新前的阈值,TH'为更新后的阈值,α为纹理复杂度与率失真代价间的线性模型的乘法因子。
6.如权利要求4所述的基于纹理分析的HEVC帧内预测快速模式选择方法,其特征在于:所述步骤(62)中阈值调小的更新策略为: TH' = TH-a 式中TH为更新前的阈值,TH'为更新后的阈值,a为常数。
【文档编号】H04N19/50GK103517069SQ201310445775
【公开日】2014年1月15日 申请日期:2013年9月25日 优先权日:2013年9月25日
【发明者】张永飞, 李哲, 李波 申请人:北京航空航天大学