美文网首页DepthUpsampling
论文研读-图像深采样-<

论文研读-图像深采样-<

作者: buldajs_zju | 来源:发表于2017-10-20 16:36 被阅读0次

    ECCV 2016的文章
    github代码:DeepJointFilter

    Motivation

    Basic Idea about Joint image filtering

    Joint image filtering要解决的问题是给定一张Guidance Image,和被noise影响或是Low-spatial-resolution的Target Image,我们要利用这样的Guidance Image作为prior,将Guidance Image中的structural details的信息transfer到对应的Target Image上,最终得到一张High-Resolution的Target Image.

    TrackOff

    • 需要的部分
      Guided image中和target image consistent structures.
    • 不需要的部分
      避免Guided image中erroneous structures的影响.

    Inconsistent structure problem in Joint image filtering

    Guidance image和Target image中的structures并不都是consistent的,传统的Filtering based和Global optimization framework based的方法都缺乏对erroneous structures部分的关注,或者说因为传统方法的局限性,需要explicit filter kernel或者是handle-designed object function,因此不能很好handle这个问题。
    作者提出了一个learning-based方法,构建一个CNN的网络来得到joint filter,来handle这种inconsistent structure problem.

    Contributions

    • 提出了一个learning-based framework - CNN,来构建joint image filters,来解决guided fitering中的inconsistent structure问题.
    • 利用上述learned filters,作者在四个joint depth upsampling datasets上得到了state-of-the-art performance.
    • 作者证明了在RGB/D datasets上train好的模型对于输入数据的类型有很好地泛化能力,能够transfer到一系列的domains上。

    Related Work

    Joint Image filters

    传统方法中的Joint image filtering的方法可以分为如下两类:

    • explict filter based
      比较有代表性的就是bilateral filtering和它的变式,以及之后的guided image filtering.
      这种方法的问题是kernel的pattern是显式定义的,缺乏inconsistency check,会引入不必要的erroneous structures.

    • global optimization based
      这类方法一般会有一个object function,主要包含了data terms和regularization terms。

      • data term
        确保output尽可能接近于input target image.
      • regularization term
        这是大多数方法做文章的地方,主要是希望output的structures尽可能接近guidance image.

      这种方法的问题是比较time-consuming,同时handle-designed object function不能很好反应自然世界的复杂情况.

    Deep model for low-level vision

    受到CNN在high-level视觉任务上的有效应用的启发,近些年在一些low-level的视觉任务上也出现了一些CNN的应用,比如image denoising, rain drop removal, image super-resolution, optical flow estimation等等.
    作者在这些工作的基础上受到了启发,希望利用CNN强大的特征提取和泛化能力,来解决joint image filter的问题。

    Network Architecture

    Network Architecture

    整个CNN model主要包含three sub-networks: CNNT,CNNG,CNNF

    • CNNT

      负责提取Target Image的特征,可以看做是non-linear的feature extractors,来capture the local structural details.

    • CNNG

      负责提取Guidance image的特征.

    • CNNF
      负责concatenate sub-network CNNT 和subnetwork CNNG的特征,来生成最终的joint filtering的结果。

    整个网络可以看做是从target image和guidance image的feature responses中,进行non-linear regression.

    要注意的几个点:

    1. 各个子网络都是9x9conv+1x1conv+5x5conv,都是三层,但是输出的channels数量有细微的区别,单个子网络的结构类似于SRCNN..
    2. 在特征提取的两个子网络CNNG和CNNT的输出的feature map的channel数量都是1,作者认为更多地channel可能会有助于特征的表达,但是实验发现会降低训练速度,而且精度没有太大提升(这里要质疑一下,真的吗)
    3. 作者继续增加网络层数,更深的网络并没有提升性能,认为和SRCNN的结论一致,所以认为更深的网络并不能带来性能的提升(然而SRCNN已经被后面的VDSR网络反驳了,这个结论也有待论证)
    4. 更大的Kernel和Filter的数量没有帮助性能的提升。

    当然这个看似非常简单的网络,作者也给出了为什么这样设计的思路,还是有很强的逻辑性在里面的,之后将会分析。

    Loss Function

    作者用的就是最基本的L2 Loss来train.

    L2 loss

    Design Ideas

    要不要直接把target image和guidance image concat训练一个CNN作为CNNF

    经验主义告诉他们performance肯定不好,他们做了一些实验,如下:

    直接Concat RGBD输入,构建一个CNNF网络

    Blurry boundaries and the texture-copying
    作者认为guided image上的detail structrues没有很好transfer到target image,比如床的边缘结构。而不需要的texture的信息却出现在了最终的image上,比如墙上的纹理。
    通过加深网络,这样的现象并没有减缓,而作者提出的网络却可以handle这两个问题。
    所以作者认为这样直接Concat guidance image和target image的方式是不好的。

    什么样的指导是有效的
    之后作者思考了既然这样是不好的,那是为什么,什么样的指导是有效的?
    作者认为RGB直接Concat起来效果不好,因为一次性混合了太多的信息(texture,indensity,edges)
    如果把原始的RGB图像换成RGB检测得到的Edge Map,特征更加干净直接,是不是会有一定的作用。
    作者做了如下实验:

    把edge detection的结果和target map concat起来
    作者发现确实加了Edge Map以后效果比直接Concat RGB图像好很多.
    因此作者认为有效的特征,可以更好的进行指导,于是才出现了划分两路分别提取特征的网络,效果证明这样的方式比Edge Detection的结果更有效。

    Experimental Results

    Network Training

    160000 training patch pairs of size 32x32 from 1000 RGB an depth in NYU2 dataset.

    image upsampling: 4x,8x,16x

    Test

    Depth Upsampling

    在Middlebury,Lu,NYU v2, SUN RGB/D四个Dataset上测试

    Depth Upsampling Result

    各个Dataset情况:

    Dataset

    其实效果和传统方法差的不多,个人感觉。

    Discussions

    What has the network learned

    作者把CNNG部分输出的Feature map,和Edge Map做了比较,

    发现网络学到的结果更加的shape,说明CNN特征提取的结果是比较好的。
    但是我们会发现这时候被子上的不必要的纹理也被提取了出来,别急,作者在后面会解释

    What has the network learned:和edge map的比较

    Selective structure transfer

    作者认为RGB那路学到的Feature有可能是inconsistent feature,比如前面我们提到过的被子的纹理,但是CNNF部分的网络可以有效的滤除那部分的信息,实验结果如下:

    Selective structure transfer

    作者提取了各个子网络的中间特征层,发现在Fusion网络的帮助下,墙上的窗户,被子的纹理这些inconsistent feature得到了抑制。

    作者又举了一个例子,关于texture-copying问题,传统的方法本身利用的就是guidance image的structure信息,当Guidance image中有很强的color constrast时,就会导致text-copying.而Fusion网络有助于帮助解决这个问题。

    texture-copying removed

    我的总结

    总体来看这篇文章的网络其实没有太大的创新,feature map的concat也是非常直接常规的操作,子网络的设计也借鉴了其他问题的网络。
    个人觉得这篇文章的亮点就在于整个网络设计的流程,对出现的问题一步步地分析,并且证明了每一步的修改的有效性,整个逻辑还是非常严谨的。
    我自己在读这篇文章的时候想到的问题,作者都会合理的在后面一一进行解释,这点是比较值得欣赏的。
    其他的网络设计上的创新,就见仁见智了,我觉得没有太大的针对这个问题的创新点。

    相关文章

      网友评论

        本文标题:论文研读-图像深采样-<

        本文链接:https://www.haomeiwen.com/subject/irdvuxtx.html