Seven ways to improve example-based single image resolution 笔记

最近一直在看super resolution的文章,看到2016年CVPR论文中有一篇关于improve example-based super resolution的通用方法,就简单总结一下,笔者是小白,要是有什么问题的话,感谢大家指出。

以下改进算法是以A+算法作为baseline。
A+: Adjusted anchored neighborhood regression for fast super-resolutio

  1. Augmentation of training data即增加训练数据,有两种途径:
    1). scaling the training images
    2). considering the flippped and rotated versions of the training data/patches


    Seven ways to improve example-based single image resolution 笔记_第1张图片
    image.png

    优势:不会增加程序运行时间:
    程序的运行时间主要由regressors决定

  2. increasing the regressors via using more anchors
    由于算法复杂度是O(N),因此为了提高搜索与输入patch最近的anchor效率,提出了hierarchical search。算法复杂度为sqrt(N)
    其主要思想就是将N个anchors使用k-means分为sqrt(N))类,每一类都一个质心,每个质心分给c*sqrt(N)个相关的anchors,搜索先在最近的质心处搜索,然后在$c\sqrt{N}$个相关的anchors处搜索。

  3. back projection
    我所理解的就是iterative backprojection,是一种post-processing,主要是使高分辨率图像在经过图像退化操作后与低分辨率图像一致,主要就是通过迭代优化下面函数:

image.png

D和B分别代表down-sampling operator和blurring operator.

D和B分别代表down-sampling operator和blurring operator.

  1. cascade of core SR method.
    使用相同的特征和参数,把超分的算法级联起来可以实现超分性能提高。

  2. enhanced prediction
    通过将LR cropping,flipping and rotations,获取多幅HR output, 然后平均预测的HR图像。

  3. self-similarity
    一般字典学习相当于建立external dictionary.利用self-similarity相当于建立internal dictionary.PatchMatch: A Randomized Correspondence Algorithm for Structural Image Editing应该算是一篇利用self-similarity的大作了,当然如果你把internal dictionary和external dictionary结合起来肯定效果会更好。

  4. reasoning with context
    利用上下文信息来提高超分的效果,对于每一个anchor,不止训练一个regressor,而是训练4个context specific regressors.对于每一个LR patch,首先是匹配倒anchors,然后这些邻近的context specific regressors用来获得HR output。

不同的方法提高分辨率结果对比:


Seven ways to improve example-based single image resolution 笔记_第2张图片
image.png

你可能感兴趣的:(Seven ways to improve example-based single image resolution 笔记)