A Generic Deep Architecture for Single Image Reflection Removal and Image Smoothing(CEILNet)

A Generic Deep Architecture for Single Image Reflection Removal and Image Smoothing

用于单图像反射去除和图像平滑的通用深度网络架构

概述

本文提出了一种深度神经网络结构,利用边缘信息来处理代表性的低级视觉任务,如层分离和图像过滤。与在此背景下应用的大多数其他深度学习策略不同,我们的方法通过仅使用级联卷积层来估计边缘和重建图像来解决这些具有挑战性的问题,所述级联卷积层被布置成使得不需要手工制作或特定于应用的图像处理组件。我们将得到的可传输管道应用于两个对边缘敏感的不同问题域,即单个图像反射去除和图像平滑。对于前者,使用温和的反射平滑假设和作为一种弱监督的新型综合数据生成方法,我们的网络能够解决更难以通过以前的方法处理的反射情况。对于后者,我们也大幅超越了最先进的定量和定性结果。在所有情况下,提议的框架都是简单,快速,并且易于跨越不同的域进行传输。
ps: cascaded convolutional layers要去看看。暂定这个博客

1. 简介

由于ILSVRC等大规模视觉识别任务的深度学习取得了巨大成功,最近的各种工作已经研究了深层神经网络,用于低级计算机视觉任务,如图像去噪、阴影去除,图像平滑。 鉴于边缘代表了解决许多这些问题的重要线索,可以替代计算上昂贵的或者不太灵活的边缘感知过滤器的网络自然显示出前景。


例如,图像平滑的基本目标是提取稀疏显着结构,如感知重要的边缘和轮廓,同时最小化具有低幅度的图像区域中的颜色差异。 去近似不同的边缘敏感图像平滑滤波器,运行时间比较慢。随着深度网络的到来,已经有学者提出首先学习显着的梯度/权重图然后 随后通过更简单的加权优化程序或迭代递归处理技术过滤图像。 上述方法着重于使用普通CNN模型解决单个问题,然后是由固定过滤方法启发的,更传统的,不灵活的操作。 因此,它们不能完全扩展到实现更广泛的图像平滑效果或其他明显不同的问题,如图像层分离。


在后一方面,梯度主要统计数据相关的一个典型情况是处理图像反射,当提供单个图像时,图像反射通常至少部分地失焦。 当通过玻璃窗拍照时,眩光或反射会使眼睛偏离玻璃后面的场景。 许多实验尝试减轻这些影响,例如使用偏光镜,在镜头和玻璃上方放置一大块黑布以阻挡来自后方的环境光,或改变位置,在许多实际情况中都是不可行的。 此外,在飞机,博物馆,水族馆或相关环境中拍摄照片时,没有其他办法可以通过窗户进行拍摄。 因此,摄影师通常会简单地加宽相机的光圈并使反射模糊。
为了从计算角度解决这种反射去除问题,传统的成像模型假设捕获的图像I是背景层B和反射层R的线性组合,即I = B + R。显然这是 一个不适定的问题,因为存在无限可行的解决方案,因此大多数反射消除算法需要多个输入图像或手动用户交互来标记 反射和背景层渐变,从而缩小候选解决方案的空间。 然而,反射去除问题中的一个可利用特性是两层的梯度或感知结构表现出不同的分布,因为反射经常表现出更大的程度的模糊。这种特性让我们想到采用基于边缘的解决方案,其中考虑了数据驱动的网络变体。


在本文中,我们提出了一种级联边缘和图像学习网络(CEILNet),其可以被定制以解决不同的图像处理任务,例如层分离(例如,反射去除)和图像滤波(例如,图像平滑)。 我们依赖于通过特定于域的边缘信息专门针对每个实例的重写通用结构。 核心框架以非常直观的方式运作。 简而言之,我们将直接预测图像的困难任务分为两个子问题:
(i)通过深度监督的子网络预测目标图像的边缘图
(ii)通过利用预测边缘重建目标图像
通过级联两个类似的简单CNN来端到端地学习这些任务,并且不需要手工制作的模块。 边缘图表示任务特定目标图像的每对相邻像素之间的任何色差,而不是边缘检测问题中的稀疏显着结构。

当然,这些目标需要足够的训练数据才能在实践中可行。 对于图像平滑,如果有足够的计算资源可用于在图像语料库中产生滤波器输出,则这不是特别成问题。 但是,对于许多层分离任务而言,地面实例很少。 因此,我们提出了一种新的弱监督学习方法来训练我们的反射消除管道。 这涉及使用通过反射合成破坏的图像,模仿自然场景中发现的物理特性。
我们的贡献可归纳如下:

  • 我们提出了一种新的通用级联边缘和图像学习网络(CEILNet),它仅依赖于卷积层,专门用于处理边缘敏感的图像处理任务,而无需求助于任何人工设计的kernel。 这种结构快速,可扩展,易于重现,便于无缝转移到不同的低级视觉问题。
  • 我们是第一个使用深度学习技术解决单个图像中反射消除的挑战性层分离问题。 我们还提出了一个与CEILNet相结合的新颖弱监督学习策略。
  • 除了反射消除之外,我们使用CEIL-Net在图像平滑任务上展示了最先进的视觉和数值性能,大大超过了以前的方法。

2. 相关工作

2.1 反射消除:

反射消除基本上是一个不确定的问题,因此需要先验条件或者额外的信息来达到某种程度上的成功。也许最流行的实用数据是使用多个输入图像,例如闪光/非闪光图像对,聚焦/散焦对,背景和反射表现出不同运动的视频序列或通过偏振器以两个或更多个取向[19,31,29]获得的那些。 一些雄心勃勃的方法尝试单一图像反射重新设计,这是一个更加困难但实际的场景。 在[21]中,需要手动注释来指导基于优化的层分离。 [32]通过利用幽灵线索来补偿有限的信息,但这种方法不适用于这种有些特殊的情况,或者在大多数实际情况下。 [35]利用多尺度DoF计算策略将反射与背景分开。
在以最小假设从单个图像中自动反射去除方面,与我们最密切相关的工作是[23]。该方法假设反射层与背景场景相比相对模糊,因此其中的大梯度在其优化中受到严重损害。然而,我们观察到许多真实世界的照片中的反射虽然确实有时失焦或模糊,但仍然由明亮的光产生,并且通常包括图像的最亮部分。因此,与这些反射相关的区域梯度可能非常大,违反了[23]中的假设。在这项工作中,我们综合了一个训练样本数据库,可以更好地捕捉背景和反射统计数据,并用特定的深度网络取代通过显式梯度惩罚或能量最小化注入的先验知识,以利用这种弱监督形式。从实际情况来看,我们稍后会表明,在真实图像上确实可以实现显着的改进。

3. 网络架构

我们的网络由两个级联子网络组成:

  • 边缘预测网络E-CNN
  • 图像重建网络I-CNN

下面是网络架构的示意图,反射消除和图像平滑都用相同的网络架构。

在这里插入图片描述

3.1 E-CNN : The Edge Prediction Network 边缘预测网络

在处理边缘敏感的图像处理任务(如反射去除和图像平滑)时,许多现有的算法自然会利用与边缘相关的线索。类似地,给定源图像(source image) I s I^s Is,我们应用CNN来学习目标图像(target image) I t I^t It的边缘图(edge map) E t E^t Et(即,用于反射去除的背景层或用于图像平滑的平滑图像)。 请注意,训练得到的结果是目标图像的边缘,而不是输入图像,并且不要将此过程与传统边缘检测混淆。

在这项工作中,我们的边缘图不是二值图像,因为我们发现二进制边缘图对于后续图像重建的信息量较少。 相反,我们设计了一个简单但有效的边缘表示:中心像素与其四个连接的邻居之间的平均绝对色差。具体来说,一张图片 I I I的边缘图 E E E通过如下公式计算:
E x , y = 1 4 ∑ c ( ∣ I x , y , c − I x − 1 , y , c ∣ + ∣ I x , y , c − I x + 1 , y , c ∣ + ∣ I x , y , c − I x , y − 1 , c ∣ + ∣ I x , y , c − I x , y + 1 , c ∣ ) E_{x,y} = {1 \over 4} \sum_c(|I_{x,y,c} - I_{x-1,y, c}| +|I_{x,y,c} - I_{x+1, y, c}| + |I_{x,y,c} - I_{x,y-1,c}| + |I_{x,y,c} - I_{x, y+1, c}|) Ex,y=41c(Ix,y,cIx1,y,c+Ix,y,cIx+1,y,c+Ix,y,cIx,y1,c+Ix,y,cIx,y+1,c)
其中x,y代表位置坐标,c代表RGB的通道。

为了简化计算,我们用其边缘图 E s E^s Es作为输入的附加通道来扩充源图像 I s I^s Is。 原理很简单:无反射背景图层或通过滤镜处理平滑的图像可以被视为原始源图像的“简化”版本并且它们的边缘图也是源图像边缘图的简化版本。 我们观察到这种增强不仅可以带来更好的结果,而且可以显著加速训练期间的收敛。 总之,E-CNN近似于以下函数f:
E t = f ( I s , E s ) E^t = f(I^s, E^s) Et=f(Is,Es)

3.2 I-CNN: The Image Reconstruction Network 图像重建网络

第二个子网络I-CNN被设计为通过学习如何在给定由E-CNN预测的目标边缘图 E t E^t Et的情况下处理输入图像来重构目标图像 I t I^t It。 换句话说,它近似于以下函数g:
I t = g ( I s , E t ) I^t = g(I^s, E^t) It=g(Is,Et)
输入图像和目标边缘被组合为4通道张量作为输入,类似于E-CNN,因此它们共享使用相同的整体结构。 另外,在图像平滑任务的基于边缘的图像重建步骤的上下文中,I-CNN用作传统固定滤波操作或基于优化的后处理结构的多用途,数据驱动的替换。

3.3 CNN层的细节

4. 网络训练

训练E-CNN的时候,用均方差(MSE)来构成loss函数。带*的代表GT(ground truth),于是E-CNN的loss函数如下:

l E ( θ ) = ∣ ∣ E t − E t ∗ ∣ ∣ 2 2 l_E(\theta) = ||E^t - E^{t*}||_2^2 lE(θ)=EtEt22

训练的时候,我们有带反射的源图像 I s I^s Is和不带反射的目标图像 I t I^t It,然后通过计算(通过计算像素点的四个周边像素点),我们可以得到目标图像的边缘图 E t E^t Et,这样我们就可以通过此优化上面的loss函数了。

对于图像预测网络,也即I-CNN网络,不仅仅通过优化MSE同时计算梯度的差异(x和y方向上的):

l I ( θ ) = α ∣ ∣ I t − I t ∗ ∣ ∣ 2 2 + β ( ∣ ∣ ∇ x I t − ∇ x I t ∗ ∣ ∣ 1 + ∣ ∣ ∇ y I t − ∇ y I t ∗ ∣ ∣ 1 ) l_I(\theta) = \alpha||I^t - I^{t*}||_2^2 + \beta(||\nabla_xI^t - \nabla_x I^{t*}||_1 + ||\nabla_yI^t - \nabla_yI^{t*}||_1) lI(θ)=αItIt22+β(xItxIt1+yItyIt1)

这个loss计算和上面那个差不多,只不过加了在梯度上的计算。加了梯度上的计算是为了防止产生的图片模糊。

梯度差异成本虽然看似冗余,但有助于防止深度卷积网络产生模糊图像[25]。在联合训练阶段,我们通过最小化损失来培训整个网络:

l ( θ ) = l E ( θ ) + γ l I ( θ ) l(\theta) = l_E(\theta) + \gamma l_I(\theta) l(θ)=lE(θ)+γlI(θ)

5. 实验结果

结果是和下面这篇论文比较:
Single Image Layer Separation Using Relative Smoothness

在这里插入图片描述

B表示background, R代表Reflection。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

和上面论文的数据对比:

峰值信噪比(英语:Peak signal-to-noise ratio,常缩写为PSNR)是一个表示信号最大可能功率和影响它的表示精度的破坏性雜訊功率的比值的工程术语。

SSIM(structural similarity index),结构相似性,是一种衡量两幅图像相似度的指标。

在这里插入图片描述

6. 参考

  1. A Generic Deep Architecture for Single Image Reflection Removal and Image Smoothing
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zedjay_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值