图像修复是基于现有像素在缺失区域生成视觉逼真和语义合理的像素的技术,现有的图像修复方法主要有传统算法和基于深度学习的算法两类.传统算法中常用的有基于扩散或者纹理合成的修复方法,如文献[1-3]利用破损区域的边缘信息扩散修复破损区域,这类方法可以修复缺失区域小和纹理固定的图像,但是当缺失区域较大,不规则或者纹理复杂时,会导致边缘模糊或严重的修复失真.基于纹理合成的图像修复方法用相似度最高的部分填充破损区域[4-6],其中顺序填充区域法[7]能很好地传播图像的整体结构信息,但是只能利用图像有限的信息,当缺失区域较大时,修复效果会急剧下降.总之,传统方法修复较大孔洞或复杂背景图像时效率低,导致这类方法的应用受限.为了解决传统修复算法的不足,研究者探索深度学习图像修复算法.早期卷积神经网络的修复方法只适合用于缺失区域规则、缺失面积较小的修复任务[8].文献[9]提出基于上下文像素点预测驱动的无监督视觉特征学习算法,首次尝试训练深度神经网络实现大孔洞图像修复,但是该方法没有考虑待修复区域与周围像素信息的一致性,图像背景复杂时,会导致纹理模糊或边缘失真.为了改善大面积缺失图像的修复效果,学者们提出用基于生成对抗损失的全局鉴别器和局部鉴别器[10-11],分别保证修复区域与整张图片和缺失区域周围的语义一致性.该方法修复较大孔洞时效果不错,但是当处理复杂背景图像时,若增大孔洞面积,则会产生边界伪影和结构扭曲,其原因在于空洞卷积层会丢失精细的纹理信息,因此该方法修复大面积不规则孔洞时,性能急剧下降.针对现有算法在修复复杂背景、大面积缺失和不规则孔洞缺失图像中会出现边缘或精细纹理模糊或失真的缺陷,本研究提出了基于混合空洞卷积网络的多鉴别器图像修复算法.1 多鉴别器图像修复算法基于混合空洞的卷积双网络多鉴别器图像修复算法流程为:首先,基于混合空洞的模糊卷积网络对图像进行粗修复;然后,将粗修复结果输入双平行卷积网络,双平行卷积网络综合两条并行卷积路径的结果并通过同一解码器及反卷积网络后被送入鉴别器网络进行判别优化.1.1 混合空洞卷积卷积网络常用池化操作使卷积层尽可能多地捕获图像信息,但是池化操作难免丢失图像信息.所以文献[11]提出用空洞卷积层代替常规的卷积层,以期保证有较大的感受野,又尽量减小图像信息丢失.但是空洞卷积在增大信息感受野的同时,会损失图像信息的连续性,具体分析如图1和图2所示.10.13245/j.hust.210308.F001图1空洞卷积增大感受野示意图10.13245/j.hust.210308.F002图2空洞率为2的空洞卷积叠加图1(a)和(b)是卷积核均为3×3,空洞率分别为1和2的空洞卷积,红色的9个点表示与核卷积的点,蓝色的7×7域是空洞卷积的信息感受野.图1(c)是卷积核为3×3,空洞率为4的空洞卷积,达到15×15的信息感受野.相对于传统的卷积操作,步幅为1时,3层核为3×3的卷积叠加只能达到(卷积核-1)×层数+1=7的信息感受野,其信息感受野和卷积层数成线性关系,而空洞卷积的信息感受野呈指数级增长.但是,空洞卷积在增大信息感受野的同时会损失图像信息的连续性.图2(a)是卷积核为3×3,空洞率为2的空洞卷积,图2(b)和(c)分别是1次和2次叠加的结果,红色的点表示中心,蓝色的点表示卷积运算后扩大的信息感受野,白色的点表示未参与卷积运算的点.可以看出:空洞卷积虽然增大了信息感受野,但卷积核不连续,未参与卷积运算的点增加了,用于图像修复时必然损失图像信息的连续性,这对于复杂背景图像的修复是致命的.其次,空洞卷积是棋盘结构,扩大信息感受野的目的是获取远程信息,这对大物体的修复有效,但无法完成细小纹理的修复.针对空洞卷积的缺陷,提出用混合空洞卷积代替空洞卷积.混合空洞卷积有如下特性.a. 为了避免图像信息的不连续,叠加卷积的空洞率不能有比1大的公约数(如空洞率为2,4,6的三层卷积).b. 空洞率设计成锯齿状结构(如1,2,5,1,2,5的循环结构),锯齿状能自适应满足小和大物体的信息获取,近和远距离的信息分别由空洞率较小和较大的卷积捕获,既不破坏卷积的连续性又满足大卷积是小卷积正则化叠加的结果.c. 第i层的最大空洞率满足Ni=max[Ni+1-2Ri,Ni+1-2(Ni+1-Ri),Ri],式中:Ri为第i层的空洞率;Ni和Ni+1分别为第i层和第i+1层的最大空洞率.1.2 双平行卷积网络为了进一步扩大信息感受野并稳定训练,提出算法使用双网络修复结构,其中模糊卷积网络进行粗修复,双平行卷积网络再次完善粗修复结果.模糊卷积网络经过重构损失训练,双平行卷积网络经过重构损失及WGAN(Wasserstein generative adversarial network)损失训练,因此双平行卷积网络较之模糊网络,其捕获的场景更完整,编码器可更好地学习图像的特征表示.双平行卷积网络除了包含HDC(混合空洞卷积)的卷积修复网络外,还有一条与之平行的包含感知层的路径.感知层从已知背景补丁中借用或复制特征信息,生成丢失的补丁,是可微、可全卷积的,因此可在任意分辨率下测试.在图像修复中,感知层须要实现缺失像素(前景)的特征与周围环境(背景)的匹配.用标准化内积(余弦相似度)测量前景色块m(x,y)与背景色块 n(x',y')匹配相似度,即f1=m(x,y)/||m(x,y)||,n(x',y')/||n(x',y')||,式中f1表示以补丁为中心的背景(x',y')和前景(x,y)的相似度,然后沿(x',y')维度方向使用可缩放的s权重相似度,得到每个像素的注意力分数f1*=sx',y'(λf1),其中λ为一个常数.将提取的补丁n(x',y')用反卷积滤波器重建前景,通过传播增强注意力的连贯性.在修复过程中,前景斑块因为与背景斑块拥有相等偏移量,即通常相邻的像素块有接近的值,为了建模和鼓励注意力图的相干性,增强修复区域与真实图像的语义一致性,先进行左右传播,然后进行内核大小为k的自顶向下传播.以左右传播为例,得到新的注意力得分为fx,y,x',y'**=∑i∈(-k,k)fx+i,y,x'+i,y' *,式中fx+i,y,x'+i,y'*为与f1*相邻的第i个像素注意力分数.注意力传播可改善修复效果并丰富训练梯度.1.3 鉴别器在修复的优化过程中,提出了包含全局鉴别器、局部鉴别器和中心鉴别器的多鉴别器,将WGAN的损失叠加到双平行卷积网络中,将其作为鉴别器的标准,来优化修复结果的全局、局部和细节语义一致性.鉴别器引入对抗性损失,即GAN(生成对抗网络)损失.为了学习数据分布的生成模型,GAN学习对抗性鉴别器模型D,为生成器模型提供损失梯度.对抗性鉴别器D对生成器G生成的图像进行预测,并试图将其与真实图像进行区分,而生成器G则产生尽可能“真实”的图像来混淆判别器D.为了避免GAN网络在训练过程出现梯度消失或者梯度爆炸等问题,WGAN使用Earth-Mover距离比较生成的数据分布和实际的数据分布,其目标函数由Kantorovich-Rubinstey构造,具体为minGmaxD∈DL{Er[D(x)]-Eg[D(x')]},式中:x为网络输入;DL为1-Lipschitz函数的集合;Er为x的模型分布期望;Eg为x'隐式定义的模型分布期望.三个鉴别器网络分别表示全局、局部和中心鉴别器.全局鉴别器网络在整张图像上提供损失梯度,而局部和中心鉴别器在破损区域周围和细节特征丰富的区域提供损失梯度.三个鉴别器分别定义为L1=minGmaxD∈DL{Er[D1(x)]-Eg[D1(x')]};L2=minGmaxD∈DL{Er[D2(x)]-Eg[D2(x')]};L3=minGmaxD∈DL{Er[D3(x)]-Eg[D3(x')]},式中:L1,L2和L3分别为全局、局部和中心鉴别器的损失函数;D1(x),D2(x)和D3(x)分别为全局、局部和中心鉴别器的真实数据分布.此外,重构损失L负责捕获缺失区域的结构信息并与上下文保持一致,即L=||M⊙[x-F((1-M)⊙x)]||22,式中:M为噪声掩码;F为参数函数.综上所述,整个网络优化的总损失函数定义为Lall=2L+λ1L1+λ2L2+λ3L3,式中λ1,λ2和λ3为不同损失函数的权重.2 实验结果与分析在CelebA和Places2公开数据集上,对提出算法和现有的4种经典算法进行实验比对.CelebA和Places2数据集分别包括各式各样的人脸和风景图像.从两个数据集中各取2×105张图像,其中1.8×105张用于训练网络,2×104张作为测试样本.训练设备参数为CPU Intel i7-9700K,GPU RTX2080Ti-16G,内存DDR4-3000-32G.代码在Pytorch深度学习框架下运行.将提出算法与IM算法[6]、PM算法[5]、GLCIC算法[11]、Generative算法[12]进行对比.为保证比较的公平性,所有模型训练的迭代次数相同.设计了实验验证提出算法的有效性,第一组实验在小、中、大面积掩膜下,对比各种算法的性能;第二组实验对比各种算法修复不规则、多孔洞缺失图像的性能.为了对比实验的规范与公正,根据掩码占输入图像的面积比例设置统一标准以区分小、中、大掩码,其中小、中和大型掩码各占输入图像面积的10%,15%和25%.图3所示为加了小型规则掩码的缺失图像,可见IM算法生成的图像模糊,无明显结构信息,PM算法结合未破损的图像信息进行修复,生成了结构纹理信息,但是不符合图像的语义,修复精确度低,GLCIC算法、Generative算法和本文算法都能生成合理清晰的结构纹理,且能够很好地结合图像整体语义信息.10.13245/j.hust.210308.F003图3小型掩码时各模型的修复结果图4(a)所示为加了中型规则掩码的缺失图像.IM算法在掩码增大时无法生成合理的结构,修复效果差.PM算法生成的结构错乱,纹理模糊,修复效果较差.GLCIC算法和Generative算法生成的结构基本合理,但是纹理错乱,细节不清晰,修复效果一般.本文算法不仅生成的结构合理,而且能够很好保证修复图像的整体语义一致性,修复效果较好.图5所示为加了大型规则掩码的缺失图像.IM算法和PM算法在增大掩码时修复结果特别差,完全没有结构信息,纹理混乱,整体语义一致性差.GLCIC算法和Generative算法只能生成部分结构,且纹理错乱,修复结果无法保持整体的语义一致,修复效果较差.但是本文算法能生成合理的结构,较好地保证修复图像整体的语义一致性,修复效果较好.10.13245/j.hust.210308.F004图4中型掩码时各模型的修复结果10.13245/j.hust.210308.F005图5大型掩码时各模型的修复结果为了验证本文算法能自适应修复各种大小的孔洞区域,设计了多个不规则孔洞的修复实验,在相同的实验条件下与同类经典算法进行对比.图6所示为包含多个不规则随机孔洞的缺失图像.IM算法在额头处生成部分结构信息,但无法修复其余的缺失区域,整体修复效果很差.PM算法在额头和眼睛处生成基本合理的结构,但嘴巴处纹理混乱,整体的修复效果较差.GLCIC算法在额头处修复效果较好,但无法生成眼睛部分的合理结构,嘴巴部分纹理混乱.Generative算法在三处孔洞区域基本能生成合理的结构,但是眼睛及嘴巴部分纹理混乱,细节模糊.本文算法能很好地获取缺失区域的语义信息,修复三处孔洞的结构信息,纹理相似度较高,整体修复效果较好.10.13245/j.hust.210308.F006图6多个不规则掩码各模型的修复结果由表1的实验结果可知:本文算法比4种经典法在PSNR(峰值信噪比)、SSIM(结构相似度)、平均l1范数误差和平均l2范数误差4个方面的数值都好,说明本文算法加入混合空洞卷积层以及采用多鉴别器能增强图像细节的修复精度,有效避免了修复失真.10.13245/j.hust.210308.T001表1定量实验对比结果算法峰值信噪比结构相似度平均l1范数误差平均l2范数误差IM18.690.7217.214.31PM19.260.7416.963.87GLCIC21.900.8111.732.70Generative23.220.7910.882.33本文26.230.878.912.153 结论本研究提出了一种基于混合空洞卷积网络的多鉴别器图像修复算法,首先,将缺失图像通过模糊卷积网络进行粗修复,将粗修复结果输入双平行卷积网络;然后,双平行卷积网络综合两条并行卷积路径的结果通过同一解码器以及反卷积网络获得修复结果;最后,全局、局部及中心鉴别器对修复效果进行判断优化.将提出算法与现有的算进行比较,结果表明:在修复大孔洞及随机不规则孔洞过程中,本文算法改善了细节修复的精确度,增强了图像语义的整体一致性,有效避免了修复失真和伪影.
使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,
确定继续浏览么?
复制成功,请在其他浏览器进行阅读
复制地址链接在其他浏览器打开
继续浏览