CN102790878B - 一种视频编码的编码模式选择方法及装置 - Google Patents

一种视频编码的编码模式选择方法及装置 Download PDF

Info

Publication number
CN102790878B
CN102790878B CN201110403133.XA CN201110403133A CN102790878B CN 102790878 B CN102790878 B CN 102790878B CN 201110403133 A CN201110403133 A CN 201110403133A CN 102790878 B CN102790878 B CN 102790878B
Authority
CN
China
Prior art keywords
frame
coding
present frame
pattern
current
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.)
Expired - Fee Related
Application number
CN201110403133.XA
Other languages
English (en)
Other versions
CN102790878A (zh
Inventor
崔岩松
蔡晓霞
任维政
邓中亮
刘欣
段大高
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201110403133.XA priority Critical patent/CN102790878B/zh
Publication of CN102790878A publication Critical patent/CN102790878A/zh
Application granted granted Critical
Publication of CN102790878B publication Critical patent/CN102790878B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种视频编码的编码模式选择方法及装置,属于视频编码领域。所述方法包括:当前帧是I帧时,对当前I帧的增强层进行预测编码,得到帧内最优编码模式;当前帧不是I帧时,根据编码量化步长和当前帧的前一个I帧的图像的相对复杂度计算得到当前最佳编码模式的提前终止条件,如果当前最佳编码模式的率失真代价满足提前终止条件,则将当前待检验编码模式作为帧间最优编码模式。本发明分别针对帧间、帧内编码的模式选择进行了优化,帧间模式选择则使用前一个I帧的图像相对复杂度结合编码量化步长确定提前终止条件,能够快速选择编码模式,并且能够自适应编码参数变化,能够有效提高编码速度,保证编码效率。

Description

一种视频编码的编码模式选择方法及装置
技术领域
本发明涉及视频编码领域,特别涉及一种视频编码的编码模式选择方法及装置。
背景技术
SVC(Scalable Video Coding,可伸缩视频编码)技术的研究已有近20年的历史,在SVC编码中可包括多个空间层,每层为一个SVC编码器。例如,可以包括三个空间层:基础层、第一增强层和第二增强层,输入序列在进入每个编码器前都经过下采样以支持多空间分辨率。对每一个空间层来说,用于预测的参考图像可以是同一层中时间上相邻的图像,也可以是经过空间上采样之后的低层重构图像,这是因为层与层之间存在着显而易见的相关性。为了提高增强层的编码效率,可以采用一种层间预测机制来重用低层图像的纹理、运动、以及残差信息。当低层图像需要上采样为不同空间分辨率时,这种预测模型需进行插值运算,SVC在不同空间层之间支持非二值的空间分辨率比例。时域预测方面视频编码标准H.264采用了等级预测结构来支持时间可伸缩性,为了更高的编码效率,运动补偿时域滤波结构作为预处理工具被采用。
在H.264/AVC(Advanced Video Coding,高级视频编码)标准中,根据生成的预测信号的自由度的不同将编码图像分成了三种类型:1)I帧,支持空域的帧内预测编码;2)P帧,支持帧内预测编码和单向的帧间预测编码;3)B帧,支持帧内预测编码和双向权重帧间预测编码。
在现有SVC快速编码算法标准上进行视频编码时,主要通过比较层间与层内的运动信息选择是否使用层间预测模式。首先在增强层内的参考帧中获取当前宏块的最佳匹配块,并求出相应的层内运动矢量,然后根据当前宏块的左上角像素计算相应的基础层参考宏块,并得到基础层参考宏块的运动矢量,再根据基础层与增强层之间的比例将基础层参考宏块的运动矢量缩放到增强层,作为其层间预测运动矢量。比较层内运动矢量与层间预测运动矢量的大小,若两者一致则使用层间预测模式,否则使用层内预测模式。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
一般只针对小尺寸两层图像进行设计,应用于高清视频多层编码将导致编码性能较大的下降,最大可达到20%,并且只针对帧间模式或者只针对帧内模式选择进行优化,编码效果较差。
发明内容
为了解决现有视频编码技术中存在的问题,本发明实施例提供了一种视频编码的编码模式选择方法及装置。所述技术方案如下:
一种视频编码的编码模式选择方法,所述方法包括:
判断当前帧是否为I帧;
当所述当前帧是I帧时,获取所述当前帧的图像的相对复杂度,并对所述当前帧的增强层进行编码预测,得到帧内最优编码模式;
当所述当前帧不是I帧时,对所述当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式,根据所述当前帧的当前宏块编码时使用的编码量化步长和所述当前帧的前一个I帧的图像的相对复杂度计算得到所述当前最佳编码模式的提前终止条件,如果所述当前最佳编码模式的率失真代价满足所述提取终止条件,则将所述当前最佳编码模式作为帧间最优编码模式;
其中,所述根据所述当前帧的当前宏块编码时使用的编码量化步长和所述当前帧的前一个I帧的图像的相对复杂度计算得到所述当前最佳编码模式的提前终止条件,包括:
根据所述当前帧的当前宏块编码时使用的编码量化步长QP和所述当前帧的前一个I帧的图像的相对复杂度λ使用第四公式计算得到第一率失真代价门限TH'b,e
其中,所述第四公式为TH'b,e=λ·RDb,e(QP),RDb,e(QP)为通过公式RDb,e(QP)=a·ek·QP+d计算得到的在所述QP下预设的训练序列的条件模式率失真代价均值,a、k和d为拟合系数,所述条件模式率失真代价为在所述预设的训练序列的当前宏块对应的基础层宏块采用b模式进行编码的情况下,所述预设的训练序列的当前宏块采用e模式进行编码计算得到的率失真代价;
相应地,所述如果所述当前最佳编码模式的率失真代价满足所述提前终止条件,则将所述当前最佳编码模式作为帧间最优编码模式,具体的为:
如果所述当前最佳编码模式的率失真代价小于所述第一率失真代价门限,则将所述当前最佳编码模式作为帧间最优编码模式。
一种视频编码的编码模式选择装置,所述装置包括:
判断模块,用于判断当前帧是否为I帧;
第一获取模块,用于当所述判断模块判断得出所述当前帧是I帧时,对所述当前帧基础层进行编码,获取所述当前帧的图像的相对复杂度;
第一编码确定模块,用于当所述判断模块判断得出所述当前帧是I帧时,对所述当前帧的增强层使用快速模式选择算法,得到帧内最优编码模式;
预测模块,用于当所述判断模块判断得出所述当前帧不是I帧时,对所述当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式;
条件计算模块,用于根据所述当前帧的当前宏块编码时使用的编码量化步长和所述当前帧的前一个I帧的图像的相对复杂度计算得到所述当前最佳编码模式的提前终止条件;
第二编码确定模块,用于当所述当前最佳编码模式的率失真代价满足所述提前终止条件时,将所述当前最佳编码模式作为帧间最优编码模式;
其中,所述条件计算模块具体用于根据所述当前帧的当前宏块编码时使用的编码量化步长QP和所述当前帧的前一个I帧的图像的相对复杂度λ使用第四公式计算得到第一率失真代价门限TH'b,e
其中,所述第四公式为TH'b,e=λ·RDb,e(QP),RDb,e(QP)为通过公式RDb,e(QP)=a·ek·QP+d计算得到的在所述QP下预设的训练序列的条件模式率失真代价均值,a、k和d为拟合系数,所述条件模式率失真代价为在所述预设的训练序列的当前宏块对应的基础层宏块采用b模式进行编码的情况下,所述预设的训练序列的当前宏块采用e模式进行编码计算得到的率失真代价;
所述第二编码确定模块,具体用于如果所述当前最佳编码模式的率失真代价小于所述第一率失真代价门限,则将所述当前最佳编码模式作为帧间最优编码模式。
本发明提供的技术方案带来的有益效果是:针对帧内和帧间模式的编码选择进行了优化,使用前一个I帧的图像相对复杂度结合编码量化步长确定提前终止条件,能够快速选择编码模式,并且能够自适应编码参数以及图像复杂度变化,能够有效提高编码效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1中提供的一种视频编码的编码模式选择方法的流程示意图;
图2是本发明实施例2中提供的一种视频编码的编码模式选择方法的流程示意图;
图3是本发明实施例3中提供的一种视频编码的编码模式选择装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
由图1所示,本实施例提供了一种视频编码的编码模式选择方法,包括:
101、判断当前帧是否为I帧,如果是,执行102,如果不是,执行103;
102、获取当前帧的图像的相对复杂度,并对当前帧的增强层进行快速编码,得到帧内最优编码模式;
103、对当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式,根据当前帧的当前宏块编码时使用的编码量化步长和当前帧的前一个I帧的图像的相对复杂度计算得到当前最佳编码模式的提前终止条件,如果当前最佳编码模式的率失真代价满足提前终止条件,则将当前最佳编码模式作为帧间最优编码模式。
本发明实施例所提供的视频编码的编码模式选择方法,针对帧内和帧间模式的编码选择进行了优化,使用前一个I帧的图像相对复杂度结合编码量化步长确定提前终止条件,能够快速选择编码模式,并且能够自适应编码参数变化,能够有效提高编码效率。
实施例2
由图2所示,本实施例提供了一种视频编码的编码模式选择方法,是在实施例1的基础之上进行了改进,在本方法中,执行主体为编码器,其中,该编码器可以为JSVM9.19编码器。
需要说明的是,在实施例中所使用的编码模式均在现有协议中有规定,如下:
在帧内预测编码模式中,共提供了22种宏块帧内预测编码模式,其中有9种属于Intra4×4模式,用于4×4子块;有9种属于Intra 8×8模式,用于8×8子块;另外4种则属于Intra 16×16类型,用于整个16×16宏块。可伸缩性编码使用帧内预测模式进行编码时,除了H.264/AVC中定义的帧内预测模式之外,SVC还新定义了一种INTRA_BL宏块模式。
对于Intra 4×4类型来说,宏块首先被划分为16个子块,然后每个4×4亮度子块都使用在空间上与之相邻的子块像素值来预测。
对于Intra 8×8类型来说,宏块首先被划分为4个子块,然后每个8×8亮度子块都使用在空间上与之相邻的子块像素值来预测。
对于Intra 16×16类型来说,整个16×16宏块被与之相邻的宏块预测编码。其预测模式顺序排列为:垂直预测(模式0)、水平预测(模式1)、DC预测(模式2)和平面预测(模式3)。
在P帧和B帧中,宏块被划分成为16x16,16x8,8x16,8x8块,并且当宏块被划分为8x8块时,它还可以进一步划分成为8x4,4x4,4x8三种子宏块。使用帧内预测编码模式时,P帧和B帧的预测模式包含了I帧中所使用的帧内预测编码模式。使用帧间预测时,对于P帧而言,每一个块只能有一个运动矢量,而对于B帧而言,每一个块则可有两个运动矢量。待编码宏块的参考图像可以是16x16,16x8,8x16,8x8块中的一种。此外,H.264/AVC还提供了两种特殊的模式:直接模式以及跳过模式。P帧只可使用跳过模式,而B帧可以使用直接模式和跳过模式两种。直接模式和跳过模式都不传送运动矢量以及参考索引,而是从前面已传送的信息获得当前块的运动矢量和参考索引。
SVC还提供了层间残差预测编码模式。层间残差预测编码模式的使用范围比较广泛:只要宏块使用了帧间预测——无论是传统的帧间预测还是新增加的层间帧间预测——都可以使用层间残差预测。
低分辨率层是由高分辨率层剪裁、下采样得到的,增强层中的宏块不一定都能够找到对应的基础层宏块。因此这部分宏块将采用传统的H.264/AVC模式选择算法进行模式选择。
基于上述SVC提供的多种编码模式,一种视频编码的编码模式选择方法具体包括如下步骤:
201、判断当前帧是否为I帧,如果是,执行步骤202,如果不是,执行步骤205;
202、对当前帧的基础层进行编码,并获取当前帧的图像的相对复杂度λ;
其中,由于基本层的编码模式决策算法与H.264/AVC中相同,因此这里不再赘述对当前帧的基础层进行编码的方法。
在现有的H.264编码框架中,I帧只采用帧内预测的方式进行编码,最能体现图像的复杂度信息。并且在本发明中,I帧的基础层按照现有标准的模式选择方式最先开始编码,最能体现视频序列的复杂度信息。因此,利用I帧的基础层编码信息进行序列复杂度估计。在不同的应用场景中,图像复杂度的评价标准选取方法各有不同。在本发明中,MAD(MeanAbsolute Difference,平均绝对差)表征了原始图像和预测图像之间的差值,用于描述图像复杂度,本发明采用宏块预测后的MAD值估计图像复杂度。
相应地,获取当前帧的图像的相对复杂度λ的方法,具体包括:
202-1、获取预设的训练序列的I帧的基础层宏块编码的MAD均值MADref
需要说明的是,预设的训练序列可以为与当前需编码的视频无关的一个视频序列,该视频序列用以计算一般情况下I帧的基础层宏块编码的MAD均值MADref
在本实施例中,步骤202-1具体包括:
a.对预设的训练序列的I帧的基础层宏块编码的MAD均值使式1进行函数拟合,得到拟合系数α,β和γ;
MADref(QP)=α·eβ·QP+γ    (式1)
其中,QP为预设的训练序列的I帧的基础层宏块的编码量化步长,MADref(QP)为在QP下预设的训练序列的I帧的基础层宏块编码的MAD均值;
b.当对当前帧的基础层进行编码时,将当前帧的当前宏块所使用的编码量化步长QP'使用式2计算得到MADref
MADref=α·eβ·QP′+γ    (式2)
202-2、获取当前帧的基础层的宏块的MAD均值MADcur
202-3、根据式3计算得到当前帧的图像的相对复杂度λ。
λ = MAD ref MAD cur    (式3)
其中,λ为当前帧的图像的相对复杂度,MADref表示预设的训练序列的I帧的基础层宏块编码的MAD均值,MADcur表示当前帧的基础层的宏块的MAD均值。
203、对当前帧的增强层进行编码预测,得到帧内最优编码模式,并执行步骤204;
进一步地,本步骤203具体包括:
203-1、编码器接收当前帧的增强层的当前宏块的数据输入;
203-2、判断当前帧的增强层为质量增强层还是空域增强层,如果是质量增强层,执行步骤203-3,如果是空域增强层,执行步骤203-4;
203-3、判断当前帧的增强层的当前宏块对应的基础层宏块是否采用INTRA_BL的编码模式进行预测,如果是,执行步骤203-5,如果不是,执行步骤203-6;
203-4、判断当前帧的增强层的当前宏块对应的基础层宏块是否采用帧内预测编码,如果是,则当前帧的增强层采用INTRA_BL进行编码预测,执行步骤203-6,如果不是,执行步骤203-9;
203-5、判断当前帧的增强层对应的基础层宏块是否采用4x4变换的编码方式进行编码预测,如果是,则将4x4变换的编码方式作为帧内最优编码模式,如果不是,则将8x8变换的编码方式作为帧内最优编码模式;
203-6、判断当前帧的增强层的当前宏块的残差数据的4×4子宏块的hadamard(哈达玛)变换和是否小于当前帧的增强层当前宏块的残差数据的8×8子宏块的hadamard变换和与(1+α8)的乘积,如果是,则将4x4变换的编码方式作为帧内最优编码模式,如果不是,执行步骤203-7;
其中,α8为8×8变换编码模式的预测系数,在本实施例中为0.1。
进一步地,通过对编码残差数据进行hadamard变换,来判断是否进行4x4和8x8变换编码预测,可以有效的降低编码复杂度;
因此,判断当前帧的增强层的当前宏块的残差数据的4×4子宏块的hadamard变换和是否小于前帧的增强层当前宏块的残差数据的8×8子宏块的hadamard变换和与(1+α8)的乘积,具体包括:
a.设当前帧的增强层的当前宏块的原数据为Ms,其对应的基础层宏块解码数据为Mp,则根据式4得到当前帧的增强层的当前宏块的残差数据M为:
M=Ms-Mp    (式4)
b.令M的每个4×4子宏块为M4,每个8×8子宏块为M8,分别根据式5、式6、式7和式8对M4和M8宏块做hadamard变换。
M4′=H4×M4×H4    (式5)
M8′=H8×M8×H8    (式6)
H 4 = 1 1 1 1 1 1 - 1 - 1 1 - 1 - 1 - 1 1 - 1 1 - 1    (式7)
H 8 = 1 1 1 1 1 1 1 1 1 - 1 1 - 1 1 - 1 1 - 1 1 1 - 1 - 1 1 1 - 1 - 1 1 - 1 - 1 1 1 - 1 - 1 1 1 1 1 1 - 1 - 1 - 1 - 1 1 - 1 1 - 1 - 1 1 - 1 1 1 1 - 1 - 1 - 1 - 1 1 1 1 - 1 - 1 1 - 1 1 1 - 1   (式8)
其中,其中,M4′和M8′分别为子宏块M4和子宏块M8的hadamard变换结果,H4和H8分别hadamard变换矩阵,具体如式7和式8所示。
c.根据式9和式10计算得到M4′和M8′的hadamard变换和;
L 4 = Σ i = 0 16 M 4 i ′     (式9)
L 8 = Σ i = 0 4 M 8 i ′     (式10)
其中,M4i′和M8i′分别为第i个子宏块M4′和M8′所有系数绝对值之和,L4和L8分别为子宏块M4′和子宏块M8′的hadamard变换和。
d.判断L4是否小于L8×(1+α8),如果是,则将4x4变换的编码方式作为帧内最优编码模式,如果不是,执行步骤203-7。
203-7、判断当前帧的增强层的当前宏块残差数据的8×8子宏块的hadamard变换和是否小于当前帧的增强层的当前宏块残差数据的4×4子宏块的hadamard变换和与(1+α4)的乘积,如果是,则将8x8变换的编码方式作为帧内最优编码模式,如果不是,执行步骤203-8;
其中,α4为4×4变换编码模式的预测系数,在本实施例中为0.1。
203-8、分别计算编码模式为4×4变换和8×8变换时的率失真代价,根据编码模式为4×4变换和8×8变换时的率失真代价确定帧内最优编码模式;
203-9、依次进行Intra 16×16、Intra 4×4和Intra 8×8,INTRA_BL和PCM(Pulse-CodeModulation)模式的预测编码,并计算得到上述Intra 16×16、Intra 4×4和Intra 8×8,INTRA_BL和PCM模式的率失真代价,选择上述Intra 16×16、Intra 4×4和Intra 8×8,INTRA_BL和PCM模式中的率失真代价的最小的模式作为帧内最优编码模式。
204、使用帧内最优编码模式对当前帧进行编码并输出;
205、对当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式;
需要说明的是,预设的最大概率编码模式集合为根据经验数据得出的对于增强层最常用的编码模式,对于空域增强层,BL_SKIP,DIRCT/SKIP以及MODE_16x16的中的一种的概率占到了90%。因此选择增强层的当前最佳编码模式时,本发明拟优先检查这四种模式,特别地,而对于质量增强层,只检查BL_SKIP模式,略去其他模式的检查。因此,在本实施例中,预设的最大概率编码模式集合包括:BLSKIP,DIRCT/SKIP以及MODE_16x16。
相应地,对当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式,具体包括:
对当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码,并计算各编码模式的率失真代价,将其中率失真代价最高的作为当前最佳编码模式。
206、根据当前帧的当前宏块编码时使用的编码量化步长和当前帧的前一个I帧的图像的相对复杂度λ计算得到当前最佳编码模式的提前终止条件;
在本实施例中,本步骤具体的包括:
根据当前帧的当前宏块编码时使用的编码量化步长QP和当前帧的前一个I帧的图像的相对复杂度λ使用式11计算得到第一率失真代价门限TH'b,e
TH'b,e=λ·RDb,e(QP)   (式11)
其中,RDb,e(QP)为通过公式RDb,e(QP)=a·ek·QP+d计算得到的在QP下预设的训练序列的条件模式率失真代价均值,a、k和d为拟合系数,条件模式率失真代价为在预设的训练序列的当前宏块对应的基础层宏块采用b模式进行编码的情况下,预设的训练序列的当前宏块采用e模式进行编码计算得到的率失真代价。
进一步地,对于上述式11,a、k和d通过使用预设的训练序列使用式12进行拟合得到:
RD'b,e(QP)=a·ek·QP+d   (式12)
其中,RD'b,e(QP)为根据QP计算得到的预设的训练序列的条件模式率失真代价均值。
207、判断当前最佳编码模式的率失真代价是否满足提前终止条件如果不是,执行步骤208,如果是,执行步骤209;
对于步骤206中提供的方法,本步骤具体的为:
判断当前最佳编码模式的率失真代价是否小于第一率失真代价门限。
例如,假设当前最佳编码模式为e,当前帧的图像的基础层的参考图像所使用的最优编码模式为b,则当前最佳编码模式的率失真代价为RDb,e,根据本步骤判断RDb,e是否小于TH'b,e,如果不是,执行步骤208,如果是,执行步骤209。
208、对当前帧的增强层使用除预设的最大概率编码模式集合之外的其他所有编码模式进行编码预测,得到帧间最优编码模式;
需要说明的是,使用除预设的最大概率编码模式集合之外的其他所有编码模式进行编码预测采取现有编码预测方式,这里不再赘述。
209、将当前最佳编码模式作为帧间最优编码模式进行编码并输出。
本发明实施例所提供的视频编码的编码模式选择方法,针对帧间模式的编码选择进行了优化,且对帧内模型的编码选择有效,使用前一个I帧的图像相对复杂度结合编码量化步长确定提前终止条件,能够快速选择编码模式,并且能够自适应编码参数变化,能够有效提高编码效率。
实施例3
如图3所示,本发明实施例提供了一种视频编码的编码模式选择装置,该装置包括:
判断模块301,用于判断当前帧是否为I帧;
第一获取模块302,用于当判断模块301判断得出当前帧是I帧时,获取当前帧的图像的相对复杂度;
第一编码确定模块303,用于当判断模块302判断得出当前帧是I帧时,对当前帧的增强层进行编码预测,得到帧内最优编码模式;
预测模块304,用于当判断模块301判断得出当前帧不是I帧时,对当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式;
条件计算模块305,用于根据当前帧的当前宏块编码时使用的编码量化步长和当前帧的前一个I帧的图像的相对复杂度计算得到当前最佳编码模式的提前终止条件;
第二编码确定模块306,用于当当前最佳编码模式的率失真代价满足提前终止条件时,将当前最佳编码模式作为帧间最优编码模式。
本发明实施例所提供的视频编码的编码模式选择装置,针对帧间模式的编码选择进行了优化,且对帧内模型的编码选择有效,使用前一个I帧的图像相对复杂度结合编码量化步长确定提前终止条件,能够快速选择编码模式,并且能够自适应编码参数变化,能够有效提高编码效率。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种视频编码的编码模式选择方法,其特征在于,所述方法包括:
判断当前帧是否为I帧;
当所述当前帧是I帧时,获取所述当前帧的图像的相对复杂度,并对所述当前帧的增强层进行编码预测,得到帧内最优编码模式;
当所述当前帧不是I帧时,对所述当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式,根据所述当前帧的当前宏块编码时使用的编码量化步长和所述当前帧的前一个I帧的图像的相对复杂度计算得到所述当前最佳编码模式的提前终止条件,如果所述当前最佳编码模式的率失真代价满足所述提前终止条件,则将所述当前最佳编码模式作为帧间最优编码模式;
其中,所述根据所述当前帧的当前宏块编码时使用的编码量化步长和所述当前帧的前一个I帧的图像的相对复杂度计算得到所述当前最佳编码模式的提前终止条件,包括:
根据所述当前帧的当前宏块编码时使用的编码量化步长QP和所述当前帧的前一个I帧的图像的相对复杂度λ使用第四公式计算得到第一率失真代价门限TH'b,e
其中,所述第四公式为TH'b,e=λ·RDb,e(QP),RDb,e(QP)为通过公式RDb,e(QP)=a·ek·QP+d计算得到的在所述QP下预设的训练序列的条件模式率失真代价均值,a、k和d为拟合系数,所述条件模式率失真代价为在所述预设的训练序列的当前宏块对应的基础层宏块采用b模式进行编码的情况下,所述预设的训练序列的当前宏块采用e模式进行编码计算得到的率失真代价;
相应地,所述如果所述当前最佳编码模式的率失真代价满足所述提前终止条件,则将所述当前最佳编码模式作为帧间最优编码模式,具体的为:
如果所述当前最佳编码模式的率失真代价小于所述第一率失真代价门限,则将所述当前最佳编码模式作为帧间最优编码模式。
2.根据权利要求1所述的方法,其特征在于,所述获取所述当前帧的图像的相对复杂度,包括:
获取预设的训练序列的I帧的基础层宏块编码的平均绝对差MAD均值MADref
获取所述当前帧的基础层的宏块的MAD均值MADcur
根据第一公式计算得到所述当前帧的图像的相对复杂度λ;
其中,所述第一公式具体为
3.根据权利要求2所述的方法,其特征在于,所述获取预设的训练序列的I帧的基础层宏块编码的平均绝对差MAD均值MADref,包括:
对所述预设的训练序列的I帧的基础层宏块编码的MAD均值使用第二公式进行函数拟合,得到拟合系数α,β和γ;
其中,所述第二公式具体为MADref(QP)=α·eβ·QP+γ,QP为所述预设的训练序列的I帧的基础层宏块的编码量化步长,MADref(QP)为在所述QP下所述预设的训练序列的I帧的基础层宏块编码的MAD均值;
当对所述当前帧的基础层进行编码时,将当前帧的当前宏块所使用的编码量化步长QP'使用第三公式计算得到MADref
其中,所述第三公式具体为MADref=α·eβ·QP′+γ。
4.根据权利要求1所述的方法,其特征在于,在所述根据所述当前帧的当前宏块编码时使用的编码量化步长和所述当前帧的前一个I帧的图像的相对复杂度计算得到所述当前最佳编码模式的提前终止条件之前,所述方法还包括:
使用所述预设的训练序列对根据公式RD'b,e(QP)=a·ek·QP+d进行拟合,得到拟合系数a、k和d,其中,RD'b,e(QP)为根据所述QP计算得到的所述预设的训练序列的条件模式率失真代价均值。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述当前最佳编码模式的率失真代价不满足所述提前终止条件时,对所述当前帧的增强层使用除所述预设的最大概率编码模式集合之外的其他所有编码模式进行编码预测,得到帧间最优编码模式。
6.根据权利要求1所述的方法,其特征在于,所述对所述当前帧的增强层进行编码预测,得到帧内最优编码模式,包括:
步骤A,接收所述当前帧的增强层的当前宏块的数据输入;
步骤B,判断所述当前帧的增强层为质量增强层还是空域增强层,如果是质量增强层,执行步骤C,如果是空域增强层,执行步骤D;
步骤C,判断所述当前帧的增强层的当前宏块对应的基础层宏块是否采用INTRA_BL进行编码预测,如果是,执行步骤E,如果不是,执行步骤F;
步骤D,判断所述当前帧的增强层的当前宏块对应的基础层宏块是否采用帧内预测编码,如果是,则所述当前帧的增强层采用INTRA_BL进行编码预测,执行步骤F,如果不是,执行步骤I;
步骤E,判断所述当前帧的增强层对应的基础层宏块是否采用4x4变换的编码方式进行编码预测,如果是,则将4x4变换的编码方式作为帧内最优编码模式,如果不是,则将8x8变换的编码方式作为帧内最优编码模式;
步骤F,判断所述当前帧的增强层的当前宏块的残差数据的4×4子宏块的哈达玛变换和是否小于所述当前帧的增强层当前宏块的残差数据的8×8子宏块的哈达玛变换和与(1+α8)的乘积,如果是,则将4x4变换的编码方式作为帧内最优编码模式,如果不是,执行步骤G;
其中,α8为预设的8×8变换编码模式的预测系数;
步骤G,判断所述当前帧的增强层的当前宏块残差数据的8×8子宏块的哈达玛变换和是否小于所述当前帧的增强层的当前宏块残差数据的4×4子宏块的哈达玛变换和与(1+α4)的乘积,如果是,则将8x8变换的编码方式作为帧内最优编码模式,如果不是,执行步骤H;
其中,α4为预设的4×4变换编码模式的预测系数;
步骤H,分别计算编码模式为4×4变换和8×8变换时的率失真代价,根据所述编码模式为4×4变换和8×8变换时的率失真代价确定帧内最优编码模式;
步骤I,依次进行Intra 16×16、Intra 4×4和Intra 8×8,INTRA_BL和脉码调制PCM模式的预测编码,并计算得到所述Intra 16×16、Intra 4×4和Intra 8×8,INTRA_BL和PCM模式的率失真代价,选择所述Intra 16×16、Intra 4×4和Intra 8×8,INTRA_BL和PCM模式中的率失真代价的最小的模式作为帧内最优编码模式。
7.一种视频编码的编码模式选择装置,其特征在于,所述装置包括:
判断模块,用于判断当前帧是否为I帧;
第一获取模块,用于当所述判断模块判断得出所述当前帧是I帧时,获取所述当前帧的图像的相对复杂度;
第一编码确定模块,用于当所述判断模块判断得出所述当前帧是I帧时,对所述当前帧的增强层进行编码预测,得到帧内最优编码模式;
预测模块,用于当所述判断模块判断得出所述当前帧不是I帧时,对所述当前帧的增强层依次使用预设的最大概率编码模式集合中的所有编码模式进行编码预测,得当前最佳编码模式;
条件计算模块,用于根据所述当前帧的当前宏块编码时使用的编码量化步长和所述当前帧的前一个I帧的图像的相对复杂度计算得到所述当前最佳编码模式的提前终止条件;
第二编码确定模块,用于当所述当前最佳编码模式的率失真代价满足所述提前终止条件时,将所述当前最佳编码模式作为帧间最优编码模式;
其中,所述条件计算模块具体用于根据所述当前帧的当前宏块编码时使用的编码量化步长QP和所述当前帧的前一个I帧的图像的相对复杂度λ使用第四公式计算得到第一率失真代价门限TH'b,e
其中,所述第四公式为TH'b,e=λ·RDb,e(QP),RDb,e(QP)为通过公式RDb,e(QP)=a·ek·QP+d计算得到的在所述QP下预设的训练序列的条件模式率失真代价均值,a、k和d为拟合系数,所述条件模式率失真代价为在所述预设的训练序列的当前宏块对应的基础层宏块采用b模式进行编码的情况下,所述预设的训练序列的当前宏块采用e模式进行编码计算得到的率失真代价;
所述第二编码确定模块,具体用于如果所述当前最佳编码模式的率失真代价小于所述第一率失真代价门限,则将所述当前最佳编码模式作为帧间最优编码模式。
CN201110403133.XA 2011-12-07 2011-12-07 一种视频编码的编码模式选择方法及装置 Expired - Fee Related CN102790878B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110403133.XA CN102790878B (zh) 2011-12-07 2011-12-07 一种视频编码的编码模式选择方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110403133.XA CN102790878B (zh) 2011-12-07 2011-12-07 一种视频编码的编码模式选择方法及装置

Publications (2)

Publication Number Publication Date
CN102790878A CN102790878A (zh) 2012-11-21
CN102790878B true CN102790878B (zh) 2015-02-18

Family

ID=47156167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110403133.XA Expired - Fee Related CN102790878B (zh) 2011-12-07 2011-12-07 一种视频编码的编码模式选择方法及装置

Country Status (1)

Country Link
CN (1) CN102790878B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103152580B (zh) * 2013-03-15 2016-04-13 浙江大学 一种基于帧场自适应的容错编码方法
CN104038769B (zh) * 2014-06-11 2017-05-03 同济大学 帧内编码的码率控制方法
US10085027B2 (en) * 2015-03-06 2018-09-25 Qualcomm Incorporated Adaptive mode checking order for video encoding
CN105141953B (zh) * 2015-07-31 2018-05-25 华侨大学 一种适用于hevc的快速帧间模式选择方法
CN105491390B (zh) * 2015-11-30 2018-09-11 哈尔滨工业大学 混合视频编码标准中帧内预测方法
CN108012154B (zh) * 2016-10-28 2020-07-03 北京金山云网络技术有限公司 一种视频编码方法及装置
CN107241600B (zh) * 2017-04-20 2018-07-03 中国科学技术大学 一种静态背景帧内编码方法和装置
CN107911196B (zh) * 2017-10-27 2020-07-14 南京莱斯电子设备有限公司 一种雷达航迹报文传输方法
CN109862355B (zh) * 2019-03-21 2022-07-15 南京威翔科技有限公司 一种多层次帧内预算模式选择方法
CN111279699B (zh) * 2019-04-26 2024-06-14 深圳市大疆创新科技有限公司 视频编解码的方法和装置
CN110324708A (zh) * 2019-07-16 2019-10-11 浙江大华技术股份有限公司 视频处理方法、终端设备及计算机存储介质
CN114979630A (zh) * 2019-08-26 2022-08-30 腾讯科技(深圳)有限公司 数据解码方法、装置和数据编码方法、装置
CN113347415A (zh) * 2020-03-02 2021-09-03 阿里巴巴集团控股有限公司 编码模式确定方法和装置
CN115580723B (zh) * 2022-12-09 2023-06-09 中南大学 一种屏幕内容图像的编码优化方法、系统、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102186070A (zh) * 2011-04-20 2011-09-14 北京工业大学 分层结构预判的快速视频编码方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090225829A2 (en) * 2005-07-06 2009-09-10 Do-Kyoung Kwon Method and apparatus for operational frame-layerrate control in video encoder

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102186070A (zh) * 2011-04-20 2011-09-14 北京工业大学 分层结构预判的快速视频编码方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Frame Bit Allocation for the H.264/AVC Video Coder Via Cauchy-Density-Based Rate and Distortion Models;Nejat Kamaci et al;《IEEE TANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》;20050831;第994-1006页 *
顾梅花,余宁梅,寇立康,朱磊.H.264快速模式选择算法中的提前终止策略.《中国图像图形学报》.2011,第305-309页. *

Also Published As

Publication number Publication date
CN102790878A (zh) 2012-11-21

Similar Documents

Publication Publication Date Title
CN102790878B (zh) 一种视频编码的编码模式选择方法及装置
CN100586184C (zh) 帧内预测方法
CN103634606B (zh) 视频编码方法和装置
CN103873861B (zh) 一种用于hevc的编码模式选择方法
CN103004194B (zh) 图像编码/解码设备和方法
CN104811710B (zh) 对视频编码的方法和设备及对视频解码的方法和设备
EP2214415B1 (en) A dual prediction video encoding and decoding method and a device
CN101583036B (zh) 像素域视频转码中确定运动特征和高效编码模式关系的方法
CN102025995B (zh) 一种可伸缩视频编码的空间增强层快速模式选择方法
CN102763411A (zh) 对视频编码的方法和设备以及对视频解码的方法和设备
CN101022555B (zh) 帧间预测编码的模式快速选择方法
CN102158709A (zh) 一种解码端可推导的运动补偿预测方法
CN100591136C (zh) 一种基于空域分解的视频帧内编码方法
CN105208387A (zh) 一种hevc帧内预测模式快速选择方法
CN102647598B (zh) 基于极大极小mv差值的h.264帧间模式优化方法
CN107888929A (zh) 视频编码解码方法、设备以及生成和存储比特流的方法
CN102932642A (zh) 一种帧间编码快速模式选择方法
CN107318016A (zh) 一种基于零块分布的hevc帧间预测模式快速判定方法
CN101883275B (zh) 视频编码方法
CN100586186C (zh) 一种快速帧间预测模式选择方法
CN102946533B (zh) 视频编码
CN101867818A (zh) 宏块模式的选择方法和装置
CN101783956A (zh) 基于时空邻居信息的后向预测方法
CN102088608A (zh) 一种基于部分重建的可伸缩视频编码质量优化方法
CN102611891B (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150218

Termination date: 20201207

CF01 Termination of patent right due to non-payment of annual fee