CN105915925A - 基于hevc的编码单元构建方法及装置 - Google Patents
基于hevc的编码单元构建方法及装置 Download PDFInfo
- Publication number
- CN105915925A CN105915925A CN201510441172.7A CN201510441172A CN105915925A CN 105915925 A CN105915925 A CN 105915925A CN 201510441172 A CN201510441172 A CN 201510441172A CN 105915925 A CN105915925 A CN 105915925A
- Authority
- CN
- China
- Prior art keywords
- coding unit
- unit
- rate distortion
- coding
- distortion costs
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明实施例提供一种基于HEVC的视频编码单元构建方法及装置,所述方法包括:根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数;将待处理视频图像逐层下采样,获得所述下采样层数相应个数的不同尺寸的下采样图像;采用哈达玛变换计算所述待处理视频图像以及各下采样图像中最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价;根据所述待处理视频图像不同尺寸编码单元的率失真代价,确定任一个编码单元是否进行划分,本发明实施例节省了编码时间。
Description
技术领域
本发明实施例涉及视频技术领域,尤其涉及一种基于HEVC(HighEfficiency Video Coding,高效视频编码标准)的编码单元构建方法及装置。
背景技术
高效视频编码标准(High Efficiency Video Coding,HEVC)是一种新视频压缩标准,其具有更高的压缩性能,能够节省更多的码率。
编码单元(Coding Unit,CU)是HEVC中编码的基本单位,图像被划分为若干个最大编码单元(Largest Coding Unit,LCU),最大编码单元能够被递归地划分成更小的编码单元,从而形成编码单元树(Coding Unit Tree,CTU)结构。
在HEVC中,编码单元的划分是根据四叉树结构进行划分的,四叉树(Q-Tree)是一种树形数据结构,它的每个节点下至多可以有四个子节点,通常把一部分二维空间细分为四个象限或区域并把该区域里的相关信息存入到四叉树节点中。
现有技术中,一个编码单元是否继续划分,是通过该编码单元以及该编码单元划分得到的4个编码单元的率失真代价决定。
假设一个编码单元划分得到的下一级编码单元为子编码单元,一个编码单元是否划分的判断的条件如下公式所示:
)
其中Split表示当前编码单元是否划分,1表示划分,0表示不划分。C表示当前编码单元的率失真代价,subCi表示当前编码单元的第i个子编码单元的率失真代价。
从上述公式中可以看出,仅当4个子编码单元的率失真代价总和小于当前编码单元的率失真代价时,当前编码单元才可能会被划分为4个子编码单元。也即编码单元的划分过程是一个深度递归过程,需要遍历每一层深度的编码单元,计算每个大小的编码单元的率失真代价,才能确定出一个编码单元树的结构。其中,率失真代价是采用DCT(Discrete CosineTransform,离散余弦变换)计算得到。
由上述描述过程可知,编码单元的划分过程是一个深度递归过程,视频图像编码单元的构建,需要采用DCT计算尺寸不同的各个编码单元的率失真代价值,这就导致编码单元的构建过程,计算繁琐,复杂度较高,导致编码时间较长。
发明内容
本发明实施例提供一种基于HEVC(High Efficiency Video Coding,高效视频编码标准)的编码单元构建方法及装置,用以解决现有技术中编码时间较长的计算问题。
本发明实施例提供一种基于HEVC的编码单元构建方法,包括:
根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数;
将待处理视频图像逐层下采样,获得所述下采样层数相应个数的不同尺寸的下采样图像;
采用哈达玛变换计算所述待处理视频图像以及各下采样图像中最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价;
根据所述待处理视频图像不同尺寸的编码单元的率失真代CN价,确定任一个编码单元是否进行划分。
本发明实施例提供一种基于HEVC的编码单元构建装置,包括:
层数获取模块,用于根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数;
下采样模块,用于将待处理视频图像逐层下采样,获得所述下采样层数相应个数的不同尺寸的下采样图像;
率失真代价计算模块,用于采用哈达玛变换计算所述待处理视频图像以及各下采样图像中的最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸的编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价;
划分确定模块,用于根据所述待处理视频图像不同尺寸编码单元的率失真代价,确定任一个编码单元是否进行划分。
本发明实施例提供了基于HEVC的编码单元构建方法及装置,采用哈达玛变换计算率失真代价,且通过逐层下采样的方式,获得下采样图像,只需计算各下采样图像以及待处理视频的最小编码单元的率失真代价,根据各下采样图像与待处理视频图像的对应关系,即可以预估得到待处理视频图像其它尺寸的编码单元的率失真代价,从而根据待处理视频图像各个编码单元的率失真代价,可以判断任一个编码单元是否进行划分。哈达玛变换计算过程简单,且无需计算待处理视频的各个不同尺寸的编码单元,因此降低了计算复杂度,从而节省了编码时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的编码单元树结构的一种示意图;
图2为本发明一种基于HEVC(High Efficiency Video Coding,高效视频编码标准)的编码单元构建方法一个实施例的流程图;
图3为本发明一种基于HEVC的编码单元构建方法又一个实施例的流程图;
图4为本发明实施例中最大编码单元第一编码单元树结构的一种示意图;
图5为本发明实施例中最大编码单元第二编码单元树结构的一种示意图;
图6为本发明实施例中最大编码单元第一编码单元树结构和第二编码单元树结构叠加得到编码单元树结构的一种示意图;
图7为本发明一种基于HEVC的编码单元构建方法又一个实施例的流程图;
图8为本发明一种基于HEVC的编码单元构建装置一个实施例的流程图;
图9为本发明一种基于HEVC的编码单元构建装置又一个实施例的流程图;
图10为本发明一种基于HEVC的编码单元构建装置又一个实施例的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了方便理解,下面首先对本发明实施例中涉及的相关技术术语进行解释:
高效视频编码标准:英文全称为High Efficiency Video Coding,英文缩写为HEVC;一种新视频压缩标准,其具有更高的压缩性能,能够节省更多的码率。
编码单元:英文全称为Coding Unit,英文简称为CU,是HEVC中编码的基本单位。
最大编码单元:英文全称Largest Coding Unit,英文缩写为LCU,是HEVC编码时的尺寸最大的编码单元,每一个最大编码单元可以被递归划分为尺寸更小的编码单元,直至划分至最小编码单元。
其中,递归划分是指最大编码单元可以划分得到四个子编码单元,每一子编码单元作为一个编码单元,可以继续划分得到四个子编码单元,以此类推。
编码单元树结构:英文全称Coding Unit Tree,英文缩写CTU,最大编码单元递归划分成更小的编码单元之后,即形成编码单元树结构,编码单元树结构表示一个最大编码单元的划分结构。
如图1中所示,示出了一种最大编码单元被递归划分之后得到的一种编码单元树结构,假设最大编码单元为64×64,最小编码单元为8×8。图1中的每一个方形块即表示一个编码单元,对应标识了其尺寸大小。
在现有技术中,构建视频图像的编码单元时,一个编码单元是否划分,是通过该编码单元以及该编码单元划分得到的4个子编码单元的率失真代价决定。率失真代价是采用离散余弦变换(Discrete Cosine Transform,DCT)计算得到的,具体的是需要根据当前编码单元以及其预测单元得到残差信息;然后将残差信息进行DCT变换;对进行DCT变换之后的残差信息进行量化,熵编码、反量化、反变换等步骤得到当前编码单元的失真值,再根据失真值才能计算得到率失真代价,尽管采用DCT方式率失真代价的值比较精确,但是其计算步骤比较繁琐,且需要计算不同尺寸的编码单元的率失真代价,计算比较复杂,因此现有的编码单元构建过程,会导致编码时间过长。
为了解决现有技术中编码时间过长的技术问题,本发明实施例提供的基于HEVC的编码单元构建方法,采用哈达玛变换计算率失真代价,且通过逐层下采样的方式,获得下采样图像,只需计算各下采样图像以及待处理视频的最小编码单元的率失真代价,根据各下采样图像与待处理视频图像的对应关系,即可以预估得到待处理视频图像各个尺寸的编码单元的率失真代价,根据各个编码单元的率失真代价即可以判断每一个编码单元是否进行划分。哈达玛变换计算过程简单,无需量化、反量化等复杂过程,且无需计算待处理视频各个不同尺寸的编码单元,只需计算最小尺寸的编码单元的率失真代价,因此降低了计算复杂度,从而可以节省编码时间。
下面将结合附图,对本发明实施例的技术方案进行详细描述。
图2为本发明实施例提供的一种基于HEVC的视频编码单元构建方法一个实施例的流程图,该方法可以包括以下几个步骤:
201:根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数。
202:将待处理视频图像逐层下采样,获得所述下采样层数相应个数的不同尺寸的下采样图像。
将最大编码单元按照预设的采样方式逐级进行下采样,缩小至最小编码单元对应的尺寸,即可以得到下采样层数。该下采样层数也即是最大编码单元递归划分至最小编码单元的划分深度。
例如,最大编码单元的尺寸为64×64,最小编码单元尺寸为8×8,最大编码单元划分至最小编码单元的划分深度为3,即64×64→32×32→16×16→8×8,64×64划分至32×32为第一个划分深度,依次类推,划分深度即为3,则下采样层数即为3。
每一层下采样图像像素点为上一层下采样图像像素点数量的一半。例如,假设待处理视频图像尺寸为64×64,依次进行下采样,各下采样图像尺寸变化为64×64→32×32→16×16→8×8。
其中,为了更好的保留视频处理图像的原有特性,更好的保护好图像的纹理特征,下采样具体是采用间隔一个像素点取样一次的方式进行下采样,也即隔点抽样的方式进行下采样。
203:采用哈达玛变换计算所述待处理视频图像以及各下采样图像中的最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸的编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价。
其中,各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系为:第i层下采样图像的最小编码单元,与待处理视频图像第x-i个划分深度对应的编码单元相对应,包含相同的视频特性信息,i取值为1、2、3……
其中,x表示下采样层数,也表示最大编码单元划分至最小编码单元的划分深度。
204:根据待处理视频图像不同尺寸的编码单元的率失真代价,确定任一个编码单元是否进行划分。
最大编码单元的尺寸以及最小编码单元尺寸是待处理视频图像进行划分时,预先配置好的。
待处理视频图像以及各下采样图像均按照该最小编码单元进行划分,假设最小编码单元尺寸为8×8,即待处理视频图像以及各下采样图像均划分为8×8的方格。
由于将视频处理图像进行逐层下采样,每一层下采样图像保留了视频处理图像的特性,因此各下采样图像的最小编码单元与待处理视频图像中不同尺寸的编码单元存在对应关系。
例如,最小编码单元的尺寸为8×8时,将待处理视频图像以及各个下采样图像均按照8×8进行划分,假设最大编码单元尺寸为64×64,下采样层数即为3,待处理视频图像为L0层图像,将待处理图像进行一次下采样得到的下采样图像为L1层图像,将下采样图像L1进行下采样得到的下采样图像为L2层图像,将下采样图像L2进行下采样得到的下采样图像为L1层图像。由于第i层下采样图像的最小编码单元,与待处理视频图像第x-i个划分深度对应的编码单元相对应。
也即第3层下采样图像的最小编码单元,与待处理视频图第0个划分深度,也即64×64的最大编码单元对应;第2层下采样图像的最小编码单元,与待处理视频图第1个划分深度,也即32×32编码单元对应;第1层下采样图像的最小编码单元,与待处理视频图像第2个划分深度,也即16×16编码单元对应;具体如下所示:
L0:64×64-------------------->L3:8×8
L0:32×32-------------------->L2:8×8
L0:16×16-------------------->L1:8×8
L0:8×8-------------------->L0:8×8
待处理视频图像,即L0层图像的最大编码单元,也即第0个划分深度的编码单元,与L3层的最小编码单元对应,包含同样的视频特性信息;L0层图像的第一个划分深度对应的编码单元即32×32,与L2层的最小编码单元对应;L0层图像的第二个划分深度对应的编码单元即16×16,与L1层的最小编码单元对应;L0层图像的第三个划分深度对应的编码单元即为其最小编码单元。
由于下采样层数为x层时,第i层下采样图像的最小编码单元,与待处理视频图像第x-i个划分深度的编码单元相对应,包含相同的视频特性信息,i取值为1、2、3……
因此,只需计算待处理视频图像以及各下采样图像的最小编码单元的率失真代价,即可以获得待处理视频图像不同尺寸的编码单元的率失真代价。
其中,根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价具体可以是:
Dx-i=di×2i×2i,其中i=1、2、3……
x表示下采样层数,Dx-i表示第x-i个划分深度对应的编码单元的率失真代价,di表示第i层下采样图像的最小编码图像的率失真代价。
比如最大编码单元尺寸为64,最小编码单元单元尺寸为8,下采样层数x即等于3,此时:
D0=d3×23×23=64d1
d3为第3层下采样图像最小编码单元的率失真代价,D0表示第0个划分深度,也即待处理视频图像的64×64最大编码单元的率失真代价。
D1=d2×22×22=16d2
d2为第2层下采样图像最小编码单元的率失真代价,D1表示第1个划分深度,也即待处理视频图像的32×32编码单元的率失真代价。
D2=d1×21×21=4d1
d1为第1层下采样图像最小编码单元的率失真代价,也即,D2表示第2个划分深度,也即待处理视频图像的16×16编码单元的率失真代价。
本发明实施例无需计算待处理视频图像不同尺寸的编码单元的率失真代价,只需计算待处理视频图像以及各个下采样图像的最小尺寸的编码单元率失真代价,即可根据各个下采样图像最小编码单元与待处理视频图像不同尺寸编码单元的对应关系,得到待处理视频图像不同尺寸编码单元的率失真代价,由于尺寸越大,计算率失真代价越复杂,因此本发明实施例可以降低计算复杂度。
且率失真代价采样哈达玛变换方式计算,相较于离散余弦变换DCT的方式,无需量化以及反量化等繁琐步骤,因此进一步的降低了计算复杂度。
根据不同尺寸编码单元的率失真代价,即可以确定任一个编码单元是否进行划分,也即在该任一个编码单元率失真代价大于其划分的四个子编码单元的率失真代价和,则该任一个编码单元需要进行划分,否则,则不需要进行划分。
根据任一个编码单元的划分结果,即可以确定出任一个最大编码单元对应的预测编码单元树结构,从而在进行编码时,即可以按照预测编码单元树结构对最大编码单元进行划分,形成所述编码单元树结构。
本发明实施例中,采用哈达玛变换计算率失真代价,且通过逐层下采样的方式,获得下采样图像,只需计算各下采样图像以及待处理视频的最小编码单元的率失真代价,根据各下采样图像与待处理视频图像的对应关系,即可以预估得到待处理视频图像各个尺寸的编码单元的率失真代价,根据各个编码单元的率失真代价即可以判断每一个编码单元是否进行划分。哈达玛变换计算过程简单,无需量化、反量化等复杂过程,且无需计算待处理视频各个不同尺寸的编码单元,只需计算最小尺寸的编码单元的率失真代价,因此降低了计算复杂度,使得节省了编码时间。
其中,采用哈达玛变换计算各下采样图像中的最小编码单元的率失真代价的具体步骤可以如下所述:
A:针对各下采样图像中的每一个最小编码单元,根据每一个最小编码单元的预测单元,计算每一个最小编码单元的残差信息。
假设最小编码单元为Fec,其预测单元为Pre,残差信息为Res;
则残差信息为:Res=Fec–Pre。
其中,预测单元是通过帧内预测或者帧间预测得到的。
帧内预测时,是根据最小编码单元的周边像素点预测得到的;帧间预测时,是根据待处理视频图像的相邻帧的像素点预测得到的。
B:将每一个残差信息按照哈达玛变换公式进行哈达玛变换,得到哈达玛变换代价值;
其中,HSAD表示哈达玛变换代价值,λ表示拉格朗日系数,B表示当前最小编码单元预估的比特位数,(i,j)表示残差信息中的像素点。
DiffT(i,j)表示哈达玛编码之后残差信息中的任一个像素点。
利用哈达玛变换计算时,可以将编码单元理解为一个矩阵;将编码单元减去预测单元,得到一个残差矩阵D,即残差信息;将残差矩阵D作哈达玛变换得到一个矩阵HD,将该矩阵HD中的元素,即DiffT(i,j)的绝对值的和除以2就是SATD,表示残差信息经过哈达玛变换后的累加和。SATD加上λ×B,即为哈达玛变换代价值。
其中,当前最小编码单元预估的比特位数B可以是将HD做熵编码得到的。
C:将所述哈达玛变换代价值,作为所述最小编码单元的率失真代价值。
图3为本发明实施例提供的一种基于HEVC的视频编码单元构建方法另一个实施例的流程图,该方法可以包括以下几个步骤:
301:根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数。
302:按照所述下采样层数,将待处理视频图像逐层下采样,获得下采样层数相应个数的不同尺寸的下采样图像。
303:采用哈达玛变换计算所述待处理视频图像以及各下采样图像中的最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸的编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价。
304:根据所述待处理视频图像不同尺寸编码单元的率失真代价,确定任一个编码单元是否进行划分。
305:根据划分结果,确定每一个最大编码单元对应的的第一预测编码单元树结构。
306:依次针对每一个最大编码单元,将与其相邻的编码单元树结构中划分深度最大的编码单元树结构的划分深度,作为所述最大编码单元的预测划分深度。
307:将根据所述最大编码单元的预测划分深度确定的第二编码单元树结构与所述最大编码单元的第一预测编码单元树结构进行叠加,获得所述最大编码单元对应编码单元树结构。
在进行编码时,即可以按照所述编码单元树结构对最大编码单元进行划分。
由于在确定编码单元树结构时,是依次针对每一个最大编码单元进行的,第一个预测的最大编码单元,由于与其相邻的最大编码单元还未确定出编码单元树结构。因此第一个预测的最大编码单元的预测划分深度,为根据最大编码单元以及最小编码单元计算得到的最大划分深度。
对于不是第一个预测的最大编码单元,即可以根据其相邻的编码单元树结构,获得预测划分深度。该相邻编码单元树结构即是指按照步骤307中的操作确定出的编码单元树结构。
根据预测划分深度,可以确定得到对应的第二预测编码单元树结构。在该第二预测编码单元树结构中,同一划分深度的每一个编码单元划分结构是一样的。
假设根据划分结果,确定的一个最大编码单元的第一预测编码单元树结构为图4所示。
假设该最大编码单元的预测划分深度为2时,该最大编码单元的第二预测编码单元树结构为图5所示,每一划分深度均被划分为四个编码单元。
将图4的第一预测编码单元树结构与图5的第二预测编码单元树结构进行叠加,即得到如图6所示编码单元树结构。
本发明实施例中,通过将第一预测编码单元树结构与第二预测编码单元树结构进行叠加,将叠加得到的划分结构再作为实际编码时参照的编码单元树结构,通过两个预测编码单元树结构的叠加,能够使得编码单元的划分更加准确,在节省编码时间的同时,还可以提高编码的准确度。
为了进一步提高编码准确度,如图7所示,为本发明实施例提供的一种基于HEVC的视频编码单元构建方法又一个实施例的流程图,相较于图3所示的实施例,获得所述最大编码单元对应的编码单元树结构之后,该方法还可以包括以下几个步骤:
308:按照所述编码单元树结构,确定所述待处理视频图像中需要进行划分的待划分编码单元。
309:针对当前待划分编码单元,采用离散余弦变换计算所述当前待划分的编码单元的率失真代价;
310:判断采用离散余弦变换计算得到的所述当前待划分编码单元的率失真代价是否小于当前待划分编码单元的率失真代价阈值,如果是,执行步骤311,如果否,执行步骤312。
311:不对当前待划分编码单元的进行划分。
312:按照所述编码单元树结构对当前待划分编码单元进行划分。
在按照编码单元树结构对最大编码单元进行递归划分时,可以采用离散余弦变换计算当前待划分的编码单元的率失真代价,如果其值小于率失真代价阈值,则无需对该待划分编码单元进行继续划分,如果不小于率失真代价阈值,则可以按照所述编码单元树的划分结构对当前待划分的编码单元进行划分。
不对待划分编码单元进行划分,当前最大编码单元即停止划分和计算,当前得到的划分结构,即为最终编码的编码单元树结构。
如图6所示的编码单元树结构中,若通过计算最大编码单元率失真代价不小于其对应的率失真代价阈值,则可以对该最大编码单元进行划分,得到第一划分深度对应的编码单元;而通过计算该第一个划分深度中的三个编码单元的率失真代价小于其对应的率失真代价阈值,而另一个编码单元不小于其对应的率失真代价阈值,则可以只对该另一个编码单元进行划分,若通过计算该划分得到的,也即第二个划分深度对应的编码单元中也是只有一个编码单元率失真代价不小于其对应的率失真代价阈值,则只对该编码单元继续进行划分,划分至最小编码单元。
通过率失真代价阈值的设置,可以进一步提高编码的准确度,且无需采用离散余弦变换计算不同尺寸的编码单元的率失真代价,只对待划分的编码单元进行计算即可。对按照编码单元树结构确定的无需划分的编码单元则无需进行计算,减少了计算复杂度。
本发明实施例中,各个编码单元的率失真代价阈值可以分别预先设定,也可以预先设置最小编码单元的率失真代价阈值T,根据最小编码单元的率失真代价阈值,计算得到其他尺寸编码单元的率失真代价阈值。
假设最大编码单元的划分深度为m,第n层划分深度的编码单元的率失真代价阈值即为T×2m-n×2m-n,n=0、1、2……m-1。
第m层的划分深度对应的即为最小编码单元,其率失真代价阈值为T。
以最大编码单元尺寸为64×64,最小编码单元尺寸为8×8为例,最小编码单元8×8的率失真代价阈值T=12。
则尺寸为64×64的编码单元的率失真代价阈值:12×23-0×23-0=768;
尺寸为32×32的编码单元的率失真代价阈值:12×23-1×23-1=192;
尺寸为16×16的编码单元的率失真代价阈值:12×23-2×23-2=48。
其中,采取离散余弦变换计算当前待划分的编码单元的率失真代价的具体过程,可以如下所述:
a:根据当前待划分的编码单元fec,及其预测单元pre,计算当前待划分的编码单元的残差信息res=fec-pre
b:对残差信息res作DCT变换,将残差信息的时域信号变换成频域信号。
c:对DCT变换后的残差信息进行量化,通过量化步长来修改当前的编码值。
FQ=round(y/QP)
其中,y表示DCT变换后的残差信息中的像素的,QP为量化步长,FQ为y的量化值,round()函数为取整函数。
d:对量化后的残差信息,进行熵编码得到该编码块占用的比特数目R
e:对量化后的残差信息进行反量化,得到反量化后的解码值。
y’=FQ×QP
f:将反量化后残留信息做反变换,将残差信息频域信号变换为时域信号。通过反变换得到解码残差信息R’。
g:得到当前的重构解码单元rec,rec=R’+pre
h:得到当前待划分编码单元的失真D=fec-rec
i:得到率失真代价S=D+λ×R
图8为本发明实施例提供的一种基于HEVC的视频编码单元构建装置一个实施例的结构示意图,所述装置可以包括:
层数获取模块801,用于根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数。
下采样层数也即是最大编码单元递归划分至最小编码单元的划分深度。
下采样模块802,用于将待处理视频图像逐层下采样,获得所述下采样层数相应个数的不同尺寸的下采样图像。
每一层下采样图像像素点为上一层下采样图像像素点数量的一半。
下采样模块具体是采用间隔一个像素点取样一次的方式,也即隔点抽样的方式进行下采样。将待处理视频图像逐层下采样,获得所述采样层数个不同尺寸的下采样图像。
率失真代价计算模块803,用于采用哈达玛变换计算所述待处理视频图像及各下采样图像中的最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸的编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价。
划分确定模块804,用于根据所述待处理视频图像不同尺寸编码单元的率失真代价,确定任一个编码单元是否进行划分。
其中,各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系为:第i层下采样图像的最小编码单元,与待处理视频图像第x-i个划分深度的编码单元相对应,包含相同的视频特性信息,i取值为1、2、3……
其中,x表示下采样层数,也表示最大编码单元划分至最小编码单元的划分深度。其中,根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价具体可以是:
Dx-i=di×2i×2i,其中i=1、2、3……
x表示下采样层数,Dx-i表示第x-i个划分深度对应的编码单元的率失真代价,di表示第i层下采样图像的最小编码图像的率失真代价。
根据不同尺寸编码单元的率失真代价,即可以确定任一个编码单元是否进行划分,在该任一个编码单元率失真代价大于其划分的四个子编码单元的率失真代价和,则该任一个编码单元需要进行划分,否则,则不需要进行划分。
根据任一个编码单元的划分结果,即可以确定出任一个最大编码单元的对应的预测的编码单元树结构。从而在进行编码时,即可以按照预测的编码单元树结构对最大编码单元进行划分,形成所述编码单元树结构。
本发明实施例中,采用哈达玛变换计算率失真代价,且通过逐层下采样的方式,获得下采样图像,只需计算各下采样图像以及待处理视频的最小编码单元的率失真代价,根据各下采样图像与待处理视频图像的对应关系,即可以预估得到待处理视频图像各个尺寸的编码单元的率失真代价,根据各个编码单元的率失真代价即可以判断每一个编码单元是否进行划分。哈达玛变换计算过程简单,无需量化、反量化等复杂过程,且无需计算待处理视频各个不同尺寸的编码单元,只需计算最小尺寸的编码单元的率失真代价,因此降低了计算复杂度,使得缩短了编码时间。
其中,该率失真代价计算模块803可以包括:
第一计算单元,用于针对各下采样图像中的每一个最小编码单元,根据每一个最小编码单元的预测单元,计算每一个最小编码单元的残差信息;
第二计算单元,用于将每一个残差信息按照下述哈达玛变换公式进行哈达玛变换,得到哈达玛变换代价值;
其中,HSAD表示哈达玛变换代价值,λ表示拉格朗日系数,B表示当前最小编码单元预估的比特位数,(i,j)表示残差信息中的像素点;
第三计算单元,用于将所述哈达玛变换代价值,作为所述最小编码单元的率失真代价值;
第四计算单元,用于根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价。
图9为本发明实施例提供的一种基于HEVC的视频编码单元构建装置一个实施例的结构示意图,与图8所示装置不同之处在于,所述装置还可以包括:
第一预测模块901,用于根据划分结果,确定每一个最大编码单元对应的第一预测编码单元树结构。
第二预测模块902,用于依次针对每一个最大编码单元,将与其相邻的编码单元树中划分深度最大的编码单元树的划分深度,作为所述最大编码单元的预测划分深度;
结构确定模块903,用于将根据所述最大编码单元的预测划分深度确定的第二预测编码单元树结构与所述最大编码单元的第一预测编码单元树结构进行叠加,获得所述最大编码单元对应的编码单元树结构。
在进行编码时,具体是按照编码单元树结构对最大编码单元进行划分,得到对应编码单元树。
本发明实施例中,通过将第一预测编码单元树结构与第二预测编码单元树结构进行叠加,将叠加得到的结构再作为实际编码时参照的编码单元树结构,通过两个预测编码单元树结构的叠加,使得编码单元的划分更加准确,在减少编码时间的同时,还可以提高编码的准确度。
为了进一步提高编码准确度,图10所示,为本发明实施例提供的一种基于HEVC的视频编码单元构建装置又一个实施例的结构示意图,与图8所示实施例装置不同之处在于,该装置还可以包括:
单元确定模块1001,用于按照所述编码单元树结构,确定所述待处理视频图像中需要进行划分的待划分的码单元;
计算模块1002,用于针对当前待划分编码单元,采用离散余弦变换计算所述当前待划分编码单元的率失真代价;
编码模块1003,用于当采用离散余弦变换计算得到的所述当前待划分编码单元的率失真代价小于当前待划分编码单元的率失真代价阈值时,不对当前待划分编码单元进行划分,否则,按照所述编码单元树结构对当前待划分编码单元进行递归划分。
通过率失真代价阈值的设置,可以进一步提高编码的准确度,且无需采用离散余弦变换计算不同尺寸的编码单元的率失真代价,只对待划分的编码单元进行计算即可。对按照编码单元树结构确定的无需划分的编码单元则无需进行计算,减少了计算复杂度。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.基于HEVC的视频编码单元构建方法,其特征在于,包括:
根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数;
将待处理视频图像逐层下采样,获得所述下采样层数相应个数的不同尺寸的下采样图像;
采用哈达玛变换计算所述待处理视频图像以及各下采样图像中最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸的编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价;
根据所述待处理视频图像不同尺寸的编码单元的率失真代价,确定任一个编码单元是否进行划分。
2.根据权利要求1所述的方法,其特征在于,所述根据所述待处理视频图像不同尺寸的编码单元的率失真代价,确定任一个编码单元是否进行划分之后,所述方法还包括:
根据划分结果,确定每一个最大编码单元形成的第一预测编码单元树结构;
依次针对每一个最大编码单元,将与其相邻的编码单元树结构中划分深度最大的编码单元树结构的划分深度,作为所述最大编码单元的预测划分深度;
将根据所述最大编码单元的预测划分深度确定的第二预测编码单元树结构与所述最大编码单元的第一预测编码单元树结构进行叠加,获得所述最大编码单元对应的编码单元树结构。
3.根据权利要求1或2所述的方法,其特征在于,所述将根据所述最大编码单元的预测划分深度确定的所述最大编码单元的第二预测编码单元树结构与所述最大编码单元的第一预测编码单元树结构进行叠加,获得所述最大编码单元对应的编码单元树结构之后,所述方法还包括:
按照所述编码单元树结构,确定所述待处理视频图像中需要进行划分的待划分编码单元;
针对当前待划分编码单元,采用离散余弦变换计算所述当前待划分编码单元的率失真代价;
当采用离散余弦变换计算得到的所述当前待划分编码单元的率失真代价小于所述当前待划分编码单元的率失真代价阈值时,不对所述当前待划分编码单元进行划分,否则,按照所述编码单元树结构对所述当前待划分编码单元进行划分。
4.根据权利要求1所述的方法,其特征在于,所述采用哈达玛变换计算所述待处理视频图像以及各下采样图像中的最小编码单元的率失真代价包括:
针对所述待处理视频图像以及各下采样图像中的每一个最小编码单元,根据所述最小编码单元的预测单元,计算所述最小编码单元的残差信息;
将所述残差信息按照下述哈达玛变换公式进行哈达玛变换,得到哈达玛变换代价值;
其中,HSAD表示哈达玛变换代价值,λ表示拉格朗日系数,B表示当前最小编码单元预估的比特位数,(i,j)表示残差信息中的像素点;
将所述哈达玛变换代价值,作为所述最小编码单元的率失真代价值。
5.根据权利要求2所述的方法,其特征在于,第一个预测的最大编码单元的预测划分深度为根据最大编码尺寸以及最小编码单元尺寸确定的最大划分深度。
6.一种基于HEVC的视频编码单元构建装置,其特征在于,包括:
层数获取模块,用于根据最大编码单元尺寸以及最小编码单元尺寸,获得下采样层数;
下采样模块,用于将待处理视频图像逐层下采样,获得所述下采样层数相应个数的不同尺寸的下采样图像;
率失真代价计算模块,用于采用哈达玛变换计算所述待处理视频图像以及各下采样图像中的最小编码单元的率失真代价,并根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸的编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价;
划分确定模块,用于根据所述待处理视频图像不同尺寸的编码单元的率失真代价,确定任一个编码单元是否进行划分。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第一预测模块,用于根据划分结果,确定每一个最大编码单元形成的第一预测编码单元树结构;
第二预测模块,用于依次针对每一个最大编码单元,将与其相邻的编码单元树中划分深度最大的编码单元树的划分深度,作为所述最大编码单元的预测划分深度;
结构确定模块,用于将根据所述最大编码单元的预测划分深度确定的第二预测编码单元树结构与所述最大编码单元的第一预测编码单元树结构进行叠加,获得所述最大编码单元对应的编码单元树结构。
8.根据权利要求6或7所述的装置,其特征在于,还包括:
单元确定模块,用于按照所述编码单元树结构,确定所述待处理视频图像中需要进行划分的待划分编码单元;
计算模块,用于针对当前待划分编码单元,采用离散余弦变换计算所述当前待划分编码单元的率失真代价;
编码模块,用于当采用离散余弦变换计算得到的所述当前待划分编码单元的率失真代价小于所述当前待划分编码单元的率失真代价阈值时,不对所述当前待划分编码单元进行划分,否则,按照所述第三预测编码单元树结构对所述当前待划分编码单元进行划分。
9.根据权利要求6所述的装置,其特征在于,所述率失真代价计算模块包括:
第一计算单元,用于针对所述待处理视频图像以及各下采样图像中的每一个最小编码单元,根据所述最小编码单元的预测单元,计算每一个最小编码单元的残差信息;
第二计算单元,用于将所述残差信息按照下述哈达玛变化公式进行哈达玛变换,得到哈达玛变换代价值;
其中,HSAD表示哈达玛变换代价值,λ表示拉格朗日系数,B表示当前最小编码单元预估的比特位数,(i,j)表示残差信息中的像素点;
第三计算单元,用于将所述哈达玛变换代价值,作为所述最小编码单元的率失真代价值;
第四计算单元,用于根据各下采样图像中最小编码单元与所述待处理视频图像中不同尺寸编码单元的对应关系,获得所述待处理视频图像不同尺寸的编码单元的率失真代价。
10.根据权利要求7所述的装置,其特征在于,第一个预测的最大编码单元的预测划分深度为根据最大编码单元尺寸以及最小编码单元尺寸确定的最大划分深度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510441172.7A CN105915925A (zh) | 2015-07-24 | 2015-07-24 | 基于hevc的编码单元构建方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510441172.7A CN105915925A (zh) | 2015-07-24 | 2015-07-24 | 基于hevc的编码单元构建方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105915925A true CN105915925A (zh) | 2016-08-31 |
Family
ID=56743964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510441172.7A Pending CN105915925A (zh) | 2015-07-24 | 2015-07-24 | 基于hevc的编码单元构建方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105915925A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899850A (zh) * | 2017-03-02 | 2017-06-27 | 北方工业大学 | 基于satd的hevc帧内预测的新型快速算法 |
CN109587502A (zh) * | 2018-12-29 | 2019-04-05 | 深圳市网心科技有限公司 | 一种帧内压缩的方法、装置、设备及计算机可读存储介质 |
CN109788287A (zh) * | 2017-11-10 | 2019-05-21 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、计算机设备和存储介质 |
CN114697650A (zh) * | 2020-12-30 | 2022-07-01 | 中科寒武纪科技股份有限公司 | 基于下采样的帧内划分方法、相关装置设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102474612A (zh) * | 2009-08-14 | 2012-05-23 | 三星电子株式会社 | 用于对视频进行编码的方法和设备以及用于对视频进行解码的方法和设备 |
CN103327327A (zh) * | 2013-06-03 | 2013-09-25 | 电子科技大学 | 用于高性能视频编码hevc的帧间预测编码单元选择方法 |
CN104202605A (zh) * | 2014-08-18 | 2014-12-10 | 山东大学 | 一种通过降低分辨率预测高清图像编码单元cu的划分方式的方法及其实现装置 |
EP2840790A1 (en) * | 2012-04-16 | 2015-02-25 | Samsung Electronics Co., Ltd. | Video coding method and device using high-speed edge detection, and related video decoding method and device |
KR20150060614A (ko) * | 2015-04-13 | 2015-06-03 | 삼성전자주식회사 | 계층적 부호화 단위의 크기에 따른 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 |
CN104702958A (zh) * | 2013-12-05 | 2015-06-10 | 中国科学院深圳先进技术研究院 | 一种基于空间相关性的hevc帧内编码方法及系统 |
-
2015
- 2015-07-24 CN CN201510441172.7A patent/CN105915925A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102474612A (zh) * | 2009-08-14 | 2012-05-23 | 三星电子株式会社 | 用于对视频进行编码的方法和设备以及用于对视频进行解码的方法和设备 |
EP2840790A1 (en) * | 2012-04-16 | 2015-02-25 | Samsung Electronics Co., Ltd. | Video coding method and device using high-speed edge detection, and related video decoding method and device |
CN103327327A (zh) * | 2013-06-03 | 2013-09-25 | 电子科技大学 | 用于高性能视频编码hevc的帧间预测编码单元选择方法 |
CN104702958A (zh) * | 2013-12-05 | 2015-06-10 | 中国科学院深圳先进技术研究院 | 一种基于空间相关性的hevc帧内编码方法及系统 |
CN104202605A (zh) * | 2014-08-18 | 2014-12-10 | 山东大学 | 一种通过降低分辨率预测高清图像编码单元cu的划分方式的方法及其实现装置 |
KR20150060614A (ko) * | 2015-04-13 | 2015-06-03 | 삼성전자주식회사 | 계층적 부호화 단위의 크기에 따른 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 |
Non-Patent Citations (1)
Title |
---|
SANGSOO AHN: "FAST DECISION OF CU PARTITIONING BASED ON SAO PARAMETER, MOTION AND PU/TU SPLIT INFORMATION FOR HEVC", 《2013 PICTURE CODING SYMPOSIUM》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899850A (zh) * | 2017-03-02 | 2017-06-27 | 北方工业大学 | 基于satd的hevc帧内预测的新型快速算法 |
CN106899850B (zh) * | 2017-03-02 | 2020-08-14 | 北方工业大学 | 基于satd的hevc帧内预测的方法和装置 |
CN109788287A (zh) * | 2017-11-10 | 2019-05-21 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、计算机设备和存储介质 |
CN109587502A (zh) * | 2018-12-29 | 2019-04-05 | 深圳市网心科技有限公司 | 一种帧内压缩的方法、装置、设备及计算机可读存储介质 |
CN109587502B (zh) * | 2018-12-29 | 2023-05-09 | 深圳市网心科技有限公司 | 一种帧内压缩的方法、装置、设备及计算机可读存储介质 |
CN114697650A (zh) * | 2020-12-30 | 2022-07-01 | 中科寒武纪科技股份有限公司 | 基于下采样的帧内划分方法、相关装置设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104735452B (zh) | 通过使用大变换单元对图像进行编码和解码的方法和设备 | |
CN102970526B (zh) | 一种获得变换块尺寸的方法和模块 | |
US8213509B2 (en) | Video coding on parallel processing systems | |
RU2518718C2 (ru) | Способ и устройство для кодирования и декодирования вектора движения на основании сокращенных предсказателей-кандидатов вектора движения | |
CN101552924B (zh) | 一种用于视频编码的空间预测方法 | |
CN103067715B (zh) | 深度图像的编解码方法和编解码装置 | |
JP2020527001A (ja) | 点群エンコーダ | |
CN110235444A (zh) | 使用多条参考线的帧内预测 | |
KR101794537B1 (ko) | 데이터 처리 장치 및 방법 | |
TW201830972A (zh) | 用於視訊寫碼之低複雜度符號預測 | |
CN107113425A (zh) | 视频编码方法和设备以及视频解码方法和设备 | |
CN106131546B (zh) | 一种提前确定hevc合并和跳过编码模式的方法 | |
CN105915925A (zh) | 基于hevc的编码单元构建方法及装置 | |
BR112012025307B1 (pt) | Método de interpolar uma imagem, equipamento para interpolar uma imagem, e meio de gravação legível por computador | |
CN107071437A (zh) | 用于帧内预测的解码图像的方法 | |
CN103220511A (zh) | Hevc视频编码中的逻辑帧内模式命名 | |
KR20140136019A (ko) | 입력 이미지의 계층적 초해상을 수행하는 방법 및 장치 | |
CN102291581B (zh) | 支持帧场自适应运动估计的实现方法 | |
CN105120263A (zh) | 用于视频编码的低复杂度帧内预测 | |
KR20190117708A (ko) | 부호화유닛 심도 확정 방법 및 장치 | |
CN103220514B (zh) | Hevc中的系数编码调谐 | |
CN104754338A (zh) | 一种帧内预测模式的选择方法和装置 | |
CN103327327A (zh) | 用于高性能视频编码hevc的帧间预测编码单元选择方法 | |
KR20200138079A (ko) | 전역적 문맥을 이용하는 기계 학습 기반의 이미지 압축을 위한 방법 및 장치 | |
CN113079378A (zh) | 图像处理方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160831 |