• Perceptual Losses for Real-Time Style Transfer and Super-Resolution【阅读笔记】


      一些经典的图像问题,如去雾、去噪、超分辨率等等其实都可以看作是image transformation问题。将输入image transform成output。目前比较常用的一种方法就是用监督的方式训练一个feed-forward的CNN,用像素级的损失函数衡量output和ground-truth的差异。这种方法在测试时很高效,但像素级损失无法捕捉一些视觉差异。因此就有一些工作来研究perceptual loss function(通过预训练的CNN中抽取的高层图像特征衡量差异)生成了比较高质量的结果,但速度很慢。

      本文中使用一个使用perceptual loss 的feed-forward CNN 用于image transfer和SR任务。训练时可以更好地衡量图像的相似性,test时又可以做到实时。

      原作者项目地址:https://web.eecs.umich.edu/~justincj/eccv16/

      网络包含两部分:image transformation network和loss network。

    Loss Network

      loss network($phi$)实际是一个预训练的图像分类网络,这个网络实际已经学会了如何encode图像的perceptual和semantic信息,在训练时保持固定不变。通过这个网络给出两个reconstruction loss:feature reconstruction loss($l_{feat}^{phi}$)和style reconstruction loss($l_{style}^{phi}$)。分别用于衡量输入x与content target($y_c$)和style target($y_s$)的差异。对于style transfer问题,$y_c=x$,每一种$y_s$训练一个网络。对于SR问题,$y_c=ground-truth I^{HR}$,不使用$l_{style}$,对每一种缩放因子都训练一个网络。

      本文中使用的是在ImageNet上预训练的VGG-16作为loss network

      Feature Reconstruction Loss

       $l_{feat}^{phi, j}(widehat{y}, y)=frac{1}{C_j H_j W_j}||phi_j(widehat{y})-phi_j(y)||_2^2$,即第$j$层的activation的均方差

      实验发现使用低层会鼓励output 在视觉上和y indistinguishable;使用高层会使图像内容和整体空间结构被保留,但颜色、纹理和exact shape不会。可以使得output perceptually similar但不会force them to match exactly.但使用高层,在SR任务中会带来grid-like artifacts,因此对于SR任务使用低层比较好。

      Style Reconstruction Loss

      定义$G_j^{phi}(x)$为第$j$层各特征的Gram矩阵,是该层特征的未零均值化的协方差

      $G_j^{phi}(x)_{c,c'}=frac{1}{C_j H_j W_j}sum_{n=1}^{H_j}sum_{w=1}^{W_j}phi_j(x)_{h,w,c}phi_j(x)_{h, w, c'}$。在实际计算中可以将$phi_j(x)$化为一个$C_j imes H_j W_j$的矩阵$psi$, $G_j^{phi}(x)=psipsi ^{T}/C_j H_j W_j$。

      $l_{style}^{phi, j}(widehat{y}, y)=||G_j^{phi}(widehat{y})-G_j^{phi}(y)||_F^2$,文中取了多层来计算style loss并取其和

      

      文中还使用了基于低层像素信息的loss:pixel-loss 和total variation regularization.使用total variation regularization是为了鼓励局部光滑。通过对上面的几种loss进行加权作为总的loss。但相比像素级的loss,使用feature reconstruction loss虽然可以带来更好的细节在边界处表现也更好,但PSNR指标并不一定高。

    Transformation Network

      transformation network在文中使用的是残差结构,用strided and fractionally strided convolutions来代替池化层进行上采样和下采样。小数步长的卷积可以理解为在输入单元之间插入0,其实就是反卷积deconvolution。针对style transfer问题,虽然输入和输出的尺寸是一样的,但文中仍然先进行了下采样再进行上采样,目的是:

    1. 下采样后可以使用更大的网络而不用增加计算消耗。$3 imes3 imes C oplus C imes H imes W$的multiply-adds个数与$3 imes3 imes DC oplus DC imes H/D imes W/D$是相同的。
    2. 下采样$D$倍后,每一个$3 imes3$的卷积有效感受野就会变为原来的$D$倍,扩大感受野比较有利。

  • 相关阅读:
    判断正整数的正则表达式
    ALL、ALLNOBLANKROW、VALUES、DISTINCT 去重的区别
    正则匹配双字节字符
    才子佳人小说研究.PDF
    第二性台版 第一卷 事实与迷思
    第二性 合卷本 横本.PDF
    架构的生态系 资讯环境被如何设计至今.PDF
    年羹尧奏摺专集(下).PDF
    第二性 合卷本 横本.EPUB
    小僧の神様・城の崎にて.PDF
  • 原文地址:https://www.cnblogs.com/wyboooo/p/13362888.html
Copyright © 2020-2023  润新知