视频帧间编码方法及装置与流程

文档序号:14359139阅读:273来源:国知局

本发明涉及视频信号处理技术领域,尤其涉及视频帧间编码方法及装置。



背景技术:

目前,随着视频分辨率的持续增加,高清视频和超高清视频为观看者提供了更真实更丰富的视觉体验。然而,视频分辨率的增加会导致视频数据量的巨大增长,对于有限的带宽而言,传输的负担极大。因此,为了获得更高的视频压缩效率,高效视频编码(hevc,highefficiencyvideocoding)标准于2013年被正式批准为国际编码标准。

hevc是由iso/iec运动图像专家组(mpeg)和itu-t视频专家组组成的联合视频编码组(jct-vc)制定的。相比于h.264/avc视频压缩标准,hevc视频压缩标准可以进一步减少约50%的码率,这得益于hevc采用更先进的编码技术,例如,四叉树编码树单元(codingtreeunit,所述编码树单元),每一个编码树单元可以进一步划分为4个子编码树单元,即编码树单元(codingunit),直到最小编码树单元大小为8x8,其对应的深度为0至3。当对编码树单元进行帧间(inter)预测时,预测模式可以为skip/merge,inter2nx2n,inter2nxn,internx2n,internxn,inter2nxnu,internlx2n,internrx2n。同时,hevc采用变换单元(transformunit,tu)对预测残差进行量化和变换编码。

为了获得最优的编码效率,与h.264/avc编码相似,hevc采用拉格朗日率失真策略(ratedistortionoptimization,rdo)技术的最优模式选择算法,即通过遍历所有可能的模式,最后选择率失真最小的模式最为最优编码模式,公式为:jm=sse+λ·bmode。式中,λ为拉格朗日常数,sse为原始像素块与重建像素块之间的失真,bmode为编码所需比特数。但是,上述遍历过程会浪费大量时间,即在短时间内无法保证视频的压缩质量。

综上,目前关于编码过程会浪费大量时间的问题,尚无有效的解决办法。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供了视频帧间编码方法及装置,通过设置常用编码树单元和不常用编码树单元以及对其采取不同编码过程,从而有效节省了编码过程中的时间消耗。

第一方面,本发明实施例提供了视频帧间编码方法,包括:

获取待编码的视频序列的各个参数,且,将视频序列记为v(w,h,k,n,d),其中,w表示视频序列的水平分辨率,h表示视频序列的垂直分辨率,w×h表示视频序列的分辨率,k表示视频序列中包含的深视频帧的帧数,n表示视频序列中每帧中的第n个编码树单元,d表示编码树单元的编码深度;

获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元;

对不常用编码树单元进行skip模式编码;

对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,获取待编码的视频序列的各个参数,且,将视频序列记为v(w,h,k,n,d)之前,包括:

将视频序列以帧为单位进行划分,得到多帧视频序列;

将每帧视频序列划分为多个编码树单元。

结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元,包括:

根据公式计算编码深度d下的预测深度其中,表示视频序列中已编码帧v(w,h,k0,n,d)在编码深度d下的预测深度,表示视频序列中已编码帧v(w,h,k1,n,d)在编码深度d下的预测深度,权重参数α为:

tcur表示当前编码帧v(w,h,kc,n,d)的编码时刻,tpre0表示已编码帧v(w,h,k0,n,d)的编码时刻,tpre1表示已编码帧v(w,h,k1,n,d)的编码时刻;

假定已编码帧v(w,h,k0,n,d)与当前编码帧v(w,h,kc,n,d)具有相同的量化参数值,已编码帧v(w,h,k1,n,d)的量化参数值比当前编码帧v(w,h,kc,n,d)的量化参数值小1;

根据公式t=d+1计算阈值t;

比较预测深度是否大于阈值t;

大于t,将编码树单元划分为不常用编码树单元,否则,将编码树单元划分为常用编码树单元。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式,包括:

获取常用编码树单元的父编码树单元;

若父编码树单元的最优编码模式为skip,则分别计算常用编码树单元的skip模式的率失真代价值和merge模式的率失真代价值;

计算skip模式的提前终止条件为:p_skip=skipmode&&j2-j1>0,其中,p_skip表示常用编码树单元的编码模式,j1,j2分别表示skip模式的率失真代价值和merge模式的率失真代价值。

结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式,包括:

分别计算常用编码树单元的skip模式的率失真代价值j1,merge模式的率失真代价值j2和inter2nx2n模式的率失真代价值j3;

计算skip模式提前终止条件为:

第二方面,本发明实施例提供了视频帧间编码装置,包括:

参数获取模块,用于获取待编码的视频序列的各个参数,且,将视频序列记为v(w,h,k,n,d),其中,w表示视频序列的水平分辨率,h表示视频序列的垂直分辨率,w×h表示视频序列的分辨率,k表示视频序列中包含的深视频帧的帧数,n表示视频序列中每帧中的第n个编码树单元,d表示编码树单元的编码深度;

划分模块,用于获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元;

不常用编码模块,用于对不常用编码树单元进行skip模式编码;

常用编码模块,用于对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,常用编码模块包括:

父编码获取单元,用于获取常用编码树单元的父编码树单元;

第一率失真代价值计算单元,用于若父编码树单元的最优编码模式为skip,则分别计算常用编码树单元的skip模式的率失真代价值和merge模式的率失真代价值;

第一提前终止单元,用于计算skip模式的提前终止条件为:p_skip=skipmode&&j2-j1>0,其中,p_skip表示常用编码树单元的编码模式,j1,j2分别表示skip模式的率失真代价值和merge模式的率失真代价值。

结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,常用编码模块包括:

第二率失真代价值单元,用于分别计算常用编码树单元的skip模式的率失真代价值j1,merge模式的率失真代价值j2和inter2nx2n模式的率失真代价值j3;

第二提前终止单元,用于计算skip模式提前终止条件为:

第三方面,本发明实施例还提供一种终端,包括存储器以及处理器,存储器用于存储支持处理器执行上述方面提供的视频帧间编码方法的程序,处理器被配置为用于执行存储器中存储的程序。

第四方面,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述任一项的方法的步骤。

本发明实施例提供的视频帧间编码方法及装置,其中,该视频帧间编码方法包括:首先,获取待编码的视频序列的各个参数,例如,水平分辨率、垂直分辨率、编码深度等,并且,将视频序列记为v(w,h,k,n,d),其中,w表示视频序列的水平分辨率,h表示视频序列的垂直分辨率,w×h表示视频序列的分辨率,k表示视频序列中包含的深视频帧的帧数,n表示视频序列中每帧中的第n个编码树单元,d表示编码树单元的编码深度,之后,获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度并根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元,之后采用两种策略进行编码,即对不常用编码树单元进行skip模式编码,对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式,以能够提前结束编码过程,在能够维持视频客观质量基本保持不变的前提下,有效节约视频序列的编码时间,实现快速编码,充分利用了视频序列的时域相关性和率失真代价特征,提前决策编码树单元的最佳编码模式,实现了高效率视频的快速编码,节省整体编码时间可达58.5%,同时能很好保证视频的压缩质量。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本发明实施例所提供的视频帧间编码方法的流程图;

图2示出了本发明实施例所提供的视频帧间编码装置的连接图;

图3示出了本发明实施例所提供的视频帧间编码装置的结构框架图;

图4示出了本发明实施例所提供的视频帧间编码装置的结构连接图。

图标:1-参数获取模块;2-划分模块;3-不常用编码模块;4-常用编码模块;301-父编码获取单元;302-第一率失真代价值计算单元;303-第一提前终止单元;311-第二率失真代价值单元;312-第二提前终止单元。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,在编码过程中普遍采用hevc,相比于h.264/avc视频压缩标准,hevc视频压缩标准可以进一步减少约50%的码率,但是,当对cu进行帧间(inter)预测时,hevc采用了多种模式预测方式,为了获得最优的编码效率,hevc采用拉格朗日率失真策略技术的最优模式选择算法,即通过遍历所有可能的模式,最后选择率失真最小的模式最为最优编码模式,这样就会导致在编码过程中浪费大量时间。

基于此,本发明实施例提供了视频帧间编码方法及装置,下面通过实施例进行描述。

实施例1

参见图1,本实施例提出的视频帧间编码方法具体包括以下步骤:

步骤s101:获取待编码的视频序列的各个参数,且,将视频序列记为v(w,h,k,n,d),其中,w表示视频序列的水平分辨率,h表示视频序列的垂直分辨率,w×h表示视频序列的分辨率,k表示视频序列中包含的深视频帧的帧数,n表示视频序列中每帧中的第n个编码树单元,d表示编码树单元的编码深度。

步骤s102:获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元。

步骤s103:对不常用编码树单元进行skip模式编码。

步骤s104:对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式。

下面对各个步骤进行详细阐述,在步骤s101获取待编码的视频序列的各个参数,且,将视频序列记为v(w,h,k,n,d)之前,本发明还包括:

(1)将视频序列以帧为单位进行划分,得到多帧视频序列,由于,视频序列多是指一系列静态影像以电信号的方式加以捕捉、储存和重现的连续画面,而视频序列的长度通常较大,具体的,视频序列的长度是由拍摄时间的长短来确定的。因此,在本实施例中,需要先将视频序列以帧为单位进行划分,这样得到多帧视频序列,并对每一帧视频序列进一步处理。

(2)将每帧视频序列划分为多个编码树单元。编码树单元是h.265/高效率视讯编码(hevc)的处理单元,编码树单元的大小可以从8x8到64x64。在本实施例中,将每帧视频序列划分为64x64个编码树单元,以便于后续进行处理。

下面对上述各个步骤进行详细阐述,步骤s102获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元,包括:

(1)根据公式计算编码深度d下的预测深度其中,表示视频序列中已编码帧v(w,h,k0,n,d)在编码深度d下的预测深度,表示视频序列中已编码帧v(w,h,k1,n,d)在编码深度d下的预测深度,权重参数α为:

tcur表示当前编码帧v(w,h,kc,n,d)的编码时刻,tpre0表示已编码帧v(w,h,k0,n,d)的编码时刻,tpre1表示已编码帧v(w,h,k1,n,d)的编码时刻,即通过获取连续几帧的编码时刻来计算权重参数,之后根据公式来计算预测深度通过预测深度来确定每次编码过程中的编码树单元的数量。

(2)假定已编码帧v(w,h,k0,n,d)与当前编码帧v(w,h,kc,n,d)具有相同的量化参数值,即将已编码帧和当前编码帧进行量化统一,在本发明中已编码帧v(w,h,k1,n,d)的量化参数值比当前编码帧v(w,h,kc,n,d)的量化参数值小1。

(3)根据公式t=d+1计算阈值t,以阈值作为比较的参数,是通过实践经验得来的。

(4)比较预测深度是否大于阈值t,来判定编码树单元的类型。

(5)若大于t,将编码树单元划分为不常用编码树单元,否则,将编码树单元划分为常用编码树单元,从而实现编码树单元的类型的划分。

步骤s103对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式,包括:

(1)获取常用编码树单元的父编码树单元,这里需要进行说明的是,当常用编码树单元为64x64时,其没有父编码树单元;当常用编码树单元为32x32时,其父编码树单元为64x64;当常用编码树单元为16x16时,其父编码树单元为32x32;当常用编码树单元为8x8时,其父编码树单元为16x16。

(2)若父编码树单元的最优编码模式为skip,则分别计算常用编码树单元的skip模式的率失真代价值和merge模式的率失真代价值。

(3)计算skip模式的提前终止条件为:p_skip=skipmode&&j2-j1>0,其中,p_skip表示常用编码树单元的编码模式,j1,j2分别表示skip模式的率失真代价值和merge模式的率失真代价值。即比较当前的编码过程是否达到提前终止条件。这里需要进行说明的是,提前终止条件p_skip=skipmode&&j2-j1>0为判定是否提前终止的条件之一。

步骤s103对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式,包括:

(1)分别计算常用编码树单元的skip模式的率失真代价值j1,merge模式的率失真代价值j2和inter2nx2n模式的率失真代价值j3。与上述提前终止的判定方法不同的是,在该步骤中加入了inter2nx2n模式的率失真代价值的计算。

(2)计算skip模式提前终止条件为:这里需要进行说明的是,提前终止条件也是为判定是否提前终止的条件之一。在实施过程中,p_skip=skipmode&&j2-j1>0和中只要有一个条件符合即可提前终止编码过程。

本实施例通过一下实验验证上述方法的可行性和有效性,最后得到实验结果,包含三个实验数据:峰值信噪比psnr,比特数bitrate。实验的部分配置如表1所示:

表1

为了检验基于单极点终止模型的高效率视频帧间快速编码方法的性能,选取18个视频序列用于测试,分辨率为2560x1600的peopleonstreet,traffic;分辨率为1920x1080的kimono,parkscene,cactus,basketballdrive,bqterrace;分辨率为1280x720的fourpeople,johnny,kristenandsara;分辨率为832x480的basketballdrill,bqmall,partyscene,racehorsec;分辨率为416x240的basketballpass,bqsquare,blowingbubbles,racehorses。实验结果以以下标准进行评价:

1)时间节约百分比ts:

2)峰值信噪比下降δpsnr:δpsnr=ppsnr-opsnr;

3)比特率增加值δbr:δbr=pbr-obr。

thm,opsnr,obr分别表示原始测试模型的编码时间,峰值信噪比和比特率。tproposed,ppsnr,pbr分别表示采用了基于单极点终止模型的高效率视频帧间快速编码方法的编码时间,峰值信噪比和比特率。

测试结果如表2所示:

表2

在上述实验结果中,所有视频序列都能很好的减少编码时间,同时又很好地保持视频的压缩质量。特别对于分辨率为1280x720的视频序列,可以节约73%的编码时间,psnr最大减少0.02db,码率最小减少0.2%。节约时间最小的是分辨率为832x480的racehorsec序列,节约44.4%的编码时间,psnr减少0.05db,码率减少0.1%。综合来说,本实施例的算法能很好的减少编码复杂度,同时保持较好的视频压缩质量。

综上所述,本实施例提供的视频帧间编码方法包括:首先,获取待编码的视频序列的各个参数,且,将视频序列记为v(w,h,k,n,d),其中,w表示视频序列的水平分辨率,h表示视频序列的垂直分辨率,w×h表示视频序列的分辨率,k表示视频序列中包含的深视频帧的帧数,n表示视频序列中每帧中的第n个编码树单元,d表示编码树单元的编码深度,之后,获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元,之后,对不常用编码树单元进行skip模式编码,之后,对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式,在保证视频的压缩质量的前提下,有效节约视频序列的编码时间,即利用了视频序列的时域相关性和率失真代价特征,提前决策编码树单元的最佳编码模式,实现了高效率视频的快速编码。

实施例2

参见图2、图3和图4,本实施例提供了视频帧间编码装置包括:参数获取模块1用于获取待编码的视频序列的各个参数,且,将视频序列记为v(w,h,k,n,d),其中,w表示视频序列的水平分辨率,h表示视频序列的垂直分辨率,w×h表示视频序列的分辨率,k表示视频序列中包含的深视频帧的帧数,n表示视频序列中每帧中的第n个编码树单元,d表示编码树单元的编码深度,划分模块2用于获取视频序列中第k帧中的第n个编码树单元在编码深度d下的预测深度根据预测深度将第n个编码树单元划分为常用编码树单元和不常用编码树单元,不常用编码模块3用于对不常用编码树单元进行skip模式编码,常用编码模块4用于对常用编码树单元采用单极点终止模型进行提前判断skip模式编码是否为最优编码模式。

其中,常用编码模块包括:父编码获取单元301用于获取常用编码树单元的父编码树单元,第一率失真代价值计算单元302用于若父编码树单元的最优编码模式为skip,则分别计算常用编码树单元的skip模式的率失真代价值和merge模式的率失真代价值,第一提前终止单元303用于计算skip模式的提前终止条件为:p_skip=skipmode&&j2-j1>0,其中,p_skip表示常用编码树单元的编码模式,j1,j2分别表示skip模式的率失真代价值和merge模式的率失真代价值。

其中,常用编码模块包括:第二率失真代价值单元311用于分别计算常用编码树单元的skip模式的率失真代价值j1,merge模式的率失真代价值j2和inter2nx2n模式的率失真代价值j3,第二提前终止单元312用于计算skip模式提前终止条件为:

本发明实施例提供的视频帧间编码装置,与上述实施例提供的视频帧间编码方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。

本发明实施例还提供了一种终端,包括存储器以及处理器,存储器用于存储支持处理器执行上述实施例方法的程序,处理器被配置为用于执行存储器中存储的程序。

本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述任一项的方法的步骤。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。本发明实施例所提供的视频帧间编码方法及装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序,也不能理解为指示或暗示相对重要性。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1