首页 / 专利库 / 视听技术与设备 / 视频编码层 / 基于预测模式率失真分析的可伸缩视频编码的码率控制方法

基于预测模式率失真分析的可伸缩视频编码的码率控制方法

阅读:306发布:2020-06-18

专利汇可以提供基于预测模式率失真分析的可伸缩视频编码的码率控制方法专利检索,专利查询,专利分析的服务。并且基于预测模式率失真分析的可伸缩 视频编码 的码率控制方法,涉及可伸缩视频编码的码率控制方法。为了解决现有码率控制技术中率失真关系模型不能准确描述SVC标准的率失真关系的问题、现有的率失真模型未考虑基本层和增强层间的相互影响的问题以及缺乏联合基本层和增强层的率失真模型的问题。本 发明 对量化步长赋值后,选择最优编码模式对编码单元进行编码,存储增强层该编码单元的编码结果;计算基本层中第j 帧 中Γj=B_MADactual,j‑B_MADpredicted,j;更新E_MADj=a1×E_MADj‑1+a2+a3×Γj中的MAD 预测模型 的系数a1和a2;然后预测下一编码单元的E_MADj;更新RD模型系数后计算下一编码单元的目标编码比特数Rtxt;计算层间预测的量化步长和层内预测的量化步长直至完成所有编码单元的编码。本发明适用于可伸缩视频编码的码率控制领域。,下面是基于预测模式率失真分析的可伸缩视频编码的码率控制方法专利的具体信息内容。

1.基于预测模式率失真分析的可伸缩视频编码的码率控制方法,其特征在于它包括下述步骤:
步骤1、若当前编码单元为增强层中第1中的第1个编码单元时,从编码配置文件中读取量化参数QP的初始值InitialQP,按公式(1-1)和公式(1-2)根据InitialQP分别计算并赋值给层间预测的量化步长 的初始值和层内预测的量化步长 的初始值;然后执行步骤2;
式中,%是取余符号;ζ(·)为取余常数,常数值根据余数而定;
步骤2、利用可伸缩视频编码标准的测试软件对视频序列进行可伸缩编码;在编码的过程中执行基于Lagrangian优化算法的率失真优化Rate-Distortion Optimization,若当前编码单元为增强层中第1帧中的第1个编码单元时,
使用步骤1中设置的量化步长;
若当前编码单元并非增强层中第1帧中的第1个编码单元时,
使用步骤8中设置的量化步长;
选择最优编码模式;针对增强层,完成对每一编码单元的编码后,存储关于该编码单元的最优编码模式、编码后实际产生的比特数、编码单元的实际平均绝对误差值和实际使用的量化步长;
平均绝对误差值,即MAD值;编码单元的实际平均绝对误差值,即实际MAD值;
步骤3、根据基本层的编码结果,计算基本层中第j帧中所有编码单元的实际MAD值的平均值与其MAD预测值的平均值之间的差值Γj,j≥1,如式(2)
Γj=B_MADactual,j-B_MADpredicted,j  (2)
其中,B_MADactual,j为基本层中第j帧中所有编码单元的实际MAD值的平均值;B_MADpredicted,j为基本层中第j帧中所有编码单元的MAD预测值的平均值;前缀B_代表基本层;
将步骤2中得到增强层中的编码单元的实际MAD值赋值给E_MADj;
若当前编码单元处于视频序列的第1帧中,即j=1,E_MADj-1即E_MAD0取值为0;
若当前编码单元处于视频序列的第j帧中,j>1;将当前编码单元在增强层中第j-1帧中对应位置处的编码单元的实际MAD值赋值给E_MADj-1;
根据Γj、E_MADj-1和E_MADj,利用线性递归方法,更新式(3)中的MAD预测模型的系数a1和a2;
E_MADj=a1×E_MADj-1+a2+a3×Γj  (3)
前缀E_代表增强层;a3为Γj的权重因子;
步骤4、若当前编码单元处于视频序列的第1帧中,即j=1,E_MADj-1即E_MAD0取值为0;利用MAD预测模型即式(3),预测下一编码单元的MAD预测值E_MADj;此时,MAD预测模型的系数a1取值为1.0,a2取值为0.0;
若当前编码单元处于视频序列的第j帧中,j>1,根据之前编码帧即第j-1帧中对应位置处的编码单元的实际MAD值E_MADj-1,利用在步骤3中更新系数a1和a2后的式(3)预测下一编码单元的MAD预测值E_MADj;
步骤5、如果步骤2中存储的最优编码模式是层间预测模式,则将步骤2中存储的实际使用的量化步长值赋值给式(4)中的 将步骤2中存储的实际产生的比特数赋值给式(4)中的Rtxt;将步骤2中存储的增强层编码单元的实际MAD值赋值给式(4)中的E_MADpred;
根据 Rtxt和E_MADpred,利用线性递归方法对式(4)中的率失真模型系数 和进行更新;
式中, 和 是层间预测率失真模型的系数;
是进行层间预测编码时的量化步长;
Rtxt是目标编码比特数;
如果步骤2中存储的最优编码模式是层内预测模式,则将步骤2中存储的实际使用的量化步长值赋值给式(5)中的 将步骤2中存储的实际产生的比特数赋值给式(5)中的Rtxt;将步骤2中存储的增强层编码单元的实际MAD值赋值给式(5)中的E_MADpred;
根据 Rtxt和E_MADpred,利用线性递归方法对式(5)中的率失真模型系数 和进行更新;
式中, 和 是层内预测率失真模型的系数;
是进行层间预测编码时的量化步长;
Rtxt是目标编码比特数;
步骤6、根据可伸缩视频编码标准的测试软件中默认的编码比特数分配方法,计算下一编码单元的目标编码比特数Rtxt;
步骤7、根据步骤6中得到的目标编码比特数Rtxt和在步骤4中得到的编码单元的MAD预测值E_MADj,将其值赋值给E_MADpred,
若当前编码单元处于视频序列的第1帧中,即j=1,
已知Rtxt和E_MADpred,分别使用式(4)计算用于层间预测的量化步长 其中模型系数取值为1.0, 取值为0.0;已知Rtxt和E_MADpred,使用式(5)计算用于层内预测的量化步长 其中模型系数 取值为1.0, 取值为0.0;
若当前编码单元处于视频序列的第j帧中,j>1,
利用在步骤5中更新系数 和 后的率失真模型,已知Rtxt、E_
MADpred、 和 使用式(4)计算用于层间预测的量化步长 已知Rtxt、E_MADpred、和 使用式(5)计算用于层内预测的量化步长
步骤8、设置在可伸缩编码过程中进行预测编码时所使用的量化参数:
利用在步骤7中预测得到的层间预测的量化步长 的值,赋值给下一编码单元进行层间预测编码时的量化步长;
利用在步骤7中预测得到的层内预测的量化步长 的值,赋值给下一编码单元进行层内预测编码时的量化步长;
步骤9、检查对当前帧的编码是否结束;
若当前帧中的所有编码单元都已编码完成,则对下一帧进行编码;
若当前帧中还有编码单元未被编码,则返回步骤2。
2.根据权利要求1所述的基于预测模式率失真分析的可伸缩视频编码的码率控制方法,其特征在于步骤1所述的取余常数ζ(·)为ζ(0)=0.625、ζ(1)=0.6875、ζ(2)=0.8125、ζ(3)=0.875、ζ(4)=1.0和ζ(5)=1.125;ζ(·)中的·表示余数。
3.根据权利要求2所述的基于预测模式率失真分析的可伸缩视频编码的码率控制方法,其特征在于步骤2所述的利用可伸缩视频编码标准的测试软件为可伸缩视频编码标准的测试软件JSVM。
4.根据权利要求3所述的基于预测模式率失真分析的可伸缩视频编码的码率控制方法,其特征在于步骤3所述的a3设置为0.1。

说明书全文

基于预测模式率失真分析的可伸缩视频编码的码率控制方法

技术领域

[0001] 本发明涉及可伸缩视频编码的码率控制方法。

背景技术

[0002] SVC标准是以H.264/AVC视频编解码标准为基础,由国际电联电信标准化部(ITU-T)视频编码专家组(VCEG)和国际标准化组织(ISO)动态图像专家组(MPEG)组成的联合视频专家组(JVT)共同制定的国际可伸缩视频编码标准。在保持高效率压缩的同时,SVC编码器产生的码流可实现在时间(率)、空间(分辨率)和视频质量(信噪比)上的可伸缩,即通过一次编码产生的码流可以解码出不同帧率、分辨率和质量等级的视频。在给定传输带宽或存储空间的条件下,码率控制算法利用编码工具对编码比特进行有效地调配和使用,从而获得更好的重建视频质量。码率控制算法能够保证输出的码率能够符合传输带宽的要求,防止缓冲器上溢和下溢并且充分利用带宽资源。虽然对码率控制算法已有了较广泛的研究,但是基本上都是针对不可伸缩视频编码标准进行的。现有针对可伸缩视频编码的码率控制技术存在的主要问题有:
[0003] (1)现有的率失真(rate-distortion,RD)模型不能准确描述SVC标准的率失真关系。SVC标准继承了H.264/AVC标准所有先进的编码工具,同时采用了多层的编码框架和新的层间预测技术,使得现有的率失真模型不能准确地描述其率失真关系。例如,新的编码技术改变了用于编码图像纹理和用于编码非纹理的比特开销之间的关系,从而使率失真模型也随之发生变化。
[0004] (2)现有的率失真模型未考虑基本层和增强层间的相互影响。SVC标准采用多层的编码框架,这使主要应用于单层编码框架的传统码率控制技术不能有效地对SVC编码器进行码率控制。例如,由于SVC标准所采用的新的层间预测技术,在编码增强层时,不能简单地将传统的码率控制技术直接应用于增强层,还应该同时考虑基本层和增强层间的相互影响。
[0005] (3)缺乏基本层和增强层联合的率失真模型。SVC标准继承了H.265/AVC标准的灵活的编码方式,这使精确控制SVC标准输出码率的难度进一步增加。与传统的单层编码标准不同,SVC标准的编码效率同时受到基本层和增强层编码效率的影响。基本层和增强层的编码效率也是互相影响的。因此,需要为SVC标准重新建立基本层和增强层联合的率失真模型。

发明内容

[0006] 本发明是为了解决现有码率控制技术中率失真关系模型不能准确描述SVC标准的率失真关系的问题、现有的率失真模型未考虑基本层和增强层间的相互影响的问题以及缺乏联合基本层和增强层的率失真模型的问题,而提出了一种基于预测模式率失真分析的可伸缩视频编码的码率控制方法。
[0007] 基于预测模式率失真分析的可伸缩视频编码的码率控制方法,包括下述步骤:
[0008] 步骤1、若当前编码单元为增强层中第1帧中的第1个编码单元时,从编码配置文件中读取量化参数QP的初始值InitialQP,按公式(1-1)和公式(1-2)根据InitialQP分别计算并赋值给层间预测的量化步长 的初始值和层内预测的量化步长 的初始值;然后执行步骤2;
[0009]
[0010]
[0011] 式中,%是取余符号;ζ(·)为取余常数,常数值根据余数而定;
[0012] 步骤2、利用可伸缩视频编码标准的测试软件对视频序列进行可伸缩编码;在编码的过程中执行基于Lagrangian优化算法的率失真优化Rate-Distortion Optimization(RDO),
[0013] 若当前编码单元为增强层中第1帧中的第1个编码单元时,
[0014] 使用步骤1中设置的量化步长;
[0015] 若当前编码单元并非增强层中第1帧中的第1个编码单元时,
[0016] 使用步骤8中设置的量化步长;
[0017] 选择最优编码模式;针对增强层,完成对每一编码单元的编码后,存储关于该编码单元的最优编码模式、编码后实际产生的比特数、编码单元的实际平均绝对误差值和实际使用的量化步长;
[0018] 平均绝对误差值(Mean Absolute Difference),即MAD值;编码单元的实际平均绝对误差值,即实际MAD值;
[0019] 步骤3、根据基本层的编码结果,计算基本层中第j,j≥1,帧中所有编码单元的实际MAD值的平均值与其MAD预测值的平均值之间的差值Γj,如式(2)
[0020] Γj=B_MADactual,j-B_MADpredicted,j  (2)
[0021] 其中,B_MADactual,j为基本层中第j帧中所有编码单元的实际MAD值的平均值;B_MADpredicted,j为基本层中第j帧中所有编码单元的MAD预测值的平均值;前缀B_代表基本层;
[0022] 将步骤2中得到增强层中的编码单元的实际MAD值赋值给E_MADj;
[0023] 若当前编码单元处于视频序列的第1帧中,即j=1,E_MADj-1即E_MAD0取值为0;
[0024] 若当前编码单元处于视频序列的第j,j>1,帧中;将当前编码单元在增强层中第j-1帧中对应位置处的编码单元的实际MAD值赋值给E_MADj-1;
[0025] 根据Γj、E_MADj-1和E_MADj,利用线性递归方法,更新式(3)中的MAD预测模型的系数a1和a2;
[0026] E_MADj=a1×E_MADj-1+a2+a3×Γj  (3)
[0027] 前缀E_代表增强层;a3为Γj的权重因子;
[0028] 步骤4、若当前编码单元处于视频序列的第1帧中,即j=1,E_MADj-1即E_MAD0取值为0;利用MAD预测模型即式(3),预测下一编码单元的MAD预测值E_MADj;此时,MAD预测模型的系数a1取值为1.0,a2取值为0.0;
[0029] 若当前编码单元处于视频序列的第j帧中,j>1,根据之前编码帧即第j-1帧中对应位置处的编码单元的实际MAD值E_MADj-1,利用在步骤3中更新系数a1和a2后的式(3)预测下一编码单元的MAD预测值E_MADj;
[0030] 步骤5、如果步骤2中存储的最优编码模式是层间预测模式,则将步骤2中存储的实际使用的量化步长值赋值给式(4)中的 将步骤2中存储的实际产生的比特数赋值给式(4)中的Rtxt;将步骤2中存储的增强层编码单元的实际MAD值赋值给式(4)中的E_MADpred;
[0031] 根据 Rtxt和E_MADpred,利用线性递归方法对式(4)中的率失真模型系数和 进行更新;
[0032]
[0033] 式中, 和 是层间预测率失真模型的系数;
[0034] 是进行层间预测编码时的量化步长;
[0035] Rtxt是目标编码比特数;
[0036] 如果步骤2中存储的最优编码模式是层内预测模式,则将步骤2中存储的实际使用的量化步长值赋值给式(5)中的 将步骤2中存储的实际产生的比特数赋值给式(5)中的Rtxt;将步骤2中存储的增强层编码单元的实际MAD值赋值给式(5)中的E_MADpred;
[0037] 根据 Rtxt和E_MADpred,利用线性递归方法对式(5)中的率失真模型系数和 进行更新;
[0038]
[0039] 式中, 和 是层内预测率失真模型的系数;
[0040] 是进行层间预测编码时的量化步长;
[0041] Rtxt是目标编码比特数;
[0042] 步骤6、根据可伸缩视频编码标准的测试软件中默认的编码比特数分配方法,计算下一编码单元的目标编码比特数Rtxt;
[0043] 步骤7、根据步骤6中得到的目标编码比特数Rtxt和在步骤4中得到的编码单元的MAD预测值E_MADj,将其值赋值给E_MADpred,
[0044] 若当前编码单元处于视频序列的第1帧中,即j=1,
[0045] 已知Rtxt和E_MADpred,分别使用式(4)计算用于层间预测的量化步长 其中模型系数 取值为1.0, 取值为0.0;已知Rtxt和E_MADpred,使用式(5)计算用于层内预测的量化步长 其中模型系数 取值为1.0, 取值为0.0;
[0046] 若当前编码单元处于视频序列的第j帧中,j>1,
[0047] 利用在步骤5中更新系数 和 后的率失真模型,已知Rtxt、E_MADpred、 和 使用式(4)计算用于层间预测的量化步长 已知Rtxt、E_MADpred、和 使用式(5)计算用于层内预测的量化步长
[0048] 步骤8、设置在可伸缩编码过程中进行预测编码时所使用的量化参数:
[0049] 利用在步骤7中预测得到的层间预测的量化步长 的值,赋值给下一编码单元进行层间预测编码时的量化步长;
[0050] 利用在步骤7中预测得到的层内预测的量化步长 的值,赋值给下一编码单元进行层内预测编码时的量化步长;
[0051] 步骤9、检查对当前帧的编码是否结束;
[0052] 若当前帧中的所有编码单元都已编码完成,则对下一帧进行编码;
[0053] 若当前帧中还有编码单元未被编码,则返回步骤2。
[0054] 本发明为SVC空间增强层的层间预测编码提出了一种新的码率-量化(Rate-Quantization,R-Q)模型,该模型考虑到了基本层和增强层间编码时的相互影响,提出的率失真关系模型是基本层和增强层联合的率失真模型,解决了现有码率控制技术中的率失真关系模型不能准确描述SVC标准的率失真关系的问题。本发明还为SVC空间增强层提出了一种改进的平均绝对误差(MAD)预测模型,该模型同时利用之前时域帧和基本层的MAD值来预测当前增强层的MAD值。
[0055] 与JVT-G012码率控制算法相比,本发明中提出的算法可以获得更高的码率控制精度。实验证明,利用本发明提出的算法对不同视频序列进行码率控制时,大多数的码率失配率都小于0.1%,而最大的失配率只有0.23%,总体平均绝对失配率只有0.07%。并且,本发明中提出的算法可以获得更高的编码效率,编码不同类型的视频序列得到的实验结果说明,与JVT-G012码率控制算法相比(1)在相同的重建图像客观质量(PSNR)下,提出的算法能够平均减少编码码率达3.73%;(2)在相同的编码码率下,提出的算法可以使峰值信噪比平均提高达0.18dB。总体来说,每个重建视频序列的PSNR在所有的目标比特率上都获得提高。编码增益最高可达0.30dB。因此,相对于JVT-G012码率控制算法,无论目标码率设置为多少,本发明中提出的算法都可以有效提高编码器的编码效率。
附图说明
[0056] 图1为本发明的码率控制算法的流程图

具体实施方式

[0057] 具体实施方式一:结合图1说明本实施方式,基于预测模式率失真分析的可伸缩视频编码的码率控制方法,包括下述步骤:
[0058] 步骤1、若当前编码单元为增强层中第1帧中的第1个编码单元时,从编码配置文件中读取量化参数QP的初始值InitialQP,按公式(1-1)和公式(1-2)根据InitialQP分别计算并赋值给层间预测的量化步长 的初始值和层内预测的量化步长 的初始值;然后执行步骤2;
[0059]
[0060]
[0061] 式中,%是取余符号;ζ(·)为取余常数,常数值根据余数而定;
[0062] 步骤2、利用可伸缩视频编码标准的测试软件对视频序列进行可伸缩编码;在编码的过程中执行基于Lagrangian优化算法的率失真优化Rate-Distortion Optimization(RDO),
[0063] 若当前编码单元为增强层中第1帧中的第1个编码单元时,
[0064] 使用步骤1中设置的量化步长;
[0065] 若当前编码单元并非增强层中第1帧中的第1个编码单元时,
[0066] 使用步骤8中设置的量化步长;
[0067] 选择最优编码模式;针对增强层,完成对每一编码单元的编码后,存储关于该编码单元的最优编码模式、编码后实际产生的比特数、编码单元的实际平均绝对误差值和实际使用的量化步长;
[0068] 平均绝对误差值(Mean Absolute Difference),即MAD值;编码单元的实际平均绝对误差值,即实际MAD值;
[0069] 步骤3、根据基本层的编码结果,计算基本层中第j,j≥1,帧中所有编码单元的实际MAD值的平均值与其MAD预测值的平均值之间的差值Γj,如式(2)
[0070] Γj=B_MADactual,j-B_MADpredicted,j  (2)
[0071] 其中,B_MADactual,j为基本层中第j帧中所有编码单元的实际MAD值的平均值;B_MADpredicted,j为基本层中第j帧中所有编码单元的MAD预测值的平均值;前缀B_代表基本层;
[0072] 将步骤2中得到增强层中的编码单元的实际MAD值赋值给E_MADj;
[0073] 若当前编码单元处于视频序列的第1帧中,即j=1,E_MADj-1即E_MAD0取值为0;
[0074] 若当前编码单元处于视频序列的第j,j>1,帧中;将当前编码单元在增强层中第j-1帧中对应位置处的编码单元的实际MAD值赋值给E_MADj-1;
[0075] 根据Γj、E_MADj-1和E_MADj,利用线性递归方法,更新式(3)中的MAD预测模型的系数a1和a2;
[0076] E_MADj=a1×E_MADj-1+a2+a3×Γj  (3)
[0077] 前缀E_代表增强层;a3为Γj的权重因子;
[0078] 步骤4、若当前编码单元处于视频序列的第1帧中,即j=1,E_MADj-1即E_MAD0取值为0;利用MAD预测模型即式(3),预测下一编码单元的MAD预测值E_MADj;此时,MAD预测模型的系数a1取值为1.0,a2取值为0.0;
[0079] 若当前编码单元处于视频序列的第j帧中,j>1,根据之前编码帧即第j-1帧中对应位置处的编码单元的实际MAD值E_MADj-1,利用在步骤3中更新系数a1和a2后的式(3)预测下一编码单元的MAD预测值E_MADj;
[0080] 步骤5、如果步骤2中存储的最优编码模式是层间预测模式,则将步骤2中存储的实际使用的量化步长值赋值给式(4)中的 将步骤2中存储的实际产生的比特数赋值给式(4)中的Rtxt;将步骤2中存储的增强层编码单元的实际MAD值赋值给式(4)中的E_MADpred;
[0081] 根据 Rtxt和E_MADpred,利用线性递归方法对式(4)中的率失真模型系数和 进行更新;
[0082]
[0083] 式中, 和 是层间预测率失真模型的系数;
[0084] 是进行层间预测编码时的量化步长;
[0085] Rtxt是目标编码比特数;
[0086] 如果步骤2中存储的最优编码模式是层内预测模式,则将步骤2中存储的实际使用的量化步长值赋值给式(5)中的 将步骤2中存储的实际产生的比特数赋值给式(5)中的Rtxt;将步骤2中存储的增强层编码单元的实际MAD值赋值给式(5)中的E_MADpred;
[0087] 根据 Rtxt和E_MADpred,利用线性递归方法对式(5)中的率失真模型系数和 进行更新;
[0088]
[0089] 式中, 和 是层内预测率失真模型的系数;
[0090] 是进行层间预测编码时的量化步长;
[0091] Rtxt是目标编码比特数;
[0092] 步骤6、根据可伸缩视频编码标准的测试软件中默认的编码比特数分配方法,计算下一编码单元的目标编码比特数Rtxt;
[0093] 步骤7、根据步骤6中得到的目标编码比特数Rtxt和在步骤4中得到的编码单元的MAD预测值E_MADj,将其值赋值给E_MADpred,
[0094] 若当前编码单元处于视频序列的第1帧中,即j=1,
[0095] 已知Rtxt和E_MADpred,分别使用式(4)计算用于层间预测的量化步长 其中模型系数 取值为1.0, 取值为0.0;已知Rtxt和E_MADpred,使用式(5)计算用于层内预测的量化步长 其中模型系数 取值为1.0, 取值为0.0;
[0096] 若当前编码单元处于视频序列的第j帧中,j>1,
[0097] 利用在步骤5中更新系数 和 后的率失真模型,已知Rtxt、E_MADpred、 和 使用式(4)计算用于层间预测的量化步长 已知Rtxt、E_MADpred、和 使用式(5)计算用于层内预测的量化步长
[0098] 步骤8、设置在可伸缩编码过程中进行预测编码时所使用的量化参数:
[0099] 利用在步骤7中预测得到的层间预测的量化步长 的值,赋值给下一编码单元进行层间预测编码时的量化步长;
[0100] 利用在步骤7中预测得到的层内预测的量化步长 的值,赋值给下一编码单元进行层内预测编码时的量化步长;
[0101] 步骤9、检查对当前帧的编码是否结束;
[0102] 若当前帧中的所有编码单元都已编码完成,则对下一帧进行编码;
[0103] 若当前帧中还有编码单元未被编码,则返回步骤2。
[0104] 具体实施方式二:本实施方式步骤1所述的取余常数ζ(0)=0.625、ζ(1)=0.6875、ζ(2)=0.8125、ζ(3)=0.875、ζ(4)=1.0和ζ(5)=1.125;ζ(·)中的·表示余数,ζ()表示取余符号。
[0105] 其它步骤与具体实施方式一相同。
[0106] 具体实施方式三:本实施方式步骤2所述的利用可伸缩视频编码标准的测试软件为可伸缩视频编码标准的测试软件JSVM。
[0107] 其它步骤与具体实施方式二相同。
[0108] 具体实施方式四:本实施方式所述步骤3所述的a3设置为0.1
[0109] 其它步骤与具体实施方式三相同。
[0110] 具体实施例
[0111] 将提出的一种基于预测模式率失真分析的码率控制方法整合进由JVT提供的标准参考软件JSVM 9.19.14中。为了验证本发明的有效性,测试中首先使用了由JVT推荐的4个具有不同运动剧烈程度和图像细节的标准视频测试序列。实验的结果与JVT-G012码率控制算法的编码结果进行比较。为了保证测试数据的可靠性,每个视频序列所处理的帧数均为150帧。测试中,采用了一个基本层和一个增强层,发明中提出的算法应用于增强层。增强层中使用了自适应的层间预测算法。采用CABAC熵编码算法。采用快速运动估计算法,运动估计的搜索范围是±32,精度是1/4像素。由于我们的发明着眼于优化率失真模型和MAD预测模型,这只涉及到P帧,因此GOP结构设置为IPPP。实验中,宏块被选作码率控制的基本单元。
初始量化参数QP值设置为32。其余的参数都设置为参考软件的默认值。
[0112] 比特率失配率(%Mism.)和率失真性能(ΔBR(kbits/s),ΔPSNR(dB),BDBR(kbits/s),和BDPSNR(dB))用来评价所提出的算法与JVT-G012码率控制算法的性能。
[0113] 表1列出了对于四种目标比特率的码率控制精度。实验中使用的都是由JVT在JVT-Q205文件中推荐的测试序列和目标比特率。从表1中可见,所提出的码率控制算法和JVT-G012码率控制算法在不同的比特率可以获得不错的编码结果。虽然两种算法都可以获得接近目标比特率的码率,但是本发明提出的算法的码率控制精度在大多数情况下都要优于JVT-G012码率控制算法。这是因为在快速运动发生的时候,本发明提出的算法会引起更小的MAD预测误差。大多数的失配率都小于0.1%,而最大的失配率只有0.23%,总体平均绝对失配率只有0.07%。可以说,本发明提出的码率控制算法能够非常精确的控制编码器的输出码率。
[0114] 表1码率控制精度的比较
[0115]
[0116] 与JVT-G012码率控制算法相比,编码增强层时,本发明提出的码率控制算法能够获得更好的率失真性能。本发明所提出的算法与JVT-G012码率控制算法的率失真性能表现如表2所示。实验结果说明,与JVT-G012码率控制算法相比(1)在相同的重建图像客观质量(PSNR)下,提出的算法能够减少编码码率最高可达4.66%;(2)在相同的编码码率下,提出的算法可以使峰值信噪比最高可以提高0.26dB。总体来说,每个重建视频序列的PSNR在所有的目标比特率上都获得提高。编码增益最高可达0.30dB。因此,相对于JVT-G012码率控制算法,无论目标码率设置为多少,本发明中提出的算法都可以有效提高编码器的编码效率。
[0117] 表2率失真性能的比较
[0118]
[0119] 本发明为SVC标准提出了一种码率控制算法。该算法编码增强层时,为层间预测引入了一个单独的码率-量化(R-Q)参数模型。本发明还提出了一种优化的MAD预测模型,该模型利用基本层MAD来辅助预测当前编码单元的MAD值。利用上述的两种技术,码率的失配率可以明显降低,同时编码效率得到明显提高。实验证明,相对于JVT-G012码率控制算法,本发明中提出的算法可以获得更高的码率控制精度。平均码率的失配率为0.07%。并且,本发明中提出的算法可以获得更高的编码效率。编码不同类型的视频序列得到的实验结果说明,本发明中提出的算法可以平均增加0.18dB的PSNR或者平均节省3.73%的码率。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈