掌桥专利:专业的专利平台
掌桥专利
首页

一种基于知识蒸馏压缩模型的图像超分辨率方法及装置

文献发布时间:2023-06-19 19:30:30


一种基于知识蒸馏压缩模型的图像超分辨率方法及装置

技术领域

本发明涉及深度学习、模型压缩、图像超分辨率等领域,尤其涉及一种基于知识蒸馏压缩模型的图像超分辨率方法及装置。

背景技术

图像超分辨率

传统的SR方法基于人工特征提取,虽然计算速度较快,但是恢复的图像失真严重,很难应用于实际场景。近年来,通过设计端到端的映射,卷积神经网络(CNN)在超分辨率任务中取得了巨大成功。SRCNN

另一方面,知识蒸馏(KD)作为一种有前途的深度模型压缩技术,可以使小的学生网络向过参数化的大的教师网络中学习,逐渐逼近教师网络的性能,从而使得小网络代替大网络完成部署。KD

将KD应用于SR网络可以在保证图像恢复效果的基础上,大大减少对于计算资源的依赖,进而使得超分技术广泛的应用于实际。然而,目前很少有知识蒸馏工作集中在超分辨率任务上。高级视觉任务网络的蒸馏方法虽然取得了一些进展,但是为超分辨率这类低级视觉任务设计特征对齐策略是很困难的,因为网络产生的复杂的纹理很难设计策略来对齐,而对特征图作某种形式的变换会导致信息损失,效果有限。为了提高蒸馏的效率,进一步提升压缩后模型的视觉恢复质量,使用新的压缩框架是很有必要的。本发明设计了一种适用于SR网络的压缩框架。通过该发明能在保持图像恢复效果的基础上大大减少算法对于设备资源的依赖。比如手机拍照生成的模糊图像,可以通过本方法得到高清的图像。在手机运算资源受限、用户等待时间敏感的条件下,能够快速且高质量的完成图像的超分辨率技术,进而满足用户对于高质量拍摄的需求。

[1].William T Freeman and Egon C Pasztor.Learning low-level vision.InICCV,1999.Long J,Shelhamer E,Darrell T.

[2].Chao Dong,Chen Change Loy,Kaiming He,and Xiaoou Tang.Image super-resolution using deep convolutional networks.IEEE transactionson patternanalysis and machine intelligence,38(2):295–307,2015.

[3].Bee Lim,Sanghyun Son,Heewon Kim,Seungjun Nah,and Kyoung MuLee.Enhanced deep residual networks for single image super-resolution.InProceedings of the IEEE conference on computer vision and pattern recognitionworkshops,pages 136–144,2017.

[4].Yulun Zhang,Kunpeng Li,Kai Li,Lichen Wang,Bineng Zhong,and YunFu.Image super-resolution using very deep residual channel attentionnetworks.In Proceedings of the European conference on computer vision(ECCV),pages 286–301,2018.

[5].Yulun Zhang,Yapeng Tian,Yu Kong,Bineng Zhong,and Yun Fu.Residualdense network for image super-resolution.In Proceedings of the IEEEconference on computer vision and pattern recognition,pages 2472–2481,2018.

[6].Geoffrey Hinton,Oriol Vinyals,and Jeff Dean.Distilling theknowledge in a neural network.arXiv preprint arXiv:1503.02531Add to Citaviproject by ArXiv ID,2015.

[7].Junho Yim,Donggyu Joo,Jihoon Bae,and Junmo Kim.A gift fromknowledge distillation:Fast optimization,network minimization and transferlearning.In Proceedings of the IEEE Conference on Computer Vision and PatternRecognition,pages 4133–4141,2017.

[8].Seyed Iman Mirzadeh,Mehrdad Farajtabar,Ang Li,Nir Levine,AkihiroMatsukawa,and Hassan Ghasemzadeh.Improved knowledge distillation via teacherassistant.In Proceedings of the AAAI Conference on Artificial Intelligence,volume 34,pages 5191–5198,2020.

[9].Qing Jin,Jian Ren,Oliver J Woodford,Jiazhuo Wang,Geng Yuan,YanzhiWang,and Sergey Tulyakov.Teachers do more than teach:Compressing image-to-image models.In Proceedings of the IEEE/CVF Conference on Computer Vision andPattern Recognition,pages 13600–13611,2021.

[10].Simon Kornblith,Mohammad Norouzi,Honglak Lee,and GeoffreyHinton.Similarity of neural network representations revisited.InInternational Conference on Machine Learning,pages 3519–3529.PMLR,2019.

发明内容

本发明目的在于在压缩超分辨率网络模型、降低其对于平台资源的需求的同时,保持其图像恢复能力。针对现有压缩技术在超分辨率领域应用时存在特征对齐困难、蒸馏低效等不足,本发明提供了一种基于知识蒸馏压缩模型的图像超分辨率方法及装置,来进一步提升蒸馏的效果。

本发明的目的是通过以下技术方案来实现的:第一方面,本发明提供了一种基于知识蒸馏压缩模型的图像超分辨率方法,该方法包括以下步骤:

(1)分别获取训练好的大的教师网络和待训练的小的学生网络,其中,教师网络是公开的、预训练好的网络;学生网络是将教师网络减少深度之后的网络,将用于实际部署;将教师网络和学生网络分别按照网络深度,以块为单位均分为两个模块,得到教师模块一、教师模块二、学生模块一和学生模块二;并基于融合上一层语义特征与当前层提炼的特征软化模块依次将教师模块一、软化模块和学生模块二级联,将学生模块一、软化模块和教师模块二级联,组成两条优化路径,用于知识蒸馏;

(2)获取训练集低清图像,其中,训练集是公开的数据集,包含低清和高清两种成对的图像;将低清图像输入到两条优化路径进行特征提取;网络提取得到的是低清图像的纹理细节和高频特征以及图像的结构,然后将提取的特征图通过卷积网络生成初步图像结果,与高清图像计算损失项,以此来惩罚网络对图像恢复不正确的地方;损失项包括结构是否一致,颜色是否符合统计规律以及纹理是否自然,最后基于损失来优化两条路径的参数;

(3)将交叉蒸馏完的两个学生模块取出后相互连接,组成最终的优化路径;输入低清图像到该网络,使用完整的教师网络产生超分辨率图像用于监督,计算损失项并更新参数,训练完成后即取得最终压缩模型,将获取的低清图像输入到最终压缩模型中,得到超分辨率图像。

进一步地,通过对齐教师和学生各自的层间关系矩阵来达到知识转移的目的;对于不同层的输出特征X和Y,其具体处理流程如下:

A=CKA(X

其中tr(*)代表取矩阵的迹,T代表矩阵的转置;A

进一步地,交叉级联处添加软化模块,利用k个可学习参数对特征矩阵进行线性映射,完成教师和学生之间维度的匹配;使用通道分离和残差连接设计一个软化模块,软化模块通过残差来保留低频的图像轮廓外形,防止图像边缘模糊和网络的梯度消失,软化模块通过3*3卷积层来用于高频纹理的进一步提取;用于教师网络和学生网络之间平稳传输知识;所述软化模块融合了上一层语义特征与当前层提炼的特征,作为教师和学生之间的过渡。

进一步地,交叉蒸馏阶段,通过最小化重建损失、相似性损失来优化学生网络;融合蒸馏阶段,通过最小化与教师的重建损失来优化学生网络。

第二方面,本发明还提供了一种基于知识蒸馏压缩模型的图像超分辨率装置,所述装置包括:

一个或多个处理器;

存储器,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行所述的基于知识蒸馏压缩模型的图像超分辨率方法。

第三方面,本发明还提供了一种计算机可读的存储介质,用于存储一个或多个计算机程序,所述一个或多个计算机程序包括程序代码,当所述计算机程序在计算机上运行时,所述程序代码用于执行所述的基于知识蒸馏压缩模型的图像超分辨率方法。

本发明的有益效果:

(1)提出了一种基于交叉蒸馏范式的超分辨率网络蒸馏新方法。其核心是直接使用了教师训练好的参数而不用再次设计特征的转换来进行蒸馏。这有助于减少特征变换时的信息损失,提高蒸馏效果。

(2)提出了一种基于层间关系的知识提取方法。使用中心核对齐的方法来保证学生网络在自己的表征空间中学习教师的层间关系矩阵,而不用直接模仿教师复杂的表征,提升了蒸馏效果。

(3)提出了一个软接口模块,基于残差连接和通道分离操作,来过滤大模型中有害的信息,以平稳的传输知识,提高蒸馏的效率。

(4)经过实验表明,提出的压缩方法可以应用到大多数基于深度神经网络的超分辨率网络中,不仅能获得显著的参数量下降,加快计算速度,易于进一步工业部署,还能够通过高效的蒸馏方法,有效保持超分辨率网络的性能,在维持视觉质量不下降的前提下更好的服务于下游任务。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。

图1为本发明的深度神经网络整体知识蒸馏框架。

图2为本发明软接口模块示意图。

图3为本发明输入的低分辨率图像示例、未蒸馏的输出图像示例、本发明输出的图像示例。

图4是本发明基于知识蒸馏的超分辨率网络压缩装置的结构图。

具体实施方式

以下结合附图对本发明具体实施方式作进一步详细说明。

本发明主要应用场景为图像超分辨率网络的压缩问题。图像超分辨率即对输入图片进行多倍放大而保持其主观视觉质量不下降。在不增加硬件成本的前提下,SR技术可以大大提升恢复图像的分辨率质量,具有很高的经济效益。但是目前的超分辨率网络存在存储空间大,计算量消耗大,延迟明显的问题,在手机、边缘设备等实际应用中很难部署,限制了其进一步应用。

本发明提供的一种基于知识蒸馏压缩模型的图像超分辨率方法,以城市景观图像作为输入,具体包括以下步骤:

1、问题描述及变量定义

在城市景观图像的超分辨率中,对于输入一张小尺寸的低分辨率图片,其目的是根据输入图像输出一张多倍尺寸的超分辨率图像,并保持图像的视觉质量,比如清晰的建筑物轮廓和丰富的建筑纹理。现有标准的基于深度神经网络的方法是:对于给定输入图像I∈R

2、本发明的知识蒸馏框架

本发明设计了基于交叉蒸馏的超分辨率网络蒸馏框架,其目的是直接使用教师进行监督,避免显式的转换特征图。由于超分辨率网络通常由三个部分组成,包括一个只有一个卷积层的头部块,用于浅层特征提取;N个重复的主体块,用于生成高频细节;以及一个上采样的尾部块,用于最终图像的高质量重建。如附图1所示,本发明的交叉蒸馏框架由两个主要步骤组成。即附图1中的(a)所示的交叉蒸馏阶段。附图1中的(b)所示的融合训练阶段。

在交叉蒸馏阶段中,预训练的教师

其中,

在融合阶段,本发明将上一阶段训练好的学生模块从级联网络中取出。并重新组合成最终的小网络。如附图1中的(b)所示,小网络在教师输出的超分辨率图像的监督下进行进一步融合,以提高小网络最终的性能。该过程在教师的监督下,可以最小化如下损失完成:

3、本发明的软化模块(SI)

本发明设计了软化模块(Softened Interface,SI),其目的是缓解师生模块之间的能力差异来提高蒸馏效率。教师和学生模块由于参数量的差异,会导致表征能力差异,教师模块的能力大大强于学生模块,而这种差异会导致蒸馏低效。为了缓解该问题,本发明设计了一种基于残差连接和通道分离的软接口,作为模块间的过渡,以过滤教师网络中有害的信息,提高整体蒸馏效率。将接口插在教师和学生网络之间,来提高知识传输的效率。

SI软化模块整体设计思路为:首先,调整教师模块输出的尺寸,使用一个线性嵌入模块E来减少教师输出特征图F的维度,得到F

具体来说,如附图2所示,主要模块为图2中的(a),FRB子模块由图2中的(b)所示。将教师模块生成的特征图记为F∈R

F

其中F

F

其中C

(2)将输入的F

F

子模块M的结构如图2中的(b)所示。是由一层5*5卷积层和一个非线性层ReLU组成。所以每个阶段会产生两种特征,即F

F

F

在最后的融合层中,将所有由1×1卷积层产生的特征和最后蒸馏的特征连接起来。如下所示:

F

并将它们与输入特征F

最后,对特征图进行重构,具体如下。

F

其中R包括一个3×3的卷积层。

4、本发明的结构相似性损失

本发明设计了行为相似性损失函数,其目的是添加更细粒度的监督来加强蒸馏效果。本发明基于中心核对齐方法,将网络层与层之间的关系定义为知识。通过对齐相似性矩阵来达到蒸馏的目的,同时避免了直接对齐两个网络之间的特征图。由附图1中的(a)所示,在教师和学生之间,本发明添加了相似性损失来使得学生网络进一步学习教师的层间关系,以达到进一步细粒度约束,以提高模型图像的重建能力。首先产生模块的相似性矩阵,以RCAN网络为例,如附图1中的(a)中,

通过CKA方法,可以得到不同层之间的相似性关系,并建立相似性关系矩阵A

A

其中X

使用相同公式,可以得到剩下3个模块

然后将

最小化损失函数

5、总体损失项

在交叉蒸馏阶段,由城市景观图像监督的重建损失和基于CKA的行为相似性损失两部分构成。其中,重建损失由两条路径输出的超分辨率图像和高分辨率城市图像的

在该阶段,一共训练100代。

在融合蒸馏阶段,学生从两条优化路径取出,且不需要软化模块,将两个学生模块重新级联组合。使用融合损失进行进一步训练。与上一阶段不同,该阶段使用完整教师

在该阶段同样训练100代。

本发明面向超分辨率数据集恢复任务的实施例如下:

(1)准备工作

首先,需要准备实验所需数据集为DIV2K和Urban100,DIV2K数据集拥有800张高清图像和对应的低分辨率图像用于神经网络训练。低清图像由高清图像下采样而来,尺寸是原来的四分之一。Urban100是超分任务中典型的城市景观数据集,包含了100张高清的城市景观图像。其纹理复杂、涵盖城市景观范围广。将其作为测试集,进行高质量图像超分辨率,即主观视觉质量高、客观指标高等,可以检验算法的有效性。

(2)设定超参数,主要包括超参数如表1所示:

表1

(2)选择DIV2K数据集对网络进行训练,并在训练结束后测试网络精度。如表2所示了在超分辨率网络为EDSR(Jiwon Kim,Jung Kwon Lee,and Kyoung Mu Lee.Accurateimage super-resolution using very deep convolutional networks.In Proceedingsof the IEEE conference on computer vision and pattern recognition,pages 1646–1654,2016.)和RCAN时,测试数据集为Urban100的实验中,没有经过蒸馏的EDSR网络PSNR为25.631dB,SSIM为0.7707;在使用本发明提出的框架蒸馏后,PSNR为25.799dB,SSIM为0.7766。没有经过蒸馏的RCAN网络PSNR为26.340dB,SSIM为0.7933;在使用本发明提出的框架蒸馏后,PSNR为26.519dB,SSIM为0.7992。可以总结出经过本发明蒸馏,超分辨率网络在相同参数量下客观指标提升明显,有助于实现城市景观相关的下游任务的高质量应用。

表2

(3)图像分析:以附图3最左侧待超分图片为例分析结果,该图片是城市景观类型的低分辨率图像,特点是纹理结构规则,重复程度高。图像超分辨率任务的目标是获得更大尺寸的超分辨率图像,一般有2倍、3倍和4倍。相比于难以部署的教师网络,本发明对EDSR和RCAN分别进行了32倍和3倍压缩。附图3最右列为经过本发明蒸馏的RCAN模型输出的4倍超分的图像。中间列为未经本发明,直接训练的RCAN模型输出的图像。这两个模型大小相同,都可以在边缘设备部署,但是可以观察到,本发明的结果相比于直接训练的模型,恢复的城市景观纹理结构更加清晰和一致,主观视觉感受更好。本发明算法还原出令人愉悦的城市景观图像,可以在手机端快速部署;也可以帮助恢复低质量的遥感卫星图像,帮助城市景观的识别和进一步的地理信息处理。

与前述基于知识蒸馏的超分辨率网络压缩方法的实施例相对应,本发明还提供了一种基于知识蒸馏压缩模型的图像超分辨率装置的实施例。

参见图4,本发明实施例提供的一种基于知识蒸馏压缩模型的图像超分辨率装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,用于实现上述实施例中的一种基于知识蒸馏压缩模型的图像超分辨率方法。

本发明一种基于知识蒸馏压缩模型的图像超分辨率装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本发明一种基于知识蒸馏压缩模型的图像超分辨率装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图4所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的基于知识蒸馏压缩模型的图像超分辨率方法。

所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。

上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。

技术分类

06120115929137