目录
介绍
随着深度学习的发展,神经网络已经深入各行各业,这里主要介绍下神经网络对图像的重建问题,这里图像重建可以是图像超分辨,图像增强,图像去噪等等。由于现在的显卡显存的限制,对于分辨率比较大的图像来说,直接将原图作为输入往往会导致显存不够,通常的处理的办法是将原图进行切块处理,对图像块进行重建,然后将图像块进行拼接。下面将一一介绍其方案以优化的方案。
方案一:
一个很暴力直接的方案就是图像直接非重叠的进行切块,其图解如下图所示:
假设上图黑色边界表示原图像的大小,图像的分辨率为1024x1024,现以将图像均切成四等份为例,可以切成上图四个512x512大小的图像块,以上切块像块处理方案没有进行重叠。此时的图像块输入大小为512x512。其图像块作为输入得到重建后的图像块,最后将其进行拼接。这样会导致图像重建后每个图像的边界信息处理后不一致,然后拼接后的图像很明显的出现块效应。如下图所示:
可以观察此重建后的图像的局部信息,如下图所示:
很明显的看到会出现图像块效应。
因此需要对其进行改进。
方案二
对于拼接处进行重叠超分重建,然后对重叠部分进行取平均值,具体图解如下:
以将图像切成4等份的patch为例,蓝色边界表示原图大小,这样会形成红色重叠部分假设红色重叠部分为16个像素宽度,实际每个图像块大小为蓝色图像块大小504x504。此时图像块的输入大小仍然为520x520(512+8)(蓝色部分504加红色重叠部分16),重建后进行原位像素拼接,拼接后对于红色重叠部分进行取平均值。
方案三
通过对实际图像大小的块对外扩充一些像素然后对扩充后的图像进行图像重建,图像块重建后对于重叠部分进行切除舍弃处理。具体图解如下图所示:
蓝色的边界仍然表示原图大小,其中黑色实线表示图像中轴线。首先将图像四周进行padding,padding大小为红色重叠部分16个像素,padding后的图像大小为1056x1056。将padding后的图像进行进行切块,此时的输入图像块大小为548x548(512+16*2)进行重建,然后将重建后的图像块切除四周16个像素得到512x512,最后将其依次拼接起来。对于图像块1,重建后将红色部分切除。对于图像块2,左边部分切除黄色部分。
总结
通过实验表明,通过对方案一改进后的方案二、三能够很好的去除块效应,同时,方案三的效果要比方案二更佳。