技术特征:1.一种基于无监督学习的屏幕图像去摩尔纹方法,其特征是,使用不成对的带摩尔纹的图片以及无摩尔纹图片作为输入,通过训练,使网络学习由摩尔纹图像到干净图像之间的映射关系,最终实现输入摩尔纹图片,网络对摩尔纹实现去除,输出相应无摩尔纹图片。
2.如权利要求1所述的基于无监督学习的屏幕图像去摩尔纹方法,其特征是,具体步骤如下:
1)分析摩尔纹特征,建立拍屏图像中摩尔纹模型:
im=ic+imc(1)
im为拍屏得到的带摩尔纹的图像,ic是被拍摄的原始图像,imc是摩尔纹层;
2)建立训练数据集
用不同的手机去拍摄展示在不同型号的显示设备上的文字、网页、人物照片、风景照;并将最终得到的带摩尔纹图和原始展示的图像或截屏图像切成图像块用于神经网络的训练;
3)设计网络框架
31)将带摩尔纹图像im输入到干净图像生成器中,得到去摩尔纹之后的图像再将输入到摩尔纹图像生成器中,得到重现的摩尔纹图像通过约束和im的像素级别以及特征级别的相似性来使得去摩尔纹之后的图像包含足够的原图信息,同时,为了使得两个生成器能够更专注于摩尔纹的去除和生成过程,增加输入干净图像ic生成带摩尔纹图像和重构干净图像的过程,损失函数选用
其中ψi表示经过预训练的vgg-19网络,这里选用第2、7、12、21、30层的输出特征图;
32)将干净图像ic输入到去摩尔纹生成器得到i′c,同时将摩尔纹图像im输入到去摩尔纹生成器中得到i′m,让生成的图像在像素和向量级别相近来使得两个生成器在去除/生成摩尔纹的同时对图像其他部分的内容影响最小,损失函数选用
其中cos(x,y)表示x和y的余弦相似度。
33)用输入的摩尔纹图像im减去去摩尔纹之后的结果得到摩尔纹层imc,将得到的摩尔纹层合成到干净图像ic上得到合成摩尔纹图像通过约束合成摩尔纹图像与干净图像ic之间的语义信息差别使得去除的摩尔纹层尽量不包含原图的内容信息,损失函数选用
其中ψj表示经过预训练的vgg-19网络,这里选用第30层的输出特征图。
34)使用两组尺度不同的判别器和来从不同的尺度来判别生成的干净图与真实的干净图之间的差别,和判别生成的摩尔纹图与真实的摩尔纹图之间的差别,使得生成图像和更加真实,对抗损失函数选用
其中m和c分别指摩尔纹图像数据集和干净图像数据集;
35)训练判别器时使用的损失函数选用
训练小尺度判别器的损失函数和大尺度损失函数定义相同;
4)设计网络结构
41)生成器和具有相同的结构,分别是:卷积核大小7*7卷积层—核大小3*3卷积层—核大小3*3卷积层—核大小3*3卷积层—9个残差块—核大小3*3反卷积层—核大小3*3反卷积层—核大小7*7卷积层;除了最后的卷积层接tanh激活层,其他卷积层都接着实例标准化层和relu激活层,残差块中是两个3*3的卷积层,其中第一个卷积层接着实例标准化层和relu激活层,第二个卷积层只接实例标准化层;
42)大尺度判别器和具有相同的网络结构,分别为:卷积核大小4*4卷积层—核大小4*4卷积层—核大小4*4卷积层—核大小4*4卷积层—核大小4*4卷积层;小尺度判别器和具有相同的网络结构,分别为:卷积核大小4*4卷积层—核大小1*1卷积层—卷积层核大小1*1;每个判别器中除了最后一层只有卷积层之外其他卷积层之后都接着实例标准化层和leakyrelu激活层;
5)设置好网络的学习率和各部分损失函数的权重,利用深度学习框架pytorch训练上述卷积神经网络,直到损失收敛,生成训练模型;
6)将带有摩尔纹的图片输入到网络中得到对应的去摩尔纹之后的干净图。
3.如权利要求1所述的基于无监督学习的屏幕图像去摩尔纹方法,其特征是,步骤5)的具体步骤是:
51)确定网络结构之后,将训练数据输入到网络;
52)在网络训练阶段,学习率设置为0.0002,权重λ1,λ2,λ3,λ4分别设置为10,1,2,2;
53)进行训练,得到摩尔纹图像和去掉摩尔纹的干净图像之间的映射关系。
技术总结本发明属于计算机视觉领域,为提出更为普适性且方便训练的基于无监督学习的去摩尔纹方法,实现摩尔纹的去除,且处理后的图像细节清晰,能很好地处理拍摄过程中造成的亮度和对比度的畸变。为此,本发明采取的技术方案是,基于无监督学习的屏幕图像去摩尔纹方法,使用不成对的带摩尔纹的图片以及无摩尔纹图片作为输入,通过训练,使网络学习由摩尔纹图像到干净图像之间的映射关系,最终实现输入摩尔纹图片,网络对摩尔纹实现去除,输出相应无摩尔纹图片。本发明主要应用于去除摩尔纹。
技术研发人员:岳焕景;刘芳龙;杨敬钰
受保护的技术使用者:天津大学
技术研发日:2020.03.11
技术公布日:2020.08.04