zoukankan      html  css  js  c++  java
  • Perceptual Loss(感知损失)论文笔记

    “Perceptual Losses for Real-Time Style Transfer and Super-Resolution”论文出自斯坦福大学李飞飞团队,发表于ECCV 2016

    论文地址:https://arxiv.org/abs/1603.08155
    补充材料地址:https://cs.stanford.edu/people/jcjohns/papers/eccv16/JohnsonECCV16Supplementary.pdf

    简介
    图像转换问题(image transformation tasks),输入一副图像转换成另一幅图像输出。现有方法来解决的图像转换问题,往往以监督训练的方式,训练一个前向传播的网络,利用的就是图像像素级之间的误差。这种方法在测试的时候非常有效,因为仅仅需要一次前向传播即可。但是,像素级的误差没有捕获输出和ground-truth图像之间的感知区别(perceptual differences)。

    最近的研究工作表明,高质量的图像可以通过定义和优化perceptual loss函数来生成,该损失函数基于使用预训练好的网络提供的高层的特征。

    本文中,我们将两者的优势进行结合,训练一个前向传播的网络进行图像转换的任务,但是不用 pixel-level loss function,而采用 perceptual loss function。在训练的过程中,感知误差衡量了图像之间的相似性,在测试的时可实时运行。

    网络架构
    网络架构的设计是本文的亮点,网络主要由两个部分构成:一个是 image transformation network 一个是 loss network 用来定义 loss function。

    图像转换网络是一个残差网络,用于风格迁移和超分辨的网络结构有所不同,可参考论文的补充材料,具体的图像转换网络如下:

     

     

    在使用中,Transform网络用来对图像进行转换,它的参数是变化的,而Loss网络,则保持参数不变,Transform的结果图,风格图和内容图都通过Loss Net得到每一层的feature激活值,并以之进行Loss计算

    损失函数
    image trans- formation network将输入图像转换为输出图像 y^。每个损失函数计算一个 scalar value 衡量输出图像和目标图像之间的不同。图像转换网络 是通过 SGD 进行训练的,利用加权的损失函数,如下所示:

    对于 style transfer 来说,the content target yc 是输入图像 x,the output image y^ 应结合 the content x = yc 和 ys 的 style
    对于超分辨来说,输入图像 x 是一个低分辨率的图像,the content target yc 是一个 gt 高分辨率的图像,style reconstruction loss没有用到。对于每一种超分辨的因子,需要单独训练。

    Feature Reconstruction Loss


    不同层的重建效果不同,可以通过实验结果看到,高层的重建效果可以保留图像内容和整体的空间结构,但是颜色,纹理,确切的形状不能保留。


    Style Reconstruction Loss

    构建了一个Gram矩阵,即i通道的feature map与j通道的feature map进行内积,用以衡量两个feature map之间的差异度,从而可以从两张图的Gam矩阵入手,构建loss函数。

    两张图的size即使完全不一致也可以计算出该style loss,因为Gram矩阵计算时基于的是卷积层的feature map的总差异。

     

    重建效果


    实验结果

     

     

    总结
    风格迁移效果与文中的参考文献[10]类似,但是快了3个数量级。
    使用perceptual loss的图像超分辨率获得了更好的视觉效果。

    作者在文章末尾提出了,打算把perceptual loss应用于其他image transformation tasks中去,例如图像着色和语义分割。并尝试使用不同的lose network以验证对transform network的影响。

    参考:

    https://www.cnblogs.com/wangxiaocvpr/p/6298179.html
    https://blog.csdn.net/stdcoutzyx/article/details/54025243
    ————————————————
    版权声明:本文为CSDN博主「骑猪撞地球J」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/weixin_43840215/article/details/89761549




    如果这篇文章帮助到了你,你可以请作者喝一杯咖啡

  • 相关阅读:
    【JavaP6大纲】Java基础篇:为什么jdk8以后HashMap会使用红黑树优化?
    【JavaP6大纲】Java基础篇:HashMap加载因子为什么是0.75?
    【JavaP6大纲】Zookeeper篇:选举机制
    就是要幸福(1)严于律人
    天真的童年
    闲言碎语话心得垃圾工作
    镜花水月
    就是要幸福(3)言行自由
    五年
    爸爸我给你捂捂手
  • 原文地址:https://www.cnblogs.com/sddai/p/14480284.html
Copyright © 2011-2022 走看看