首页 / 专利库 / 视听技术与设备 / 视频编码层 / 一种基于主观质量模型的视频编码方法及装置

一种基于主观质量模型的视频编码方法及装置

阅读:232发布:2020-06-08

专利汇可以提供一种基于主观质量模型的视频编码方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 实施例 公开了一种基于主观 质量 模型的 视频编码 方法及装置。方法包括:获得目标层级中目标对象的原始数据;根据原始数据,对目标对象进行编码,获得目标对象的重建数据;计算原始数据和重建数据的 像素 差矩阵;获得原始数据基于目标层级的第一类主观质量模型的第一类模型值;根据像素差矩阵和第一类模型值,判断目标对象是否编码成功;若为否,调整针对目标对象的编码参数,返 回执 行对所述目标对象进行编码,获得目标对象的重建数据的步骤;若为是,判定所述目标对象编码成功。通过本方案可以保证视频的编码结果能够满足人眼视觉特性。,下面是一种基于主观质量模型的视频编码方法及装置专利的具体信息内容。

1.一种基于主观质量模型的视频编码方法,其特征在于,包括:
获得目标层级中目标对象的原始数据;
根据所述原始数据,对所述目标对象进行编码,获得所述目标对象的重建数据;
计算所述原始数据和所述重建数据的像素差矩阵;
获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值;
根据所述像素差矩阵和所述第一类模型值,判断所述目标对象是否编码成功;
若为否,调整针对所述目标对象的编码参数,返回执行所述对所述目标对象进行编码,获得所述目标对象的重建数据的步骤;
若为是,判定所述目标对象编码成功。
2.根据权利要求1所述的方法,其特征在于,所述获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值,包括:
将所述原始数据输入所述目标层级的第一类主观质量模型后获得的模型值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值;
或,将所述目标层级的第一类主观质量模型的第一预设值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值。
3.根据权利要求1所述的方法,其特征在于,在所述判定所述目标对象编码成功之后,还包括:
判断所述目标层级是否存在未编码的对象;
若为是,将所述目标对象更新为所述目标对象的下一对象,并返回执行所述获得目标层级中目标对象的原始数据的步骤;
若为否,获得所述目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值;根据所述目标层级包含的所有对象的像素差矩阵和所述第二类模型值,判断所述父对象是否编码成功;若否,调整针对所述父对象的编码参数,将所述目标对象更新为所述父对象包含的第一个子对象,并返回执行所述获得目标层级中目标对象的原始数据的步骤,若是,判定所述父对象编码成功,其中,所述第二类主观质量模型为:所述目标层级的上一层的主观质量模型。
4.根据权利要求3所述的方法,其特征在于,所述获得所述目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,包括:
将所述目标对象父对象的原始数据输入第二类主观质量模型后获得的模型值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值;
或,将第二类主观质量模型的第二预设值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值。
5.根据权利要求3所述的方法,其特征在于,所述第一类主观质量模型和所述第二类主观质量模型为以下模型中的至少一种:
恰可失真模型、峰值信噪比模型、协方差经验值模型、最大K×K平均像素差经验值模型、最大K×K块像素均方差模型,其中,K为正整数。
6.根据权利要求5所述的方法,其特征在于,在所述第一类主观质量模型包括至少两种模型的情况下,
所述获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值,包括:
获得所述原始数据分别基于所述目标层级的第一类主观质量模型包括的每一模型的模型值,所获得的模型值组成第一类模型值;
所述根据所述像素差矩阵和所述第一类模型值,判断所述目标对象是否编码成功,包括:
根据所述像素差矩阵和所述第一类模型值包含的每一模型值,分别判断所述目标对象是否编码成功;
统计编码成功的次数;
判断所述次数是否大于预设阈值
若为是,判定所述目标对象编码成功;
若为否,判定所述目标对象编码失败。
7.根据权利要求1所述的方法,其特征在于,所述目标层级为根据针对编码结果的主观质量评价参数确定的。
8.根据权利要求1所述的方法,其特征在于,在所述调整针对所述目标对象的编码参数之前,还包括:
判断所述目标对象的编码参数是否已遍历完成;
如果否,执行所述调整针对所述目标对象的编码参数的步骤;
如果是,按照预设规则,从所述目标对象的编码结果中选取一个编码结果作为所述目标对象的最终编码结果,并确定所述目标对象编码成功。
9.一种基于主观质量模型的视频编码装置,其特征在于,包括:
第一获得模块,用于获得目标层级中目标对象的原始数据;
第二获得模块,用于根据所述原始数据,对所述目标对象进行编码,获得所述目标对象的重建数据;
计算模块,用于计算所述原始数据和所述重建数据的像素差矩阵;
第三获得模块,用于获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值;
第一判断模块,用于根据所述像素差矩阵和所述第一类模型值,判断所述目标对象是否编码成功;
第一调整模块,用于在所述第一判断模块的结果为否的情况下,调整针对所述目标对象的编码参数,触发所述第二获得模块;
第一判定模块,用于在所述第一判断模块的结果为是的情况下,判定所述目标对象编码成功。
10.根据权利要求9所述的装置,其特征在于,所述第三获得模块,具体用于:
将所述原始数据输入所述目标层级的第一类主观质量模型后获得的模型值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值;
或,将所述目标层级的第一类主观质量模型的第一预设值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值。
11.根据权利要求10所述的装置,其特征在于,还包括:
第二判断模块,用于在所述第一判定模块判定所述目标对象编码成功之后,判断所述目标层级是否存在未编码的对象;
更新模块,用于在所述第二判断模块的结果为是的情况下,将所述目标对象更新为所述目标对象的下一对象,并触发所述第一获得模块;
第四获得模块,用于在所述第二判断模块的结果为否的情况下,获得所述目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,其中,所述第二类主观质量模型为:所述目标层级的上一层的主观质量模型;
第三判断模块,用于根据所述目标层级包含的所有对象的像素差矩阵和所述第二类模型值,判断所述父对象是否编码成功;
第二调整模块,用于在所述第三判断模块的结果为否的情况下,调整针对所述父对象的编码参数,将所述目标对象更新为所述父对象包含的第一个子对象,并触发所述第一获得模块;
第二判定模块,用于在所述第三判断模块的结果为是的情况下,判定所述父对象编码成功。
12.根据权利要求11所述的装置,其特征在于,所述第四获得模块,具体用于:
在所述第二判断模块的结果为否的情况下,将所述目标对象父对象的原始数据输入第二类主观质量模型后获得的模型值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值;
或,在所述第二判断模块的结果为否的情况下,将第二类主观质量模型的第二预设值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值。
13.根据权利要求11所述的装置,其特征在于,所述第一类主观质量模型和所述第二类主观质量模型为以下模型中的至少一种:
恰可失真模型、峰值信噪比模型、协方差经验值模型、最大K×K块平均像素差经验值模型、最大K×K块像素均方差模型,其中,K为正整数。
14.根据权利要求13所述的装置,其特征在于,在所述第一类主观质量模型包括至少两种模型的情况下,
所述第三获得模块,具体用于:
获得所述原始数据分别基于所述目标层级的第一类主观质量模型包括的每一模型的模型值,所获得的模型值组成第一类模型值;
所述第一判断模块,具体用于:
根据所述像素差矩阵和所述第一类模型值包含的每一模型值,分别判断所述目标对象是否编码成功;
统计编码成功的次数;
判断所述次数是否大于预设阈值;
若为是,判定所述目标对象编码成功;
若为否,判定所述目标对象编码失败。
15.根据权利要求9所述的装置,其特征在于,所述目标层级为根据针对编码结果的主观质量评价参数确定的。
16.根据权利要求9所述的装置,其特征在于,还包括:
第四判断模块,用于在所述第一调整模块调整针对所述目标对象的编码参数之前,判断所述目标对象的编码参数是否已遍历完成;
触发模块,用于在所述第四判断模块的结果为否的情况下,触发所述第一调整模块;
确定模块,用于在所述第四判断模块的结果为是的情况下,按照预设规则,从所述目标对象的编码结果中选取一个编码结果作为所述目标对象的最终编码结果,并确定所述目标对象编码成功。

说明书全文

一种基于主观质量模型的视频编码方法及装置

技术领域

[0001] 本发明涉及视频编码技术领域,特别涉及一种基于主观质量模型的视频编码方法及装置。

背景技术

[0002] 随着多媒体应用中视频业务的不断发展以及视频计算需求的不断提高,视频原始信息的数据量之大是现有的传输网络带宽和存储资源无法承受的,因此,以消除视频信号的各种数据冗余为目的的视频编码成为目前国内外研究和应用的热点之一。
[0003] 以编码单元为例,传统视频编码方法中,去除目标编码单元的时域、空域、结构以及信息熵冗余后,一般依据客观评价标准评价目标编码单元的失真情况、依据客观评价模型确定率失真代价等等,从而实现目标编码单元的各种编码参数的选择,以对目标编码单元进行编码,其中,上述客观评价模型可以理解为:基于客观评价标准的率失真模型。
[0004] 由于视频最终是提供给人观看的,而人眼具有其特殊的视觉特性,为使得编码后的视频能够给人们带来较佳的视觉体验,视频感知编码得到了越来越广泛的应用,其中,视频感知编码可以简单的理解为引入人眼视觉模型即主观质量模型的视频编码。
[0005] 现有的视频感知编码方法通常聚焦于使用主观质量模型来替代传统编码过程中的失真评价方法,具体地,对目标编码单元进行各种编码参数选择时,基于主观质量模型进行失真评价,然后将上述失真评价结果带入前述客观评价模型,以进行各种编码参数的选择,最终基于选定的各种编码参数,实现对目标编码单元的编码。
[0006] 应用上述方式可以实现视频感知编码,但由于只在失真计算方面考虑了人眼视觉特性,而忽略了人眼视觉特性对其他因素的影响,进而无法保证能够得到满足人眼视觉特性的编码结果。

发明内容

[0007] 本发明实施例的目的在于提供一种基于主观质量模型的视频编码方法及装置,以保证视频的编码结果能够满足人眼视觉特性。具体技术方案如下:
[0008] 第一方面,本发明实施例提供了一种基于主观质量模型的视频编码方法,包括:
[0009] 获得目标层级中目标对象的原始数据;
[0010] 根据所述原始数据,对所述目标对象进行编码,获得所述目标对象的重建数据;
[0011] 计算所述原始数据和所述重建数据的像素差矩阵;
[0012] 获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值;
[0013] 根据所述像素差矩阵和所述第一类模型值,判断所述目标对象是否编码成功;
[0014] 若为否,调整针对所述目标对象的编码参数,返回执行所述对所述目标对象进行编码,获得所述目标对象的重建数据的步骤;
[0015] 若为是,判定所述目标对象编码成功。
[0016] 可选地,所述获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值,包括:
[0017] 将所述原始数据输入所述目标层级的第一类主观质量模型后获得的模型值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值;
[0018] 或,
[0019] 将所述目标层级的第一类主观质量模型的第一预设值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值。
[0020] 可选地,在所述判定所述目标对象编码成功之后,本发明实施例所提供的基于主观质量模型的视频编码方法,还包括:
[0021] 判断所述目标层级是否存在未编码的对象;
[0022] 若为是,将所述目标对象更新为所述目标对象的下一对象,并返回执行所述获得目标层级中目标对象的原始数据的步骤;
[0023] 若为否,获得所述目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值;根据所述目标层级包含的所有对象的像素差矩阵和所述第二类模型值,判断所述父对象是否编码成功;若否,调整针对所述父对象的编码参数,将所述目标对象更新为所述父对象包含的第一个子对象,并返回执行所述获得目标层级中目标对象的原始数据的步骤,若是,判定所述父对象编码成功,其中,所述第二类主观质量模型为:所述目标层级的上一层的主观质量模型。
[0024] 可选地,所述获得所述目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,包括:
[0025] 将所述目标对象父对象的原始数据输入第二类主观质量模型后获得的模型值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值;
[0026] 或,
[0027] 将第二类主观质量模型的第二预设值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值。
[0028] 可选地,所述第一类主观质量模型和所述第二类主观质量模型为以下模型中的至少一种:
[0029] 恰可失真模型、峰值信噪比模型、协方差经验值模型、最大K×K平均像素差经验值模型、最大K×K块像素均方差模型,其中,K为正整数。
[0030] 可选地,在所述第一类主观质量模型包括至少两种模型的情况下,[0031] 所述获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值,包括:
[0032] 获得所述原始数据分别基于所述目标层级的第一类主观质量模型包括的每一模型的模型值,所获得的模型值组成第一类模型值;
[0033] 所述根据所述像素差矩阵和所述第一类模型值,判断所述目标对象是否编码成功,包括:
[0034] 根据所述像素差矩阵和所述第一类模型值包含的每一模型值,分别判断所述目标对象是否编码成功;
[0035] 统计编码成功的次数;
[0036] 判断所述次数是否大于预设阈值
[0037] 若为是,判定所述目标对象编码成功;
[0038] 若为否,判定所述目标对象编码失败。
[0039] 可选地,所述目标层级为根据针对编码结果的主观质量评价参数确定的。
[0040] 可选地,在所述调整针对所述目标对象的编码参数之前,本发明实施例所提供的基于主观质量模型的视频编码方法,还包括:
[0041] 判断所述目标对象的编码参数是否已遍历完成;
[0042] 如果否,执行所述调整针对所述目标对象的编码参数的步骤;
[0043] 如果是,按照预设规则,从所述目标对象的编码结果中选取一个编码结果作为所述目标对象的最终编码结果,并确定所述目标对象编码成功。
[0044] 第二方面,本发明实施例提供了一种基于主观质量模型的视频编码装置,包括:
[0045] 第一获得模块,用于获得目标层级中目标对象的原始数据;
[0046] 第二获得模块,用于根据所述原始数据,对所述目标对象进行编码,获得所述目标对象的重建数据;
[0047] 计算模块,用于计算所述原始数据和所述重建数据的像素差矩阵;
[0048] 第三获得模块,用于获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值;
[0049] 第一判断模块,用于根据所述像素差矩阵和所述第一类模型值,判断所述目标对象是否编码成功;
[0050] 第一调整模块,用于在所述第一判断模块的结果为否的情况下,调整针对所述目标对象的编码参数,触发所述第二获得模块;
[0051] 第一判定模块,用于在所述第一判断模块的结果为是的情况下,判定所述目标对象编码成功。
[0052] 可选地,所述第三获得模块,具体用于:
[0053] 将所述原始数据输入所述目标层级的第一类主观质量模型后获得的模型值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值;
[0054] 或,
[0055] 将所述目标层级的第一类主观质量模型的第一预设值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值。
[0056] 可选地,本发明实施例所提供的基于主观质量模型的视频编码装置,还包括:
[0057] 第二判断模块,用于在所述第一判定模块判定所述目标对象编码成功之后,判断所述目标层级是否存在未编码的对象;
[0058] 更新模块,用于在所述第二判断模块的结果为是的情况下,将所述目标对象更新为所述目标对象的下一对象,并触发所述第一获得模块;
[0059] 第四获得模块,用于在所述第二判断模块的结果为否的情况下,获得所述目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,其中,所述第二类主观质量模型为:所述目标层级的上一层的主观质量模型;
[0060] 第三判断模块,用于根据所述目标层级包含的所有对象的像素差矩阵和所述第二类模型值,判断所述父对象是否编码成功;
[0061] 第二调整模块,用于在所述第三判断模块的结果为否的情况下,调整针对所述父对象的编码参数,将所述目标对象更新为所述父对象包含的第一个子对象,并触发所述第一获得模块;
[0062] 第二判定模块,用于在所述第三判断模块的结果为是的情况下,判定所述父对象编码成功。
[0063] 可选地,所述第四获得模块,具体用于:
[0064] 在所述第二判断模块的结果为否的情况下,将所述目标对象父对象的原始数据输入第二类主观质量模型后获得的模型值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值;
[0065] 或,
[0066] 在所述第二判断模块的结果为否的情况下,将第二类主观质量模型的第二预设值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值。
[0067] 可选地,所述第一类主观质量模型和所述第二类主观质量模型为以下模型中的至少一种:
[0068] 恰可失真模型、峰值信噪比模型、协方差经验值模型、最大K×K块平均像素差经验值模型、最大K×K块像素均方差模型,其中,K为正整数。
[0069] 可选地,在所述第一类主观质量模型包括至少两种模型的情况下,[0070] 所述第三获得模块,具体用于:
[0071] 获得所述原始数据分别基于所述目标层级的第一类主观质量模型包括的每一模型的模型值,所获得的模型值组成第一类模型值;
[0072] 所述第一判断模块,具体用于:
[0073] 根据所述像素差矩阵和所述第一类模型值包含的每一模型值,分别判断所述目标对象是否编码成功;
[0074] 统计编码成功的次数;
[0075] 判断所述次数是否大于预设阈值;
[0076] 若为是,判定所述目标对象编码成功;
[0077] 若为否,判定所述目标对象编码失败。
[0078] 可选地,所述目标层级为根据针对编码结果的主观质量评价参数确定的。
[0079] 可选地,本发明实施例所提供的基于主观质量模型的视频编码装置,还包括:
[0080] 第四判断模块,用于在所述第一调整模块调整针对所述目标对象的编码参数之前,判断所述目标对象的编码参数是否已遍历完成;
[0081] 触发模块,用于在所述第四判断模块的结果为否的情况下,触发所述第一调整模块;
[0082] 确定模块,用于在所述第四判断模块的结果为是的情况下,按照预设规则,从所述目标对象的编码结果中选取一个编码结果作为所述目标对象的最终编码结果,并确定所述目标对象编码成功。
[0083] 在本发明实施例所提供的基于主观质量模型的视频编码方法中,首先获得目标层级中目标对象的原始数据,而后,根据原始数据,对目标对象进行编码,获得目标对象的重建数据,并计算原始数据和重建数据的像素差矩阵,再获得原始数据基于目标层级的第一类主观质量模型的第一类模型值,最后,根据像素差矩阵和第一类模型值,判断目标对象是否编码成功,若为否,调整针对目标对象的编码参数,返回执行对所述目标对象进行编码,获得目标对象的重建数据的步骤;若为是,判定目标对象编码成功。现有技术中,只在失真计算方面考虑了人眼视觉特性,而忽略了人眼视觉特性对其他因素的影响,无法保证能够得到满足人眼视觉特性的编码结果,与其相比,本发明实施例提供的技术方案中,直接将主观质量模型应用在目标对象的编码结果的评价上,以此来判断目标对象是否编码成功,如果编码失败,则调整针对目标对象的各种编码参数,对目标对象重新进行编码,以保证得到能够满足人眼视觉特性的编码结果。附图说明
[0084] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0085] 图1为本发明实施例所提供的基于主观质量模型的视频编码方法的第一种流程示意图;
[0086] 图2为视频编码层级结构的示例;
[0087] 图3为本发明实施例所提供的基于主观质量模型的视频编码方法的第二种流程示意图;
[0088] 图4为图3所示实施例的一种具体的流程图
[0089] 图5为本发明实施例所提供的基于主观质量模型的视频编码方法的第三种流程示意图;
[0090] 图6为本发明实施例所提供的基于主观质量模型的视频编码装置的第一种结构示意图;
[0091] 图7为本发明实施例所提供的基于主观质量模型的视频编码装置的第二种结构示意图;
[0092] 图8为本发明实施例所提供的基于主观质量模型的视频编码装置的第三种结构示意图。

具体实施方式

[0093] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0094] 为了保证得到能够满足人眼视觉特性的编码结果,本发明实施例提供了一种基于主观质量模型的视频编码方法及装置。
[0095] 下面首先对本发明实施例提供的一种基于主观质量模型的视频编码方法进行介绍。
[0096] 需要说明的是,本发明实施例所提供的一种基于主观质量模型的视频编码方法的执行主体可以为一种基于主观质量模型的视频编码装置,如:视频编码器。其中,该基于主观质量模型的视频编码装置可以为现有视频编码软件中的插件,或者,独立的功能软件,这都是合理的。并且,该基于主观质量模型的视频编码装置可以应用于终端中,也可以应用于服务器中。
[0097] 如图1所示,本发明实施例所提供的一种基于主观质量模型的视频编码方法,包括如下步骤:
[0098] S101,获得目标层级中目标对象的原始数据。
[0099] 其中,目标对象的原始数据可以是从多个对象预先获得并存储的数据中提取的,也可以是实时获得的,在此不作限定。
[0100] 可以理解的是,层级是根据视频编码的层级结构确定的,具体地,包括从低到高的预测单元层/编码单元层、条带层、图像层、图像组层、视频段层、视频层,其中,每个高层级对象都可以划分为至少一个低层级对象,被划分的高层级对象为划分所得的低层级对象的父对象,多个低层级对象为被划分的高层级对象的子对象。需要强调的是,实际应用中,层级划分可以是不连续的,例如,可以划分成只包括图像层和编码单元层的层级结构,这都是允许的,那么,图像层对象便为其划分的多个编码单元层对象的父对象。
[0101] 举例而言,参见图2所示,视频1至视频5均为视频层的对象,可以将视频层对象视频3划分为N个视频段层对象;而针对视频段层对象视频段4,又可以将其划分为M个图像层对象,分别为图像1至图像M;进一步地,还可以将图像层对象图像2划分为7个条带层对象,分别为条带1至条带7;更进一步地,条带层对象条带7还可以划分成多个编码单元及其划分的预测单元,其中,就图像2而言,图像2为条带1至条带7的父对象,条带1至条带7为图像2的子对象。其中,N为大于5的自然数,M为大于6的自然数。
[0102] 需要说明的是,实际应用中,目标层级可以根据针对编码结果的主观质量评价参数确定,可以为预测单元层、编码单元层、条带层、图像层、图像组层、视频段层或视频层。
[0103] 具体地,可以通过定义主观质量评价参数与视频编码的层级间的对应关系来实现。举例而言,主观质量评价参数可以为高质、低质,其中,高质表示对编码结果的主观质量要求比较高,目标层级可以为较低层级,例如编码单元层,将主观质量模型应用在该层级,以使得该层级对象的编码结果可控;低质表示对编码结果的主观质量要求较低,则目标层级可以为较高层级,例如图像层。
[0104] 实际应用中,还可以根据视频信息来确定目标层级,具体的,可以根据视频的分辨率来确定,例如,针对手机拍摄的中小移动视频,人眼观看距离较近,人眼对图像质量的敏感度较高,主观质量模型就要求更细粒化,那么在进行编码时,目标层级便可以选择较低层级,例如编码单元层;而针对远距离观看的大分辨率电影视频,人眼对图像质量的敏感度稍低,主观质量模型可以粗一些,在进行编码时,目标层级便可以选择较高的层级,例如图像层。
[0105] S102,根据原始数据,对目标对象进行编码,获得目标对象的重建数据。
[0106] 其中,执行S101后,可以根据获得的原始数据,应用传统编码方法对目标对象进行编码,再经过解码后重建,获得该目标对象的重建数据。具体如何编码和获得重建数据属于现有技术,此处不再赘述。
[0107] 需要说明的是,现有的视频感知编码方法聚焦于使用主观质量模型来替代传统编码过程中的失真评价方法,对目标编码单元进行各种编码参数选择时,基于主观质量模型进行失真评价,然后将上述失真评价结果带入客观评价模型,其中,上述客观评价模型可以理解为:基于客观评价标准的率失真模型;由于现有视频编码的大部分工具都是用基于原有的客观评价模型训练出来的,应用现有的视频感知编码方法,会导致单次编码效率明显下降,而本发明实施例所提供的技术方案中,当目标层级为编码单元层时,对目标编码单元进行编码时,仍可以应用传统编码方法,避免了现有技术中单次编码效率明显下降的问题,此外,由于编码时仍然采用的传统编码方法进行编码,应用本发明实施例提供的方案仅仅影响编码参数的选择,所以应用本发明实施例提供的技术方案进行编码,最终生成的视频码流符合现有的视频编码标准,可以直接被常用播放器解码播放。
[0108] S103,计算原始数据和重建数据的像素差矩阵。
[0109] 需要说明的是,为了后续处理,可以计算由S101获得原始数据和由S102获得的重建数据的像素差矩阵,其中具体的计算过程属于现有技术,此处不再赘述。
[0110] S104,获得原始数据基于目标层级的第一类主观质量模型的第一类模型值。
[0111] 其中,主观质量模型指人眼观看视频对视频质量的主观评价体系,包括主观质量模型值的计算和评价方法两部分,评价方法即指如何根据主观质量模型模型具体判断编码对象是否编码成功。
[0112] 可以理解的是,主观质量模型按照模型值的获得方式可以分为两种:
[0113] 第一种主观质量模型,模型值由对象的原始数据经过复杂计算得到。如,JND(Just Noticeable difference,恰可失真)模型,根据JND模型的定义,以原始待编码像素为输入,计算出像素域或频域的每个位置的JND模型值;
[0114] 第二种主观质量模型,模型值是经验值或使用简单运算得到的。如PSNR(Peak Signal to Noise Ratio,峰值信噪比)经验值模型、协方差经验值模型、最大K×K块平均像素差经验值模型和最大K×K块像素均方差模型都是此类典型的模型,其中,K为正整数。
[0115] 实际应用中,第一类主观质量模型可以为第一种主观质量模型和第二种主观质量模型中的至少一种,当然,也可以为除第一种主观质量模型和第二种主观质量模型之外的其他模型,在此不作限定。具体的,当目标层级为图像层时,第一类主观质量模型可以为PSNR经验值模型和/或最大K×K块像素均方差模型,其中,为提高压缩效率,还可以更具体地,针对不同类型的图像,即I帧、B帧、P帧的图像分别使用不同的PSNR经验值模型,此外,为更好地控制编码结果的主观质量,具体可以使用最大4×4块像素均方差模型;当目标层级为编码单元层时,第一类主观质量模型可以为最大4×4块像素均方差模型。
[0116] 因此,具体的,获得原始数据基于目标层级的第一类主观质量模型的第一类模型值,可以包括:
[0117] 将原始数据输入目标层级的第一类主观质量模型后获得的模型值,确定为原始数据基于第一类主观质量模型的第一类模型值;
[0118] 或,
[0119] 将目标层级的第一类主观质量模型的第一预设值,确定为原始数据基于第一类主观质量模型的第一类模型值。
[0120] 需要说明的是,可以在对目标层级中第一个对象编码之前就获得目标层级中所有对象的原始数据基于第一类主观质量模型的模型值,然后从预先获得的模型值中提取出目标对象的原始数据基于目标层级的第一类主观质量模型的第一类模型值;还可以在对目标对象编码之前或者编码后实时获得原始数据基于目标层级的第一类主观质量模型的第一类模型值,在此不作限定。
[0121] S105,根据像素差矩阵和第一类模型值,判断目标对象是否编码成功,若为否,执行S106,若为是,执行S107。
[0122] 需要说明的是,在目标对象编码完成后,可以根据S103中计算得到的像素差矩阵和S104中获得的第一类模型值,判断目标对象是否编码成功,若目标对象编码失败,则执行S106,若目标对象编码成功,则执行S107。
[0123] 其中,需要先将像素差矩阵转换成与第一类主观质量模型对应的类型数据,例如,当第一类主观质量模型为PSNR经验值模型时,需将像素差矩阵转换为PSNR,即目标对象的实际PSNR;可以理解的是,像素差矩阵的转换结果可以为以下类型数据的至少一种:PSNR、协方差、最大K×K块平均像素差、最大K×K块像素均方差、行列式绝对值、秩、平均均方差和像素差和。
[0124] 而后,根据像素差矩阵的转换结果和第一类模型值,判断目标对象是否编码成功,需要说明的是,其具体判断方式由第一类主观质量模型决定。举例而言,当第一类主观质量模型为PSNR经验值模型时,可以理解的是,若像素差矩阵转换获得的目标对象的实际PSNR大于PSNR经验值,则可以判定目标对象编码成功;当第一类主观质量模型为JND模型、协方差经验值模型、最大K×K块平均像素差经验值模型或最大K×K块像素均方差模型时,可以理解的是,若像素差矩阵对应的转换结果小于第一类模型值,则可以判定目标对象编码成功。其中,当第一类主观质量模型包括至少两种模型时的判断方式可以就上述示例中的两种方式进行结合,具体将在后续实施例中进行详细介绍。
[0125] S106,调整针对目标对象的编码参数。
[0126] 需要说明的是,当S105执行结果为否,即目标对象编码失败时,可以调整针对目标对象的编码参数,并返回执行S102及其后续步骤,对目标对象重新进行编码,并基于第一类主观质量模型对新的编码结果进行判断,若仍然编码失败,则继续调整目标对象的编码参数,并返回执行S102及其后续步骤,不断循环,以使得目标对象编码成功。
[0127] S107,判定目标对象编码成功。
[0128] 需要说明的是,当S105执行结果为是,则说明目标对象编码成功,实际应用中,可以基于此进行后续处理流程,例如,可以在目标层级未编码完成时,对目标对象的下一个对象进行编码。
[0129] 应用图1所示实施例提供的基于主观质量模型的视频编码方法,首先获得目标层级中目标对象的原始数据,而后,根据原始数据,对目标对象进行编码,获得目标对象的重建数据,并计算原始数据和重建数据的像素差矩阵,再获得原始数据基于目标层级的第一类主观质量模型的第一类模型值,最后,根据像素差矩阵和第一类模型值,判断目标对象是否编码成功,若为否,调整针对目标对象的编码参数,返回执行对所述目标对象进行编码,获得目标对象的重建数据的步骤;若为是,判定目标对象编码成功。现有技术中,只在失真计算方面考虑了人眼视觉特性,而忽略了人眼视觉特性对其他因素的影响,无法保证能够得到满足人眼视觉特性的编码结果,与其相比,本发明实施例提供的技术方案中,直接将主观质量模型应用在目标对象的编码结果的评价上,以此来判断目标对象是否编码成功,即编码结果是否满足人眼视觉特性,如果不满足,即编码失败,则调整针对目标对象的各种编码参数,对目标对象重新进行编码,以保证得到能够满足人眼视觉特性的编码结果。
[0130] 更进一步的,在图1所示实施例的基础上,S107之后,如图3所示,本发明实施例所提供的一种基于主观质量模型的视频编码方法,还包括:
[0131] S108,判断目标层级是否存在未编码的对象,若为是,执行S109,若为否,执行S110。
[0132] 需要说明的是,若目标层级中的目标对象编码成功,可以判断目标层级是否存在未编码的对象,并根据判断结果进行后续处理,具体的,如果目标层级存在未编码的对象,说明目标对象不是目标层级的最后一个对象,则执行S109,如果目标层级不存在未编码的对象,即目标层级中所有的对象已编码完成,则执行S110。其中,具体的判断方法属于现有技术,此处不再赘述。
[0133] S109,将目标对象更新为目标对象的下一对象。
[0134] 需要说明的是,当S108执行结果为是,即目标层级存在未编码对象时,可以将目标对象更新为目标对象的下一对象,循环执行S101及其后续步骤。
[0135] 举例而言,目标对象为图像层中的图像3,图像3编码成功后,图像层中还有未编码的图像4、图像5、图像6和图像7,那么,可以将目标对象更新为根据设定的规则所确定的图像3的下一对象,具体的,图像3的下一对象可以为图像4,也可以为图像6,在此不作限定。
[0136] S110,获得目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值。
[0137] 其中,第二类主观质量模型为目标层级的上一层的主观质量模型;可以理解的是,父对象为目标层级的上一层中的对象,且目标对象为由父对象划分所获得的子对象。举例而言,目标层级为编码单元层,其上一层为图像层,针对图像层中的对象图像9,它被划分成包括目标对象在内的多个编码单元层的对象,那么,目标对象的父对象便是图像9。
[0138] 需要说明的是,第二类主观质量模型可以为以下模型中的至少一种:恰可失真模型、峰值信噪比模型、协方差经验值模型、最大K×K块平均像素差经验值模型、最大K×K块像素均方差模型,其中,K为正整数;当然,第二类主观质量模型也可以为除上述几种模型之外的其他主观质量模型,在此不作限定。
[0139] 具体的,当目标层级的上一层为图像层时,第二类主观质量模型可以为PSNR经验值模型和/或最大K×K块像素均方差模型,其中,为提高压缩效率,还可以更具体地,针对不同帧类型的图像,即I帧、B帧、P帧的图像分别使用不同的PSNR经验值模型,此外,为更好地控制编码结果的主观质量,具体可以使用最大4×4块像素均方差模型。
[0140] 具体的,获得目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,可以包括:
[0141] 将目标对象父对象的原始数据输入第二类主观质量模型后获得的模型值,确定为目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值;
[0142] 或,
[0143] 将第二类主观质量模型的第二预设值,确定为目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值。
[0144] 需要说明的是,可以在对目标层级的上一层中第一个对象编码之前就获得上一层中所有对象的原始数据基于第二类主观质量模型的模型值,然后从预先获得的模型值中提取出父对象的原始数据基于第二类主观质量模型的第二类模型值;还可以在对父对象编码之前或者编码后实时获得其原始数据基于第二类主观质量模型的第二类模型值,在此不作限定。
[0145] S111,根据目标层级包含的所有对象的像素差矩阵和第二类模型值,判断父对象是否编码成功,若是,执行S112,若否,执行S113。
[0146] 需要说明的是,在父对象编码完成后,可以根据目标层级包含的所有对象的像素差矩阵和S110中获得的第二类模型值,判断父对象是否编码成功,若父对象编码成功,执行S112,若父对象编码失败,则执行S113。
[0147] 其中,需要先根据目标层级包含的所有对象的像素差矩阵获得父对象的像素差矩阵,然后将父对象的像素差矩阵转换成与第二类主观质量模型对应的类型数据,这点在图1所示实施例中的S105已进行了详细阐述,此处不再赘述。
[0148] 而后,根据父对象的像素差矩阵的转换结果和第二类模型值,判断父对象是否编码成功,需要说明的是,其判断方式由第二类主观质量模型决定,具体思路与S105中判断目标对象是否编码成功的方式相似,此处不再赘述。
[0149] 在第二类主观质量模型包括至少两种模型的情况下,所述获得目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,可以包括:
[0150] 获得目标对象父对象的原始数据分别基于第二类主观质量模型包括的每一模型的模型值,所获得的模型值组成第一类模型值;
[0151] 相应地,所述根据目标层级包含的所有对象的像素差矩阵和所述第二类模型值,判断父对象是否编码成功,可以包括:
[0152] 根据目标层级包含的所有对象的像素差矩阵和第二类模型值包含的每一模型值,分别判断父对象是否编码成功;
[0153] 统计编码成功的次数;
[0154] 判断次数是否大于预设阈值;
[0155] 若为是,判定父对象编码成功;
[0156] 若为否,判定父对象编码失败。
[0157] 举例而言,预设阈值为2,第二类主观质量模型包括PSNR经验值模型、最大4×4块像素均方差模型、协方差经验值模型,首先获得由PSNR经验值a、最大4×4块像素均方差经验值b、协方差经验值c组成的第二类模型值,然后根据父对象的像素差矩阵转换得到的实际PSNR值a′、最大4×4块像素均方差b′以及协方差c′,分别判断父对象是否编码成功;具体地,若a′大于a,针对PSNR经验值模型,可以判定父对象编码成功,若b′小于b,针对最大4×4块像素均方差模型,可以判定父对象编码成功,若c′小于c,针对协方差经验值模型,可以判定父对象编码成功,即编码成功次数为3,大于预设阈值2,因此,可以判定父对象编码成功。其中,a,b,c,a′,b′,c′均为正数。
[0158] 同样地,在第一类主观质量模型包括至少两种模型的情况下,所述获得原始数据基于目标层级的第一类主观质量模型的第一类模型值,可以包括:
[0159] 获得原始数据分别基于所述目标层级的第一类主观质量模型包括的每一模型的模型值,所获得的模型值组成第一类模型值;
[0160] 相应地,所述根据像素差矩阵和第一类模型值,判断目标对象是否编码成功,可以包括:
[0161] 根据像素差矩阵和第一类模型值包含的每一模型值,分别判断目标对象是否编码成功;
[0162] 统计编码成功的次数;
[0163] 判断所述次数是否大于预设阈值;
[0164] 若为是,判定所述目标对象编码成功;
[0165] 若为否,判定所述目标对象编码失败。
[0166] S112,判定父对象编码成功。
[0167] 需要说明的是,若S111执行结果为是,则可以判定父对象编码成功,继续进行后续的处理,如对父对象的下一个对象进行编码。
[0168] S113,调整针对父对象的编码参数,将目标对象更新为父对象包含的第一个子对象,返回执行S101。
[0169] 可以理解的是,若S111执行结果为否,即目标对象父对象编码失败,那么可以调整针对父对象的各种编码参数,并将目标对象更新父对象包含的第一个子对象,返回执行S101,实现对父对象的重新编码。
[0170] 举例而言,父对象为图像9,划分为6个条带层子对象,分别为条带1至条带6,如果图像9编码失败,那么可以调整针对图像9的编码参数,如量化参数,再将目标对象更新为条带1至条带6中确定的第一个子对象,对其进行重新编码,从而实现对父对象的重新编码。
[0171] 应用图3所示实施例,更进一步地,在目标层级中的目标对象编码成功的情况下,判断目标层级是否存在未编码的对象,若为是,将目标对象更新为目标对象的下一对象;若为否,获得目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,并根据目标层级包含的所有对象的像素差矩阵和第二类模型值,判断父对象是否编码成功,若是,判定父对象编码成功,若否,即父对象编码失败,则调整父对象的编码参数,将目标对象更新为父对象包含的第一个子对象,返回执行获得目标层级中目标对象的原始数据的步骤,实现对父对象的重新编码。可以看出,应用本发明实施例所提供的技术方案,可以针对多个层级中的对象应用基于主观质量模型的视频编码方法,在多个层级上获得能够满足人眼视觉特性的编码结果,从而使得视频的最终编码结果更加满足人眼视觉特性。
[0172] 可以理解的是,如果对编码结果的主观质量模型要求比较严格,那么可以在多个层级应用基于主观质量模型的视频编码方法,以防止得到的编码结果仅在底层满足人眼视觉特性,而在高层级却不满足。
[0173] 针对图3所示实施例,下面将以一具体实施例进行说明,设定在编码单元层和图像层应用基于主观质量模型的视频编码方法,其中,目标层级为编码单元层,其上一层为图像层,参见图4,包括:
[0174] S401,获得编码单元层中目标对象的原始数据。
[0175] S402,根据原始数据,对目标对象进行编码,获得目标对象的重建数据。
[0176] S403,计算原始数据和重建数据的像素差矩阵。
[0177] S404,获得原始数据基于编码单元层的最大4×4块像素均方差模型的第一类模型值7.5。
[0178] 需要说明的是,本具体实施例中,最大4×4块像素均方差模型的模型值直接为经验值7.5,可以直接获得。
[0179] S405,根据像素差矩阵和第一类模型值,判断目标对象是否编码成功,如果是,执行S407,如果否,执行S406。
[0180] 需要说明的是,本具体实施例中,对于目标对象,将像素差矩阵转换为最大4×4块像素均方差,若转换的结果大于7.5,则执行S407,判定目标对象编码成功,否则,判定目标对象编码失败,执行S406。
[0181] S406,调整针对目标对象的编码参数,返回执行S402。
[0182] 其中,若像素差矩阵转换的最大4×4块像素均方差小于7.5,即目标对象编码失败,则调整针对目标对象的编码参数,返回执行对目标对象进行编码,获得目标对象的重建数据的步骤。
[0183] S407,判定目标对象编码成功。
[0184] S408,判断编码单元层是否存在未编码的对象,如果是,执行S410,如果否,执行S409。
[0185] S409,将目标对象更新为目标对象的下一对象,返回执行S401。
[0186] S410,获得目标对象父对象的原始数据分别基于PSNR经验值模型、最大4×4块像素均方差模型的模型值组成的第二类模型值,其中,设定I、B、P帧图像的PSNR经验值模型的模型值分别为42、40、40,最大4×4块像素均方差模型的模型值为7.5。
[0187] S411,根据编码单元层包含的所有对象的像素差矩阵和第二类模型值,判断父对象是否编码成功。
[0188] 需要说明的是,首先根据编码单元层包含的所有对象的像素差矩阵获得父对象的最大4×4块像素均方差及实际PSNR,并判断最大4×4块像素均方差是否小于7.5,实际PSNR是否大于父对象的帧类型对应的PSNR经验值模型的模型值,若均为是,执行S412,判定父对象编码成功,否则,判定父对象编码失败,执行S413。
[0189] S412,判定父对象编码成功。
[0190] S413,调整针对父对象的编码参数,将目标对象更新为父对象包含的第一个子对象。
[0191] 其中,若父对象编码失败,则调整针对父对象的编码参数,并将目标对象更新为父对象包含的第一个子对象,实现对父对象的重新编码。
[0192] 其中,针对编码单元层级的每一对象,须根据像素差矩阵,获得其所有4×4块的均方差的最大值,并判断是否大于7.5,如果否,就调整针对该编码单元层对象的编码参数,重新对该对象进行编码;如果是,则判定对象编码成功,在编码单元层还存在未编码对象的情况下,继续对下一编码单元层对象进行编码,如果编码单元层所有对象都已编码成功,那么就可以返回图像层,对图像层对象进行编码;针对图像层的每一个对象,须根据像素差矩阵,获得其所有4×4块的均方差的最大值,以及编码后重建数据对应的实际PSRN,并判断所获得的最大值是否大于7.5,实际PSNR是否小于对应的PSNR经验值,若均为是,判定编码成功,然后在图像层还存在未编码对象的情况下,继续对下一图像层对象进行编码,否则就调整针对该图像层对象的编码参数,然后重新进行编码。可以看出,采用图4所示具体实施例中的技术方案,对编码单元层和图像层的对象应用基于主观质量模型的视频编码方法,可以保证编码单元层和图像层的对象的编码结果满足人眼视觉特性。
[0193] 更进一步的,在图1所示实施例的基础上,S106之前,如图5所示,本发明实施例所提供的一种基于主观质量模型的视频编码方法,还包括:
[0194] S114,判断目标对象的编码参数是否已遍历完成,如果是,执行S115,如果否,执行S106。
[0195] 实际应用中,为避免针对某一编码参数的取值重复编码,浪费时间,可以在调整针对目标对象的编码参数之前,判断目标对象的编码参数是否已遍历完成,如果否,那么可以执行S106,调整针对目标对象的编码参数,对目标对象重新进行编码,如果是,即目标对象的编码参数已遍历完成,则可以执行S115。
[0196] S115,按照预设规则,从目标对象的编码结果中选取一个编码结果作为目标对象的最终编码结果,并确定目标对象编码成功。
[0197] 可以理解的是,如果S114的执行结果为是,即目标对象的编码参数已遍历完成,那么,便可以按照预设规则,从目标对象的编码结果中选取一个编码结果作为目标对象的最终编码结果,并确定目标对象编码成功,以进行后续步骤,如对目标对象的下一对象进行编码。其中,所述按照预设规则,从目标对象的编码结果中选取一个编码结果作为目标对象的最终编码结果,可以是按照目标对象的实际PSNR大小,从目标对象的编码结果中选取一个最大PSNR对应的编码结果作为目标对象的最终编码结果,具体不作限定。
[0198] 应用图5所示实施例,在图1所示实施例基础上,更进一步地,在调整针对目标对象的编码参数之前,判断目标对象的编码参数是否已遍历完成,如果是,按照预设规则,从目标对象的编码结果中选取一个编码结果作为目标对象的最终编码结果,并确定目标对象编码成功;如果否,执行调整针对目标对象的编码参数的步骤。可以看出,应用图5所示实施例的技术方案,可以避免重复编码,浪费编码时间,并且可以从目标对象的编码结果中可以按照预设规则,选择一个合适的编码结果作为目标对象的最终编码结果,在一定程度上也较佳地满足了人眼视觉特性。
[0199] 需要说明的是,实际应用中,如果对编码结果的主观质量要求不是很严格,还可以在多个层级上应用基于主观质量模型的视频编码方法,但对于某些层级,比如低层级对象的编码结果,可以不要求都满足人眼视觉特性,例如针对编码单元层对象A,设定参数调整次数阈值为4,即如果针对A的编码参数调整4次后,还是没有得到满足人眼视觉特性的编码结果,那么考虑到节省编码时间,可以直接从其所有的编码结果中选取一个作为最终的编码结果,并认定对象A编码成功。具体地,可以在图像层和编码单元层应用基于主观质量模型的视频编码方法,且如果图像层对象的编码结果都满足人眼视觉特性,那么,即使编码单元层的对象在对编码单元调整有限次数后仍然无法都获得满足人眼视觉特性的编码结果,也可以最终判定编码成功;当然在对编码结果的主观质量要求比较严格时,可以只有在图像层和编码单元层的对象的编码结果都满足人眼视觉特性时,才最终判定编码成功。
[0200] 相应于上述方法实施例,本发明实施例提供了一种基于主观质量模型的视频编码装置,如图6所示,所述装置可以包括:
[0201] 第一获得模块601,用于获得目标层级中目标对象的原始数据;
[0202] 第二获得模块602,用于根据所述原始数据,对所述目标对象进行编码,获得所述目标对象的重建数据;
[0203] 计算模块603,用于计算所述原始数据和所述重建数据的像素差矩阵;
[0204] 第三获得模块604,用于获得所述原始数据基于所述目标层级的第一类主观质量模型的第一类模型值;
[0205] 第一判断模块605,用于根据所述像素差矩阵和所述第一类模型值,判断所述目标对象是否编码成功;
[0206] 第一调整模块606,用于在所述第一判断模块605的结果为否的情况下,调整针对所述目标对象的编码参数,触发所述第二获得模块602;
[0207] 第一判定模块607,用于在所述第一判断模块605的结果为是的情况下,判定所述目标对象编码成功。
[0208] 应用图6所示实施例提供的技术方案,首先获得目标层级中目标对象的原始数据,而后,根据原始数据,对目标对象进行编码,获得目标对象的重建数据,并计算原始数据和重建数据的像素差矩阵,再获得原始数据基于目标层级的第一类主观质量模型的第一类模型值,最后,根据像素差矩阵和第一类模型值,判断目标对象是否编码成功,若为否,调整针对目标对象的编码参数,返回执行对所述目标对象进行编码,获得目标对象的重建数据的步骤;若为是,判定目标对象编码成功。现有技术中,只在失真计算方面考虑了人眼视觉特性,而忽略了人眼视觉特性对其他因素的影响,无法保证能够得到满足人眼视觉特性的编码结果,与其相比,本发明实施例提供的技术方案中,直接将主观质量模型应用在目标对象的编码结果的评价上,以此来判断目标对象是否编码成功,即编码结果是否满足人眼视觉特性,如果不满足,即编码失败,则调整针对目标对象的各种编码参数,对目标对象重新进行编码,以保证得到能够满足人眼视觉特性的编码结果。
[0209] 具体的,所述第三获得模块604,具体用于:
[0210] 将所述原始数据输入所述目标层级的第一类主观质量模型后获得的模型值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值;
[0211] 或,将所述目标层级的第一类主观质量模型的第一预设值,确定为所述原始数据基于所述第一类主观质量模型的第一类模型值。
[0212] 具体的,所述目标层级为根据针对编码结果的主观质量评价参数确定的。
[0213] 更进一步的,在包含第一获得模块601,第二获得模块602,计算模块603,第三获得模块604,第一判断模块605,第一调整模块606,第一判定模块607的基础上,如图7所示,本发明实施例所提供的一种长期参考图像选择装置还可以包括:
[0214] 第二判断模块608,用于在所述第一判定模块607判定所述目标对象编码成功之后,判断所述目标层级是否存在未编码的对象;
[0215] 更新模块609,用于在所述第二判断模块608的结果为是的情况下,将所述目标对象更新为所述目标对象的下一对象,并触发所述第一获得模块601;
[0216] 第四获得模块610,用于在所述第二判断模块608的结果为否的情况下,获得所述目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,其中,所述第二类主观质量模型为:所述目标层级的上一层的主观质量模型;
[0217] 第三判断模块611,用于根据所述目标层级包含的所有对象的像素差矩阵和所述第二类模型值,判断所述父对象是否编码成功;
[0218] 第二调整模块612,用于在所述第三判断模块611的结果为否的情况下,调整针对所述父对象的编码参数,将所述目标对象更新为所述父对象包含的第一个子对象,并触发所述第一获得模块601;
[0219] 第二判定模块613,用于在所述第三判断模块611的结果为是的情况下,判定所述父对象编码成功。
[0220] 应用图7所示实施例,更进一步地,在目标层级中的目标对象编码成功的情况下,判断目标层级是否存在未编码的对象,若为是,将目标对象更新为目标对象的下一对象;若为否,获得目标对象父对象的原始数据基于第二类主观质量模型的第二类模型值,并根据目标层级包含的所有对象的像素差矩阵和第二类模型值,判断父对象是否编码成功,若是,判定父对象编码成功,若否,即父对象编码失败,则调整父对象的编码参数,将目标对象更新为父对象包含的第一个子对象,返回执行获得目标层级中目标对象的原始数据的步骤,实现对父对象的重新编码。可以看出,应用本发明实施例所提供的技术方案,可以针对多个层级中的对象应用基于主观质量模型的视频编码方法,在多个层级上获得能够满足人眼视觉特性的编码结果,从而使得视频的最终编码结果更加满足人眼视觉特性。
[0221] 具体的,所述第四获得模块610,具体用于:
[0222] 在所述第二判断模块608的结果为否的情况下,将所述目标对象父对象的原始数据输入第二类主观质量模型后获得的模型值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值;
[0223] 或,在所述第二判断模块608的结果为否的情况下,将第二类主观质量模型的第二预设值,确定为所述目标对象父对象的原始数据基于所述第二类主观质量模型的第二类模型值。
[0224] 具体的,所述第一类主观质量模型和所述第二类主观质量模型为以下模型中的至少一种:
[0225] 恰可失真模型、峰值信噪比模型、协方差经验值模型、平均像素差经验值模型、最大K×K块像素均方差模型,其中,N为正整数。
[0226] 具体的,在所述第一类主观质量模型包括至少两种模型的情况下,[0227] 所述第三获得模块604,具体用于:
[0228] 获得所述原始数据分别基于所述目标层级的第一类主观质量模型包括的每一模型的模型值,所获得的模型值组成第一类模型值;
[0229] 所述第一判断模块605,具体用于:
[0230] 根据所述像素差矩阵和所述第一类模型值包含的每一模型值,分别判断所述目标对象是否编码成功;
[0231] 统计编码成功的次数;
[0232] 判断所述次数是否大于预设阈值;
[0233] 若为是,判定所述目标对象编码成功;
[0234] 若为否,判定所述目标对象编码失败。
[0235] 更进一步的,在包含第一获得模块601,第二获得模块602,计算模块603,第三获得模块604,第一判断模块605,第一调整模块606,第一判定模块607的基础上,如图8所示,本发明实施例所提供的一种长期参考图像选择装置还可以包括:
[0236] 第四判断模块614,用于在所述第一调整模块调整针对所述目标对象的编码参数之前,判断所述目标对象的编码参数是否已遍历完成;
[0237] 触发模块615,用于在所述第四判断模块614的结果为否的情况下,触发所述第一调整模块;
[0238] 确定模块616,用于在所述第四判断模块614的结果为是的情况下,按照预设规则,从所述目标对象的编码结果中选取一个编码结果作为所述目标对象的最终编码结果,并确定所述目标对象编码成功。
[0239] 应用图8所示实施例,在图6所示实施例基础上,更进一步地,在调整针对目标对象的编码参数之前,判断目标对象的编码参数是否已遍历完成,如果是,按照预设规则,从目标对象的编码结果中选取一个编码结果作为目标对象的最终编码结果,并确定目标对象编码成功;如果否,执行调整针对目标对象的编码参数的步骤。可以看出,应用图8所示实施例的技术方案,可以避免重复编码,浪费编码时间,并且可以从目标对象的编码结果中可以按照预设规则,选择一个合适的编码结果作为目标对象的最终编码结果,在一定程度上也较佳地满足了人眼视觉特性。
[0240] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0241] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0242] 本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
[0243] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈