ICCV2021:Rethinking Coarse-to-Fine Approach in Single Image Deblurring

news/2024/7/21 3:42:48 标签: 计算机视觉, 图像处理

摘要

单位:Korea University
论文
代码(未放出)

传统方法通常使用多尺度输入图像堆叠子网络,并通过从底部子网络到顶部子网络逐渐提升图像的sharpess,这样做不可避免地产生较高的计算成本。本文重新审视了粗粒度到细粒度的策略,提出一个multi-input multi-output U-net (MIMO-UNet). 单个编码器可以接受多个尺度的输入,缓解训练难度;单个解码器可以输出多个尺度的结果;非对称特征融合技术的引入,有效地融合多尺度特征。结果SOTA。

方法

Coarse-to-Fine

以上的4个方法是论文中的Related Work介绍的不同的Corase-to-Fine的方法,感觉图还是很直观的。这些和本文方法的不同之处在于,这些方法在粗粒度到细粒度过度的时候是一种串行的方式,而本文是将不同粒度,也就是尺度,给混合起来。

网络结构

在这里插入图片描述
结构也是很明了,如上图所示,多输入多输出,EB是encoder block,DB是decoder block。

上图的各个模块名字起的倒是不错,但是内部实现是平平无奇的。韩国人真会来事[\doge]

ECCV2020的一篇论文是这样做的:

相比之下,不同点在于:

  • 本文多输入,实现上是对图像进行多个尺度的resize;而上面这篇论文里是单输入,产生的特征进行多个尺度的resize。
  • 本文的特征融合路径是上面论文的一种,即最小尺度的特征的来源只有一条路径,不像其他尺度会融合不同尺度的信息。
  • 此外,本文的不同尺度融合有种dense的感觉,比如AFF1前面的特征,都是从不同尺度的Residual Block后获取得到的,而RB之后的特征又会进行下采样得到下一个尺度的信息;上面论文是一种并行结构,融合的特征是尺度上单独的信息。
  • 本文多输出,方便构造不同尺度上的残差形式。

因此,本文还是有一些创新的。

loss

在损失上采用内容也就是L1损失;此外用了个FFT变换,在频域做了个损失。

实验

结果

在这里插入图片描述
原本是8个编解码结构,+代表的是20个编解码,++代表后者测试时候用self-ensemble。本方法的计算时间不错。

消融实验

multi-input single encoder(MISE)
multi-output single decoder(MOSD)
AFF是Figure4的结构
MSFR是频域损失,这个是我比较关注的,可以看出提升还挺大的。

此外,本文方法上还做了扩展,在目标检测的效果上也好一点,就不放图了。就酱紫,下次再见!


http://www.niftyadmin.cn/n/1328818.html

相关文章

ICCV2021:Structure-Preserving Deraining with Residue Channel Prior Guidance

摘要 论文 代码 这个题目有点像CVPR2020的论文名称:《Structure-Preserving Super Resolution With Gradient Guidance》 要解决的问题是:虽然现有的CNN-based方法可以去除部分雨纹,但它们很难适应真实场景,并恢复出清晰准确的结…

CVPR2021:Towards Real-World Blind Face Restoration with Generative Facial Prior

单位:腾讯PCG 论文 代码 Xintao Wang大佬(ESRGAN、EDVR作者)的力作,这篇论文和他们另一篇CVPR2021论文《GLEAN: Generative Latent Bank for Large-Factor Image Super-Resolution》想法相近,但是做的是两个不同的恢复…

ICCV2021:Focal Frequency Loss for Image Reconstruction and Synthesis

Focal Frequency Loss for Image Reconstruction and Synthesis 代码 摘要 由于生成模型的发展,图像重建和合成技术取得了显著的进步。尽管如此,生成图像和真实世界图像之间仍可能存在差距,特别是在频域。在这项研究中,我们发现…

ICCV2021:AdaAttN: Revisit Attention Mechanism in Arbitrary Neural Style Transfer

论文 代码 摘要 快速、任意的风格转换引起了学术界、工业界和艺术界的广泛关注,因为它支持各种应用的灵活性。现有的解决方案要么专注于不考虑特征分布地将风格特征融入到深层内容特征,或根据风格特征自适应地规范化深层内容特征使得他们的全局统计量是…

ICCV2021:Spatially-Adaptive Image Restoration using Distortion-Guided Networks

论文 代码(应该还没放出来) 摘要 我们提出了一种基于学习的通用解决方案,用于恢复遭受空间变化的退化图像。先前的方法通常是特定于退化的,并且在不同的图像和图像中的不同像素上采用相同的处理。然而,我们假设这样的…

torch.bmm()验证

官网的说明 torch.bmm(input, mat2, outNone) → Tensorbmm的输入必须是3维的。其他维度会出错: import torch a torch.Tensor(4,2,2,3) b torch.Tensor(4,2,3,5) c torch.bmm(a,b)Traceback (most recent call last):File "/Users/XXX/Desktop/MyCode/xxx.py",…

Leetcode237 删除链表中的节点

题目连接 请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 。 题目数据保证需要删除的节点 不是末尾节点 。 代码 class Solution:def deleteNode(sel…

Leetcode496 下一个更大元素 I

题目链接 给你两个 没有重复元素 的数组 nums1 和 nums2 ,其中nums1 是 nums2 的子集。 请你找出 nums1 中每个元素在 nums2 中的下一个比其大的值。 nums1 中数字 x 的下一个更大元素是指 x 在 nums2 中对应位置的右边的第一个比 x 大的元素。如果不存在&#x…