【GiantPandaCV导语】今天带来一篇熊猫人自己的工作,这篇文章主要是在年初NTIRE图像去模糊赛道的技术方案的基础上,对我们的方案进行了一个简单的extend,以及详尽的阐述。
这篇文章主要围绕一些有趣的问题进行探讨:
1、在大量深度学习下游任务中,类似U-Net的结构进行反复的上下采样会引入最终结果的misalignment。而在低级视觉方法中,反复的上下采样是否有用?
2、能否有更好的办法来替代反复的上下采样?
3、现有的SOTA网络:比如MPRNet等方法,网络结构复杂,且需要极长时间的训练,因此能否有更简单结构的网络来达到相近的性能呢?
常见的去模糊网络电路图示意,(d)为我们的方法
围绕上述的几个问题,我们团队通过“渐进空洞率的空洞卷积”、“小波重建模块”、“精细化的网络训练tricks”三个方面,设计了SDWNet,尝试以一个新的视角来处理Image Debluring问题。
SDWNet的网络结构
类金字塔型多空洞卷积模块
小波重建模块
同时,我们在复现其他作者的工作时,发现以2020年霸榜的MPRNet工作,有一个很严重的问题,需要训练极长的训练轮数3000个epoch才可以达到最终论文中霸榜的数值指标。
但这一点在少GPU资源的环境中是很难对这些工作进行复现的。同时,在各种代码库对齐的过程中,我们也发现大家使用的训练策略都不尽相同。
因为MPRNet网络需要很长的训练周期数,并且GPU上的batch size也并不大,因此每次训练所需要的等效iteration是一个庞大的数量级。这很难说实际上的网络提升究竟是来源于余弦退火后在长时间训练后带来的亦或是网络本身结构的优越性带来的;
同时,我们还发现:在深度学习的图像重建任务中,大家都默认采用random crop的方式进行在线裁剪。
而在检测任务中,random crop往往会带来网络性能的下降。因此,我们的方法也探究了低级视觉任务中,使用图像的离线裁剪是否能够有效提升网络的鲁棒性。
Sliding Crop方法示意图
受制于文章篇幅限制,我们的实验结果在补充材料中展示,在这里为大家提供一下展示:
Image Patch尺寸大小与网络性能的关系
在本文的实验中,我们探究了random crop和离线滑窗后模型训练的性能差异。我们可以看到,离线滑窗后的模型又可以有0.1个点的提升,无痛涨点!
同时,由于我们的网络结构简单,其中复杂的电路图式的连接极少,因此我们还额外进行了网络深度、网络宽度对整体模型性能的影响实验。
SDWNet网络深度与宽度对性能的影响
从这里我们看到:本文提出的架构中,网络的宽度比深度对低级视觉任务的增益更大。更深的网络并不一定能带来性能的正向提升。
本文中,我们对模型结构层面的逐项改进,我们也进行了消融实验。
消融实验
从实验结果中,可以看出:使用更好的激活函数,替换bicubic上采样为bilinear上采样,设置不同的dilated rate和引入小波重建模块均能有效提升网络的PSNR指标数值。
图像主观质量评价
image-20211013115512867
image-20211013120439402
我们可以重点关注一下,我们提出的方法和其他有大量反复上下采样的网络结构的网络相比,在恢复文字等具有强结构化特征的内容上,有了极大的性能提升,能够稳定提升文字辨识的质量。
[1] Zamir S W, Arora A, Khan S, et al. Multi-stage progressive image restoration[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2021: 14821-14831.
[2] Liu Z, Lin Y, Cao Y, et al. Swin transformer: Hierarchical vision transformer using shifted windows[J]. arXiv preprint arXiv:2103.14030, 2021.
本文分享自 GiantPandaCV 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!