本文简要介绍
CVPR 2020
收录论文“
BEDSR-Net: A Deep Shadow Removal Network from a Single Document Image
”的主要工作,该论文针对移动设备拍摄的文档图像的去阴影任务提出了一种基于深度学习的
SOTA
解决方法。
移动设备(如手机)内置摄像头拍摄得到的文档图像上通常具有因物体遮挡以及不均匀光照造成的阴影,这种阴影严重影响了文档图像的可视化质量以及内容的可阅读性,同时也会影响后续的计算机视觉处理算法。目前关于去阴影的研究大都关注于自然场景,而关注于文档图像去阴影的研究又大都基于一些启发式手工设计的特征,这使得这些方法的鲁棒性和泛化性都不理想。
图
2
是
BEDSR-Net
的整体网络结构。主要由两个子网络构成:
背景估计网络
(Background Estimation Network, BE-net)
:背景估计网络以带有阴影的文档图像(
Shadow Image
)作为输入,经过几层卷积网络之后通过全局最大池化(
Global Max Pooling
)得到一维的特征向量(全局最大池化处理的好处是可以使得网络处理不同大小的输入),通过几层全连接之后,最后输出得到(
R,G,B
)三个值,并以此得到和输入的阴影文档图像具有相同尺寸的背景颜色图(
Background Color
)。其中(
R,G,B
)有相应的标签进行监督,损失函数采用
L1
损失。作者借鉴
[1]
中的思路,认为得到的背景颜色
Background Color
反映输入阴影文档图像纸张的颜色。同时,作者借鉴
[2]
中的方法,提取出输出(
R,G,B
)在最后一层卷积层输出中梯度,通过全局池化后得到一个一维的权重向量,利用这一权重向量将最后一层卷积层在通道方向上加权求和得到注意力热图(
Attention Map
),作者认为这个注意力热图(
Attention Map
)反映输入阴影文档图像(
Shadow Image
)上的阴影分布。
阴影去除网络(
Shadow Removal Network,SR-net
)
:
阴影去除网络以带阴影的文档图像、
BE-net
输出的注意力热图(
Attention Map
)以及背景颜色图(
Background Color
)在通道方向上拼接在一起之后作为输入。通过一个
U-net
网络之后得到去掉阴影后的文档图(
Non-shadow Image
),去阴影图(
Non-shadow Image
)同样有响应标签进行监督,损失函数采用
L1
损失。此外,还通过一个判别器判断输出去阴影图(
Non-shadow Image
)的真实性,构成了一个
GAN
的网络,引入了
GAN Loss
。
数据集构建,作者分别构建了用于训练的合成数据集以及用于测试的真实数据集:
训练用合成数据
:作者采集了
970
张干净的文档图像(多数是直接从已有的公开数据集中采集的),然后通过
Blender
和
Python
脚本,在采集到的文档图像基础上添加阴影,并在此基础上得到
Shadow Mask
(本文方法不需要用到,主要用于对比其他方法)一共合成了
8,309
个训练样例。
测试用真实数据
:作者先在良好的光照环境(光源均匀、无遮挡)下用相机拍摄得到无阴影图(
Non-shadow Image
),然后通过增加遮挡物来添加阴影,再次拍摄得到含有阴影的文档图像(
Shadow Image
),并以此为基础获得
Shadow Mask
。总共获得了
540
个测试样例。
表
1
定量比较结果。其中红色表示同列中最好的结果,蓝色表示第二好结果
图
5
定性可视化比较结果(从左到右分别是阴影文档图、
GT
、
Bako[1], Kligler[3],Jung[4], ST-CGAN[5], ST-CGAN-BE
以及本文方法)
作者主要对比了文档图像去阴影的几个传统方法(
Bako[1], Kligler[3],Jung[4]
),以及一篇自然场景图像去阴影的深度学习方法
ST-CGAN[5]
。作者还将
BE-net
模块集成到
ST-CGAN
中,以此来证明其有效性,表示为
ST-CGAN-BE
,网络结构如图
7
所示。此外,
U-net
也作为
Baseline
加入了对比。定量指标的比较如表
1
所示,从表中
ST-CGAN[5]
和
ST-CGAN-BE
的比较可以看出
BE-net
模块的有效性,在增加了
BE-net
模块之后指标有了很大的提升。在大多数数据集上本文方法都取得了相比传统方法更好的结果。
图
7
将
BE-net
模块应用于
Stacked-cGAN
方法
从图
5
展示的可视化比较可以看出,本文提出的方法相比于其他方法都更接近于
GT
,而且
ST-CGAN-BE
相比于
ST-CGAN
在可视化质量上也有了很大的提升。图
6
是在真实数据上的测试结果,可以看出输出的背景颜色图(
Background Color
)和注意力热图(
Attention Map
)与作者前文的分析都是相符的。表
2
表示不同方法在
OCR
结果上与
GT
的
OCR
结果差别,数值越小表明越接近
GT
,可以看出本文方法与
GT
的
OCR
结果是最接近的。
-
本文针对拍摄文档图像去阴影问题提出了BEDSR-Net网络,该网络由背景估计网络(Background Estimation Network, BE-net)以及阴影去除网络(Shadow Removal Network, SR-net)这两个子网络构成,BE-net以阴影文档图作为输入,预测输出该文档图的纸张颜色(R,G,B)三个值,以及反映阴影分布情况的注意力热图(Attention Map)。将这两个输出与原始的阴影文档图一起输入给SR-net(包含判别器,引用了GAN Loss),最终输出得到阴影去除后的文档图像。
-
作者还利用Blender+python脚本的方式合成了一个包含8309个样例的数据集,每个样例都包含文档背景颜色、阴影图文档图、去掉阴影的文档图以及Shadow Mask。以及提出了一个包含540个真实样例的测试集。
-
定量和定性比较都证明了本文方法的有效性以及优越性,超过了目前SOTA的方法,通过将BE-net整合到ST-CGAN上也很好的证明BE-net的有效性。
-
代码和数据都将开源。
-
不足之处:对于没有统一纸张背景的文档图像不能很好处理、对于阴影布满整个文档区域的情况不能很好处理、对于多光源多阴影的复杂情况不能很好处理。