本技术涉及图像编解码领域,特别涉及一种图片解码方法及相关产品。
背景技术:
1、随着图像编解码技术广泛应用在各种信息系统中,深度学习技术在图像编解码领域中亦取得了巨大的进展。随着业务场景的不断变化,对图像编解码能力的需求亦在不断变化。利用深度学习技术进行编码器和解码器的训练,实现编解码器的优化迭代、扩展图像编解码能力成为了一种技术趋势。但传统的优化迭代编解码器的技术中,存在多个不同的解码器较难对同一个编码器编码得到的码流文件解码的不足。换言之,在编解码模型的优化迭代过程中,多个不同的解码模型较难对同一个编码模型所生成的码流文件解码。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种在编解码模型的优化迭代过程中,多个不同的解码模型能够对同一个编码模型所生成的码流文件解码的图片解码方法及相关产品。其中,相关产品包括视频帧显示方法、解码模型训练方法、图片解码装置、视频帧显示装置、解码模型训练装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本技术提供了一种图片解码方法,所述方法包括:
3、获取目标码流文件,所述目标码流文件是利用第一编码模型对待压缩图片进行编码得到的,所述第一编码模型和第一解码模型是通过以下方式训练得到的:将基础编码模型对第一训练图片进行编码后所输出的第一码流文件作为第一基础解码模型的输入,利用所述第一基础解码模型对所述第一码流文件进行解码以得到第一重构图片,基于所述第一重构图片和所述第一训练图片之间的差异,对所述基础编码模型和所述第一基础解码模型进行调参以得到第一编码模型和符合第一目标的所述第一解码模型;
4、利用第二解码模型对所述目标码流文件进行解码,得到目标图片,所述第二解码模型是通过以下方式训练得到的:将所述第一编码模型对第二训练图片进行编码后所输出的第二码流文件作为第二基础解码模型的输入,利用所述第二基础解码模型对所述第二码流文件进行解码以得到第二重构图片,基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参以得到符合第二目标的所述第二解码模型;
5、其中,训练所述第一基础解码模型的所述第一目标与训练所述第二基础解码模型的所述第二目标不同。
6、采用第一方面提供的图片解码方法,第一编码模型和第一解码模型是通过联合地训练所得到。具体地,将基础编码模型对第一训练图片进行编码后所输出的第一码流文件作为第一基础解码模型的输入,利用第一基础解码模型对第一码流文件进行解码以得到第一重构图片,基于第一重构图片和第一训练图片之间的差异,对基础编码模型和第一基础解码模型进行调参以得到第一编码模型和符合第一目标的第一解码模型。第二解码模型是在第一编码模型维持不变的情况下,基于第一编码模型训练得到的。具体地,将第一编码模型对第二训练图片进行编码后所输出的第二码流文件作为第二基础解码模型的输入,利用第二基础解码模型对第二码流文件进行解码以得到第二重构图片,基于第二重构图片和第二训练图片之间的差异,对第二基础解码模型进行调参以得到符合第二目标的第二解码模型。
7、由于训练第一基础解码模型的第一目标与训练第二基础解码模型的第二目标不同,即第一解码模型所符合的第一目标与第二解码模型所符合的第二目标不同,表明第二解码模型与第一解码模型之间实现了解码模型的优化迭代。亦可理解为,第一编码模型和第一解码模型,与第一编码模型和第二解码模型之间,实现了编解码模型的优化迭代。比如,联合训练得到第一解码模型与第一编码模型时,第一解码模型符合的第一目标为将第一编码模型对初始图片编码后输出的码流文件解码成与初始图片相似的解码图片;基于第一编码模型训练得到第二解码模型时,第二解码模型符合的第二目标为将第一编码模型对初始图片编码后输出的码流文件解码成与初始图片相似且锐化度达到期望值的解码图片。
8、除此以外,由于第一解码模型是与第一编码模型联合训练所得到的,因此在模型推理应用过程中,第一解码模型能对第一编码模型所输出的码流文件进行解码。第二解码模型是通过将第一编码模型对第二训练图片进行编码后所输出的第二码流文件作为第二基础解码模型的输入,进而对第二基础解码模型进行训练所得到的,因此在模型推理应用过程中,第二解码模型也能对第一编码模型所输出的码流文件进行解码。
9、经上述训练过程得到的第一编码模型、第一解码模型和第二解码模型,不仅体现了编解码模型的优化迭代,且体现了编解码模型的优化迭代过程中,多个不同的解码模型能够对同一个编码模型所生成的码流文件解码。基于此,获取利用第一编码模型对待压缩图片进行编码得到的目标码流文件,利用第二解码模型对目标码流文件进行解码,得到目标图片,则实现了在编解码模型的优化迭代过程中,多个不同的解码模型能够对同一个编码模型所生成的码流文件解码。
10、在其中一个实施例中,训练所述第二基础解码模型的所述第二目标与所述第二解码模型所输出的解码图片的显示效果相匹配;在所述利用第二解码模型对所述目标码流文件进行解码,得到目标图片之前,所述方法还包括:
11、获取对所述目标图片的显示效果的显示需求,所述目标图片是指对所述目标码流文件进行编码所得到的图片;
12、在所述第二解码模型所输出的解码图片的显示效果符合所述显示需求的情况下,确定将所述第二解码模型作为对所述目标码流文件进行解码的模型。
13、在其中一个实施例中,符合所述第二目标的所述第二解码模型是基于损失对所述第二基础解码模型进行调参得到的,所述损失是利用目标损失函数,基于所述第二重构图片和所述第二训练图片之间的差异计算得到的;
14、其中,包括所述第二训练图片的目标训练集和所述目标损失函数中的至少一个,与所述第二目标相匹配。
15、在其中一个实施例中,
16、在所述第二目标为所述第二解码模型所生成的解码图片的第一目标属性达到图片期望要求,所述第一目标属性是指影响图片视觉效果的任意图片属性的情况下,所述目标损失函数中包含判断所述第二基础解码模型所生成的所述第二重构图片的所述第一目标属性与所述图片期望要求之间的差异的信息。
17、在其中一个实施例中,
18、在所述第二目标为所述第二解码模型所生成的解码图片中的目标对象所处区域的第二目标属性达到局部期望要求,所述第二目标属性是指影响图片视觉效果的任意图片属性的情况下,所述目标损失函数中包含对所述第二基础解码模型所生成的所述第二重构图片中的所述目标对象进行检测的信息,和判断所述第二重构图片中的所述目标对象所处区域的所述第二目标属性与所述局部期望要求之间的差异的信息,所述目标训练集中的具有目标内容的第二训练图片的数量大于或等于第一数值,所述具有目标内容是指具有预设个数或预设个数以上的所述目标对象。
19、在其中一个实施例中,
20、在所述第二目标为当初始图片的第三目标属性低于预设要求时,所述第二解码模型对所述初始图片所对应的码流文件进行解码,所得到的解码图片与所述初始图片的相似度达到相似度期望值,所述第三目标属性是指影响图片视觉效果的任意图片属性的情况下,所述目标训练集中的所述第三目标属性低于所述预设要求的第二训练图片的数量大于或等于第二数值。
21、第二方面,本技术还提供了一种视频帧显示方法,所述方法包括:
22、获取视频帧被编码后所形成的目标码流文件,所述目标码流文件是利用第一编码模型对所述视频帧进行编码得到的,所述第一编码模型和第一解码模型是通过以下方式训练得到的:将基础编码模型对第一训练图片进行编码后所输出的第一码流文件作为第一基础解码模型的输入,利用所述第一基础解码模型对所述第一码流文件进行解码以得到第一重构图片,基于所述第一重构图片和所述第一训练图片之间的差异,对所述基础编码模型和所述第一基础解码模型进行调参以得到第一编码模型和符合第一目标的所述第一解码模型;
23、利用第二解码模型对所述目标码流文件进行解码,得到目标图片,所述第二解码模型是通过以下方式训练得到的:将所述第一编码模型对第二训练图片进行编码后所输出的第二码流文件作为第二基础解码模型的输入,利用所述第二基础解码模型对所述第二码流文件进行解码以得到第二重构图片,基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参以得到符合第二目标的所述第二解码模型;其中,训练所述第一基础解码模型的所述第一目标与训练所述第二基础解码模型的所述第二目标不同;
24、显示所述目标图片。
25、第三方面,本技术还提供了一种解码模型训练方法,所述方法包括:
26、获取目标训练集;
27、利用第一编码模型对所述目标训练集中的第二训练图片进行编码,得到第二码流文件,所述第一编码模型和第一解码模型是通过以下方式训练所得到:将基础编码模型对第一训练图片进行编码后所输出的第一码流文件作为第一基础解码模型的输入,利用所述第一基础解码模型对所述第一码流文件进行解码以得到第一重构图片,基于所述第一重构图片和所述第一训练图片之间的差异,对所述基础编码模型和所述第一基础解码模型进行调参以得到所述第一编码模型和符合第一目标的所述第一解码模型;
28、将所述第二码流文件输入至第二基础解码模型中,得到第二重构图片;
29、基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参,得到符合第二目标的第二解码模型;
30、其中,训练所述第一基础解码模型的所述第一目标与训练所述第二基础解码模型的所述第二目标不同。
31、在其中一个实施例中,在所述第二目标为所述第二解码模型所生成的解码图片的第一目标属性达到图片期望要求,所述第一目标属性是指影响图片视觉效果的任意图片属性的情况下,所述基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参,得到符合第二目标的第二解码模型,包括:
32、基于所述第二重构图片和所述第二训练图片之间的差异,和所述第二重构图片的所述第一目标属性与所述图片期望要求之间的差异,计算损失;
33、基于所述损失对所述第二基础解码模型进行调参,得到符合所述第二目标的所述第二解码模型。
34、在其中一个实施例中,在所述第二目标为所述第二解码模型所生成的解码图片中的目标对象所处区域的第二目标属性达到局部期望要求,所述第二目标属性均是指影响图片视觉效果的任意图片属性的情况下,所述基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参,得到符合第二目标的第二解码模型,包括:
35、基于所述第二重构图片和所述第二训练图片之间的差异,和所述第二重构图片中的所述目标对象所处区域的所述第二目标属性与所述局部期望要求之间的差异,计算损失;
36、基于所述损失对所述第二基础解码模型进行调参,得到符合所述第二目标的所述第二解码模型。
37、第四方面,本技术还提供了一种图片解码装置,所述装置包括:
38、码流获取模块,用于获取目标码流文件,所述目标码流文件是利用第一编码模型对待压缩图片进行编码得到的,所述第一编码模型和第一解码模型是通过以下方式训练得到的:将基础编码模型对第一训练图片进行编码后所输出的第一码流文件作为第一基础解码模型的输入,利用所述第一基础解码模型对所述第一码流文件进行解码以得到第一重构图片,基于所述第一重构图片和所述第一训练图片之间的差异,对所述基础编码模型和所述第一基础解码模型进行调参以得到第一编码模型和符合第一目标的所述第一解码模型;
39、码流解码模块,用于利用第二解码模型对所述目标码流文件进行解码,得到目标图片,所述第二解码模型是通过以下方式训练得到的:将所述第一编码模型对第二训练图片进行编码后所输出的第二码流文件作为第二基础解码模型的输入,利用所述第二基础解码模型对所述第二码流文件进行解码以得到第二重构图片,基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参以得到符合第二目标的所述第二解码模型;
40、其中,训练所述第一基础解码模型的所述第一目标与训练所述第二基础解码模型的所述第二目标不同。
41、第五方面,本技术还提供了一种视频帧显示装置,所述装置包括:
42、目标码流获取模块,用于获取视频帧被编码后所形成的目标码流文件,所述目标码流文件是利用第一编码模型对所述视频帧进行编码得到的,所述第一编码模型和第一解码模型是通过以下方式训练得到的:将基础编码模型对第一训练图片进行编码后所输出的第一码流文件作为第一基础解码模型的输入,利用所述第一基础解码模型对所述第一码流文件进行解码以得到第一重构图片,基于所述第一重构图片和所述第一训练图片之间的差异,对所述基础编码模型和所述第一基础解码模型进行调参以得到第一编码模型和符合第一目标的所述第一解码模型;
43、目标图片生成模块,用于利用第二解码模型对所述目标码流文件进行解码,得到目标图片,所述第二解码模型是通过以下方式训练得到的:将所述第一编码模型对第二训练图片进行编码后所输出的第二码流文件作为第二基础解码模型的输入,利用所述第二基础解码模型对所述第二码流文件进行解码以得到第二重构图片,基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参以得到符合第二目标的所述第二解码模型;其中,训练所述第一基础解码模型的所述第一目标与训练所述第二基础解码模型的所述第二目标不同;
44、目标图片显示模块,用于显示所述目标图片。
45、第六方面,本技术还提供了一种解码模型训练装置,所述装置包括:
46、训练集获取模块,用于获取目标训练集;
47、码流生成模块,用于利用第一编码模型对所述目标训练集中的第二训练图片进行编码,得到第二码流文件,所述第一编码模型和第一解码模型是通过以下方式训练所得到:将基础编码模型对第一训练图片进行编码后所输出的第一码流文件作为第一基础解码模型的输入,利用所述第一基础解码模型对所述第一码流文件进行解码以得到第一重构图片,基于所述第一重构图片和所述第一训练图片之间的差异,对所述基础编码模型和所述第一基础解码模型进行调参以得到所述第一编码模型和符合第一目标的所述第一解码模型;
48、图片重构模块,用于将所述第二码流文件输入至第二基础解码模型中,得到第二重构图片;
49、模型生成模块,用于基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参,得到符合第二目标的第二解码模型;
50、其中,训练所述第一基础解码模型的所述第一目标与训练所述第二基础解码模型的所述第二目标不同。
51、第七方面,本技术还提供了一种计算机设备,包括:存储器、处理器,其中,所述存储器存储有程序指令;所述程序指令被所述处理器执行时,使所述处理器执行如第一方面或第一方面的任一实施例所示的方法、或执行如第二方面或第二方面的任一实施例所示的方法、或执行如第三方面或第三方面的任一实施例所示的方法。
52、第八方面,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序;当所述计算机程序在一个或多个处理器上运行时,执行如第一方面或第一方面的任一实施例所示的方法、或执行如第二方面或第二方面的任一实施例所示的方法、或执行如第三方面或第三方面的任一实施例所示的方法。
53、第九方面,本技术还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或指令;在所述计算机程序或指令在计算机上运行的情况下,使得所述计算机执行如第一方面或第一方面的任一实施例所示的方法、或执行如第二方面或第二方面的任一实施例所示的方法、或执行如第三方面或第三方面的任一实施例所示的方法。
54、可以理解地,上述第二方面提供的视频帧显示方法、第三方面提供的解码模型训练方法、第四方面提供的图片解码装置、第五方面提供的视频帧显示装置、第六方面提供的解码模型训练装置、第七方面提供的计算机设备、第八方面提供的计算机可读存储介质和第九方面提供的计算机程序产品,可用于执行本技术第一方面或第一方面的任一实施例所示的图片解码方法,或与本技术第一方面或第一方面的任一实施例所示的图片解码方法相关。因此,其所能达到的有益效果可参考图片解码方法中的有益效果,此处不再赘述。
1.一种图片解码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,训练所述第二基础解码模型的所述第二目标与所述第二解码模型所输出的解码图片的显示效果相匹配;在所述利用第二解码模型对所述目标码流文件进行解码,得到目标图片之前,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,符合所述第二目标的所述第二解码模型是基于损失对所述第二基础解码模型进行调参得到的,所述损失是利用目标损失函数,基于所述第二重构图片和所述第二训练图片之间的差异计算得到的;
4.根据权利要求3所述的方法,其特征在于,
5.根据权利要求3所述的方法,其特征在于,
6.根据权利要求3所述的方法,其特征在于,
7.一种视频帧显示方法,其特征在于,所述方法包括:
8.一种解码模型训练方法,其特征在于,所述方法包括:
9.根据权利要求8所述的方法,其特征在于,在所述第二目标为所述第二解码模型所生成的解码图片的第一目标属性达到图片期望要求,所述第一目标属性是指影响图片视觉效果的任意图片属性的情况下,所述基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参,得到符合第二目标的第二解码模型,包括:
10.根据权利要求8所述的方法,其特征在于,在所述第二目标为所述第二解码模型所生成的解码图片中的目标对象所处区域的第二目标属性达到局部期望要求,所述第二目标属性均是指影响图片视觉效果的任意图片属性的情况下,所述基于所述第二重构图片和所述第二训练图片之间的差异,对所述第二基础解码模型进行调参,得到符合第二目标的第二解码模型,包括:
11.一种图片解码装置,其特征在于,所述装置包括:
12.一种视频帧显示装置,其特征在于,所述装置包括:
13.一种解码模型训练装置,其特征在于,所述装置包括:
14.一种计算机设备,其特征在于,包括:存储器、处理器,其中,所述存储器存储有程序指令;所述程序指令被所述处理器执行时,使所述处理器执行如权利要求1至10中任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序;当所述计算机程序在一个或多个处理器上运行时,执行如权利要求1至10中任一项所述的方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序或指令;在所述计算机程序或指令在计算机上运行的情况下,使得所述计算机执行如权利要求1至10中任一项所述的方法。