一种h.264/svc的自适应层间纹理预测方法

文档序号:7700326阅读:149来源:国知局

专利名称::一种h.264/svc的自适应层间纹理预测方法
技术领域
:本发明涉及视频压缩编码技术,特别涉及一种H.264/SVC的自适应层间紋理预测方法。
背景技术
:可分级视频编码(SVC,ScalableVideoCoding)是近20年来兴起的一种应对现代视频传输系统和终端多样性的技术。可分级性(scalability),是指视频比特流可以依据一定规则有选4奪的进4亍"丟弃",/人而适应不同网络条件以及终端性能的需求。目前最新的SVC标准由联合视频工作组(JVT,JointVideoTeam)制定并作为H.264/AVC(AdvancedVideoCoding)标准的附录G,通常被称为H.264/SVC。在接下来的说明中,如非特殊说明SVC都将特指H.264/SVC。SVC码流的特点是其包含若干个子码流,可根据需求提取某些子码流进行解码。当前的SVC标准实现了三种最普遍的可分级性时间可分级、空间可分级和质量可分级。其中,空间可分级意味着不同的子码流可以解码得到不同尺寸(空间分辨率)的视频图像。不同的可分级性可以联合,使得单路SVC码流可以表达多种时-空分辨率和质量的视频内容,灵活性非常高。SVC的各种分级性是采用分层编码的技术得以实现的。每一个SVC码流都由一个与AVC兼容的基本层(BaseLayer)和若干个增强层(EnhancementLayer)组成。基本层对应最低分辨率或质量的一见频内容,其码流比特率最低;增强层相对于基本层具备更高的视频的分辨率或质量,而码流比特率相应增大。当传输系统条件恶化或终端计算能力不足时,完整码流不能被有效的传输和解码,则可以由最高增强层开始逐层丟弃子码流,直至只包含最低4的基本层。SVC良好的压缩效率一方面得益于沿用了AVC的所有编码工具,例如帧内预测、多参考帧多划分的分数像素精度的运动补偿、环境自适应的熵编码等等;另一方面SVC在编码增强层时,将低层作为参考层(referencelayer),引入一系列层间预测(inter-layerprediction)技术去除了层与层之间的冗余度。SVC空间可分级使用了三种层间预测技术层间紋理预测(TextureInter-layerPrediction)、运动层间子贞测(MotionInter-layerPrediction)禾口歹戋差层间预测(ResidualInter-layerPrediction)。其中,层间紋理预测的目的在于利用已有参考层的重构像素信息,获得当前编码层的紋理的预测信息。层间紋理预测需要参考层信息的完全解码,如果参考层对应宏块为帧间编码模式,运动补偿的操作将不可避免的引发一系列参考帧的完全解码,造成解码复杂度的极大提升。因此SVC标准限定了层间紋理预测仅限于帧内编码模式下使用。图1为层间紋理预测的SVC编码器系统框图。其中,层间紋理预测框内为编码器中的层间紋理预测部分。具体地,SVC标准中的层间紋理预测的实现过程如下1、几何位置计算。对于当前层编码的宏块像素,根据当前层图像与参考层图像之间的尺度比例关系和位置关系,求出其与基本层像素的相对应位置。SVC标准规定相对应位置坐标采用1/16像素精度表达。如图2所示为基二空间分级情况下当前层像素与参考层像素间的位置关系。2、参考层重建像素上采样。根据1中求得的相对位置关系,对参考层重建像素上采样映射求得当前层像素的预测值。SVC规定上采样滤波器为一族1维的4抽头多相位插值滤波器(poly-phaseinterpolationfilter)。滤波器系数通过查表得出。相位的选择取决于步骤l中计算出的相对位置信息。上采样的操作依照先水平,再垂直的顺序。层间紋理预测是一种有效的去除层间帧内宏块像素相关性的技术。其性能主要取决于所使用的上采样滤波器的插值性能。插值结果越逼近当前编码图像,则预测残差越小,进而编码效率越高。虽然固定系数的4抽头多相位插值滤波器实现筒单,但是其上采样性能却并不是最优。以基二的空间可分级(即增强层的宽高为参考层宽高的2倍)为例,此时SVC标准计算插值滤波器的相位为1/4或3/4,其对应的插值滤波器系数为例如,在对当前层^(象素qA进行层间紋理预测时,首先在水平方向上,利用对应的滤波器系数对参考层像素p10、pll、pl2和pl3进行插值滤波,再在垂直方向上,利用对应的滤波器系数对参考层像素p01、pll、p21和p31进行插^f直滤波。上述这种简单的1维低通滤波器在应对视频信号上采样时会存在如下不足1、由于视频信号的空间2维性,单纯的水平和垂直1维滤波不能全面涵盖视频信号所有2维方向上的特性,因此在非水平和非垂直的方向上插值效果不佳;2、由于视频信号的统计非平稳性,因此固定不变的滤波器设计并不能在任意的场合下都获得最优的插值性能;3、由于视频信号采集过程中不可避免的会引入混迭失真,而混迭失真会严重影响插值滤波的性能。低通滤波器不具备抗混迭的能力,因此也会造成层间紋理预测性能的不足。由于插值滤波器的性能有限,会直接影响层间紋理预测的性能,进而会令SVC的编码效率受到限制。因此,目前的SVC标准中的层间紋理预测技术尚有改进和提高的空间。
发明内容有鉴于此,本发明提供一种H.264/SVC的自适应层间紋理预测方法,能够提高层间紋理预测的性能和SVC编码效率。为实现上述目的,本发明采用如下的技术方案一种H.264/SVC编码中的自适应层间紋理预测方法,在编码当前空间增强层的每个帧内片slice时,该方法包括确定当前层像素与参考层像素的相对应位置,对于当前层的任一像素,确定与所述任一像素相对应的16个参考层像素;根据所述任一像素与其对应的16个参考像素间的相对位置关系,将当前层的所有像素划分为4个子集;对属于任一子集的当前层像素,计算对应的16个参考层像素的自相关矩阵和当前层像素与对应的16个参考层像素间的互相关向量;根据所述自相关矩阵和互相关向量,确定所述任一子集对应的2维维纳滤波器系数~;其中,i和j分别为当前层像素对应的16个参考层像素的行列索引;利用所述任一子集对应的滤波器系数对该子集中每个当前层像素对应的16个参考层像素进行插值,得到相应当前层像素的层间紋理预测值,并将所述滤波器系数传输给解码端。较佳地,所述根据自相关矩阵~和互相关向量;g确定所述任一子集对应的2维维纳滤波器系数的方式为力二^C'、,其中,A为2维维纳滤波器系数/^构成的向量。较佳地,对得到的所述2维维纳滤波器系数进行量化取整;所述将滤波器系数传输给解码端为将量化取整后的滤波器系数传输给解码端。较佳地,对空间增强层对每个帧内片独立计算所述2维维纳滤波器系数,利用每个帧内片的滤波器系数对该帧内片的当前层像素进行紋理预测。较佳地,将发送给解码端的滤波器系数经熵编码后发送给解码端。7一种H.264/SVC解码中的自适应层间紋理预测方法,在解码当前空间增强层的每个帧内片slice时,该方法包4舌确定当前层像素与参考层像素的相对应位置,对于当前层的任一像素,确定与所述任一像素相对应的16个参考层^f象素;根据所述任一像素与其对应的16个参考像素间的相对位置关系,将当前层的所有像素划分为4个子集;接收编码端发送的各个子集对应的2维维纳滤波器系数^,对于每个当前层像素,利用该当前层像素所属子集对应的2维维纳滤波器系数,对该当前层像素对应的16个参考层像素进行插值滤波,确定该当前层像素的层间紋理预测值。较佳地,若接收的所述2维维纳滤波器系数是经过熵编码的,则对接收到的所述2维维纳滤波器系数经过熵解码后执行所述插值滤波操作。由上述技术方案可见,本发明中,在编码端对当前空间增强层的每个帧内片进行处理时,为每个当前层像素确定对应的16个参考层像素,并利用2维维纳滤波器,对该16个参考层像素进行插值滤波,得到相应当前层像素的层间紋理预测值。同时,为保证编解码的一致性,将滤波器系数发送给解码端。相应地,在解码端对当前空间增强层的每个帧内片进4亍处理时,才艮据编码端发送的滤波器系数,对任一当前层像素对应的16个参考层像素进行插值滤波,得到该任一当前层像素的层间紋理预测值。其中,16个参考层像素包括水平、垂直、非水平和非垂直方向的像素,并且采用2维维纳滤波器,从而克服了现有SVC层间紋理预测技术在应对视频信号的空间非平稳特性和以及混迭失真方面的不足,提升SVC空间分级的层间紋理预测的准确度,进而提高SVC对帧内图像的编码效率。图1为层间紋理预测的SVC编码器系统框图。图2为基二空间分级的像素位置和相位关系示意图。图3为本发明中H.264/SVC编码中的自适应层间紋理预测方法流程图。图4a为SVC标准采用方法求得的、插值滤波器的2维频率响应示意图。图4b为采用本实施例方法求得的&插值滤波器的2维频率响应。图5为对小尺寸"SOCCER"序列采用本实施例方法与SVC标准采用方法仿真得到的率失真曲线比较示意图。图6为对大尺寸"HARBOUR"序列采用本实施例方法与SVC标准采用方法仿真得到的率失真曲线比较示意图。具体实施例方式为使本发明的目的、技术手段和优点更加清楚明白,以下结合附图对本发明做进一步详细说明。本发明的基本思想是在层间紋理预测中进行上采样操作时,利用2维滤波器,对当前层像素的水平、垂直、非水平、非垂直多个方向上对应的参考层像素进行插值滤波,从而提高层间紋理预测的准确性。由于解码端实现筒单,并且由于混合编码框架中编码端包含了解码端的基本结构,因此主要对编码端进4亍详细说明。图3为本发明中编码侧进行层间紋理预测的方法示意图。其中,对于当前空间增强层中每个帧内片的层间紋理预测均相同,以下以对其中一个帧内片的处理为例进4亍i兌明。如图3所示,该方法包括步骤301,确定当前层像素与参考层像素的相对应位置,并将本片内的所有当前层像素划分为4个子集。在本发明中,通过插值滤波对任一当前层像素进行预测时,利用该当前层像素对应的16个参考层像素进行滤波处理,从而得到更准确的层间紋理预测结果。因此,在本步骤中,需要对本片内当前层的任一像素A,确定与该像素A对应的16个参考层像素。具体地,参考层和当前层像素位置关系使用与SVC标准一致的规则。在基二空间分级情况下参考层像素和当前层像素间位置关系如图2所示。参考层像素~"=()-3组成一个2维滤波窗,位居滤波窗中心的当前层像素qA、qB、qc和qD的预测值将由A,"、U插值滤波求出。也就是说,当前层像素qA、qB、qc和qo各自对应的16个参考层像素为&,f,;=Q"'3。对于图2中的其他当前层像素,均可以按照相同的相对位置关系,确定各自对应的16个参考层像素。对于每个片内当前层的所有像素,与其对应的16个参考层像素间的相对位置关系共有四种情况,因此,根据每个当前层像素与其对应的16个参考层间的相对位置关系,将本slice内当前层的所有像素划分为4个子集。具体的子集划分方式为对于任一当前层像素q,根据该像素的水平和垂直7/jas^[《]和p/o^[g]分别表示当前层像素q的垂直相位和水平相位。上述当前层像素qA、qB、qc和qo与其对应的16个参考层像素分別代表了上述四种情况,对于当前层的其他所有像素,与其对应的16个参考层像素间的相对位置关系一定为上述qA、qB、qc或qo与其对应的16个参考层像素中的一种相同。步骤302,根据当前层像素的取值和其对应的16个参考层像素的取值,确定各个子集对应的滤波器系数。对于任一子集中的各个当前层像素,由于该当前层《象素与对应的16个参考层像素间的相对位置关系均相同,因此,对于该子集中的各个当前层像素,在进行层间紋理预测时,采用相同的滤波器系数即可,因此本发明中将任一子集中的当前层像素对应的滤波器系数称为该任一子集对应的滤波器系数;对于属于不同子集的当前层像素,采用不同的滤波器系数。但是各个不同子集对应的滤波器系数,可以采用相同的方式获取,只是最终求得的值相位确定所属的子集,/Aoye力]=1/4,/Aow[《]=1/4,/7A(zyejg]=1/4,//^e"《]=3/4,pAa^[g]=3/4,pAosex[g]=1/4,p/icwe^]-」3/4,pAos^[g]=3/4:其中会有所不同。具体确定滤波器系数的方式可以采用现有的各种方式。下面以确定其中子集A(即qA所属子集)对应的滤波器系数为例,推导一种求取滤波器系数的方式。假设~'"'=()一3为用于求出^预测值的16个滤波器系数,分别与16个参考层像素^,"'=()'-3相对应,其中,i和j分别为当前层像素对应的16个参考层像素的行列索引,则^预测值"可由下式给出<formula>formulaseeoriginaldocumentpage11</formula>(2)则预测残差"r为<formula>formulaseeoriginaldocumentpage11</formula>(3)根据维纳滤波器原理,滤波器系数~,/,./=0...3满足最小误差能量准则,即<formula>formulaseeoriginaldocumentpage11</formula>(4)为了让E[er,]最小,令其对{~}的一阶偏导等于0。则可得到16元一次线性系数方程组,写成矩阵表达形式为<formula>formulaseeoriginaldocumentpage11</formula>(5)其中/^表示(/^的自相关矩阵,;表示{^}和^的互相关向量,A表示由系数{~}组组成的系数向量。求解得到<formula>formulaseeoriginaldocumentpage11</formula>(6)基于上述的推导,本步骤中确定子集A对应的滤波器系数的方式包括如下操作步骤302a,计算子集A中所有当前层像素对应的16个参考层像素的自相关矩阵i^和子集A中所有当前层像素与对应的16个参考层像素间的互相关向量%。具体地,自相关矩阵为一个统计矩阵,互相关向量也是一个统计向量。其中,将任一当前层片内像素对应的16个参考层像素进行自相关处理,再对所有当前层像素对应的16个参考层像素的自相关结果进行统计平均,得到16x16的自相关矩阵/一将任一当前层片内像素分别与其对应的16个参考层像素进行互相关,再对所有当前层像素与其对应的16个参考层像素的互相关结果进行统计平均,得到16x1的互相关向量;。步骤302b,利用步骤201a得到的自相关矩阵和互相关向量,确定子集A对应的滤波器系数为<formula>formulaseeoriginaldocumentpage12</formula>其中,A为16个滤波器系数顺序排列构成的16xl的向量。步骤303,将步骤302确定的各个子集对应的滤波器系数进行量化取整操作。实际实现中,由于考虑到浮点数操作的高复杂度以及接下来滤波器系数传输的需求,因此,优选地,需要对系数进行量化取整。可以进行8位量化,则量化的方法为<formula>formulaseeoriginaldocumentpage12</formula>步骤304,利用步骤302确定的各个子集对应的滤波器系数进行插值滤波,得到当前层像素的层间紋理预测值。对于当前层中任意一像素?,首先根据其水平、垂直相位信息求出其属于某个子集,然后取出该子集对应的滤波器系数《以及该像素q对应的16个参考层像素&","G…3,通过下式进行插值滤波计算求出《',即通过层间紋理预测技术获得的预测像素值。<formula>formulaseeoriginaldocumentpage12</formula>按照上述方式,对当前层片内的每个像素进行层间紋理预测,从而得到每个像素的层间紋理预测值。步骤305,将各个子集对应的滤波器系数传输给解码端。通过前述步骤302,为当前层的4个子集分别确定了16个滤波器系数,即本slice的滤波器系数共64个。为了保证编解码两端的一致性,本步骤中将这64个滤波器系数传输给解码端。具体地,为实现系数的有效传输,可以通过使用H.264标准中使用的指数哥伦布(Exp-Golomb)编码技术对步骤303中量化后的系数进行熵编码,再将编码后的系数比特放入slice头中自定义的码流元素中。至此,编码端的层间紋理预测方法流程结束。相应地,解码端的为例层间预测流程包括步骤401,确定当前层像素与参考层像素的相对应位置,并将本片内的所有当前层像素划分为4个子集。本步骤的具体实现方式与步骤301中相同,这里就不再赘述。步骤402,接收编码端发送的各个子集对应的滤波器系数。如果接收的滤波器系数是经过熵编码的,则本步骤中接收相应滤波器系数后需要进行对应的熵解码。步骤403,对于每个当前层像素,利用该像素所属子集对应的滤波器系数,对该像素对应的16个参考层像素进行插值滤波,得到该像素层间紋理预测值。本步骤中利用接收的滤波器系数进行插值滤波的方式,与步骤304中相同,这里就不再赘述。至此,本发明中解码端的层间紋理预测方法流程结束。以上即为本发明的层间紋理预测:技术的实施方法。上述具体实现方式中,自适应滤波器系数对空间增强层的不同帧内片是独立计算的,在同一空间增强层的帧内片内同一子集的所有像素插值使用相同的滤波器系数。因此本发明的技术方案实现了上采样滤波器的片级自适应性。为了比较本发明具体实施例与SVC标准技术的性能差别,在SVC官方测试平台JSVM9.14上实现了本发明中层间紋理预测技术。以下为仿真说明和相关结果。由于层间紋理预测只在空间分级的全帧内SVC编码时使用。因所有实验中都只使用帧内编码。此外所有实验码流都有一个基本层和一个增强层构成,并且增强层的宽高为基本层的2倍,即基二的空间分级。如表1给出了实验中使用的序列信息。相应的结果由表2给出。由结果可见,在同等视频质量条件下,本发明所示技术能够比SVC标准实现在小尺度下节省3.61%的码率,在大尺度下节省9.05%的码率。表1测试本发明层间纟文理预测技术的编码序列信息<table>tableseeoriginaldocumentpage14</column></row><table>图4给出了"SOCCER"序列第一帧采用本实施例方法与SVC标准采用方法求得的、插值滤波器的2维频率响应对比。其中,图4a为SVC标准采用方法求得的^插值滤波器的2维频率响应示意图;图4b为采用本实施例方法求得的&插值滤波器的2维频率响应。从中可以看出本发明中使用的2维维纳自适应滤波器全面的涉及了空间各方向上的特性,并且其频率相应在高频端并没有完全截止,使其具备了抗混迭失真的能力。在处理视频信号插值上,比SVC标准采用的简单低通滤波器优越。如图5和图6对比了小尺寸"SOCCER"序列和大尺寸"HARBOUR"序列采用本发明所述方法和SVC标准方法分别仿真后的率失真曲线比较。从率失真的比较上可见本发明所述方法对提高编码效率有显著效果。综上,本发明中,基于2维维纳自适应插值滤波器进行SVC层间紋理预测,其克服了现有SVC标准中的1维4抽头多相位插值滤波器在处理图像的2维非平稳性和应对混迭失真问题上的不足。由于维纳自适应滤波基于预测误差最小准则,使得本发明的层间紋理预测效率更高,从而获得更好的编码压缩效果。以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发权利要求1、一种H.264/SVC编码中的自适应层间纹理预测方法,其特征在于,在编码当前空间增强层的每个帧内片slice时,该方法包括确定当前层像素与参考层像素的相对应位置,对于当前层的任一像素,确定与所述任一像素相对应的16个参考层像素;根据所述任一像素与其对应的16个参考像素间的相对位置关系,将当前层的所有像素划分为4个子集;对属于任一子集的当前层像素,计算对应的16个参考层像素的自相关矩阵和当前层像素与对应的16个参考层像素间的互相关向量;根据所述自相关矩阵和互相关向量,确定所述任一子集对应的2维维纳滤波器系数hij;其中,i和j分别为当前层像素对应的16个参考层像素的行列索引;利用所述任一子集对应的滤波器系数对该子集中每个当前层像素对应的16个参考层像素进行插值,得到相应当前层像素的层间纹理预测值,并将所述滤波器系数传输给解码端。2、根据权利要求1所述的方法,其特征在于,所述根据自相关矩阵&和互相关向量确定所述任一子集对应的2维维纳滤波器系数的方式为》二^C'^,其中,A为2维维纳滤波器系数/^构成的向量。3、根据权利要求1或2所述的方法,其特征在于,对得到的所述2维维纳滤波器系数进行量化取整;所述将滤波器系数传输给解码端为将量化取整后的滤波器系数传输给解码端。4、根据权利要求1或2所述的方法,其特征在于,对空间增强层对每个帧内片独立计算所述2维维纳滤波器系数,利用每个帧内片的滤波器系数对该帧内片的当前层像素进行紋理预测。5、根据权利要求1或2所述的方法,其特征在于,将发送给解码端的滤波器系数经熵编码后发送给解码端。6、一种H.264/SVC解码中的自适应层间紋理预测方法,其特征在于,在解码当前空间增强层的每个帧内片slice时,该方法包括确定当前层像素与参考层像素的相对应位置,对于当前层的任一像素,确定与所述任一像素相对应的16个参考层像素;根据所述任一像素与其对应的16个参考像素间的相对位置关系,将当前层的所有像素划分为4个子集;接收编码端发送的各个子集对应的2维维纳滤波器系数^,对于每个当前层像素,利用该当前层像素所属子集对应的2维维纳滤波器系数,对该当前层像素对应的16个参考层像素进行插值滤波,确定该当前层像素的层间紋理预测值。7、根据权利要求6所述的方法,其特征在于,若接收的所述2维维纳滤波器系数是经过熵编码的,则对接收到的所述2维维纳滤波器系数经过熵解码后执行所述插值滤波操作。全文摘要本发明公开了一种H.264/SVC编码中的自适应层间纹理预测方法,在编码当前空间增强层的每个帧内片slice时,包括为每个当前层像素确定对应的16个参考层像素,并利用2维维纳滤波器,对该16个参考层像素进行插值滤波,得到相应当前层像素的层间纹理预测值,并将2维维纳滤波器系数传输给解码端。相应地,在解码端对当前空间增强层的每个帧内片进行处理时,根据编码端发送的滤波器系数,对每一当前层像素对应的16个参考层像素进行插值滤波,得到该当前层像素的层间纹理预测值。应用本发明,能够提高层间纹理预测的性能和SVC空间分级编码效率。文档编号H04N7/26GK101674475SQ20091008402公开日2010年3月17日申请日期2009年5月12日优先权日2009年5月12日发明者张文豪,明阳阳,波杨,门爱东,志陈,陈晓博,睿韩申请人:北京合讯数通科技有限公司;北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1