【论文笔记】DocUNet: Document Image Unwarping via A Stacked U-Net
论文相关信息如下:
目录
摘要
由于移动相机的普遍存在,捕获文档图像是数字化和记录物理文档的常见方法。为了使文本识别更容易,通常需要在物理文档页被折叠或弯曲时以数字方式展平文档图像。在本文中,我们开发了第一个基于学习的方法来实现这一目标。我们提出了一个具有中间监督的堆叠 U-Net [25],以直接预测从扭曲图像到其校正版本的前向映射。由于难以获得具有真实变形的大规模现实世界数据,因此我们通过扭曲非扭曲文档图像来创建包含大约 10 万张图像的合成数据集。该网络在该数据集上进行了各种数据增强的训练,以提高其泛化能力。我们进一步创建了一个涵盖各种现实条件的综合基准1。我们在所提出的基准上定量和定性地评估所提出的模型,并将其与以前的基于非学习的方法进行比较。
1、引言
文档数字化是保存现有印刷文档的重要手段,使它们可以随时随地更轻松地访问。传统上,文档是通过平板扫描仪进行数字化的,这是一种非便携式且昂贵的设备。近年来,随着移动相机的日益普及,对实物文档进行拍照已成为扫描实物文档最简单的方式。捕获图像后,可以通过文本检测和识别通道(pipelines)进一步处理图像,以进行内容分析和信息提取。
拍摄文档图像时常见的实际问题是文档页未处于理想的扫描状态:它们可能弯曲、折叠或弄皱,或者放置在复杂的背景上。想象一下从口袋里拿出一张皱巴巴的收据,所有这些因素都可能如图1所示,这给下游的自动文档图像分析程序带来了严重的问题。因此,需要对捕获的图像中的此类文档进行数字压平。
图 1. 文档图像反扭曲及其用途。 (a) 显示了我们网络的一些结果。顶行显示输入图像,底行显示输出。 (b) 我们的网络极大地提高了最先进的文本检测系统的有效性[10]:与原始折叠文档图像(顶部)相比,可以从校正后的文档图像(底部)中检测到更多单词(以绿色显示) 。
本文提出了一种基于学习的新颖方法来恢复在野外捕获的任意弯曲和折叠的纸质文档。与以前的技术不同,我们的方法是第一个基于端到端学习的直接预测文档失真的方法。以前的方法仅使用学习进行特征提取,而最终的图像恢复仍然基于传统的优化过程。相反,我们的方法依赖于卷积神经网络 (CNN) 进行端到端图像恢复。与基于优化的方法相比,前馈网络在测试阶段非常有效。此外,如果提供适当的训练数据,这种数据驱动方法可以更好地推广到许多文档类型(文本、图形、手写等)。
我们将此任务表述为寻找适当的 2D 图像扭曲来纠正扭曲的文档图像。我们的网络预测一个映射场,该映射场将失真源图像 S(u, v) 中的像素移动到结果图像 D 中的 (x, y):
D(x,y)=S(u,v).
用这种方法来描述问题,我们发现这个任务与语义切分有一些共同之处。对于后者,网络为每个像素分配一个类别标签。类似地,我们的网络为每个像素分配了一个二维向量。这启发了我们在我们的网络结构中使用U-Net[25],它以在语义分割方面的成功而广为人知。为了适应我们的回归问题,我们定义了一个新的损失函数来驱动网络回归S中每个像素在D中的坐标(x,y)。
获取带有地面真实标签的大规模数据是深度监督学习面临的第一个挑战。为了训练我们的网络,我们需要获得大量不同程度失真的文档图像作为输入,以及相应的变形才能导致完美的矫正。目前不存在这样的数据集。在物理世界中获取地面真实变形是非常具有挑战性的。因此,我们求助于合成数据进行训练。我们通过随机扭曲完美的平面文档图像来合成100K图像,因此扰动图像是输入,我们用来扭曲图像的网格是我们目标恢复的逆变形。
没有公开提供的全面基准来评估文件展开情况。以前的方法要么在少量的图像上进行评估,要么数据集只包含一到两种类型的失真,如平滑曲线。我们通过创建一个包含130张图像的基准来填补这一空白,该基准包含文档类型、扭曲程度和类型以及捕获条件的很大变化。我们的主要贡献包括:
1)第一种端到端的、基于学习的文档图像去扭曲方法。我们建议建立一个具有中级监督的堆叠式U-Net[25]。它以端到端的方式进行训练,以预测能够纠正失真文档的前向映射。
2)一种合成弯曲或折叠的纸质文档图像的技术。使用这种方法,我们创建了一个包含大约100K图像的大规模数据集用于训练。
3)一个具有基本事实的多样化评估基准数据集,我们在此基础上评估我们的方法并与以前的方法进行比较。
·
·
·
2、相关工作
先前的文献中已经对纠正文件进行了研究。我们将之前的方法大致分为两类:
3D 形状重建(略)
来自低级特征的形状(略)
我们提出的方法可以分为第二类。然而,它与以前的所有方法不同,它是一种纯粹的数据驱动方法。该网络经过端到端训练以预测扭曲的前向映射,因此不使用手工制作的低级特征。测试阶段没有优化过程。我们的网络有两个好处:i)只要提供大规模训练数据,它就可以处理各种文档类型和条件。 ii)它可以作为一种有效的方法部署在实际应用中。
·
·
·
3、数据集
该方法基于CNN,需要使用大规模训练数据进行训练。在此任务中,文档变形可以表示为 3D 网格、表面法线、2D 流等。在现实世界中以任何形式准确捕获它是很困难的。需要额外的硬件,如测距相机或校准的立体视觉系统,而估计变形的准确性通常取决于硬件的成本。此外,手动折叠/扭曲能够覆盖所有现实情况的文档纸张几乎是不可能的。
我们考虑使用合成数据进行训练,这是最近深度学习系统中的常见步骤 [31, 26]。这样可以完全控制数据集中的变化,例如 3D 网格形状、照明、材质等。
一种简单的想法是直接在 3D 渲染引擎中渲染扭曲的文档。然而,由于以下原因这是不切实际的。首先,使用物理模拟生成物理上正确的 3D 纸质网格是困难且缓慢的[22]。其次,通过路径跟踪进行渲染也很耗时,例如在 [6] 中渲染图像大约需要 1 分钟。渲染 100K 图像需要两个多月的时间。
·
·
3.1 合成2D 畸变图像
·
我们直接合成二维训练图像。尽管忽略了底层的物理建模,但操作 2D 网格要容易得多,并且生成图像的速度也更快。由于我们的目的是将扭曲的纸张映射到校正后的图像,因此数据合成是逆过程,即将校正后的图像扭曲成不同的扭曲。创建畸变图时,我们遵循以下经验指南:
1)一张真正的纸是一种局部刚性的织物。它不会膨胀或压缩。某一点的变形将在空间上传播。
2)有两种扭曲:产生折痕和卷曲的折叠和曲线。在现实世界中,通常存在这两种基本扭曲的混合。
我们首先收集了大量的平面数字文档,包括纸张、书籍和杂志页面。然后我们扭曲这些图像,如图2所示。具体步骤如下所示:
图2 2D格式的合成失真文档图像
扰动网格生成:给定一幅图像 I,我们在其上强加一个m×n网格M来提供扭曲的控制点。在 M 上选择一个随机顶点 p 作为初始变形点。变形的方向和强度用 v 表示,也是随机产生的。最后,基于观测值i),将 v 按权重 w 传播到其他顶点。变形网格上的顶点被计算为 pi+wv,∀i。
定义 w 是至关重要的。定义一条直线,我们首先计算每个顶点到这条直线之间的归一化距离 d ,并将 w 定义为 d 的函数。基于观察,我们为每种失真类型定义一个函数。对于折叠:
w
=
α
d
+
α
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
(
2
)
w=\frac\alpha{d+\alpha}·············································(2)
w=d+αα⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅(2)
对于弯曲状:
w
=
1
−
d
α
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
(
3
)
w=1-d^\alpha···············································(3)
w=1−dα⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅(3)
其中 α 控制变形传播的程度。总体而言,较大的 α 导致 w 趋向 1,这意味着所有其他顶点与 p 具有相同的变形,使得变形更加全局,而较小的 α 将变形限制在 p 周围的局部区域。这两个函数的效果如图 4 所示。
*图 4. 变形函数的影响。 (a)和(b)显示了基于方程(2)的折叠效应公式. (a) 对大 α,(b) 对于小 α。 ©和(d)显示了基于方程(3)的曲线效果.;© 对大 α,(d) 对小 α
·
·
·
扰动图像生成:扰动网格提供稀疏的变形场。我们对其进行线性内插,以构建像素级别的密集扭曲贴图。然后,可以通过将扭曲贴图应用于原始图像来生成扰动图像。我们用这种方法在单个CPU上合成了100K的图像。每幅图像包含多达19个合成失真(30%是弯曲失真,70%是折叠失真)。弯曲需要保持高斯曲率在任何地方都应该为0,而折叠是任意的。一些样品如图5所示。
图5 合成数据集中的样本图像
3.2 数据增长(Data Augmentation)
由于真实数据和合成数据之间的差距,对合成数据进行训练的模型可能不能很好地推广到真实数据。这个问题可以通过领域适应来缓解,例如,使用生成性对抗网络(GAN)[26]。然而,无法获得大规模的真实数据。我们通过用各种变换来增强合成图像来缓解这一问题。首先,我们使用可描述纹理数据集(DTD)[4]中的纹理图像来生成各种背景纹理。然后,我们在HSV颜色空间中添加抖动,以放大光照和纸张颜色变化。进一步应用了射影变换来处理视点变化。实验表明,这些数据增强方法大大提高了网络的泛化能力。
·
·
·
4、DocUNet
4.1 网络架构
与语义分割类似,我们设计了我们的网络来加强像素级的监督。我们选择 UNet [25]作为我们的基本模型,因为它在语义切分任务中简单和有效。基本上,UNet 是一个完全卷积网络[17]。它包含一系列下采样层,然后是一系列上采样层。特征图(feature map)连接在下采样层和上采样层之间。请注意,我们修改了原始U-Net实现中的填充方案,使网络的输入和输出具有相同的空间大小。
在我们的网络中,如图3所示,我们有一层将去卷积特征转换为最终输出(x,y)。第一个U-Net在最后一个反褶积层之后分裂。将第一U-Net和中间预测y1的反卷积特征连接在一起作为第二U-Net的输入。第二个U-Net最终给出了一个精化的预测y2,我们使用它作为网络的最终输出。我们对两个y 1和y2应用相同的损失函数在训练期间。然而,在测试时,只使用y2作为网络的输出。
该网络的输入为: S ∈ ℜ M g × N g × 3 S\in\Re^{M_{g}\times N_{g}\times3} S∈ℜMg×Ng×3输出为从失真图像到校正图像的映射: F ∈ ℜ M β × N β × 2 F\in\Re^{M_{\beta}\times N_{\beta}\times2} F∈ℜMβ×Nβ×2不同于语义分割是一个像素分类问题,计算F是一个回归过程。语义分割网络的输出通常有C个通道,其中C是语义类别的数量。所提出的网络仅输出(x,y)坐标的两个通道。
4.2 损失函数
我们将损失函数定义为元素损失和平移不变损失的组合。L2元素损失为:
L
e
=
1
n
∑
i
(
y
i
−
y
i
∗
)
2
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
(
4
)
L_e=\frac1n\sum_i{(y_i-y_i^*)^2}·································\quad(4)
Le=n1i∑(yi−yi∗)2⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅(4)
其中n是F中的元素数,yi是指数i处的预测值,y∗i是相应的地面真实值。
平移不变损失Ls与yi在F中的绝对值无关。它要求yi和yj之间的差异应该接近y∗i和y∗j之间的差异。因此Ls可以写成:
L
s
=
1
2
n
2
∑
i
,
j
(
(
y
i
−
y
j
)
−
(
y
i
∗
−
y
j
∗
)
)
2
.
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
(
5
)
L_s=\frac{1}{2n^2}\sum_{i,j}\left((y_i-y_j)-(y_i^*-y_j^*)\right)^2.\quad···························(5)
Ls=2n21i,j∑((yi−yj)−(yi∗−yj∗))2.⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅(5)
假设di=yi−y∗i,等式5可以写成:
L s = 1 2 n 2 ∑ i , j ( d i − d j ) 2 = 1 2 n 2 ∑ i , j ( d i 2 + d j 2 − 2 d i d j ) (6) = 1 n ∑ i d i 2 − ( 1 n ∑ i d i ) 2 . \begin{aligned} L_{s}& =\frac1{2n^2}\sum_{i,j}(d_i-d_j)^2 \\ &=\frac1{2n^2}\sum_{i,j}{(d_i^2+d_j^2-2d_id_j)}& \text{(6)} \\ &=\frac1n\sum_id_i^2-(\frac1n\sum_id_i)^2. \end{aligned} Ls=2n21i,j∑(di−dj)2=2n21i,j∑(di2+dj2−2didj)=n1i∑di2−(n1i∑di)2.(6)
第一项只是一个元素方面的损失。如果两个元素之间的距离与ground turth中的距离相似,则第二项减少了损失。这种损失也称为尺度不变误差[7]。这两个项的权重在公式5中是相同的。我们可以在训练过程中为这两个术语分配不同的权重。我们还观察到,L1的损失要好于L2的损失。因此,我们将损失函数重写为:
L
f
=
1
n
∑
i
∣
d
i
∣
−
λ
n
∣
∑
i
d
i
∣
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
⋅
(
7
)
L^f=\frac{1}{n}\sum_i|d_i|-\frac{\lambda}{n}|\sum_id_i|\quad\quad··················(7)
Lf=n1i∑∣di∣−nλ∣i∑di∣⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅(7)
其中 λ 控制第二项的强度。我们在所有实验中都使用 0.1。
F 中对应于 S 中背景像素的元素具有恒定的负值 -1,如所述在第3节中。所以在等式7中损失的一部分是由于背景的原因。实际上,网络没有必要将这些元素精确地回归到-1。任何负值都应该足够了。因此,我们对背景像素使用损失函数(hinge loss): L b = 1 n ∑ i max ( 0 , y i ) , ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ( 8 ) L^b=\frac1n\sum_i\max{(0,y_i)},\quad\quad\quad··················(8) Lb=n1i∑max(0,yi),⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅(8)
在使用公式7时仅用于前景像素。
·
·
·
·
5、实验
我们首先介绍了我们的基准,以评估在wild的对扭曲的纸质文件从单一的图像。然后对我们提出的基于学习的方法进行评估,并将结果与现有技术中的非基于学习的方法进行比较
5.1 基准
图像:此基准中的图像是移动摄像头拍摄的纸质实体文档的照片。我们收集了65个不同内容/格式的纸质文档,每个文档我们拍摄了两张照片,总共产生了130张图像。这一基准既包含了原始照片,也包含了剪裁得很紧的照片。我们在实验中使用后一种方法,因为我们关注的是纸张的去翘曲,而不是图像中的文档本地化。基准是在考虑以下因素后创建的:
1)文档类型。我们选择的文件包括收据、信件、传单、杂志、学术论文和书籍等各种类型。其中大多数包含文字和数字的混合。其中一些是纯文本,另一些只包含图像。有些是彩色的,有些是黑白的。大部分文本是英文的,也有一些是日文和中文的。一些乐谱也包括在内。大多数文档都有白色背景,但也包括具有不同背景颜色的文档。
2)扭曲。原来的平面纸文件被不同的人篡改了。每份文件都被变形成两种不同的形状。为了确保基准的多样性,我们既包括简单的案例,也包括困难的案例。对于简单的情况,文档可能只有一条折痕、一条卷曲或一个“普通折叠”[6]。对于困难的案件,文件可能会严重皱巴巴的。我们故意保留了几个文档,以测试是否有方法可以保留它们。特别是,94.6%的图像包含曲线;31.7%的图像包含6个以上的折叠;8.5%的图像是纸皱,这是具有挑战性的情况。
3)环境。这些照片是由两个人用两个不同的手机拍摄的,在不同的室内和室外场景,有不同的照明条件:阳光、室内灯光或手机内置闪光灯。我们也在一定程度上改变了观点。
最终的基准测试包含非常多样化的示例,可以合理地近似最常见的用例。
正确的数据(Ground Truth):在折叠收集的纸质文件之前,我们用平板扫描仪对它们进行了扫描。我们调整了获得的图像的大小和整体颜色,以尽可能与原始平面文档匹配。图6显示了我们的基准测试中的一些示例。
图6 基准中的样本
评估方案:之前的工作提出了两种不同的评估方案。一种是基于光学字符识别 (OCR) 准确性,另一种是基于图像相似度的测量。我们选择后者,因为 OCR 准确性在很大程度上取决于使用的 OCR 模块,并且无法处理主要包含数字的文档。对于图像相似性,我们使用多尺度结构相似性(MS-SSIM)[33],因为任务主要是关于文档结构而不是像素级颜色精度。我们还采用了 You 等人提出的使用密集 SIFT 流 [15] 来评估局部失真(LD)的方法。 [36]。
单尺度 SSIM 是在图像中的所有图像块上计算的。它基于统计测量的相似性,包括每个图像块内的平均值和方差。 MS-SSIM的实现构建了输入图像和目标图像的高斯金字塔。 MS-SSIM 是每个级别计算的 SSIM 的加权和。除了加权和之外,我们还报告了不同级别的单尺度 SSIM。
表 1. 我们的方法与 [27] 之间的比较。通过多尺度结构相似性 (MS-SSIM) 和局部失真 (LD) 评估方法。对于 MS-SSIM,值越高意味着与真实值的相似度越高。对于LD,较低的值意味着较低的位移。与[27]相比,我们的方法取得了更好、更快的结果。
图 7. 不同尺度的结构相似性比较。在每个尺度上,我们的方法都优于 Tian 和 Narasimhan [27]。尺度 1 是原始图像,尺度 5 是高斯金字塔顶部的图像。
·
·
·
5.2 实验设置(Experiment Setup)
我们使用数据集中的 90K 图像进行训练,其余图像进行验证。我们使用 Adam [12] 作为我们的优化器。训练从 0.0002 的学习率开始,当验证损失达到稳定水平时,将学习率降低到五分之一。为了公平比较,基准测试中使用的任何文档都不会用于创建用于训练的合成数据。事实上,基准测试包含比训练集更多样化的数据,作为测试我们方法的泛化能力的一种方式。
我们使用 Tian 和 Narasimhan [27] 在我们的基准上使用他们的公开代码将我们的结果进行定量比较。我们还将我们的结果与 You 等人最近的两篇作品进行了定性比较。 [36] 和达斯等人。 [6]。鉴于这些方法没有公开可用的代码,我们在他们论文中显示的示例上测试我们训练的模型。
我们调整所有输出图像和目标图像的大小,使其具有相同的 598、400 区域,同时保持其纵横比。我们对 MS-SSIM 使用 5 级金字塔,每个级别的权重为 0.0448、0.2856、0.3001、0.2363、0.1333,这是从原始实现继承的。对于SIFT流,我们使用作者提供的带有默认参数的代码。
5.3 结果
我们的基准评估表明,所提出的方法优于Tian和那拉辛汗[27]提出的方法。具体来说,我们的方法在 MS-SSIM 方面达到了 0.41,平均 LD 为 14.08 像素。 [27]在MS-SSIM中仅达到0.13,在LD中仅达到33.69。这是因为他们的方法主要是针对带有文本行的文档而设计的,并且在很大程度上取决于文本行跟踪的质量。因此,它无法处理具有混合文本行和图形的更复杂的文档,或者文本行跟踪失败的区域,如图 10 所示。
图10 与 Tian 和 Narasimhan 的比较[27]。 [27]中的方法很大程度上依赖于文本行的跟踪。因此,如果无法追踪文本行,则在校正结果中它将被替换为黑色区域。不过细节的恢复比我们的稍微好一些。
就计算效率而言,[27] 使用 Matlab 实现在 CPU 上处理一张图像需要 3 到 4 分钟。尽管这不是一个公平的比较,但我们的网络可以在 GTX 1080 Ti GPU 上以 28 fps 的速度运行。瓶颈在于从映射生成校正图像。我们未优化的 Matlab 实现在 CPU 上大约需要 3 到 4 秒。总的来说,我们的方法比[27]快一个数量级。总体比较如表所示。 1. 单尺度SSIM值也如图7所示。我们的方法在每个尺度上都有更好的性能。
我们还根据 You 等人提供的示例测试我们训练有素的网络。 [36] 和达斯等人。 [6]。定性结果表明我们的模型可以成功推广到许多其他情况。值得注意的是,[36]需要多视图图像作为输入,而[6]仅处理特定的折叠类型。我们的结果与他们的结果相当,尽管我们的方法仅使用单个图像并且旨在处理任意失真,如图 8 和图 9 所示。我们的基准的更多定性结果如图 11 所示。
我们通过进行一组消融实验来证明我们的网络和损失函数设计的合理性。我们考虑以下三种配置:
1)堆叠式 U-Net,方程 1 中带有 Lf。 7 和方程式中的 Lb。 8 作为损失函数。这是我们在之前的实验中使用的配置。
2)仅具有传统L1损失的堆叠U-Net。
3)带有L1损失的单个U-Net。
·
·
·
比较结果在表2.:
表 2. 消融实验。我们比较三种不同的配置。第一个是以 Lf 和 Lb 作为损失函数的堆叠 U-Net。第二种配置用 L1 替换损失函数,最后一种配置使用单个 U-Net,而不是堆叠的 U-Net。
所提出的网络架构和损失函数的配置在我们的基准测试中达到了最佳结果。使用 L1 损失函数导致 MS-SSIM 从 0.41 略有下降到 0.40,LD 从 14.08 增加到 14.85。进一步用单个 U-Net 替换堆叠 U-Net 将 MS-SSIM 降低至 0.35,并将 LD 增加至 15.73。
6、结论和未来的工作
在本文中,我们提出了第一个端到端神经网络来压平和纠正扭曲的文档图像。我们提出了具有中间监督的堆叠式 U-Net并以端到端的方式对其进行训练,以直接预测可以消除失真的映射。我们提出了创建合成训练数据的程序。我们还创建了一个基准,其中包含在各种条件下拍摄的真实世界图像。实验结果证明了我们方法的有效性和效率。
我们的工作存在一定的局限性。例如,如图 11 (b) 中的第五张图像所示,我们的网络没有完全恢复透视失真,因此结果中的三列仍然包含透视失真的痕迹。这应该在今后的工作中得到解决。此外,在未来的工作中,我们希望应用 GAN 来使我们的网络更好地泛化到现实世界的图像。我们还希望结合照明模型来消除校正图像上的高光或阴影。另一方面,我们将优化从映射生成纠正文档的代码,并使整个管道(pipeline)实时化并将其部署在移动设备上。
参考文献(略)
论文原文下载链接:https://openaccess.thecvf.com/content_cvpr_2018/html/Ma_DocUNet_Document_Image_CVPR_2018_paper.htm