CN116957929A - 图像超分模型的训练、图像超分处理方法、装置及设备 - Google Patents
图像超分模型的训练、图像超分处理方法、装置及设备 Download PDFInfo
- Publication number
- CN116957929A CN116957929A CN202211600653.4A CN202211600653A CN116957929A CN 116957929 A CN116957929 A CN 116957929A CN 202211600653 A CN202211600653 A CN 202211600653A CN 116957929 A CN116957929 A CN 116957929A
- Authority
- CN
- China
- Prior art keywords
- image
- model
- superdivision
- feature extraction
- resolution
- 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
- 238000012549 training Methods 0.000 title claims abstract description 243
- 238000000034 method Methods 0.000 title claims abstract description 200
- 238000012545 processing Methods 0.000 claims abstract description 165
- 230000008569 process Effects 0.000 claims abstract description 119
- 238000000605 extraction Methods 0.000 claims description 354
- 238000006243 chemical reaction Methods 0.000 claims description 42
- 238000004422 calculation algorithm Methods 0.000 claims description 31
- 230000009467 reduction Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 21
- 238000011946 reduction process Methods 0.000 claims description 19
- 230000006835 compression Effects 0.000 claims description 18
- 238000007906 compression Methods 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 17
- 238000003860 storage Methods 0.000 claims description 10
- 238000003672 processing method Methods 0.000 abstract description 19
- 230000006870 function Effects 0.000 description 42
- 238000005516 engineering process Methods 0.000 description 34
- 238000000926 separation method Methods 0.000 description 27
- 238000013140 knowledge distillation Methods 0.000 description 26
- 238000003708 edge detection Methods 0.000 description 25
- 230000004913 activation Effects 0.000 description 23
- 238000006731 degradation reaction Methods 0.000 description 22
- 230000009466 transformation Effects 0.000 description 21
- 238000013473 artificial intelligence Methods 0.000 description 20
- 230000000694 effects Effects 0.000 description 19
- 238000004364 calculation method Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 230000001133 acceleration Effects 0.000 description 9
- 230000015556 catabolic process Effects 0.000 description 9
- 238000005520 cutting process Methods 0.000 description 9
- 238000012546 transfer Methods 0.000 description 9
- 238000010801 machine learning Methods 0.000 description 8
- 230000002093 peripheral effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000000593 degrading effect Effects 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000004821 distillation Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000013137 model compression technique Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4046—Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种图像超分模型的训练、图像超分处理方法、装置及设备,属于计算机技术领域。方法包括:获取样本图像;利用学生超分模型对样本图像进行超分处理,得到第一超分图像;利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像;基于第一超分图像和第二超分图像之间的差异,以及第一超分图像和第三超分图像之间的差异,获取第一训练损失;使用第一训练损失对学生超分模型的参数进行更新,得到更新后的学生超分模型;若当前训练过程满足训练终止条件,将更新后的学生超分模型作为目标超分模型。此种方式,能够兼顾图像超分处理的质量和图像超分处理的效率。
Description
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种图像超分模型的训练、图像超分处理方法、装置及设备。
背景技术
随着计算机技术的发展,对图像进行处理的方式越来越多,对图像进行超分(Super-Resolution,SR)处理便是其中一种。图像超分处理是指根据低分辨率的图像重建出相应的高分辨率图像。在相关技术提供的方案中,难以兼顾图像超分处理的质量和图像超分处理的效率。
发明内容
本申请实施例提供了一种图像超分模型的训练、图像超分处理方法、装置及设备,可用于兼顾图像超分处理的质量和图像超分处理的效率。所述技术方案如下:
一方面,本申请实施例提供了一种图像超分模型的训练方法,所述方法包括:
获取样本图像,所述样本图像的分辨率为第一分辨率;
利用学生超分模型对所述样本图像进行超分处理,得到第一超分图像,所述第一超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;
利用第一教师超分模型对所述样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对所述样本图像进行超分处理,得到第三超分图像,所述第二超分图像和所述第三超分图像的分辨率均为所述第二分辨率;所述第一教师超分模型的模型宽度大于所述学生超分模型的模型宽度,所述第二教师超分模型的模型深度大于所述学生超分模型的模型深度,所述模型深度用于指示模型包括的特征提取模块的数量,所述模型宽度用于指示模型包括的特征提取模块所提取的特征的通道数;
基于所述第一超分图像和所述第二超分图像之间的差异,以及所述第一超分图像和所述第三超分图像之间的差异,获取第一训练损失;使用所述第一训练损失对所述学生超分模型的参数进行更新,得到更新后的学生超分模型;若当前训练过程满足训练终止条件,将所述更新后的学生超分模型作为目标超分模型,所述目标超分模型用于对图像进行超分处理。
还提供了一种图像超分处理方法,所述方法包括:
获取第一图像,所述第一图像的分辨率为第一分辨率;
利用目标超分模型对所述第一图像进行超分处理,得到目标超分图像,所述目标超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;
显示所述目标超分图像;
其中,所述目标超分模型利用上述任一所述图像超分模型的训练方法训练得到。
另一方面,提供了一种图像超分模型的训练装置,所述装置包括:
第一获取单元,用于获取样本图像,所述样本图像的分辨率为第一分辨率;
第一处理单元,用于利用学生超分模型对所述样本图像进行超分处理,得到第一超分图像,所述第一超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;
所述第一处理单元,还用于利用第一教师超分模型对所述样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对所述样本图像进行超分处理,得到第三超分图像,所述第二超分图像和所述第三超分图像的分辨率均为所述第二分辨率;所述第一教师超分模型的模型宽度大于所述学生超分模型的模型宽度,所述第二教师超分模型的模型深度大于所述学生超分模型的模型深度,所述模型深度用于指示模型包括的特征提取模块的数量,所述模型宽度用于指示模型包括的特征提取模块所提取的特征的通道数;
所述第一获取单元,还用于基于所述第一超分图像和所述第二超分图像之间的差异,以及所述第一超分图像和所述第三超分图像之间的差异,获取第一训练损失;
更新单元,用于使用所述第一训练损失对所述学生超分模型的参数进行更新,得到更新后的学生超分模型;
所述第一获取单元,还用于若当前训练过程满足训练终止条件,将所述更新后的学生超分模型作为目标超分模型,所述目标超分模型用于对图像进行超分处理。
在一种可能实现方式中,所述学生超分模型包括第一特征转换模块和第一数量个第一特征提取模块,所述第一教师超分模型包括第二特征转换模块和所述第一数量个第二特征提取模块,所述第二教师超分模型包括第三特征转换模块和第二数量个第三特征提取模块;所述第二特征提取模块所提取的特征的通道数大于所述第一特征提取模块所提取的特征的通道数,所述第二数量大于所述第一数量;
所述第一处理单元,用于利用所述第一数量个第一特征提取模块对所述样本图像进行特征提取,得到第一图像特征;利用所述第一特征转换模块对所述第一图像特征进行转换,得到所述第一超分图像;利用所述第一数量个第二特征提取模块对所述样本图像进行特征提取,得到第二图像特征;利用所述第二特征转换模块对所述第二图像特征进行转换,得到所述第二超分图像;利用所述第二数量个第三特征提取模块对所述样本图像进行特征提取,得到第三图像特征;利用所述第三特征转换模块对所述第三图像特征进行转换,得到所述第三超分图像。
在一种可能实现方式中,所述第一处理单元,用于利用所述第一数量个第一特征提取模块中的第一个第一特征提取模块对所述样本图像进行特征提取,得到所述第一个第一特征提取模块输出的图像特征;从第二个第一特征提取模块开始,利用后一个第一特征提取模块对前一个第一特征提取模块输出的图像特征进行特征提取,得到后一个第一特征提取模块输出的图像特征,直至得到最后一个第一特征提取模块输出的图像特征,将最后一个第一特征提取模块输出的图像特征作为所述第一图像特征;
利用所述第一数量个第二特征提取模块中的第一个第二特征提取模块对所述样本图像进行特征提取,得到所述第一个第二特征提取模块输出的图像特征;从第二个第二特征提取模块开始,利用后一个第二特征提取模块对前一个第二特征提取模块输出的图像特征进行特征提取,得到后一个第二特征提取模块输出的图像特征,直至得到最后一个第二特征提取模块输出的图像特征,将最后一个第二特征提取模块输出的图像特征作为所述第二图像特征;
所述第一获取单元,用于基于所述第一数量个第一特征提取模块输出的图像特征和所述第一数量个第二特征提取模块输出的图像特征,获取特征差异损失;基于所述第一超分图像和所述第二超分图像之间的差异,获取第一图像差异损失;基于所述第一超分图像和所述第三超分图像之间的差异,获取第二图像差异损失;基于所述特征差异损失、所述第一图像差异损失和所述第二图像差异损失,获取所述第一训练损失。
在一种可能实现方式中,所述第一数量个第一特征提取模块和所述第一数量个第二特征提取模块一一对应,所述第一获取单元,用于对于所述第一数量个第一特征提取模块中的任一第一特征提取模块,对所述任一第一特征提取模块输出的图像特征进行通道扩充,得到所述任一第一特征提取模块对应的通道扩充后的图像特征,所述通道扩充后的图像特征的通道数与所述任一第一特征提取模块对应的第二特征提取模块输出的图像特征的通道数相同;基于所述任一第一特征提取模块对应的通道扩充后的图像特征和所述任一第一特征提取模块对应的第二特征提取模块输出的图像特征之间的差异,确定所述任一第一特征提取模块对应的特征差异子损失;基于所述第一数量个第一特征提取模块分别对应的特征差异子损失,获取所述特征差异损失。
在一种可能实现方式中,所述第一获取单元,还用于若所述当前训练过程不满足所述训练终止条件,基于所述第二超分图像和所述样本图像对应的标签图像之间的差异,获取第二训练损失;基于所述第三超分图像和所述标签图像之间的差异,获取第三训练损失;所述标签图像的分辨率为所述第二分辨率;
所述更新单元,还用于使用所述第二训练损失更新所述第一教师超分模型的参数,得到更新后的第一教师超分模型;使用所述第三训练损失更新所述第二教师超分模型的参数,得到更新后的第二教师超分模型;
所述第一获取单元,用于利用所述更新后的第一教师超分模型和所述更新后的第二教师超分模型对所述更新后的学生超分模型进行训练,得到所述目标超分模型。
在一种可能实现方式中,所述第一获取单元,用于利用第一判别模型获取所述第二超分图像的第一判别结果,所述第一判别结果用指示所述第二超分图像为真实图像的概率;基于所述第一判别结果,获取第一生成对抗损失;基于所述第二超分图像和所述标签图像之间的差异,获取第三图像差异损失;基于所述第一生成对抗损失和所述第三图像差异损失,获取所述第二训练损失;
利用第二判别模型获取所述第三超分图像的第二判别结果,所述第二判别结果用指示所述第三超分图像为真实图像的概率;基于所述第二判别结果,获取第二生成对抗损失;基于所述第三超分图像和所述标签图像之间的差异,获取第四图像差异损失;基于所述第二生成对抗损失和所述第四图像差异损失,获取所述第三训练损失。
在一种可能实现方式中,所述第一判别模型和所述第二判别模型包括共享的特征提取模块,所述第一判别模型还包括第一判别模块,所述第二判别模型还包括第二判别模块;所述第一获取单元,用于利用所述共享的特征提取模块对所述第二超分图像进行特征提取,得到第一判别特征;利用所述第一判别模块对所述第一判别特征进行判别,得到所述第一判别结果;利用所述共享的特征提取模块对所述第三超分图像进行特征提取,得到第二判别特征;利用所述第二判别模块对所述第二判别特征进行判别,得到所述第二判别结果。
在一种可能实现方式中,所述更新单元,还用于使用所述第一生成对抗损失对所述第一判别模型的参数进行更新,得到更新后的第一判别模型,所述更新后的第一判别模型用于对所述更新后的第一教师超分模型的参数进行更新;使用所述第二生成对抗损失对所述第二判别模型的参数进行更新,得到更新后的第二判别模型,所述更新后的第二判别模型用于对所述更新后的第二教师超分模型的参数进行更新。
在一种可能实现方式中,所述第一获取单元,用于获取原始图像,所述原始图像的分辨率为所述第二分辨率;对所述原始图像连续执行至少一次降分辨率过程,得到所述样本图像;其中,执行任一次降分辨率过程包括对当前图像执行目标降分辨率操作,所述目标降分辨率操作包括模糊处理、尺寸缩放、添加噪声和编码压缩中的至少一种操作,所述目标降分辨率操作中的任一种操作通过所述任一种操作对应的任一种实现算法实现。
还提供了一种图像超分处理装置,所述装置包括:
第二获取单元,用于获取第一图像,所述第一图像的分辨率为第一分辨率;
第二处理单元,用于利用目标超分模型对所述第一图像进行超分处理,得到目标超分图像,所述目标超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;其中,所述目标超分模型利用上述任一所述图像超分模型的训练方法训练得到;
显示单元,用于显示所述目标超分图像。
在一种可能实现方式中,所述第二处理单元,用于对所述目标超分模型中的满足重参数化条件的结构进行重参数化,得到重参数化后的超分模型,所述重参数化后的超分模型的参数数量小于所述目标超分模型的参数数量,且所述重参数化后的超分模型的超分性能等于所述目标超分模型的超分性能;利用所述重参数化后的超分模型对所述第一图像进行超分处理,得到所述目标超分图像。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述计算机设备实现上述任一所述的图像超分模型的训练方法或图像超分处理方法。
另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使计算机实现上述任一所述的图像超分模型的训练方法或图像超分处理方法。
另一方面,还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或所述计算机指令由处理器加载并执行,以使计算机实现上述任一所述的图像超分模型的训练方法或图像超分处理方法。
本申请实施例提供的技术方案至少带来如下有益效果:
本申请实施例提供的技术方案,根据目标超分模型实现对图像的超分处理,其中,目标超分模型是对学生超分模型进行训练得到的,学生超分模型的模型宽度或模型深度小于教师超分模型,由于模型宽度或模型深度越大所需的模型参数越多,所以学生超分模型的模型参数较少,从而减少根据目标超分模型对图像进行超分处理的计算量,保证图像超分处理的效率。
此外,学生超分模型是在模型宽度较大和模型深度较大的两个教师超分模型的共同约束下进行训练的,其中,模型宽度较大的教师超分模型能够将模型深度方向的超分知识迁移到学生超分模型中,模型深度较大的教师超分模型能够将模型深度方向的超分知识迁移到学生超分模型中,从而使学生超分模型较为精准的学习到模型宽度方向的超分知识以及模型深度方向的超分知识,使训练得到的目标超分模型具有与较大的模型宽度和较大的模型深度的超分模型类似的超分性能,由于模型宽度和模型深度的提升均有利于超分性能的提升,所以能够保证训练得到的目标超分模型的超分性能,进而保证利用目标超分模型进行图像超分处理的质量。其中,模型宽度方向的超分知识用于指示模型宽度如何影响超分处理过程,模型深度方向的超分知识用于指示模型深度如何影响超分处理过程。
综上,本申请实施例提供的方案能够兼顾图像超分处理的质量和图像超分处理的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种图像超分模型的训练方法的流程图;
图3是本申请实施例提供的一种学生超分模型的结构的示意图;
图4是本申请实施例提供的一种第一基础模块的结构的示意图;
图5是本申请实施例提供的一种第一特征提取模块的结构及其对应的重参数化后的结构的示意图;
图6是本申请实施例提供的一种第一教师超分模型的结构的示意图;
图7是本申请实施例提供的一种第二教师超分模型的结构的示意图;
图8是本申请实施例提供的一种通道扩充模块的结构的示意图;
图9是本申请实施例提供的一种第一子模块、第二子模块以及共享特征提取模块的第一判别模型和第二判别模型的结构的示意图;
图10是本申请实施例提供的一种训练结构的示意图;
图11是本申请实施例提供的一种图像超分处理方法的流程图;
图12是本申请实施例提供的一种图像超分模型的训练装置的示意图;
图13是本申请实施例提供的一种图像超分处理装置的示意图;
图14是本申请实施例提供的一种服务器的结构的示意图;
图15是本申请实施例提供的一种终端的结构的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
对本申请实施例涉及的一些名词进行介绍。
超分(或者称为超分辨率、超分辨等):通过硬件或软件的方法提高原有图像的分辨率(如,空间分辨率),本申请实施例中指通过深度学习算法来提升单张图像的分辨率。
结构重参数化(或者称为重参数化):在训练时构造一系列网络结构,在推理时将这些网络结构合并为一个网络结构并将其参数进行合并的技术。在现实场景中,训练资源一般是相对丰富的,更在意推理时的开销和性能,因此想要训练时的结构较大,具备好的某种性质(更高的精度或其他有用的性质),转换得到的推理时结构较小且保留这种性质(相同的精度或其他有用的性质)。换句话说,“重参数化”这个词的本意就是:用一个结构的一组参数转换为另一组参数,并用转换得到的参数来参数化另一个结构。只要参数的转换是等价的,这两个结构的替换就是等价的。
知识蒸馏:一种模型压缩技术,通过训练过程将大模型(教师模型)的知识或学习行为转移到小模型(学生模型),该过程称为知识蒸馏的过程。知识蒸馏可以分为在线知识蒸馏(教师模型本身参与训练过程)和离线知识蒸馏(教师模型本身不参与训练过程)。另外,教师模型参与蒸馏的知识不仅限于模型输出,也可以将教师模型中间层特征提取出来参与指导学生学习的过程中。
生成对抗网络:一种拟合数据分布的生成式学习方法。该技术主要包含生成器和判别器两个神经网络,生成器用来拟合数据分布,判别器用来区分当前数据来自拟合分布还是来自真实数据分布。在生成器和判别器的对抗学习过程中,生成器一步步进化达到以假乱真的数据生成能力。该技术应用在超分过程中可以使得超分模型输出结果细节质量得到提升。
本申请实施例提供的方法涉及人工智能技术。人工智能(ArtificialIntelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。本申请实施例提供的方案涉及人工智能技术中的计算机视觉技术和机器学习等方向。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
图1示出了本申请实施例提供的实施环境的示意图。该实施环境包括:终端11和服务器12。
本申请实施例提供的图像超分模型的训练方法可以由终端11执行,也可以由服务器12执行,还可以由终端11和服务器12共同执行,本申请实施例对此不加以限定。对于本申请实施例提供的图像超分模型的训练方法由终端11和服务器12共同执行的情况,服务器12承担主要计算工作,终端11承担次要计算工作;或者,服务器12承担次要计算工作,终端11承担主要计算工作;或者,服务器12和终端11二者之间采用分布式计算架构进行协同计算。
本申请实施例提供的图像超分处理方法可以由终端11执行,也可以由服务器12执行,还可以由终端11和服务器12共同执行,本申请实施例对此不加以限定。对于本申请实施例提供的图像超分处理方法由终端11和服务器12共同执行的情况,服务器12承担主要计算工作,终端11承担次要计算工作;或者,服务器12承担次要计算工作,终端11承担主要计算工作;或者,服务器12和终端11二者之间采用分布式计算架构进行协同计算。
图像超分模型的训练方法的执行设备与图像超分处理方法的执行设备可以相同,也可以不同,本申请实施例对此不加以限定。
在一种可能实现方式中,终端11可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如PC(Personal Computer,个人计算机)、手机、智能手机、PDA(Personal Digital Assistant,个人数字助手)、可穿戴设备、PPC(Pocket PC,掌上电脑)、平板电脑、智能车机、智能电视、智能音箱、智能语音交互设备、智能家电、车载终端等。服务器12可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。终端11与服务器12通过有线或无线网络建立通信连接。
本领域技术人员应能理解上述终端11和服务器12仅为举例,其他现有的或今后可能出现的终端或服务器如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
示例性地,本申请提供的图像超分处理方法可以应用在照片处理场景中,也可以应用在视频处理场景中。例如,在照片处理场景中,本申请提供的方法可以对分辨率较低的照片进行超分处理,以将该分辨率较低的照片处理为分辨率较高的照片。例如,该分辨率较低的照片可以是指利用分辨率较低的相机拍摄的照片,也可以是指电子相册中存储的照片等。在视频处理场景中,本申请提供的方法可以对分辨率较低的视频流中的视频帧进行超分处理,以将该分辨率较低的视频帧处理为分辨率较高的视频帧,进而得到分辨率较高的视频流。例如,该分辨率较低的视频流可以是指视频通话中的视频流,也可以是指短视频平台中上传的视频流等。
示例性地,图像超分处理被广泛应用在老照片修复,电影修复,动画片修复,视频通话质量提升等场景中。随着智能终端(如,智能手机)的广泛普及,视频通话和短视频内容制作等应用在人们的日常生活中变得越来越重要。然而由于网络带宽和用户流量限制,在视频通话过程中往往会对传输画面进行编码压缩和降采样,造成用户体验下降。因此,需要一种图像超分处理方法来对视频通话中的低码率画面进行画质提升。
本申请实施例提供的方法不仅适用于视频超分的应用中,同样适用于视频去模糊,视频增强,老照片修复等其他图像和视频复原的应用中。需要说明的是,在视频复原的过程中,将视频中的每个视频帧均作为一个待超分处理的图像,通过对各个视频帧分别进行超分处理,实现对视频的复原。
示例性地,超分处理的图像可以是照片或视频帧,下面结合不同的应用场景进行说明。
在一种应用场景中,终端11的相册应用程序中存放有多个低分辨率的照片,用户可以在相册应用程序中批量选取低分辨率的照片,当获取到用户的超分处理操作指令时,终端11请求服务器12利用目标超分模型进行超分处理得到高分辨率的照片,服务器12将高分辨率的照片发送至终端11的相册应用程序展示。作为替代方案,当终端11获取到用户的超分处理操作指令时,终端11利用目标超分模型进行超分处理得到高分辨率的照片,并在终端11的相册应用程序展示。
在另一种应用场景中,在终端11的在线视频会议应用程序中,会议参与方通过终端11接收到服务器12推送的来自其他参会方的视频流,终端11在接收到视频流后,在线视频会议应用程序中对会议视频进行播放。当终端11的网络状况较差,例如带宽低于带宽阈值,服务器12默认推送的视频流是低分辨率的视频流,以保证会议视频正常播放。当终端11接收到服务器12推送的来自其他参会方的视频流时,终端11可以利用目标超分模型对视频流中的视频帧进行实时的图像超分处理,从而实时播放高分辨率的视频帧,在保证视频会议的画面实时性的同时,有效提高视频会议画面的质量。作为替代方案,当终端11接收到服务器12推送的来自其他参会方的视频流时,终端11请求服务器12利用目标超分模型进行超分处理得到高分辨率的视频帧,服务器12将高分辨率的视频帧发送至终端11,终端11实时播放接收到的高分辨率的视频帧。
基于上述图1所示的实施环境,本申请实施例提供一种图像超分模型的训练方法,该图像超分模型的训练方法由计算机设备执行,该计算机设备可以为终端11,也可以为服务器12,本申请实施例对此不加以限定。如图2所示,本申请实施例提供的图像超分模型的训练方法可以包括如下步骤201至步骤205。
在步骤201中,获取样本图像,样本图像的分辨率为第一分辨率。
样本图像是对学生超分模型的参数更新一次所依据的图像,样本图像的数量为一个或多个。示例性地,样本图像的数量通常为多个,以保证图像超分模型的训练效果。样本图像的分辨率为第一分辨率,第一分辨率是一个待提高的较小分辨率,第一分辨率可以根据经验设置,也可以根据应用场景灵活调整,本申请实施例对此不加以限定。第一分辨率可以利用像素尺寸表示,例如,第一分辨率可以为100(像素)*100(像素)、200(像素)*100(像素)等;第一分辨率还可以利用像素密度(Pixel Per Inch,PPI)表示,例如,第一分辨率可以为150PPI、180PPI等。
示例性地,对于照片处理场景,获取样本图像是指获取样本照片,该样本照片的分辨率为第一分辨率。对于视频处理场景,获取样本图像是指获取样本视频帧,该样本视频帧的分辨率为第一分辨率。该样本视频帧可以从样本视频流中截取得到,样本视频流的分辨率为第一分辨率。
示例性地,样本图像可以从样本图像库中提取,样本图像库包括预先获取的多个第一分辨率的图像。示例性地,样本图像可以从网络中爬取得到。示例性地,样本图像可以由其他设备发送给计算机设备等。
示例性地,样本图像可以通过对原始图像进行降质得到,其中,原始图像是指现实世界中存在的图像,如,网络中的图像、用户拍摄的图像、图像采集设备采集的图像等。原始图像的分辨率为第二分辨率,第二分辨率大于第一分辨率。本申请实施例对第二分辨率的具体情况不加以限定,例如,第二分辨率为第一分辨率的2倍;再例如,第二分辨率为第一分辨率的4倍等。对原始图像进行降质的过程是指降低原始图像的分辨率的过程。
在示例性实施例中,通过对原始图像进行降质获取样本图像的过程包括:获取原始图像,原始图像的分辨率为第二分辨率;对原始图像连续执行至少一次降分辨率过程,得到样本图像。此处的降分辨率指降低图像或视频中图像的分辨率。由于原始图像的资源比较丰富,所以,通过对原始图像进行降质获取样本图像,能够保证获取足够数量的样本图像,从而保证模型训练的效果。此外,由于样本图像是通过对原始图像进行降质获取的,所以能够将原始图像作为样本图像对应的真实的超分图像(也即样本图像对应的标签图像),从而能够便捷的获取较为可靠的“样本图像-标签图像”的配对数据,为模型训练提供可靠的数据支持。其中,“样本图像-标签图像”的配对数据是指以成对的形式记录样本图像及其对应的标签图像的数据。
每次降分辨率过程均用于将图像的分辨率降低一定程度,不同次降分辨率过程对图像的分辨率的降低程度可以相同,也可以不同。本申请实施例对执行的降分辨率过程的次数不加以限定,只要保证对原始图像连续执行完至少一次降分辨率过程后,得到的图像的分辨率为第一分辨率即可。示例性地,对原始图像连续执行多次降分辨率过程是指执行后一次降分辨率过程所针对的图像是执行上一次降分辨率过程后所得到的图像。
执行每次降分辨率过程的实现原理相同,本申请实施例以执行任一次降分辨率过程为例进行说明。示例性地,执行任一次降分辨率过程包括对当前图像执行目标降分辨率操作。在对原始图像连续执行至少一次降分辨率过程的过程中,当前图像是指原始图像或者是指在得到样本图像之前对原始图像连续执行一次或多次降分辨率过程后得到的图像。例如,以至少一次的数量为5次为例,则当前图像可以是指原始图像,也可以是指对原始图像连续执行1次、2次、3次或4次降分辨率过程后得到的图像。
目标降分辨率操作是指执行一次降分辨率过程所需执行的操作,目标降分辨率操作可以根据经验设置,也可以根据实际的应用场景灵活调整,本申请实施例对此不加以限定。示例性地,目标降分辨率操作包括模糊处理、尺寸缩放、添加噪声和编码压缩中的至少一种操作。
对于目标降分辨率操作包括多种操作的情况,目标降分辨率操作中的多种操作是根据该多种操作的执行顺序执行的,目标降分辨率操作中的多种操作的执行顺序根据经验设置,或者根据实际情况灵活调整,本申请实施例对此不加以限定。对于不同的降分辨率过程,需要执行的目标降分辨率操作相同,但是目标降分辨率操作中的多种操作的执行顺序可以相同,也可以不同。
例如,以目标降分辨率操作包括模糊处理、尺寸缩放、添加噪声和编码压缩这四种操作为例,对于第一次降分辨率过程,目标降分辨率操作中的四种操作的执行顺序从前到后可以依次为模糊处理、尺寸缩放、添加噪声和编码压缩;对于第二次降分辨率过程,目标降分辨率操作中的四种操作的执行顺序从前到后可以依次为编码压缩、添加噪声、尺寸缩放和模糊处理。需要说明的是,在根据目标降分辨率操作中的多种操作的执行顺序对当前图像执行该多种操作的过程中,先对当前图像执行在执行顺序中排在第一位的操作,得到更新后的图像,然后对更新后的图像执行在执行顺序中排在第二位的操作,得到再次更新后的图像,以此类推,直至在执行顺序中排在最后一位的操作执行完毕。
目标降分辨率操作中的任一种操作通过该任一种操作对应的任一种实现算法实现。目标降分辨率操作中的任一种操作对应一种或多种实现算法,每种实现算法均用于实现该任一种操作。
目标降分辨率操作中的任一种操作对应的实现算法可以根据经验设置,也可以根据实际的应用场景灵活调整。示例性地,模糊处理操作对应的实现算法可以包括但不限于各向同性高斯模糊处理、各向异性高斯模糊处理、滤波器模糊处理(例如,sinc滤波器(一种低通滤波器)模糊处理)等。尺寸缩放操作对应的实现算法可以包括但不限于双线性插值、双三次插值、area(区域)插值等。其中,双三次插值是指一种更加复杂的插值方法,它能创造出比双线性插值更平滑的图像边缘。添加噪声操作对应的实现算法可以包括但不限于添加高斯噪声、添加泊松噪声等。编码压缩操作对应的实现算法可以包括但不限于JPEG(Joint Photographic Experts Group,联合图像专家组)编码压缩、哈夫曼编码压缩等。
需要说明的是,目标降分辨率操作中的不同种操作对应的实现算法的数量可以相同,也可以不同。例如,模糊处理操作对应的实现算法的数量为3个(分别为各向同性高斯模糊处理、各向异性高斯模糊处理和滤波器模糊处理),编码压缩操作对应的实现算法的数量为2个(分别为JPEG编码压缩和哈夫曼编码压缩)。
对于不同次降分辨率过程,实现目标降分辨率操作中的同一种操作所利用的实现算法可以相同,也可以不同。例如,对于第一次降分辨率过程,实现目标降分辨率操作中的模糊处理操作的实现算法可以为各向同性高斯模糊处理;对于第二次降分辨率过程,实现目标降分辨率操作中的模糊处理操作的实现算法可以为各向异性高斯模糊处理。
以对原始图像连续执行两次降分辨率过程得到样本图像为例进行说明,获取样本图像的过程如下:
1.首先实现基本的降质算法单元(也即目标降分辨率操作中的操作),例如,基本的降质算法单元包括:模糊处理操作、尺寸缩放操作、添加噪声操作和编码压缩操作。其中,模糊处理操作对应的实现算法包括各向同性高斯模糊处理、各向异性高斯模糊处理和sinc滤波器模糊处理,尺寸缩放操作对应的实现算法包括双线性插值、双三次插值和area插值,添加噪声操作对应的实现算法包括添加高斯噪声和添加泊松噪声,编码压缩操作对应的实现算法包括JPEG编码压缩。
2.将一次降质过程(也即一次降分辨率过程)视为上述降质算法单元的随机顺序组合。首先随机选择一个降质算法单元(例如模糊处理操作),然后从被选降质算法单元中随机选择具体实现算法(如从模糊处理操作中选择各向异性高斯模糊处理)对输入图像进行降质。将当前被选择降质算法单元剔除,从剩余降质算法单元中递归执行上述降质过程,从而完成对输入图像的一次降质过程。
3.对输入高清图像(也即第二分辨率的原始图像)连续执行两次步骤2中所描述的降质过程,来模拟现实世界的高阶降质过程,以得到样本图像。
示例性地,由于样本图像是通过对原始图像进行降分辨率后得到的,所以可以将原始图像作为样本图像对应的真实的高分辨率图像,也即样本图像对应的标签图像,进而将样本图像和原始图像作为一对有标签数据,为图像超分模型的训练提供数据支持。
现实世界不存在现成的低分辨率图像(也可以称为低质量图像)和高分辨率图像(也可以称为高清图像)的配对数据,这对基于深度学习进行超分辨的算法是不友好的。因此,可以模拟现实世界的图像降质过程,来构造低分辨率低清数据和高分辨率高清数据的配对数据集,用来训练超分模型。现实世界的图像可能会经过采集引入噪声,编码压缩,互联网传输,硬盘存储,图像裁剪,尺寸调整等操作和改动。这一系列过程预示着现实世界的图像降质过程是一个高阶降质过程,从而不能被简单的模拟为模糊处理、降采样、添加操作等传统一阶降质过程,上述步骤1-步骤3介绍的高阶降质过程比较符合现实世界中的降质过程,从而能够保证获取的样本图像和标签图像数据对的可靠性。
在步骤202中,利用学生超分模型对样本图像进行超分处理,得到第一超分图像,第一超分图像的分辨率为第二分辨率,第二分辨率大于第一分辨率。
学生超分模型是待训练的超分模型,在获取样本图像后,可以利用学生超分模型对样本图像进行超分处理,将学生超分模型输出的图像作为第一超分图像,该第一超分图像的分辨率为第二分辨率,第二分辨率大于第一分辨率,也即,第一超分图像是学生超分模型输出的样本图像对应的高分辨率的图像。
需要说明的是,本申请实施例中的“学生超分模型”和“教师超分模型”是基于其各自的功能进行命名的,其中,“学生超分模型”能够从其他模型中学习超分处理知识,“教师超分模型”能够将学习到的超分处理知识迁移给其他模型。在一些实施例中,“学生超分模型”和“教师超分模型”还可以通过其他方式进行命名,本申请实施例对此不加以限定。
示例性地,对于照片处理场景,利用学生超分模型对样本图像进行超分处理,得到第一超分图像是指利用学生超分模型对样本照片进行超分处理,得到第一超分照片,该第一超分照片的分辨率为第二分辨率,此种情况下,第一超分图像也是指第一超分照片。对于视频处理场景,利用学生超分模型对样本图像进行超分处理,得到第一超分图像是指利用学生超分模型对样本视频帧进行超分处理,得到第一超分视频帧,该第一超分视频帧的分辨率为第一分辨率,此种情况下,第一超分图像也是指第一超分视频帧。
利用学生超分模型对样本图像进行超分处理的过程为学生超分模型的内部处理过程,与学生超分模型的结构有关。学生超分模型的结构可以根据经验设置,也可以根据实际的应用场景灵活调整,本申请实施例对此不加以限定,只要能够保证将第一分辨率的图像输入学生超分模型之后,学生超分模型能够输出第二分辨率的图像即可。
在一种可能实现方式中,学生超分模型包括第一特征转换模块和第一数量个第一特征提取模块,第一数量个第一特征提取模块用于对输入的图像进行特征提取,第一特征转换模块用于将特征转换为图像。第一数量根据经验设置,或者根据应用场景灵活调整,例如,第一数量可以为2,也可以为4等。示例性地,每个第一特征提取模块所提取的特征的通道数可以根据每个第一特征提取模块的结构决定,例如,不同第一特征提取模块所提取的特征的通道数均为4。
示例性地,对于学生超分模型包括第一特征转换模块和第一数量个第一特征提取模块的情况,利用学生超分模型对样本图像进行超分处理,得到第一超分图像的过程包括:利用第一数量个第一特征提取模块对样本图像进行特征提取,得到第一图像特征;利用第一特征转换模块对第一图像特征进行转换,得到第一超分图像。通过第一数量个第一特征提取模块对样本图像进行特征提取,有利于保证提取的特征的可靠性,进而提高根据提取的特征获取的第一超分图像的可靠性。
示例性地,利用第一数量个第一特征提取模块对样本图像进行特征提取,得到第一图像特征的过程可以包括:利用第一数量个第一特征提取模块中的第一个第一特征提取模块对样本图像进行特征提取,得到第一个第一特征提取模块输出的图像特征;从第二个第一特征提取模块开始,利用后一个第一特征提取模块对前一个第一特征提取模块输出的图像特征进行特征提取,得到后一个第一特征提取模块输出的图像特征,直至得到最后一个第一特征提取模块输出的图像特征,将最后一个第一特征提取模块输出的图像特征作为第一图像特征。
在一些实施例中,学生超分模型除包括第一特征转换模块和第一数量个第一特征提取模块外,还可以包括其他模块,例如,还包括第一通道分离卷积模块、第一残差连接模块和第一特征值裁剪模块。其中,第一通道分离卷积模块用于利用各个通道的特征分别对应的卷积核分别对各个通道的特征进行卷积,例如,各个通道的特征分别对应的卷积核的尺寸相同,均为3*3卷积核。第一残差连接模块用于将输入信息与在残差模块之前输出的信息进行残差连接。第一特征值裁剪模块用于将特征中的特征值约束在一定范围内,如,将小于0的特征值均设置为0,将大于1的特征值均设置为1等。示例性地,第一特征转换模块可以表示为SRBlock,第一通道分离卷积模块可以表示为dw-conv-3*3,第一残差连接模块可以利用一个带有加号的符号表示,第一特征值裁剪模块可以表示为clip模块,第一特征转换模块可以表示为depth2space。
示例性地,对于学生超分模型包括第一特征转换模块、第一数量个第一特征提取模块、第一通道分离卷积模块、第一残差连接模块和第一特征值裁剪模块的情况,利用学生超分模型对样本图像进行超分处理,得到第一超分图像的过程可以包括:利用第一数量个第一特征提取模块对样本图像进行特征提取,得到第一图像特征;利用第一通道分离卷积模块对第一图像特征进行卷积,得到第一卷积特征;利用第一残差连接模块对第一卷积特征和样本图像进行残差连接,得到第一连接特征;利用第一特征值裁剪模块对第一连接特征的特征值进行裁剪,得到第一裁剪特征;利用第一特征转换模块对第一裁剪特征进行转换,得到第一超分图像。
示例性地,以第一数量为2为例,学生超分模型的结构可以如图3所示。在图3中,第一特征提取模块_4表示第一特征提取模块所提取的特征的通道数为4,第一通道分离卷积模块(3*3)表示在第一通道分离卷积模块处理过程中,各个通道的特征分别对应的卷积核的尺寸均为3*3。第一残差模块用于将输入的样本图像和第一通道分离卷积模块输出的特征进行残差连接。
在图3所示的学生超分模型中,输入的样本图像首先经过两个第一特征提取模块(所提取的特征的通道数为4),然后经过第一通道分离卷积模块(卷积核尺寸为3*3)进行特征提取,之后和输入的样本图像通过shortcut(短接)进行残差连接,再经过第一特征值裁剪模块对当前特征进行特征值裁剪,最后经过第一特征转换模块对特征进行通道到空间分辨率的变换,最终得到了超分输出(也即第一超分图像)。
第一特征提取模块可以是一个整体的模块,也可以包括多个模块。在示例性实施例中,第一特征提取模块包括第一基础模块、通道变换模块、激活模块和残差连接模块,第一基础模块用于实现对特征的提取;通道变换模块用于实现对提取的特征的通道数的变换,例如,通道变换模块本质上是1*1卷积模块,1*1卷积核的数量即为变换后得到的特征的通道数;激活模块用于实现对特征的激活,以增加特征的非线性,激活模块所利用的激活函数可以根据经验设置,也可以根据应用场景灵活调整,例如,激活模块所利用的激活函数可以是指Sigmoid(S形)激活函数、双曲正切激活函数、ReLU(Rectified Linear Unit,修正线性单元)激活函数、LeakyReLU(带泄露修正线性单元)激活函数等;残差连接模块用于对激活模块输出的特征与输入第一特征模块的信息进行残差连接。
第一基础模块可以是一个整体的模块,也可以包括多个模块。示例性地,第一基础模块包括整体卷积子模块、通道分离卷积子模块、第一边缘检测子模块、第二边缘检测子模块、第三边缘检测子模块和模糊处理子模块中的至少一个以及残差连接子模块,其中,整体卷积子模块、通道分离卷积子模块、第一边缘检测子模块、第二边缘检测子模块、第三边缘检测子模块和模糊处理子模块中的至少一个位于不同的并列分支。其中,整体卷积子模块用于对输入的信息(图像或特征)进行整体卷积,通道分离卷积子模块用于对输入的信息的各个通道分别进行卷积;第一边缘检测子模块、第二边缘检测子模块和第三边缘检测子模块用于根据不同的边缘检测算子对输入的信息进行边缘检测,例如,第一边缘检测子模块用于根据x方向边缘检测算子(Sobel-x)对输入的信息进行边缘检测,第二边缘检测子模块用于根据y方向边缘检测算子(Sobel-y)对输入的信息进行边缘检测,第三边缘检测子模块用于根据拉普拉斯算子(Laplacian)对输入的信息进行边缘检测;模糊处理子模块用于对输入的信息进行模糊处理,例如,模糊处理子模块用于根据高斯(Gaussian)模糊核对输入的信息进行模糊处理;残差连接子模块用于对各个并列分支输出的特征进行残差连接。
示例性地,第一基础模块实现对特征的提取的方式为:利用各个并列分支分别对输入的信息进行特征提取,得到各个并列分支分别输出的特征;利用残差连接子模块对各个并列分支输出的特征进行残差连接,得到第一基础模块提取的特征。示例性地,在获取任一分支输出的特征时,可以先利用整体卷积子模块、通道分离卷积子模块、第一边缘检测子模块、第二边缘检测子模块、第三边缘检测子模块或模糊处理子模块通道对输入的信息进行特征提取,然后再利用通道粒度缩放变换子模块对提取的特征进行通道粒度的缩放变换,将缩放变换后得到的特征作为该任一分支输出的特征。通道粒度缩放变换子模块用于为不同通道的特征赋予不同的权重,以实现不同通道的特征的融合。例如,通道粒度缩放变换子模块可以是指scaling(缩放)模块。Scaling模块能够弥补BN(Batch Normalization,批量归一化)模块在图像生成任务中的副作用(如,引入额外的噪声等)。示例性地,残差连接子模块还可以将输入的信息与各个并列分支输出的特征共同进行残差连接。
示例性地,第一基础模块的结构可以如图4所示。第一基础模块共包括6个并列的分支,第一个分支包括卷积核尺寸为3*3的整体卷积子模块,卷积核的尺寸为3*3;第二个分支包括卷积核尺寸为3*3的通道分离卷积子模块和通道粒度缩放变换子模块;第三个分支包括第一边缘检测子模块和通道粒度缩放变换子模块;第四个分支包括第二边缘检测子模块和通道粒度缩放变换子模块;第五个分支包括第三边缘检测子模块和通道粒度缩放变换子模块;第六个分支包括模糊处理子模块和通道粒度缩放变换子模块。残差连接子模块用于将输入的信息和6个并列的分支输出的特征进行残差连接。示例性地,图4所示的第一基础模块可以简化表示为RepBlock-3*3。
示例性地,图4所示的第一基础模块中的每个分支的操作均可以看作是卷积核尺寸为3*3的卷积操作,因此,图4所示的第一基础模块可以重参数化为一个卷积核尺寸为3*3卷积模块,该重参数化后得到的卷积模块具有与第一基础模块相同的性能,但重参数化后得到的卷积模块参数的数量小于第一基础模块的参数的数量。示例性地,重参数化还可以称为结构重参数化,重参数化是指将模型中一个原有的结构对应的一组参数转换为另一组参数,并用转换得到的参数来构建一个新的结构,用来替换所述原有的结构,参数的转换是等价的,两个结构的替换也是等价的。也就是说,新的结构可以同等替换模型中的所述原有的结构,并且保持原有的结构的功能不变。将结构重参数化技术应用在超分模型中,在训练阶段利用重参数化前的结构,在推理阶段利用重参数化后的结构,能够提升卷积神经网络单个卷积模块的表达能力同时又不增加其在推理时的耗时,兼顾性能和效率。
示例性地,第一特征提取模块提取特征的过程包括:利用第一基础模块对输入的信息进行特征提取,得到第一基础特征;利用通道变换模块对第一基础特征进行通道变换,得到第二基础特征;利用激活模块对第二基础特征进行激活,得到第三基础特征;利用残差连接模块对输入的信息和第三基础特征进行残差连接,得到第一特征提取模块提取的特征。
示例性地,以第一基础模块(RepBlock-3*3)的结构如图4所示,通道变换模块为卷积核尺寸为1*1的卷积模块,激活模块所利用的激活函数为LeakyReLU激活函数(也即激活模块为LeakyReLU)为例,第一特征提取模块的结构可以如图5中的(1)所示。该图5中的RepBlock-3*3模块和1*1卷积模块可以重参数化为一个卷积核尺寸为3*3的卷积模块,也即图5所示的第一特征提取模块可以重参数化为如图5中的(2)所示的结构。示例性地,图5中的(1)所示第一特征提取模块可以表示为SRBlock。
示例性地,第一特征提取模块可认为是超分模型基础模块,在构造超分模型基础模块SRBlock的过程中,首先构造如图4所示的第一基础模块RepBlock-3*3,然后将该第一基础模块与通道变换模块、激活模块和残差连接模块融合成超分基础模块SRBlock。SRBlock是一个类残差网络模块:输入的信息首先经过RepBlock-3*3模块,然后经过通道变换模块(如,卷积核尺寸为1*1的卷积模块),再经过激活模块(如,LeakReLU非线性激活模块)得到旁路特征,最后和输入的信息通过残差连接相加得到整个SRBlock的输出。SRBlock中的RepBlock-3*3模块和紧随其后的卷积核尺寸为1*1的卷积模块也可以通过结构重参数化技术进行合并,最后融合为一个卷积核尺寸为3*3的卷积模块,这样的融合尤为重要,既能提升模型训练的精度,又能减少模型推理时的耗时。
以上所述的学生超分模型的结构仅为示例性描述,本申请并不局限于此,学生超分模型包括的模块还可以为其他情况,只要通过对学生超分模型包括的模块进行合理设计,保证学生超分模型对输入的第一分辨率的图像进行超分处理后,输出第二分辨率的图像即可。
在步骤203中,利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像,第二超分图像和第三超分图像的分辨率均为第二分辨率。
第一教师超分模型和第二教师超分模型是用于为学生超分模型的训练过程提供监督信息的两个模型,也即指导学生超分模型的训练过程的两个模型。在本申请实施例中,第一教师超分模型的模型宽度大于学生超分模型的模型宽度,第二教师超分模型的模型深度大于学生超分模型的模型深度。其中,模型深度用于指示模型包括的特征提取模块的数量,模型宽度用于指示模型包括的特征提取模块所提取的特征的通道数。示例性地,若一个模型包括的多个特征提取模块所提取的特征的通道数相同,则该模型的模型宽度可以是指该相同的通道数;若一个模型包括的多个特征提取模块所提取的特征的通道数不同,则该模型的模型宽度可以是指各个特征提取模块所提取的特征的通道数的平均值。本申请实施例以一个模型包括的多个特征提取模块所提取的特征的通道数相同为例进行说明。
在示例性实施例中,第一教师超分模型的模型深度等于学生超分模型的模型深度,以便于第一教师超分模型不仅可以利用输出的超分结果为学生超分模型提供监督信息,还可以利用相同深度的特征提取模块提取的特征为学生超分模型提供监督信息,丰富第一教师超分模型能够为学生超分模型提供的监督信息,提高第一教师超分模型对学生超分模型的训练效果。
在示例性实例中,第二教师超分模型的模型宽度可以等于学生超分模型的模型宽度,也可以大于学生超分模型的模型宽度,还可以小于学生超分模型的模型宽度,本申请实施例对此不加限定。
第一教师超分模型、第二教师超分模型和学生超分模型构成一个知识蒸馏架构,第一教师超分模型、第二教师超分模型用于将学习到的知识蒸馏到学生超分模型中,以实现对学生超分模型的训练。模型宽度较大的第一教师超分模型能够将模型宽度方向的超分知识蒸馏(也可以称为迁移)到学生超分模型中,模型深度较大的第二教师超分模型能够将模型深度方向的超分知识蒸馏(也可以称为迁移)到学生超分模型中,从而使学生超分模型较为精准的学习到模型宽度方向的超分知识以及模型深度方向的超分知识,从而训练得到具有与较大的模型宽度和较大的模型深度的超分模型类似的超分性能的超分模型,保证训练得到的超分模型的超分性能。在一些实施例中,第一教师超分模型还可以称为宽度教师模型,第二教师超分模型还可以称为深度教师模型。
模型宽度越大或模型深度越大的模型需要的参数越多,因此,第一教师超分模型的参数和第二教师超分模型的参数均比学生超分模型的参数要多,也即利用较大的模型对较小的模型进行训练,进而利用较小的模型进行推理计算,从而保证推理计算的效率。
示例性地,对于照片处理场景,利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像是指利用第一教师超分模型对样本照片进行超分处理,得到第二超分照片;利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像是指利用第二教师超分模型对样本照片进行超分处理,得到第三超分图片。第二超分照片和第三超分照片的分辨率均为第二分辨率。此种情况下,第二超分图像是指第二超分照片,第三超分图像也是指第三超分照片。
对于视频处理场景,利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像是指利用第一教师超分模型对样本视频帧进行超分处理,得到第二超分视频帧;利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像是指利用第二教师超分模型对样本视频帧进行超分处理,得到第三超分视频帧。第二超分视频帧和第三超分视频帧的分辨率均为第二分辨率。此种情况下,第二超分图像是指第二超分视频帧,第三超分图像也是指第三超分视频帧。
第二超分图像是第一教师超分模型输出的样本图像对应的高分辨率的图像,第二超分图像能够为学生超分模型提供模型宽度方向的监督信息。利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像过程为第一教师超分模型的内部处理过程,与第一教师超分模型的结构有关。第一教师超分模型的结构可以根据经验设置,也可以根据实际的应用场景灵活调整,本申请实施例对此不加以限定,只要能够保证第一教师超分模型的模型宽度大于学生超分模型的模型宽度,且能够保证将第一分辨率的图像输入第一教师超分模型之后,第一教师超分模型能够输出第二分辨率的图像即可。
示例性地,以学生超分模型包括第一特征转换模块和第一数量个第一特征提取模块为例,第一教师超分模型可以包括第二特征转换模块和第一数量个第二特征提取模块,其中,第二特征提取模块所提取的特征的通道数大于第一特征提取模块所提取的特征的通道数。例如,第一特征提取模块所提取的特征的通道数为4,第二特征提取模块所提取的特征的通道数为32。
对于第一教师超分模型包括第二特征转换模块和第一数量个第二特征提取模块的情况,利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像过程可以包括:利用第一数量个第二特征提取模块对样本图像进行特征提取,得到第二图像特征;利用第二特征转换模块对第二图像特征进行转换,得到第二超分图像。第二图像特征的通道数大于第一图像特征的通道数。通过第一数量个第二特征提取模块对样本图像进行特征提取,有利于保证提取的特征的可靠性,进而提高根据提取的特征获取的第二超分图像的可靠性。
在示例性实施例中,利用第一数量个第二特征提取模块对样本图像进行特征提取,得到第二图像特征的过程可以包括:利用第一数量个第二特征提取模块中的第一个第二特征提取模块对样本图像进行特征提取,得到第一个第二特征提取模块输出的图像特征;从第二个第二特征提取模块开始,利用后一个第二特征提取模块对前一个第二特征提取模块输出的图像特征进行特征提取,得到后一个第二特征提取模块输出的图像特征,直至得到最后一个第二特征提取模块输出的图像特征,将最后一个第二特征提取模块输出的图像特征作为第二图像特征。
在一些实施例中,对于学生超分模型包括第一特征转换模块、第一数量个第一特征提取模块、第一通道分离卷积模块、第一残差连接模块和第一特征值裁剪模块的情况,第一教师超分模型包括第二特征转换模块、第一数量个第二特征提取模块、第二通道分离卷积模块、第二残差连接模块和第二特征值裁剪模块。此种情况下,利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像过程可以包括:利用第一数量个第二特征提取模块对样本图像进行特征提取,得到第二图像特征;利用第二通道分离卷积模块对第二图像特征进行卷积,得到第二卷积特征;利用第二残差连接模块对第二卷积特征和样本图像进行残差连接,得到第二连接特征;利用第二特征值裁剪模块对第二连接特征的特征值进行裁剪,得到第二裁剪特征;利用第二特征转换模块对第二裁剪特征进行转换,得到第二超分图像。
示例性地,以第一数量为2为例,第一教师超分模型的结构可以如图6所示。在图6中,第二特征提取模块_32表示第二特征提取模块所提取的特征的通道数为32,第二通道分离卷积模块(3*3)表示在第二通道分离卷积模块处理过程中,各个通道的特征分别对应的卷积核的尺寸均为3*3。第二残差模块用于将输入的样本图像和第二通道分离卷积模块输出的特征进行残差连接。
通过比对图3和图6可知,第一教师超分模型的整体网络结构和学生超分模型的网络结构相同,区别在于将学生超分模型中使用的两个第一特征提取模块_4(如,输出的特征的通道数为4的SRBlock)替换为第二特征提取模块_32(如,输出的特征的通道数为32的SRBlock)。第一教师超分模型能够通过通道蒸馏将第二特征提取模块_32的知识转移到学生超分模型的第一特征提取模块_4中。
第三超分图像是第二教师超分模型输出的样本图像对应的高分辨率的图像,第三超分图像能够为学生超分模型提供模型深度方向的监督信息。利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像过程为第二教师超分模型的内部处理过程,与第二教师超分模型的结构有关。第二教师超分模型的结构可以根据经验设置,也可以根据实际的应用场景灵活调整,本申请实施例对此不加以限定,只要能够保证第二教师超分模型的模型深度大于学生超分模型的模型深度,且能够保证将第一分辨率的图像输入第二教师超分模型之后,第二教师超分模型能够输出第二分辨率的图像即可。
示例性地,以学生超分模型包括第一特征转换模块和第一数量个第一特征提取模块为例,第二教师超分模型可以包括第三特征转换模块和第二数量个第三特征提取模块,其中,第二数量大于第一数量。例如,第一特征提取模块的数量(也即第一数量)为2,第三特征提取模块的数量(也即第二数量)为8。
对于第二教师超分模型包括第三特征转换模块和第二数量个第三特征提取模块的情况,利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像过程可以包括:利用第二数量个第三特征提取模块对样本图像进行特征提取,得到第三图像特征;利用第三特征转换模块对第三图像特征进行转换,得到第三超分图像。第三图像特征的通道数等于第一图像特征的通道数。通过第二数量个第三特征提取模块对样本图像进行特征提取,有利于保证提取的特征的可靠性,进而提高根据提取的特征获取的第三超分图像的可靠性。
在示例性实施例中,利用第二数量个第三特征提取模块对样本图像进行特征提取,得到第三图像特征的过程可以包括:利用第二数量个第三特征提取模块中的第一个第三特征提取模块对样本图像进行特征提取,得到第一个第三特征提取模块输出的图像特征;从第二个第三特征提取模块开始,利用后一个第三特征提取模块对前一个第三特征提取模块输出的图像特征进行特征提取,得到后一个第三特征提取模块输出的图像特征,直至得到最后一个第三特征提取模块输出的图像特征,将最后一个第三特征提取模块输出的图像特征作为第三图像特征。
在一些实施例中,对于学生超分模型包括第一特征转换模块、第一数量个第一特征提取模块、第一通道分离卷积模块、第一残差连接模块和第一特征值裁剪模块的情况,第二教师超分模型包括第三特征转换模块、第二数量个第三特征提取模块、第三通道分离卷积模块、第三残差连接模块和第三特征值裁剪模块。此种情况下,利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像的过程可以包括:利用第二数量个第三特征提取模块对样本图像进行特征提取,得到第三图像特征;利用第三通道分离卷积模块对第三图像特征进行卷积,得到第三卷积特征;利用第三残差连接模块对第三卷积特征和样本图像进行残差连接,得到第三连接特征;利用第三特征值裁剪模块对第三连接特征的特征值进行裁剪,得到第三裁剪特征;利用第三特征转换模块对第三裁剪特征进行转换,得到第三超分图像。
示例性地,以第二数量为8为例,第二教师超分模型的结构可以如图7所示。在图6中,第三特征提取模块_4表示第三特征提取模块所提取的特征的通道数为4,第三通道分离卷积模块(3*3)表示在第三通道分离卷积模块处理过程中,各个通道的特征分别对应的卷积核的尺寸均为3*3。第三残差模块用于将输入的样本图像和第三通道分离卷积模块输出的特征进行残差连接。
通过比对图3和图7可知,第三教师超分模型的整体网络结构和学生超分模型一致,区别在于学生超分模型使用了两个第一特征提取模块_4(如,输出的特征的通道数为4的SRBlock),第二教师超分模型在网络结构上更深,使用了八个第三特征提取模块_4(如,输出的特征的通道数为4的SRBlock)。
利用超分模型(学生超分模型、第一教师超分模型、第二教师超分模型)对输入的较低分辨率的图像进行超分处理,输出较高分辨率的图像的技术是人工智能领域中的一种计算机视觉技术。其中,计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理(如,图像超分处理)、图像识别、图像语义理解、图像检索、OCR(Optical Character Recognition,光学字符识别)、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D(ThreeDimensional,三维)技术、虚拟现实、增强现实、同步定位与地图构建、自动驾驶、智慧交通等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
在步骤204中,基于第一超分图像和第二超分图像之间的差异,以及第一超分图像和第三超分图像之间的差异,获取第一训练损失。
第一训练损失是更新学生超分模型的参数所需利用的损失,第一训练损失是基于第一超分图像和第二超分图像之间的差异,以及第一超分图像和第三超分图像之间的差异获取的,其中,第一超分图像和第二超分图像之间的差异能够体现出学生超分模型和第一教师超分模型的输出结果之间的差异,有利于使学生超分模型根据该差异学习到第一教师超分模型的超分方式,第一超分图像和第三超分图像之间的差异能够体现出学生超分模型和第二教师超分模型的输出结果之间的差异,有利于使学生超分模型根据该差异学习到第二教师超分模型的超分方式。通过综合学习第一教师超分模型的超分方式和第二教师超分模型的超分方式,能够使学生超分模型较为精准的学习到模型宽度方向的超分知识以及模型深度方向的超分知识,使训练得到的目标超分模型具有与较大的模型宽度和较大的模型深度的超分模型类似的超分性能,由于模型宽度和模型深度的提升均有利于超分性能的提升,所以能够保证训练得到的目标超分模型的超分性能,进而保证利用目标超分模型进行图像超分处理的质量。其中,模型宽度方向的超分知识用于指示模型宽度如何影响超分处理过程,模型深度方向的超分知识用于指示模型深度如何影响超分处理过程。
示例性地,对于照片处理场景,第一超分图像是指第一超分照片,第二超分图像是指第二超分照片,第三超分图像是指第三超分照片,基于第一超分图像和第二超分图像之间的差异,以及第一超分图像和第三超分图像之间的差异,获取第一训练损失是指基于第一超分照片和第二超分照片之间的差异,以及第一超分照片和第三超分照片之间的差异,获取第一训练损失。
对于视频处理场景,第一超分图像是指第一超分视频帧,第二超分图像是指第二超分视频帧,第三超分图像是指第三超分视频帧,基于第一超分图像和第二超分图像之间的差异,以及第一超分图像和第三超分图像之间的差异,获取第一训练损失是指基于第一超分视频帧和第二超分视频帧之间的差异,以及第一超分视频帧和第三超分视频帧之间的差异,获取第一训练损失。
在示例性实施例中,基于第一超分图像和第二超分图像之间的差异,以及第一超分图像和第三超分图像之间的差异,获取第一训练损失的实现过程包括:基于第一超分图像和第二超分图像之间的差异,获取第一图像差异损失;基于第一超分图像和第三超分图像之间的差异,获取第二图像差异损失;基于第一图像差异损失和第二图像差异损失,获取第一训练损失。
两个图像之间的差异可以通过将两个图像代入损失函数后计算得到的结果体现,损失函数的类型可以根据经验选定,例如,损失函数的类型可以包括但不限于交叉熵损失函数、均方误差损失函数、KL(Kullback-Leibler)散度损失函数、L1范数损失函数、L2范数损失函数等。
示例性地,基于第一超分图像和第二超分图像之间的差异,获取第一图像差异损失的过程包括:将第一超分图像和第二超分图像代入损失函数进行计算,基于计算得到的结果获取第一图像差异损失。例如,将计算得到的结果作为第一图像差异损失,或者,将计算得到的结果与正则化项的和作为第一图像差异损失。正则化项用于抑制超分输出结果的噪声,提升超分结果在边缘处的平滑性。示例性地,正则化项可以是第二超分图像的TV(Total Variation,总变分)正则化项。
基于第一超分图像和第三超分图像之间的差异,获取第二图像差异损失的过程包括:将第一超分图像和第三超分图像代入损失函数进行计算,基于计算得到的结果获取第二图像差异损失。例如,将计算得到的结果作为第二图像差异损失,或者,将计算得到的结果与正则化项的和作为第二图像差异损失。正则化项用于抑制超分输出结果的噪声,提升超分结果在边缘处的平滑性。示例性地,正则化项可以是第三超分图像的TV正则化项。
在示例性实施例中,基于第一图像差异损失和第二图像差异损失,获取第一训练损失的实现方式可以为:将第一图像差异损失和第二图像差异损失的和或加权和作为第一训练损失。此种获取第一训练损失的过程仅需考虑第一图像差异损失和第二图像差异损失,需要考虑的损失的数量较小,有利于提高第一训练损失的获取效率。
在示例性实施例中,基于第一图像差异损失和第二图像差异损失,获取第一训练损失的实现方式还可以为:基于第一数量个第一特征提取模块输出的图像特征和第一数量个第二特征提取模块输出的图像特征,获取特征差异损失;基于特征差异损失、第一图像差异损失和第二图像差异损失,获取第一训练损失。
第一数量个第一特征提取模块是学生超分模型中的特征提取模块,第一数量个第二特征提取模块是第一教师超分模型中的特征提取模块,通过额外考虑学生超分模型中的各个特征提取模块输出的图像特征和模型深度相同但模型宽度更大的第一教师超分模型中的各个特征提取模块输出的图像特征来获取第一训练损失,能够第一训练损失不仅考虑学生超分模型和教师超分模型的输出结果之间的差异,还考虑学生超分模型和模型深度相同的教师超分模型的中间层输出特征之间的差异,考虑的信息较丰富,有利于提高第一训练损失的全面性和可靠性,进而提高对学生超分模型的训练效果。示例性地,图像差异损失可以利用KD Loss表示,特征差异损失可以利用CD Loss表示。
在示例性实施例中,第一数量个第一特征提取模块和第一数量个第二特征提取模块一一对应,基于第一数量个第一特征提取模块输出的图像特征和第一数量个第二特征提取模块输出的图像特征,获取特征差异损失的实现过程可以为:对于第一数量个第一特征提取模块中的任一第一特征提取模块,对任一第一特征提取模块输出的图像特征进行通道扩充,得到任一第一特征提取模块对应的通道扩充后的图像特征,通道扩充后的图像特征的通道数与任一第一特征提取模块对应的第二特征提取模块输出的图像特征的通道数相同;基于任一第一特征提取模块对应的通道扩充后的图像特征和任一第一特征提取模块对应的第二特征提取模块输出的图像特征之间的差异,确定任一第一特征提取模块对应的特征差异子损失;基于第一数量个第一特征提取模块分别对应的特征差异子损失,获取特征差异损失。
示例性地,通道扩充的目的是使提高第一特征提取模块输出的特征的通道数,以使其与第二特征提取模块输出的特征的通道数对齐,便于比对差异。在将特征提取模块输出的特征的通道数对齐后再进行特征差异损失的获取,有利于保证获取的特征差异损失的可靠性。
示例性地,通道扩充可以通过通道扩充模块实现,通道扩充模块用于实现对特征的通道数的扩充。通道扩充模块可以包括一个或多个子模块,例如,如图8所示,通道扩充模块可以包括一个卷积子模块、一个标准化子模块(如,BN子模块)和一个激活子模块(如,ReLU子模块)。当然,通道扩充模块包括的子模块还可以为其他情况,此处不再一一赘述。如图8所示,在一些实施例中,通道扩充模块可以表示为ChannelBridge(通道桥)。
示例性地,可以将任一第一特征提取模块对应的通道扩充后的图像特征和任一第一特征提取模块对应的第二特征提取模块输出的图像特征代入损失函数进行计算,将计算得到的结果作为任一第一特征提取模块对应的特征差异子损失。示例性地,可以将第一数量个第一特征提取模块分别对应的特征差异子损失的和或加权和作为特征差异损失。
在示例性实施例中,基于第一数量个第一特征提取模块输出的图像特征和第一数量个第二特征提取模块输出的图像特征,获取特征差异损失的实现过程还可以为:对于第一数量个第二特征提取模块中的任一第二特征提取模块,对任一第二特征提取模块输出的图像特征进行通道缩小,得到任一第二特征提取模块对应的通道缩小后的图像特征,通道缩小后的图像特征的通道数与任一第二特征提取模块对应的第一特征提取模块输出的图像特征的通道数相同;基于任一第二特征提取模块对应的通道缩小后的图像特征和任一第二特征提取模块对应的第一特征提取模块输出的图像特征之间的差异,确定任一第二特征提取模块对应的特征差异子损失;基于第一数量个第二特征提取模块分别对应的特征差异子损失,获取特征差异损失。
在步骤205中,使用第一训练损失对学生超分模型的参数进行更新,得到更新后的学生超分模型;若当前训练过程满足训练终止条件,将更新后的学生超分模型作为目标超分模型,目标超分模型用于对图像进行超分处理。
在获取第一训练损失后,使用第一训练损失对学生超分模型的参数进行更新,以完成对学生超分模型的一次训练,将更新参数后得到的模型作为更新后的学生超分模型。需要说明的是,此处的更新后的学生超分模型是指更新一次后的学生超分模型。示例性地,基于第一训练损失,计算学生超分模型的参数的更新梯度,根据更新梯度对学生超分模型的参数进行更新。示例性地,基于第一训练损失,可以利用梯度下降法计算学生超分模型的参数的更新梯度。
示例性地,使用训练损失对模型的参数进行更新属于人工智能技术领域中的机器学习分支。机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
在获取更新后的学生超分模型后,判断当前训练过程是否满足训练终止条件,若当前训练过程满足训练终止条件,则将更新后的学生超分模型作为目标超分模型。目标超分模型即为训练好的超分模型,该训练好的目标超分模型能够在推理阶段对图像进行超分处理。
当前训练过程满足训练终止条件根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。示例性地,当前训练过程满足训练终止条件包括但不限于当前训练过程已执行的超分模型训练次数达到次数阈值、当前训练过程获取的用于对超分模型的参数进行更新的训练损失小于损失阈值、当前训练过程获取的用于对超分模型的参数进行更新的训练损失收敛中的任一项。次数阈值和损失阈值均根据经验设置,或者根据应用场景灵活调整。
若当前训练过程不满足训练终止条件,则需要对更新后的学生超分模型进行训练,直至训练过程满足训练终止条件,将满足训练终止条件时得到的超分模型作为目标超分模型。
在对更新后的学生超分模型进行训练的过程中,仍然需要教师超分模型的参与。在示例性实施例中,第一教师超分模型和第二教师超分模型可以为预先离线训练好的超分模型,则在对更新后的学生超分模型进行训练的过程中,可以始终利用第一教师超分模型和第二教师超分模型,此种过程可以称为离线知识蒸馏过程。在示例性实施例中,第一教师超分模型和第二教师超分模型是需要与学生超分模型一同训练的,则在对更新后的学生超分模型进行训练的过程中,利用的是更新后的第一教师超分模型和更新后的第二教师超分模型,此种过程可以称为在线知识蒸馏过程。其中,离线知识蒸馏过程所需的计算量较小,在线知识蒸馏过程的训练效果更好,可以根据计算机设备的计算能力灵活选择是进行离线知识蒸馏还是进行在线知识蒸馏。
在一种可能实现方式中,对于离线知识蒸馏过程,利用第一教师超分模型和第二教师超分模型对更新后的学生超分模型进行训练,直至得到目标超分模型。
示例性地,利用第一教师超分模型和第二教师超分模型对更新后的学生超分模型进行训练的实现方式包括:利用更新后的学生超分模型对样本图像进行超分处理,得到更新后的第一超分图像;利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像;基于更新后的第一超分图像和第二超分图像之间的差异,以及更新后的第一超分图像和第三超分图像之间的差异,获取更新后的第一训练损失;使用更新后的第一训练损失对更新后的学生超分模型的参数进行更新,得到再次更新后的学生超分模型;若当前训练过程满足训练终止条件,将再次更新后的学生超分模型作为目标超分模型。
需要说明的是,在对更新后的学生超分模型进行训练的过程中,所利用的样本图像可以发生变化,也可以不发生变化。若所利用的样本图像发生变化,则即使第一教师超分模型和第二教师超分模型不发生变化,则第一教师超分模型输出的第二超分图像和第二教师超分模型输出的第三超分图像也会发生变化。
在一种可能实现方式中,对于在线知识蒸馏过程,利用更新后的第一教师超分模型和更新后的第二教师超分模型对更新后的学生超分模型进行训练,得到目标超分模型。在此种方式中,对更新后的学生超分模型进行训练所依据的两个教师超分模型是实时更新的,有利于保证两个教师超分模型的超分性能与实际的样本图像的匹配度,从而能够利用两个教师超分模型更好地对学生超分模型进行训练,提高学生超分模型的训练效果。
在利用更新后的第一教师超分模型和更新后的第二教师超分模型对更新后的学生超分模型进行训练之前,需要先获取更新后的第一教师超分模型和更新后的第二教师超分模型。
在示例性实施例中,获取更新后的第一教师超分模型和更新后的第二教师超分模型的过程包括:基于第二超分图像和样本图像对应的标签图像之间的差异,获取第二训练损失;基于第三超分图像和标签图像之间的差异,获取第三训练损失;使用第二训练损失更新第一教师超分模型的参数,得到更新后的第一教师超分模型;使用第三训练损失更新第二教师超分模型的参数,得到更新后的第二教师超分模型。其中,标签图像的分辨率为第二分辨率。需要说明的是,更新后的第一教师超分模型是指对第一教师超分模型的参数更新一次后的模型,更新后的第二教师超分模型是对第二教师超分模型的参数更新一次后的模型。
样本图像对应的标签图像是指样本图像对应的真实的高分辨率(第二分辨率)的图像。示例性地,样本图像对应的标签图像可以由技术人员通过对样本图像进行分析确定。示例性地,对于样本图像通过对第二分辨率的原始图像进行降质得到的情况,样本图像对应的标签图像可以是指获取样本图像所依据的原始图像。
第二训练损失是用于对第一教师超分模型的参数进行更新的损失。在示例性实施例中,基于第二超分图像和样本图像对应的标签图像之间的差异,获取第二训练损失的实现过程包括:基于第二超分图像和标签图像之间的差异,获取第三图像差异损失;基于第三图像差异损失,获取第二训练损失。
第三图像差异损失是根据标签图像对第一教师超分模型的输出结果进行监督的损失。示例性地,将第二超分图像和标签图像代入损失函数(如,交叉熵损失函数、均方误差损失函、KL散度损失函数、L1范数损失函数、L2范数损失函数等)进行计算,将计算得到的结果作为第三图像差异损失。
示例性地,基于第三图像差异损失,获取第二训练损失可以是指直接将第三图像差异损失作为第二训练损失,也可以是指基于第三图像差异损失和第一生成对抗损失,获取第二训练损失。例如,将第三图像差异损失和第一生成对抗损失的和或者加权和作为第二训练损失。
其中,第一生成对抗损失的获取方式包括:利用第一判别模型获取第二超分图像的第一判别结果,第一判别结果用指示第二超分图像为真实图像的概率;基于第一判别结果,获取第一生成对抗损失。第一生成对抗损失是将第一教师超分模型作为生成器,将第一判别模型作为判别器,根据第一判别模型对第一教师超分模型输出的第二超分图像的判别结果计算得到的损失。其中,真实图像是指真实存在的图像,与真实图像相对的是模型生成的图像。第一生成对抗损失能够根据判别结果提供额外的监督信息,使第一教师超分模型尽可能输出能够欺骗判别器的结果,也即使第一教师超分模型的超分输出结果更加精细。在第三图像差异损失的基础上,额外考虑第一生成对抗损失,有利于提高第二训练损失的全面性和可靠性,进而提高对第一教师超分模型进行训练的效果。
示例性地,第一教师超分模型和第一判别模型可以构成一个GAN(GenerativeAdversarial Networks,生成式对抗网络),将第一判别结果代入GAN对应的损失函数,能够获取第一生成对抗损失。
第三训练损失是用于对第二教师超分模型的参数进行更新的损失。在示例性实施例中,基于第三超分图像和标签图像之间的差异,获取第三训练损失的实现过程包括:基于第三超分图像和标签图像之间的差异,获取第四图像差异损失;基于第四图像差异损失,获取第三训练损失。
第四图像差异损失是根据标签图像对第二教师超分模型的输出结果进行监督的损失。示例性地,将第三超分图像和标签图像代入损失函数(如,交叉熵损失函数、均方误差损失函、KL散度损失函数、L1范数损失函数、L2范数损失函数等)进行计算,将计算得到的结果作为第四图像差异损失。
示例性地,基于第四图像差异损失,获取第三训练损失可以是指直接将第四图像差异损失作为第三训练损失,也可以是指基于第四图像差异损失和第二生成对抗损失,获取第三训练损失。例如,将第四图像差异损失和第二生成对抗损失的和或者加权和作为第三训练损失。
其中,第二生成对抗损失的获取方式包括:利用第二判别模型获取第三超分图像的第二判别结果,第二判别结果用指示第三超分图像为真实图像的概率;基于第二判别结果,获取第二生成对抗损失。第二生成对抗损失是将第二教师超分模型作为生成器,将第二判别模型作为判别器,根据第二判别模型对第二教师超分模型输出的第三超分图像的判别结果计算得到的损失。第二生成对抗损失能够根据判别结果提供额外的监督信息,使第二教师超分模型尽可能输出能够欺骗判别器的结果,也即使第二教师超分模型的超分输出结果更加精细。在第四图像差异损失的基础上,额外考虑第二生成对抗损失,有利于提高第三训练损失的全面性和可靠性,进而提高对第二教师超分模型进行训练的效果。
示例性地,第二教师超分模型和第二判别模型可以构成一个GAN(GenerativeAdversarial Networks,生成式对抗网络),将第二判别结果代入GAN对应的损失函数,能够获取第二生成对抗损失。
第一判别模型和第二判别模型是分别与第一教师超分模型和第二教师超分模型对应的判别模型,分别用于对第二超分图像和第三超分图像进行判别。示例性地,第一判别模型和第二判别模型均包括特征提取模块和判别模块,其中,特征提取模块用于对输入的待判别的图像进行特征提取,判别模块用于对提取的特征进行判别。
在示例性实施例中,第一判别模型和第二判别模型可以为两个完全独立的模型,也可以为共享特征提取模块的两个模型等。对于第一判别模型和第二判别模型为共享特征提取模块的两个模型的情况,可以节省模型的参数的数量,减少训练过程中的算力要求以及训练时间。
示例性地,对于第一判别模型和第二判别模型为共享特征提取模块的两个模型的情况,第一判别模型和第二判别模型包括共享的特征提取模块,第一判别模型还包括第一判别模块,第二判别模型还包括第二判别模块。利用第一判别模型获取第二超分图像的第一判别结果的实现过程包括:利用共享的特征提取模块对第二超分图像进行特征提取,得到第一判别特征;利用第一判别模块对第一判别特征进行判别,得到第一判别结果。利用第二判别模型获取第三超分图像的第二判别结果的实现过程包括:利用共享的特征提取模块对第三超分图像进行特征提取,得到第二判别特征;利用第二判别模块对第二判别特征进行判别,得到第二判别结果。
共享的特征提取模块可以包括一个或多个子模块,共享的特征提取模块包括的子模块的具体情况可以根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。示例性地,共享的特征提取模块可以包括至少一个第一子模块和至少一个第二子模块,第一子模块和第二子模块的内部结构不同,但均可以用于提取特征。例如,如图9中的(1)所示,第一子模块包括一个卷积子模块和一个激活子模块(如LeakyReLU子模块),第一子模块可以表示为ConvReLU。如图9中的(2)所示,第二子模块包括一个卷积子模块、一个标准化子模块(如,BN子模块)和一个激活子模块(如LeakyReLU子模块),第二子模块可以表示为ConvBNReLU。
示例性地,第一判别模块和第二判别模块可以各自包括一个或多个子模块,可以根据经验设置。例如,第一判别模块和第二判别模型均各自包括至少一个第二子模块和一个卷积子模块。
例如,共享特征提取模块的第一判别模型和第二判别模型的结构可以如图9中的(3)所示。图9中的(3)所示的结构可以称为一个局部共享判别器模型。该局部共享判别器模型是一种包括一个共享的特征提取模块以及两个独立的判别模块的模型,该共享的特征提取模块和两个独立的判别模块中的一个判别模块构成第一判别模型,该共享的特征提取模块和两个独立的判别模块中的另一个判别模块构成第二判别模型。根据图9中的(3)可以看出,该局部共享判别器模型有两个输出,这两个输出分别用于和两个教师超分模型(第一教师超分模型和第二教师超定模型)进行对抗学习,指导两个教师超分模型生成更加精细的超分结果。值得注意的是,两个判别器分支共享特征提取模块,这样可以减少训练过程中的算力要求以及训练时间。根据图9中的(3)可以看出,局部共享判别器模型中共享的特征提取模块首先经过一个第一子模块(见图9中的(1)),再经过两个第二子模块(见图9中的(2))进行共享特征提取。此后,对应两个教师超分模型的分支先经过一个第二子模块,再经过一个卷积子模块,得到最后的判别输出(也即判别结果)。
在示例性实施例中,利用更新后的第一教师超分模型和更新后的第二教师超分模型对更新后的学生超分模型进行训练,得到目标超分模型的实现过程包括:利用更新后的学生超分模型对样本图像进行超分处理,得到更新后的第一超分图像;利用更新后的第一教师超分模型对样本图像进行超分处理,得到更新后的第二超分图像;利用更新后的第二教师超分模型对样本图像进行超分处理,得到更新后的第三超分图像;基于更新后的第一超分图像和更新后的第二超分图像之间的差异,以及更新后的第一超分图像和更新后的第三超分图像之间的差异,获取更新后的第一训练损失;使用更新后的第一训练损失对更新后的学生超分模型的参数进行更新,得到再次更新后的学生超分模型;若当前训练过程满足训练终止条件,将再次更新后的学生超分模型作为目标超分模型。
在示例性实施例中,对于教师超分模型的训练过程考虑了判别模型的情况,方法还包括:使用第一生成对抗损失对第一判别模型的参数进行更新,得到更新后的第一判别模型;使用第二生成对抗损失对第二判别模型的参数进行更新,得到更新后的第二判别模型。其中,更新后的第一判别模型用于对更新后的第一教师超分模型的参数进行更新,更新后的第二判别模型用于对更新后的第二教师超分模型的参数进行更新。也就是说,在对更新后的教师超分模型进行训练的过程中,考虑的是更新后的判别模型,更新后的判别模型的判别准确性更高,能够进一步提高对更新后的教师超分模型进行训练的效果。
示例性地,本申请实施例提供了一种基于在线知识蒸馏的多粒度的训练结构,如图10所示,该训练结构包括一个学生超分模型,一个宽度教师模型(也即第一教师超分模型),一个深度教师模型(也即第二教师超分模型)以及用于教师超分模型对抗训练的局部共享判别器模型。
图10中展示了基于多粒度知识蒸馏算法进行超分模型训练的整体架构。多粒度知识蒸馏是指同时使用深度教师模型和宽度教师模型对学生超分模型进行指导,最终达到模型压缩同时保证超分性能的目标。
深度教师模型(也即第二教师超分模型)在网络宽度方面和学生超分模型相同,在网络深度方向将超分知识蒸馏到学生超分模型之中。具体地,如图10所示,深度教师模型通过第二图像差异损失将自己的知识迁移到学生超分模型中。
宽度教师模型(也即第一教师超分模型)则在网络深度方向和学生超分模型相同,在网络宽度上比学生超分模型要宽。通过通道扩充模块和特征差异损失,宽度教师模型将中间层特征的知识蒸馏到学生超分模型相同深度的特征层中,提供了特征级别的知识蒸馏。另外,宽度教师模型也通过第一图像差异损失将自己的输出知识蒸馏进学生超分模型的超分输出中。
在整个多粒度知识蒸馏架构中引入了局部共享判别器模型,以提升两个教师模型的超分输出质量从而达到提升学生超分模型输出质量的效果。两个教师模型和标签图像通过图像差异进行超分任务的学习。局部共享判别器模型的两个判别分支分别通过生成对抗损失和宽度教师模型以及深度教师模型进行对抗学习,使得两个教师超分模型的超分输出结果更加精细。
图10所示的整个多粒度知识蒸馏过程是一个在线知识蒸馏过程:学生超分模型和两个教师模型都是从头开始训练,两个教师模型在训练过程中逐步将自己的知识迁移到学生超分模型之中。在线知识蒸馏的过程弥补了学生超分模型和教师模型之间的性能差距。
在线多粒度知识蒸馏训练过程依次按以下步骤进行:1.数据降质:按照高阶降质过程对高清数据进行高阶降质,获得配对的超分数据。2.对学生超分模型和两个教师模型进行前向传播。3.设置局部共享判别器模型需要梯度,对局部共享判别器进行反向传播以求取局部共享判别器参数的梯度。4.设置局部共享判别器模型不需要梯度,对两个教师模型进行反向传播,求取两个教师模型参数的梯度。5.根据求取的局部共享判别器模型的参数的梯度更新局部共享判别器模型的参数,根据求取的两个教师模型的参数的梯度,更新两个教师模型的参数。6.对学生超分模型进行反向传播求取学生超分模型的参数的梯度,更新学生超分模型的参数。7.重复上述1-6的训练过程,完成整个图像超分模型的训练。
需要说明的是,本申请实施例仅以提供两个教师超分模型参与图像超分模型的训练过程为例进行说明,但本申请实施例并不局限于此,在一些实施例中,还可以提供更多的教师超分模型参与图像超分模型的训练过程,以进一步提高学生超分模型的训练效果。例如,在第一教师超分模型和第二教师超分模型的基础上,额外提供一个模型宽度和模型深度都大于学生超分模型的第三教师超分模型来参与图像超分模型的训练过程。
在获取目标超分模型后,可以利用目标超分模型对图像进行超分处理,该过程详见图11所示的实施例,此处暂不赘述。例如,对于照片处理场景,利用目标超分模型对照片进行超分处理;对于视频处理场景,利用目标超分模型对视频帧进行超分处理。
本申请实施例能够基于知识蒸馏技术,结构重参数化技术和生成对抗学习技术来实现一种提升音视频通讯低码率画质的实时超分技术,既能保证图像超分处理的质量又能满足在移动端实时运行的超分技术。本申请实施例所带来的有益效果可以归纳为:1.已有的端上视频超分技术方案所使用的模型的FLOPS(floating-point operations persecond,计算量)都在300M(兆)以上,本申请实施例突破性地通过知识蒸馏和结构重参数化技术将超分模型的计算量压缩到54M FLOPS的极限,大大降低了移动端超分的耗时,同时大幅度减少移动端超分的功耗和发热问题。2.已有的移动端超分技术方案在追求缩减超分耗时的同时会大幅降低超分输出结果质量,本申请基于在线知识蒸馏的技术方案所实现的超分模型在满足端上实时推理的同时保证超分的效果。
本申请实施例提供的图像超分模型的训练方法,目标超分模型是对学生超分模型进行训练得到的,学生超分模型的模型宽度或模型深度小于教师超分模型,由于模型宽度或模型深度越大所需的模型参数越多,所以学生超分模型的模型参数较少,从而减少根据目标超分模型对图像进行超分处理的计算量,保证图像超分处理的效率。此外,学生超分模型是在模型宽度较大和模型深度较大的两个教师超分模型的共同约束下进行训练的,其中,模型宽度较大的教师超分模型能够将模型深度方向的超分知识迁移到学生超分模型中,模型深度较大的教师超分模型能够将模型深度方向的超分知识迁移到学生超分模型中,从而使学生超分模型较为精准的学习到模型宽度方向的超分知识以及模型深度方向的超分知识,使训练得到的目标超分模型具有与较大的模型宽度和较大的模型深度的超分模型类似的超分性能,由于模型宽度和模型深度的提升均有利于超分性能的提升,所以能够保证训练得到的目标超分模型的超分性能,进而保证利用目标超分模型进行图像超分处理的质量。综上,基于本申请实施例提供的图像超分模型的训练方法能够实现一种兼顾图像超分处理的质量和图像超分处理的效率的图像超分处理过程。
进一步地,由于原始图像的资源比较丰富,所以,通过对原始图像进行降质获取样本图像,能够保证获取足够数量的样本图像,从而保证模型训练的效果。此外,由于样本图像是通过对原始图像进行降质获取的,所以能够将原始图像作为样本图像对应的真实的超分图像(也即样本图像对应的标签图像),从而能够便捷的获取较为可靠的“样本图像-标签图像”的配对数据,为模型训练提供可靠的数据支持。
在利用超分模型进行超分处理的过程中,通过多个特征提取模块对样本图像进行特征提取,有利于保证提取的特征的可靠性,进而提高根据提取的特征获取的超分图像的可靠性。
通过额外考虑学生超分模型中的各个特征提取模块输出的图像特征和模型深度相同但模型宽度更大的第一教师超分模型中的各个特征提取模块输出的图像特征来获取第一训练损失,能够第一训练损失不仅考虑学生超分模型和教师超分模型的输出结果之间的差异,还考虑学生超分模型和模型深度相同的教师超分模型的中间层输出特征之间的差异,考虑的信息较丰富,有利于提高第一训练损失的全面性和可靠性,进而提高对学生超分模型的训练效果。并且,在将特征提取模块输出的特征的通道数对齐后再进行特征差异损失的获取,有利于保证获取的特征差异损失的可靠性。
另外,对更新后的学生超分模型进行训练所依据的两个教师超分模型是实时更新的,有利于保证两个教师超分模型的超分性能与实际的样本图像的匹配度,从而能够利用两个教师超分模型更好地对学生超分模型进行训练,提高学生超分模型的训练效果。
更新教师超分模型的参数所利用的训练损失通过综合考虑图像差异损失和生成对抗损失得到,生成对抗损失能够根据判别结果提供额外的监督信息,使教师超分模型尽可能输出能够欺骗判别器的结果,也即使教师超分模型的超分输出结果更加精细。在图像差异损失的基础上,额外考虑生成对抗损失,有利于提高训练损失的全面性和可靠性,进而提高对教师超分模型进行训练的效果。此外,两个教师超分模型所对应的两个判别模型可以共享特征提取模块,从而节省模型的参数的数量,减少训练过程中的算力要求以及训练时间。
在对更新后的教师超分模型进行训练的过程中,考虑的是更新后的判别模型,更新后的判别模型的判别准确性更高,能够进一步提高对更新后的教师超分模型进行训练的效果。
基于上述图1所示的实施环境,本申请实施例提供一种图像超分处理方法,该图像超分处理方法由计算机设备执行,该计算机设备可以为终端11,也可以为服务器12,本申请实施例对此不加以限定。如图11所示,本申请实施例提供的图像超分处理方法可以包括如下步骤1101至步骤1103。
在步骤1101中,获取第一图像,第一图像的分辨率为第一分辨率。
第一图像是指分辨率为第一分辨率且分辨率有待提高的图像,例如,第一图像可以是指图像采集设备采集的第一分辨率的照片,也可以是指第一分辨率的视频中的视频帧等。
示例性地,在照片处理场景中,获取第一照片,该第一照片的分辨率为第一分辨率;在视频处理场景中,获取第一视频帧,该第一视频帧的分辨率为第一分辨率。
在步骤1102中,利用目标超分模型对第一图像进行超分处理,得到目标超分图像,目标超分图像的分辨率为第二分辨率,第二分辨率大于第一分辨率。
其中,目标超分模型利用图2所示的图像超分模型的训练方法训练得到。
在示例性实施例中,利用目标超分模型对第一图像进行超分处理,得到目标超分图像的过程可以是指直接利用目标超分模型对第一图像进行超分处理,得到目标超分图像。此过程的原理与图2所示的实施例中的步骤202的原理相同,此处不再加以赘述。
示例性地,在照片处理场景中,利用目标超分模型对第一图像进行超分处理,得到目标超分图像是指利用目标超分模型对第一照片进行超分处理,得到目标超分照片,该目标超分照片的分辨率为第二分辨率;在视频处理场景中,利用目标超分模型对第一图像进行超分处理,得到目标超分图像是指利用目标超分模型对第一视频帧进行超分处理,得到目标超分视频帧,该目标超分视频帧的分辨率为第二分辨率。
在示例性实施例中,目标超分模型包括满足重参数化条件的结构,重参数化用于在保持结构的性能的基础上降低结构的参数数量。此种情况下,利用目标超分模型对第一图像进行超分处理,得到目标超分图像可以是指:对目标超分模型中的满足重参数化条件的结构进行重参数化,得到重参数化后的超分模型,重参数化后的超分模型的参数数量小于目标超分模型的参数数量,且重参数化后的超分模型的超分性能等于目标超分模型的超分性能;利用重参数化后的超分模型对第一图像进行超分处理,得到目标超分图像。此种方式能够在保证超分性能的同时,减少超分处理所需的计算量,提高图像超分处理的效率。
目标超分模型中的满足重参数化条件的结构是指允许重参数化的结构,也即能够利用一组参数更少的结构进行同等替换的结构。目标超分模型中的满足重参数化条件的结构可以根据经验设置,或者根据应用场景灵活调整,本申请实施例对此不加以限定。示例性地,目标超分模型中的满足重参数化条件的结构可以是指特征提取模块,特征提取模块中可以包括一个或多个满足重参数化条件的结构。例如,目标超分模型中的满足重参数化条件的结构可以为图5中的(1)所示的第一特征提取模块,该第一特征提取模块可以重参数化为图5中的(2)所示的结构。在图5中的(1)所示的第一特征提取模块中,还包括满足重参数化条件的结构RepBlock-3*3,RepBlock-3*3的结构可以参见图4。在对图5中的(1)所示的第一特征提取模块进行重参数化的过程中,先对图4所示的RepBlock-3*3进行重参数化,然后将重参数化后得到的结构替代第一特征提取模块中的RepBlock-3*3进行进一步重参数化。
在步骤1103中,显示目标超分图像。
目标超分图像是利用训练好的目标超分模型得到的第一图像对应的较高质量的超分图像,在获取目标超分图像后,显示目标超分图像。例如,计算机设备直接在屏幕上显示目标超分图像,或者,计算机设备通过其他具有显示功能的设备显示目标超分图像等。
本申请实施例提供的图像超分处理方法,根据目标超分模型实现对图像的超分处理,其中,目标超分模型是对学生超分模型进行训练得到的,学生超分模型的模型宽度或模型深度小于教师超分模型,由于模型宽度或模型深度越大所需的模型参数越多,所以学生超分模型的模型参数较少,从而减少根据目标超分模型对图像进行超分处理的计算量,保证图像超分处理的效率。
此外,学生超分模型是在模型宽度较大和模型深度较大的两个教师超分模型的共同约束下进行训练的,其中,模型宽度较大的教师超分模型能够将模型深度方向的超分知识迁移到学生超分模型中,模型深度较大的教师超分模型能够将模型深度方向的超分知识迁移到学生超分模型中,从而使学生超分模型较为精准的学习到模型宽度方向的超分知识以及模型深度方向的超分知识,使训练得到的目标超分模型具有与较大的模型宽度和较大的模型深度的超分模型类似的超分性能,由于模型宽度和模型深度的提升均有利于超分性能的提升,所以能够保证训练得到的目标超分模型的超分性能,进而保证利用目标超分模型进行图像超分处理的质量。
综上,本申请实施例提供的方案能够兼顾图像超分处理的质量和图像超分处理的效率。
进一步地,在利用目标超分模型进行超分处理之前,可以先对目标超分模型进行重参数化,以在保证超分性能的同时,减少超分处理所需的计算量,提高图像超分处理的效率。
参见图12,本申请实施例提供了一种图像超分模型的训练装置,该装置包括:
第一获取单元1201,用于获取样本图像,样本图像的分辨率为第一分辨率;
第一处理单元1202,用于利用学生超分模型对样本图像进行超分处理,得到第一超分图像,第一超分图像的分辨率为第二分辨率,第二分辨率大于第一分辨率;
第一处理单元1202,还用于利用第一教师超分模型对样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对样本图像进行超分处理,得到第三超分图像,第二超分图像和第三超分图像的分辨率均为第二分辨率;第一教师超分模型的模型宽度大于学生超分模型的模型宽度,第二教师超分模型的模型深度大于学生超分模型的模型深度,模型深度用于指示模型包括的特征提取模块的数量,模型宽度用于指示模型包括的特征提取模块所提取的特征的通道数;
第一获取单元1201,还用于基于第一超分图像和第二超分图像之间的差异,以及第一超分图像和第三超分图像之间的差异,获取第一训练损失;
更新单元1203,用于使用第一训练损失对学生超分模型的参数进行更新,得到更新后的学生超分模型;
第一获取单元1201,还用于若当前训练过程满足训练终止条件,将更新后的学生超分模型作为目标超分模型,目标超分模型用于对图像进行超分处理。
在一种可能实现方式中,学生超分模型包括第一特征转换模块和第一数量个第一特征提取模块,第一教师超分模型包括第二特征转换模块和第一数量个第二特征提取模块,第二教师超分模型包括第三特征转换模块和第二数量个第三特征提取模块;第二特征提取模块所提取的特征的通道数大于第一特征提取模块所提取的特征的通道数,第二数量大于第一数量;
第一处理单元1202,用于利用第一数量个第一特征提取模块对样本图像进行特征提取,得到第一图像特征;利用第一特征转换模块对第一图像特征进行转换,得到第一超分图像;利用第一数量个第二特征提取模块对样本图像进行特征提取,得到第二图像特征;利用第二特征转换模块对第二图像特征进行转换,得到第二超分图像;利用第二数量个第三特征提取模块对样本图像进行特征提取,得到第三图像特征;利用第三特征转换模块对第三图像特征进行转换,得到第三超分图像。
在一种可能实现方式中,第一处理单元1202,用于利用第一数量个第一特征提取模块中的第一个第一特征提取模块对样本图像进行特征提取,得到第一个第一特征提取模块输出的图像特征;从第二个第一特征提取模块开始,利用后一个第一特征提取模块对前一个第一特征提取模块输出的图像特征进行特征提取,得到后一个第一特征提取模块输出的图像特征,直至得到最后一个第一特征提取模块输出的图像特征,将最后一个第一特征提取模块输出的图像特征作为第一图像特征;
利用第一数量个第二特征提取模块中的第一个第二特征提取模块对样本图像进行特征提取,得到第一个第二特征提取模块输出的图像特征;从第二个第二特征提取模块开始,利用后一个第二特征提取模块对前一个第二特征提取模块输出的图像特征进行特征提取,得到后一个第二特征提取模块输出的图像特征,直至得到最后一个第二特征提取模块输出的图像特征,将最后一个第二特征提取模块输出的图像特征作为第二图像特征;
第一获取单元1201,用于基于第一数量个第一特征提取模块输出的图像特征和第一数量个第二特征提取模块输出的图像特征,获取特征差异损失;基于第一超分图像和第二超分图像之间的差异,获取第一图像差异损失;基于第一超分图像和第三超分图像之间的差异,获取第二图像差异损失;基于特征差异损失、第一图像差异损失和第二图像差异损失,获取第一训练损失。
在一种可能实现方式中,第一数量个第一特征提取模块和第一数量个第二特征提取模块一一对应,第一获取单元1201,用于对于第一数量个第一特征提取模块中的任一第一特征提取模块,对任一第一特征提取模块输出的图像特征进行通道扩充,得到任一第一特征提取模块对应的通道扩充后的图像特征,通道扩充后的图像特征的通道数与任一第一特征提取模块对应的第二特征提取模块输出的图像特征的通道数相同;基于任一第一特征提取模块对应的通道扩充后的图像特征和任一第一特征提取模块对应的第二特征提取模块输出的图像特征之间的差异,确定任一第一特征提取模块对应的特征差异子损失;基于第一数量个第一特征提取模块分别对应的特征差异子损失,获取特征差异损失。
在一种可能实现方式中,第一获取单元1201,还用于若当前训练过程不满足所述训练终止条件,基于第二超分图像和样本图像对应的标签图像之间的差异,获取第二训练损失;基于第三超分图像和标签图像之间的差异,获取第三训练损失;标签图像的分辨率为第二分辨率;
更新单元1203,还用于使用第二训练损失更新第一教师超分模型的参数,得到更新后的第一教师超分模型;使用第三训练损失更新第二教师超分模型的参数,得到更新后的第二教师超分模型;
第一获取单元1201,用于利用更新后的第一教师超分模型和更新后的第二教师超分模型对更新后的学生超分模型进行训练,得到目标超分模型。
在一种可能实现方式中,第一获取单元1201,用于利用第一判别模型获取第二超分图像的第一判别结果,第一判别结果用指示第二超分图像为真实图像的概率;基于第一判别结果,获取第一生成对抗损失;基于第二超分图像和标签图像之间的差异,获取第三图像差异损失;基于第一生成对抗损失和第三图像差异损失,获取第二训练损失;
利用第二判别模型获取第三超分图像的第二判别结果,第二判别结果用指示第三超分图像为真实图像的概率;基于第二判别结果,获取第二生成对抗损失;基于第三超分图像和标签图像之间的差异,获取第四图像差异损失;基于第二生成对抗损失和第四图像差异损失,获取第三训练损失。
在一种可能实现方式中,第一判别模型和第二判别模型包括共享的特征提取模块,第一判别模型还包括第一判别模块,第二判别模型还包括第二判别模块;第一获取单元1201,用于利用共享的特征提取模块对第二超分图像进行特征提取,得到第一判别特征;利用第一判别模块对第一判别特征进行判别,得到第一判别结果;利用共享的特征提取模块对第三超分图像进行特征提取,得到第二判别特征;利用第二判别模块对第二判别特征进行判别,得到第二判别结果。
在一种可能实现方式中,更新单元1203,还用于使用第一生成对抗损失对第一判别模型的参数进行更新,得到更新后的第一判别模型,更新后的第一判别模型用于对更新后的第一教师超分模型的参数进行更新;使用第二生成对抗损失对第二判别模型的参数进行更新,得到更新后的第二判别模型,更新后的第二判别模型用于对更新后的第二教师超分模型的参数进行更新。
在一种可能实现方式中,第一获取单元1201,用于获取原始图像,原始图像的分辨率为第二分辨率;对原始图像连续执行至少一次降分辨率过程,得到样本图像;其中,执行任一次降分辨率过程包括对当前图像执行目标降分辨率操作,目标降分辨率操作包括模糊处理、尺寸缩放、添加噪声和编码压缩中的至少一种操作,目标降分辨率操作中的任一种操作通过任一种操作对应的任一种实现算法实现。
参见图13,本申请实施例提供了一种图像超分处理装置,该装置包括:
第二获取单元1301,用于获取第一图像,第一图像的分辨率为第一分辨率;
第二处理单元1302,用于利用目标超分模型对第一图像进行超分处理,得到目标超分图像,目标超分图像的分辨率为第二分辨率,第二分辨率大于第一分辨率;其中,目标超分模型利用上述任一图像超分模型的训练方法训练得到;
显示单元1303,用于显示目标超分图像。
在一种可能实现方式中,第二处理单元1302,用于对目标超分模型中的满足重参数化条件的结构进行重参数化,得到重参数化后的超分模型,重参数化后的超分模型的参数数量小于目标超分模型的参数数量,且重参数化后的超分模型的超分性能等于目标超分模型的超分性能;利用重参数化后的超分模型对第一图像进行超分处理,得到目标超分图像。
需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。上述实施例提供的装置所实现的效果与方法实施例所实现的效果相同,这里不再赘述。
在示例性实施例中,还提供了一种计算机设备,该计算机设备包括处理器和存储器,该存储器中存储有至少一条计算机程序。该至少一条计算机程序由一个或者一个以上处理器加载并执行,以使该计算机设备实现上述任一种图像超分模型的训练方法或图像超分处理方法。该计算机设备可以为服务器,也可以为终端。接下来,对服务器和终端的结构分别进行介绍。
图14是本申请实施例提供的一种服务器的结构示意图,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1401和一个或多个存储器1402,其中,该一个或多个存储器1402中存储有至少一条计算机程序,该至少一条计算机程序由该一个或多个处理器1401加载并执行,以使该服务器实现上述各个方法实施例提供的图像超分模型的训练方法或图像超分处理方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
图15是本申请实施例提供的一种终端的结构示意图。该终端可以是:PC、手机、智能手机、PDA、可穿戴设备、PPC、平板电脑、智能车机、智能电视、智能音箱、智能语音交互设备、智能家电、车载终端。终端还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端包括有:处理器1501和存储器1502。
处理器1501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1501可以集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1501所执行,以使该终端实现本申请中方法实施例提供的图像超分模型的训练方法或图像超分处理方法。
在一些实施例中,终端还可选包括有:外围设备接口1503和至少一个外围设备。处理器1501、存储器1502和外围设备接口1503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1503相连。具体地,外围设备包括:射频电路1504、显示屏1505、摄像头组件1506、音频电路1507和电源1508中的至少一种。
外围设备接口1503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1501和存储器1502。
射频电路1504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。
显示屏1505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1505是触摸显示屏时,显示屏1505还具有采集在显示屏1505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1501进行处理。此时,显示屏1505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。
摄像头组件1506用于采集图像或视频。可选地,摄像头组件1506包括前置摄像头和后置摄像头。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。
音频电路1507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1501进行处理,或者输入至射频电路1504以实现语音通信。扬声器则用于将来自处理器1501或射频电路1504的电信号转换为声波。在一些实施例中,音频电路1507还可以包括耳机插孔。
电源1508用于为终端中的各个组件进行供电。电源1508可以是交流电、直流电、一次性电池或可充电电池。
在一些实施例中,终端还包括有一个或多个传感器1509。该一个或多个传感器1509包括但不限于:加速度传感器1510、陀螺仪传感器1511、压力传感器1512、光学传感器1513以及接近传感器1514。
加速度传感器1510可以检测以终端建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1510可以用于检测重力加速度在三个坐标轴上的分量。处理器1501可以根据加速度传感器1510采集的重力加速度信号,控制显示屏1505以横向视图或纵向视图进行用户界面的显示。加速度传感器1510还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1511可以检测终端的机体方向及转动角度,陀螺仪传感器1511可以与加速度传感器1510协同采集用户对终端的3D动作。
压力传感器1512可以设置在终端的侧边框和/或显示屏1505的下层。当压力传感器1512设置在终端的侧边框时,可以检测用户对终端的握持信号,由处理器1501根据压力传感器1512采集的握持信号进行左右手识别或快捷操作。
光学传感器1513用于采集环境光强度。在一个实施例中,处理器1501可以根据光学传感器1513采集的环境光强度,控制显示屏1505的显示亮度。
接近传感器1514,也称距离传感器,通常设置在终端的前面板。接近传感器1514用于采集用户与终端的正面之间的距离。
本领域技术人员可以理解,图15中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序由计算机设备的处理器加载并执行,以使计算机实现上述任一种图像超分模型的训练方法或图像超分处理方法。
在一种可能实现方式中,上述计算机可读存储介质可以是只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、只读光盘(Compact DiscRead-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或计算机指令,该计算机程序或计算机指令由处理器加载并执行,以使计算机实现上述任一种图像超分模型的训练方法或图像超分处理方法。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的第一图像是在充分授权的情况下获取的。
需要说明的是,本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以上示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与本申请的一些方面相一致的装置和方法的例子。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (16)
1.一种图像超分模型的训练方法,其特征在于,所述方法包括:
获取样本图像,所述样本图像的分辨率为第一分辨率;
利用学生超分模型对所述样本图像进行超分处理,得到第一超分图像,所述第一超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;
利用第一教师超分模型对所述样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对所述样本图像进行超分处理,得到第三超分图像,所述第二超分图像和所述第三超分图像的分辨率均为所述第二分辨率;所述第一教师超分模型的模型宽度大于所述学生超分模型的模型宽度,所述第二教师超分模型的模型深度大于所述学生超分模型的模型深度,所述模型深度用于指示模型包括的特征提取模块的数量,所述模型宽度用于指示模型包括的特征提取模块所提取的特征的通道数;
基于所述第一超分图像和所述第二超分图像之间的差异,以及所述第一超分图像和所述第三超分图像之间的差异,获取第一训练损失;使用所述第一训练损失对所述学生超分模型的参数进行更新,得到更新后的学生超分模型;若当前训练过程满足训练终止条件,将所述更新后的学生超分模型作为目标超分模型,所述目标超分模型用于对图像进行超分处理。
2.根据权利要求1所述的方法,其特征在于,所述学生超分模型包括第一特征转换模块和第一数量个第一特征提取模块,所述第一教师超分模型包括第二特征转换模块和所述第一数量个第二特征提取模块,所述第二教师超分模型包括第三特征转换模块和第二数量个第三特征提取模块;所述第二特征提取模块所提取的特征的通道数大于所述第一特征提取模块所提取的特征的通道数,所述第二数量大于所述第一数量;
所述利用学生超分模型对所述样本图像进行超分处理,得到第一超分图像,包括:
利用所述第一数量个第一特征提取模块对所述样本图像进行特征提取,得到第一图像特征;利用所述第一特征转换模块对所述第一图像特征进行转换,得到所述第一超分图像;
所述利用第一教师超分模型对所述样本图像进行超分处理,得到第二超分图像,包括:
利用所述第一数量个第二特征提取模块对所述样本图像进行特征提取,得到第二图像特征;利用所述第二特征转换模块对所述第二图像特征进行转换,得到所述第二超分图像;
所述利用第二教师超分模型对所述样本图像进行超分处理,得到第三超分图像,包括:
利用所述第二数量个第三特征提取模块对所述样本图像进行特征提取,得到第三图像特征;利用所述第三特征转换模块对所述第三图像特征进行转换,得到所述第三超分图像。
3.根据权利要求2所述的方法,其特征在于,所述利用所述第一数量个第一特征提取模块对所述样本图像进行特征提取,得到第一图像特征,包括:
利用所述第一数量个第一特征提取模块中的第一个第一特征提取模块对所述样本图像进行特征提取,得到所述第一个第一特征提取模块输出的图像特征;从第二个第一特征提取模块开始,利用后一个第一特征提取模块对前一个第一特征提取模块输出的图像特征进行特征提取,得到后一个第一特征提取模块输出的图像特征,直至得到最后一个第一特征提取模块输出的图像特征,将最后一个第一特征提取模块输出的图像特征作为所述第一图像特征;
所述利用所述第一数量个第二特征提取模块对所述样本图像进行特征提取,得到第二图像特征,包括:
利用所述第一数量个第二特征提取模块中的第一个第二特征提取模块对所述样本图像进行特征提取,得到所述第一个第二特征提取模块输出的图像特征;从第二个第二特征提取模块开始,利用后一个第二特征提取模块对前一个第二特征提取模块输出的图像特征进行特征提取,得到后一个第二特征提取模块输出的图像特征,直至得到最后一个第二特征提取模块输出的图像特征,将最后一个第二特征提取模块输出的图像特征作为所述第二图像特征;
所述基于所述第一超分图像和所述第二超分图像之间的差异,以及所述第一超分图像和所述第三超分图像之间的差异,获取第一训练损失,包括:
基于所述第一数量个第一特征提取模块输出的图像特征和所述第一数量个第二特征提取模块输出的图像特征,获取特征差异损失;基于所述第一超分图像和所述第二超分图像之间的差异,获取第一图像差异损失;基于所述第一超分图像和所述第三超分图像之间的差异,获取第二图像差异损失;
基于所述特征差异损失、所述第一图像差异损失和所述第二图像差异损失,获取所述第一训练损失。
4.根据权利要求3所述的方法,其特征在于,所述第一数量个第一特征提取模块和所述第一数量个第二特征提取模块一一对应,所述基于所述第一数量个第一特征提取模块输出的图像特征和所述第一数量个第二特征提取模块输出的图像特征,获取特征差异损失,包括:
对于所述第一数量个第一特征提取模块中的任一第一特征提取模块,对所述任一第一特征提取模块输出的图像特征进行通道扩充,得到所述任一第一特征提取模块对应的通道扩充后的图像特征,所述通道扩充后的图像特征的通道数与所述任一第一特征提取模块对应的第二特征提取模块输出的图像特征的通道数相同;
基于所述任一第一特征提取模块对应的通道扩充后的图像特征和所述任一第一特征提取模块对应的第二特征提取模块输出的图像特征之间的差异,确定所述任一第一特征提取模块对应的特征差异子损失;
基于所述第一数量个第一特征提取模块分别对应的特征差异子损失,获取所述特征差异损失。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述当前训练过程不满足所述训练终止条件,基于所述第二超分图像和所述样本图像对应的标签图像之间的差异,获取第二训练损失;基于所述第三超分图像和所述标签图像之间的差异,获取第三训练损失;所述标签图像的分辨率为所述第二分辨率;
使用所述第二训练损失更新所述第一教师超分模型的参数,得到更新后的第一教师超分模型;使用所述第三训练损失更新所述第二教师超分模型的参数,得到更新后的第二教师超分模型;
利用所述更新后的第一教师超分模型和所述更新后的第二教师超分模型对所述更新后的学生超分模型进行训练,得到所述目标超分模型。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第二超分图像和所述样本图像对应的标签图像之间的差异,获取第二训练损失,包括:
利用第一判别模型获取所述第二超分图像的第一判别结果,所述第一判别结果用指示所述第二超分图像为真实图像的概率;基于所述第一判别结果,获取第一生成对抗损失;基于所述第二超分图像和所述标签图像之间的差异,获取第三图像差异损失;基于所述第一生成对抗损失和所述第三图像差异损失,获取所述第二训练损失;
所述基于所述第三超分图像和所述标签图像之间的差异,获取第三训练损失,包括:
利用第二判别模型获取所述第三超分图像的第二判别结果,所述第二判别结果用指示所述第三超分图像为真实图像的概率;基于所述第二判别结果,获取第二生成对抗损失;基于所述第三超分图像和所述标签图像之间的差异,获取第四图像差异损失;基于所述第二生成对抗损失和所述第四图像差异损失,获取所述第三训练损失。
7.根据权利要求6所述的方法,其特征在于,所述第一判别模型和所述第二判别模型包括共享的特征提取模块,所述第一判别模型还包括第一判别模块,所述第二判别模型还包括第二判别模块;
所述利用第一判别模型获取所述第二超分图像的第一判别结果,包括:
利用所述共享的特征提取模块对所述第二超分图像进行特征提取,得到第一判别特征;利用所述第一判别模块对所述第一判别特征进行判别,得到所述第一判别结果;
所述利用第二判别模型获取所述第三超分图像的第二判别结果,包括:
利用所述共享的特征提取模块对所述第三超分图像进行特征提取,得到第二判别特征;利用所述第二判别模块对所述第二判别特征进行判别,得到所述第二判别结果。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
使用所述第一生成对抗损失对所述第一判别模型的参数进行更新,得到更新后的第一判别模型,所述更新后的第一判别模型用于对所述更新后的第一教师超分模型的参数进行更新;
使用所述第二生成对抗损失对所述第二判别模型的参数进行更新,得到更新后的第二判别模型,所述更新后的第二判别模型用于对所述更新后的第二教师超分模型的参数进行更新。
9.根据权利要求1-8任一所述的方法,其特征在于,所述获取样本图像,包括:
获取原始图像,所述原始图像的分辨率为所述第二分辨率;对所述原始图像连续执行至少一次降分辨率过程,得到所述样本图像;
其中,执行任一次降分辨率过程包括对当前图像执行目标降分辨率操作,所述目标降分辨率操作包括模糊处理、尺寸缩放、添加噪声和编码压缩中的至少一种操作,所述目标降分辨率操作中的任一种操作通过所述任一种操作对应的任一种实现算法实现。
10.一种图像超分处理方法,其特征在于,所述方法包括:
获取第一图像,所述第一图像的分辨率为第一分辨率;
利用目标超分模型对所述第一图像进行超分处理,得到目标超分图像,所述目标超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;
显示所述目标超分图像;
其中,所述目标超分模型利用权利要求1-9任一所述图像超分模型的训练方法训练得到。
11.根据权利要求10所述的方法,其特征在于,所述利用目标超分模型对所述第一图像进行超分处理,得到目标超分图像,包括:
对所述目标超分模型中的满足重参数化条件的结构进行重参数化,得到重参数化后的超分模型,所述重参数化后的超分模型的参数数量小于所述目标超分模型的参数数量,且所述重参数化后的超分模型的超分性能等于所述目标超分模型的超分性能;
利用所述重参数化后的超分模型对所述第一图像进行超分处理,得到所述目标超分图像。
12.一种图像超分模型的训练装置,其特征在于,所述装置包括:
第一获取单元,用于获取样本图像,所述样本图像的分辨率为第一分辨率;
第一处理单元,用于利用学生超分模型对所述样本图像进行超分处理,得到第一超分图像,所述第一超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;
所述第一处理单元,还用于利用第一教师超分模型对所述样本图像进行超分处理,得到第二超分图像;利用第二教师超分模型对所述样本图像进行超分处理,得到第三超分图像,所述第二超分图像和所述第三超分图像的分辨率均为所述第二分辨率;所述第一教师超分模型的模型宽度大于所述学生超分模型的模型宽度,所述第二教师超分模型的模型深度大于所述学生超分模型的模型深度,所述模型深度用于指示模型包括的特征提取模块的数量,所述模型宽度用于指示模型包括的特征提取模块所提取的特征的通道数;
所述第一获取单元,还用于基于所述第一超分图像和所述第二超分图像之间的差异,以及所述第一超分图像和所述第三超分图像之间的差异,获取第一训练损失;
更新单元,用于使用所述第一训练损失对所述学生超分模型的参数进行更新,得到更新后的学生超分模型;
所述第一获取单元,还用于若当前训练过程满足训练终止条件,将所述更新后的学生超分模型作为目标超分模型,所述目标超分模型用于对图像进行超分处理。
13.一种图像超分处理装置,其特征在于,所述装置包括:
第二获取单元,用于获取第一图像,所述第一图像的分辨率为第一分辨率;
第二处理单元,用于利用目标超分模型对所述第一图像进行超分处理,得到目标超分图像,所述目标超分图像的分辨率为第二分辨率,所述第二分辨率大于所述第一分辨率;其中,所述目标超分模型利用权利要求1-9任一所述图像超分模型的训练方法训练得到;
显示单元,用于显示所述目标超分图像。
14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条计算机程序,所述至少一条计算机程序由所述处理器加载并执行,以使所述计算机设备实现如权利要求1至9任一所述的图像超分模型的训练方法,或者如权利要求10至11任一所述的图像超分处理方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序由处理器加载并执行,以使计算机实现如权利要求1至9任一所述的图像超分模型的训练方法,或者如权利要求10至11任一所述的图像超分处理方法。
16.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序或计算机指令,所述计算机程序或所述计算机指令由处理器加载并执行,以使计算机实现如权利要求1至9任一所述的图像超分模型的训练方法,或者如权利要求10至11任一所述的图像超分处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211600653.4A CN116957929A (zh) | 2022-12-12 | 2022-12-12 | 图像超分模型的训练、图像超分处理方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211600653.4A CN116957929A (zh) | 2022-12-12 | 2022-12-12 | 图像超分模型的训练、图像超分处理方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116957929A true CN116957929A (zh) | 2023-10-27 |
Family
ID=88446681
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211600653.4A Pending CN116957929A (zh) | 2022-12-12 | 2022-12-12 | 图像超分模型的训练、图像超分处理方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116957929A (zh) |
-
2022
- 2022-12-12 CN CN202211600653.4A patent/CN116957929A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111402143B (zh) | 图像处理方法、装置、设备及计算机可读存储介质 | |
CN111681177B (zh) | 视频处理方法及装置、计算机可读存储介质、电子设备 | |
CN111985281B (zh) | 图像生成模型的生成方法、装置及图像生成方法、装置 | |
CN114339409B (zh) | 视频处理方法、装置、计算机设备及存储介质 | |
CN112954450B (zh) | 视频处理方法、装置、电子设备和存储介质 | |
CN113704531A (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN111275784A (zh) | 生成图像的方法和装置 | |
CN111444826A (zh) | 视频检测方法、装置、存储介质及计算机设备 | |
CN112906721B (zh) | 图像处理方法、装置、设备及计算机可读存储介质 | |
WO2020205003A1 (en) | Techniques to capture and edit dynamic depth images | |
CN114445562A (zh) | 三维重建方法及装置、电子设备和存储介质 | |
CN115131218A (zh) | 图像处理方法、装置、计算机可读介质及电子设备 | |
CN116630514A (zh) | 图像处理方法、装置、计算机可读存储介质及电子设备 | |
CN114913061A (zh) | 一种图像处理方法、装置、存储介质及电子设备 | |
CN112785669B (zh) | 一种虚拟形象合成方法、装置、设备及存储介质 | |
CN113902636A (zh) | 图像去模糊方法及装置、计算机可读介质和电子设备 | |
WO2024041235A1 (zh) | 图像处理方法、装置、设备、存储介质及程序产品 | |
CN110619602A (zh) | 一种图像生成方法、装置、电子设备及存储介质 | |
CN114973293A (zh) | 相似性判断方法、关键帧提取方法及装置、介质和设备 | |
CN116957929A (zh) | 图像超分模型的训练、图像超分处理方法、装置及设备 | |
CN113850716A (zh) | 模型训练方法、图像处理方法、装置、电子设备及介质 | |
CN113920023A (zh) | 图像处理方法及装置、计算机可读介质和电子设备 | |
CN115035559A (zh) | 人脸活体检测方法、装置、电子设备及计算机存储介质 | |
CN111402133A (zh) | 图像处理方法、装置、电子设备及计算机可读介质 | |
CN115131198B (zh) | 模型训练方法、图像处理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |