超分辨重建是图像复原领域的一大热点,能在硬件有限的情况下最大还原原始场景的信号,在天文探索、显微成像等领域有重要作用。成像设备对物体成像时,由于距离较远,成像会模糊,可以类比多尺度高斯滤波;受限于成像机能,成像像素达不到最理想条件,可类比为对原始像进行一个下采样。超分辨重建就是要在这种条件下复原原始图像。
假设上帝有最好的成像设备,成像为X;我们成像设备成像为B,高斯滤波模板设为G;为了防止问题病态,加入lasso正则。那么有:
tf.nn.avg_pool 均值下采样
现在我们逐个测试一下。图像经过三倍下采样:
1、tf.image.resize_images,双线性采样,振铃不严重,条纹很多:
2、tf.nn.max_pool,没有条纹、振铃,但是有一堆噪声,参数调了几次都没有什么更好的效果:
3、tf.nn.avg_pool,无条纹、噪声,有振铃,与原图相比颜色变暗,对比度下降:
4、来与原图做个对比
可以看出,效果最好的就是avg_pool了,在只有高斯模板参数,完全没有其他先验信息的情况,一秒钟内得到这个结果,已经让人非常惊讶了。猜测image-resize和max_pool其实在上下采样中都丢失相当多的信号,而avg_pool则保留了最多的信号,因此重建效果较好。
fast-neural-style文章提到过用感知特征来对图像进行超分辨重建,可以重建同样风格的细节,这个需要用生成网络对大量的图像进行训练,或者直接上vgg慢慢地计算感知特征来仿制风格细节。