1.本发明涉及中文文字检测技术领域,尤其涉及一种基于单字连接的文档图像中文字符检测方法。
背景技术:2.场景文本检测因其场景理解、自动驾驶、即时翻译等多种应用而在学术界和行业引起越来越多的关注。受益于深度学习在物体检测和语义分割的快速发展,场景文本检测取得了重大进展。
3.目前,大多数文本检测方法都是基于文本行设计的。虽然先前的工作对文本行检测模型进行了大量的修改,但对字符级别的检测模型研究还不够。由于建模字符级上下文的困难,在出现深度网络和合成数据之后,对字符级别的场景文本检测的研究有所减少。一方面,字符级别的手动注释非常耗时,并且到目前为止,具有真实字符级别标签的训练场景图像数量有限。另一方面,文本行设置适用于由字母组成的语言,例如英语。中文文本的书面外观与英文有很大不同。中文文本行由字符组成,两个字符之间没有额外的空间。一个汉字大概就是一个单词,而大部分英文单词都是由几个字母组成的。此外,中文有数千个字符,而英文只有26个字母。在复杂的背景和各种方向中提取中文文本行具有挑战性。
4.近年来,利用深度学习方法从场景图像中检测文本取得了很大进展。一类方法是使用隐式锚点回归的方法,它将场景文本视为一般对象,并依赖于使用框回归的目标检测框架,具有词级和行级先验知识。例如:通过修改卷积核和锚点框的大小,扩展了ssd以有效捕获各种文本形状;在faster r-cnn中引入了锚点和roi-pooling的旋转,以检测任意方向的场景文本;但隐式锚点回归的方法为了更好的贴合文本区域,通常会使用额外的信息,例如角度等,这就造成了额外的计算量;由于角度的偏差对长文本很敏感,锚点回归的方法对长文本的预测效果不佳。另一类是基于分割的方法,它从语义分割方法中汲取灵感,通过估计单词边界区域来检测文本;首先进行像素级别的文本实例分割,然后根据分割结果生成边界框,同时提出了fcn的注意力机制,大幅抑制特征图中的背景干扰,实现对单词的准确检测;但基于分割的方法往往需要耗时的后处理。
5.此外,也有检测单个文本部分或字符的方法,其中一些使用连接或通过后处理方法来生成文本行结果。例如使用yolo和ssd来检测单个字符;利用改进faster r-cnn提取具有固定宽度的水平文本提议,通过循环神经网络生成水平文本行。但由于中文的特殊性,并不像英文以单词的形式出现,基于文本行方式的字符检测,往往是根据文字间距来区分是否属于一个实例,该判别方法在一定情况下不适用,例如中文纵向排布时。
技术实现要素:6.针对上述现有技术的不足,本发明的主要目的在于解决中文字符检测问题,提供一种基于单字连接的文档图像中文字符检测方法,本发明中文字符检测技术建立在深度卷积神经网路技术的基础上,能对自然场景图像进行单字检测或者文本行检测。
7.本发明的技术方案具体介绍如下。
8.一种基于单字连接的文档图像中文字符检测方法,包括以下步骤:
9.(1)将若干有单字标注的数据图片输入到单字检测网络中进行训练,使单字检测网络学习到单字的特征,通过反向传播算法进行网络调优,得到单字检测模型;其中,单字的特征包含中心点坐标,字符大小和中心点偏移;
10.单字检测网络使用resnet作为主干网络,其通过跳跃连接将深层特征和浅层特征融合以共享高级语义信息和低级精细的细节信息,并通过双线性插值将深层特征上采样到与浅层特征相同的大小,上采样的特征图通过3
×
3卷积层进行重构;对于输入的一个图像,通过resnet基础网络提取图像特征后,通过一个单独的3
×
3卷积、relu和另一个1
×
1卷积分别得到中心点坐标、字符大小和中心点偏移预测结果;
11.单字检测网络预测三个热图,即中心点概率图、字符大小和中心点偏移;对于中心点概率图,使用具有对象大小自适应标准偏差的高斯核将所有文字中心点p转换为概率图y,y
p
=1对应于中心点,y
p
=0表示p在背景中,如果同一类的两个高斯重叠,取最大值作为该点的值;
12.(2)将待检测文档图像输入到训练好的单字检测模型中进行单字检测,得到字符的中心点位置、中心点偏移和字符大小,获得单字检测结果;
13.(3)将步骤(2)得到的单字检测结果进行预测拼接,得到文本行检测结果。
14.本发明中,步骤(1)中,有单字标注的数据图片通过数字增强的方法得到。
15.本发明中,步骤(1)中,以标注的单字作为节点生成无向图,节点的信息为单字检测网络的特征输出,边特征为两个节点的距离和两个节点的特征拼接。
16.本发明中,步骤(2)中,单字检测时,输入的待检测文档图像通过网络获得中心点概率图,使用中心点概率作为其检测置信度的度量,检测值大于或等于8个连接的邻居的点作为中心点概率图中的峰值。
17.本发明中,步骤(2)中,单字检测时,将带检测文档图像调整为768
×
768的分辨率后输入训练好的单字检测模型中;并应用非最大抑制来算法去除重复检测。
18.本发明中,步骤(3)中,将单字检测结果构成图,通过图神经网络预测每个节点的连接关系后得到文本行检测结果。
19.进一步的,本发明中,步骤(1)中,单字检测网络用单字检测和拼接网络替代;省略步骤(3),直接在步骤(2)中将待检测文档图像输入到训练好的单字检测模型中进行单字检测和拼接,得到文本行检测结果;其中:
20.步骤(1)中,单字检测和拼接网络学习的特征含中心点坐标,字符大小、中心点偏移和连接中心点坐标;
21.单字检测与拼接网络使用resnet作为主干网络,其将深层特征和浅层特征连接以共享高级语义信息和低级精细的细节信息,并通过双线性插值将深层特征上采样到与浅层特征相同的大小,上采样的特征图通过3
×
3卷积层进行重构;对于输入的一个图像,通过resnet基础网络提取图像特征后,通过一个单独的3
×
3卷积、relu和另一个1
×
1卷积分别得到中心点坐标、字符大小、中心点偏移和连接中心点预测结果;
22.单字检测和拼接网络预测四个热图,即中心点概率图、字符大小、中心点偏移和连接概率图;对于中心点概率图,使用具有对象大小自适应标准偏差的高斯核将所有文字的
中心点p转换为概率图y;y
p
=1对应于中心点,y
p
=0表示p在背景中,如果同一类的两个高斯重叠,取最大值作为该点的值;对于连接概率图,将属于同一个文字区域相邻的两个单字中心点的中点作为连接概率图的中心,同样用高斯核得到相应的概率图l,概率图l在p点的值l
p
=1表示两个字相连,l
p
=0表示两个字不相连。
23.再进一步的,本发明中,针对竖排的文字进行文本行检测时,可以只需要单字的检测,不需要进行拼接;即省略步骤(3),在现有的结构上去除相应的连接模块,直接得到单字检测结果。
24.和现有技术相比,本发明的有益效果在于:本发明可应用于任意场景下的中文字符定位,文档资料的字符定位,针对整文本行检测或单字检测都有较好的效果。
附图说明
25.图1是基于单字连接的文档图像中文字符检测方法的流程图。
26.图2是基于单字连接的文档图像中文字符检测系统的第一种网络架构。
27.图3是基于单字连接的文档图像中文字符检测系统的第二种网络架构。
28.图4是需要检测单字的情况。
29.图5是基于单字连接的文档图像中文字符检测系统的第三种网络架构。
30.图6是实施例中的检测结果。
具体实施方式
31.下面结合附图和实施例对本发明的技术方案进行详细阐述。
32.本发明的技术解决方案流程图如图1所示,具体实施步骤包括:
33.1)通过一系列有单字标注的数据字符检测网络,使网络学习到单字的特征和单字连接特征,包含中心点位置,中心点偏移、字符的大小和字符连接情况。
34.2)对于输入的图像,利用训练好的模型得到中心点位置,中心点偏移和字符大小,整合后得到单字检测结果。
35.3)利用单字检测结果,输入相应的连接网络得到问本行检测结果。
36.实施例1
37.本实施例采用基于单字连接的文档图像中文字符检测,目的在于快速提取所文字区域。本实例包含数据准备,网络结构,推理过程。主要流程包括:
38.将图片输入到单字检测网络中进行训练,根据反向传播算法进行网络调优,得到单字检测模型;
39.训练单字拼接网络,利用单字信息构建图,利用图神经网络训练单字拼接模型。
40.利用单字检测模型对测试数据进行单字位置预测,利用单字拼接模型得到最终的检测结果。
41.具体实现细节如下:
42.(一)数据准备
43.由于汉字的巨大变化,仅使用真实世界的图像可能不足以构建强大的模型。因此,我们采用数据增强来丰富训练数据。我们随机选择训练图像的裁剪区域,生成合成汉字,并将它们粘贴到区域中。在字符合成过程中,我们还考虑了每个字符类别的实例数,以避免模
型对某些特定字符的过拟合。
44.网络需要预测三个热图,即表示字符中心点的概率图、边界框和中心点偏移。对于中心点概率图,我们使用具有对象大小自适应标准偏差的高斯核将所有文字中心点p转换为概率图y。y
p
=1对应于中心点,y
p
=0表示p在背景中。如果同一类的两个高斯重叠,我们取最大值作为该点的值。
45.以标注的单字作为节点生成无向图,节点的信息为单字网络的特征输出,边特征为两个节点的距离和两个节点的特征拼接。连接网络最后输出各个节点的连接情况。
46.(二)网络结构
47.图2显示了检测网络架构。输入图像首先通过一个主干网络。在本专利中,我们使用resnet作为主干网络。为了保持空间分辨率并充分利用多层级特征信息,我们通过将深层和浅层结合起来通过连接以共享高级语义信息和低级精细的细节信息。在这里,我们首先通过双线性插值将深层特征上采样到与浅层特征相同的大小。上采样的特征图通过3
×
3卷积层进行重构。
48.为了表示字符边界框,我们在网络的头部使用了三个分支:中心点坐标为了表示字符边界框,我们在网络的头部使用了三个分支:中心点坐标字符大小和中心点偏移其中k表示类别,w表示输入图像宽度,h表示输入图像的高度,r代表预测结果和原图的缩放比例。使用单个网络来预测中心点y、中心点偏移o和字符大小s。对于输入的一个图像,通过resnet基础网络提取图像特征后,通过一个单独的3
×
3卷积、relu和另一个1
×
1卷积分别得到中心点坐标、字符大小和中心点偏移预测结果;
49.总体的损失函数如下:
50.l=l
cp
+λ
size
l
size
+λ
off
l
off
+λ
connect
l
graph
51.其中l
cp
表示中心点概率图的loss,l
size
表示字符大小的loss,l
off
表示中心点偏移的loss,l
graph
表示字符之间连接的loss,λ
size
,λ
off
和λ
connect
表示三个loss的权重值。
52.(三)推理过程
53.在单字检测阶段,输入图像首先通过网络获得表示中心点坐标y、字符大小s和中心点偏移o,获得中心点概率图。我们使用中心点概率作为其检测置信度的度量。通过检测值大于或等于其8个连接的邻居的点作为中心点概率图中的峰值。在连接阶段利用单字检测的结果和最后一层的特征最为输入,预测出单字的连接情况。
54.为了与模型训练保持一致并考虑到文字的大小可能会有很大差异,在推理过程中执行了多尺度方案。所有图像调整为768
×
768的分辨率后输入框架中。最后,应用非最大抑制来去除重复检测。
55.在连接网络阶段,利用单字结果构成图,通过图神经网络预测每个节点的连接关系后得到最后的文字检测结果。
56.实施例2
57.本实施例采用基于单字连接的文档图像中文字符检测,区别于实例1采用图神经网络进行单字连接的方式,该实例使用了直接预测连接关系的方法。主要包含三个步骤:数据准备,网络结构,推理过程。主要流程如下:
58.将图片输入到网络中进行训练,根据反向传播算法进行网络调优,得到单字检测
与拼接模型。
59.预测阶段,利用单字检测结果和拼接预测结果组合得到最终的结果。
60.具体实现细节如下:
61.(一)数据准备
62.网络需要预测四个热图,即表示字符中心点的概率图、边界框、中心点偏移和连接概率图。对于中心点概率图,我们使用具有对象大小自适应标准偏差的高斯核将所有文字的中心点p转换为概率图y。概率图p点的值y
p
=1对应于中心点,y
p
=0表示p在背景中。如果同一类的两个高斯重叠,我们取最大值作为该点的值。
63.对于连接概率图,我们将属于同一个文字区域相邻的两个单字中心点的中点作为连接概率图的中心,同样用高斯核得到相应的概率图l,概率图在p点的值l
p
=1表示两个字相连,l
p
=0两个字不相连。
64.(二)网络结构
65.图3显示了检测网络架构。与实例1类似,输入图像首先通过一个主干网络。在本专利中,我们使用resnet作为主干网络。为了保持空间分辨率并充分利用多层级特征信息,我们通过将深层和浅层结合起来通过连接以共享高级语义信息和低级精细的细节信息。在这里,我们首先通过双线性插值将深层特征上采样到与浅层特征相同的大小。上采样的特征图通过3
×
3卷积层进行重构。
66.为了表示字符边界框,我们在网络的头部使用了四个分支:中心点坐标为了表示字符边界框,我们在网络的头部使用了四个分支:中心点坐标字符大小中心点偏移和连接中心点w表示输入图像宽度,h表示输入图像的高度,r代表预测结果和原图的缩放比例。使用单个网络来预测中心点y、局部偏移o、字符大小s和连接中心点c。我们使用单个网络来预测中心点、中心点偏移、字符大小和连接中心点。所有输出共享一个公共的全卷积网络。对于每种预测结果,主干特征通过一个单独的3
×
3卷积、relu和另一个1
×
1卷积得到结果。
67.总体的损失函数如下:
68.l=l
cp
+λ
size
l
size
+λ
off
l
off
+λ
connect
l
connect
69.其中l
cp
表示中心点概率图的loss,l
size
表示字符大小的loss,l
off
表示中心点偏移的loss,l
connect
表示字符之间连接的loss,λ
size
,λ
off
和λ
connect
表示三个loss的权重值。
70.(三)推理过程
71.输入图像通过网络并获得表示中心点坐标、字符大小、中心点偏移概率图和连接中心概率图。我们使用中心点概率作为其检测置信度的度量。
72.在训练时,我们使用了有单字标注的数据集,针对没有单字标注的数据集,我们将文字区域按照标注的文字个数进行划分,提取每个文字的中心点位置。我们使用了多尺度方案。具有固定步幅值的三个尺度裁剪后被调整为768
×
768的分辨率,然后作为输入输入到网络中。最后,利用拼接信息和单字信息得到检测结果。
73.实施例3
74.本实例主要对于仅需要检测单字的情况,如图4所示,大多竖排的文字只需要单字的检测,不需要进行拼接。在现有的结构上去除相应的连接模块,直接得到单字检测结果,
其主要步骤包括:
75.预测每个文字的中心点,宽高和偏移。
76.利用三个预测信息得到单字检测结果。
77.具体实现细节如下:
78.(一)数据准备
79.我们在公开数据集ctw上做了相应的实验和比较。ctw数据集主要包含32285张图片,共计1018402个汉字,3850个汉字类别,图片大小为2048*2048。其中训练集:检测测试集:识别测试集=8:1:1。该数据集主要是街景的拍摄,可以用于自然场景文字的检测和识别2个任务。
80.由于与整个场景图像相比,字符通常相对较小,因此我们应用原始图像中的裁剪区域进行训练。具体来说,我们调整图像大小,长边为2048像素,然后使用步长为24的密集采样策略,得到大小为672
×
672的裁剪图像。
81.由于汉字的巨大变化,我们认为仅使用真实世界的图像可能不足以构建强大的模型。因此,我们采用数据增强来丰富训练数据。我们随机选择训练图像的裁剪区域,生成合成汉字,并将它们粘贴到区域中。在字符合成过程中,我们还考虑了每个字符类别的实例数,以避免模型对某些特定字符的偏差。
82.网络需要预测三个热图,即表示字符中心点的概率图、边界框和中心点偏移。对于中心点概率图,我们使用具有对象大小自适应标准偏差的高斯核将所有地面实况中心点p转换为概率图y。y
p
=1对应于中心点,y
p
=0表示p在背景中。如果同一类的两个高斯重叠,我们取最大值作为该点的值。
83.(二)网络结构
84.图5显示了检测网络架构。与实例1类似,输入图像首先通过一个主干网络。在本专利中,我们使用resnet作为主干网络。为了保持空间分辨率并充分利用多层级特征信息,我们通过将深层和浅层结合起来通过连接以共享高级语义信息和低级精细的细节信息。在这里,我们首先通过双线性插值将深层特征上采样到与浅层特征相同的大小。上采样的特征图通过3
×
3卷积层进行重构。
85.为了表示字符边界框,我们在网络的头部使用了三个分支:中心点坐标为了表示字符边界框,我们在网络的头部使用了三个分支:中心点坐标字符大小和中心点偏移我们使用单个网络来预测中心点y、中心点偏移o和字符大小s。所有输出共享一个公共的全卷积网络。对于每种预测结果,主干特征通过一个单独的3
×
3卷积、relu和另一个1
×
1卷积。
86.总体的损失函数如下:
87.l=l
cp
+λ
size
l
size
+λ
off
l
off
88.其中l
cp
表示中心点概率图的loss,l
size
表示字符大小的loss,l
off
表示中心点偏移的loss,l
connect
表示字符之间连接的loss。
89.(三)推理过程
90.在单字检测过程中,输入图像首先通过网络并获得表示中心点坐标字符大小和中心点偏移的概率图。我们使用中心点概率作为其检测置信度的度量。通过检测值大于或等于其8个连接的邻居的点作为中心点概率图中的峰值。
91.在训练集中使用了裁剪操作,用于处理整个图像和单个字符之间的大小差异。为了与模型训练保持一致并考虑到角色实例的大小可能会有很大差异,在推理过程中执行了多尺度方案。具有固定步幅值的三个尺度的裁剪区域被调整为768
×
768的分辨率,然后作为输入输入到框架中。最后,应用非最大抑制来去除重复检测。
92.(四)结果与展示
93.该实施例提出的方法检测平均精度达到了76.3%,召回率和准确率上得到了较好的平衡。同时,该方法在单个nvidia gtx1080 gpu上获得了6-10fps的检测速度。从左到右分别为:原始图像标注的结果、yolo的结果和本专利提出方法的结果展示如图6所示。
技术特征:1.一种基于单字连接的文档图像中文字符检测方法,其特征在于,包括以下步骤:(1)将若干有单字标注的数据图片输入到单字检测网络中进行训练,使单字检测网络学习到单字的特征,通过反向传播算法进行网络调优,得到单字检测模型;其中,单字的特征包含中心点坐标,字符大小和中心点偏移;单字检测网络使用resnet作为主干网络,其通过跳跃连接将深层特征和浅层特征融合以共享高级语义信息和低级精细的细节信息,并通过双线性插值将深层特征上采样到与浅层特征相同的大小,上采样的特征图通过3
×
3卷积层进行重构;对于输入的一个图像,经resnet基础网络提取图像特征后,通过一个单独的3
×
3卷积、relu和另一个1
×
1卷积分别得到中心点坐标、字符大小和中心点偏移预测结果;单字检测网络预测三个热图,即中心点概率图、字符大小和中心点偏移;对于中心点概率图,使用具有对象大小自适应标准偏差的高斯核将所有文字中心点p转换为概率图y,概率图y在p点的值=1对应于中心点,=0表示p在背景中,如果同一类的两个高斯重叠,取最大值作为该点的值;(2)将待检测文档图像输入到训练好的单字检测模型中进行单字检测,得到字符的中心点位置、中心点偏移和字符大小,获得单字检测结果;(3)将步骤(2)得到的单字检测结果进行预测拼接,得到文本行检测结果。2.根据权利要求1所述的文档图像中文字符检测方法,其特征在于,步骤(1)中,有单字标注的数据图片通过数字增强的方法得到。3.根据权利要求1所述的文档图像中文字符检测方法,其特征在于,步骤(1)中,以标注的单字作为节点生成无向图,节点的信息为单字检测网络的特征输出,边特征为两个节点的距离和两个节点的特征拼接。4.根据权利要求1所述的文档图像中文字符检测方法,其特征在于,步骤(2)中,单字检测时,输入的待检测文档图像通过网络获得中心点概率图,使用中心点概率作为其检测置信度的度量,检测值大于或等于8个连接的邻居的点作为中心点概率图中的峰值。5.根据权利要求1所述的文档图像中文字符检测方法,其特征在于,步骤(2)中,单字检测时,将带检测文档图像调整为768
×
768的分辨率后输入训练好的单字检测模型中;并应用非最大抑制来算法去除重复检测。6.根据权利要求1所述的文档图像中文字符检测方法,其特征在于,步骤(3)中,将单字检测结果构成图,通过图神经网络预测每个节点的连接关系后得到文本行检测结果。7.根据权利要求1所述的文档图像中文字符检测方法,其特征在于,步骤(1)中,单字检测网络用单字检测和拼接网络替代;省略步骤(3),直接在步骤(2)中将待检测文档图像输入到训练好的单字检测模型中进行单字检测和拼接,得到文本行检测结果;其中:步骤(1)中,单字检测和拼接网络学习的特征含中心点坐标,字符大小、中心点偏移和连接中心点坐标;单字检测与拼接网络使用resnet作为主干网络,其将深层特征和浅层特征连接以共享高级语义信息和低级精细的细节信息,并通过双线性插值将深层特征上采样到与浅层特征相同的大小,上采样的特征图通过3
×
3卷积层进行重构;对于输入的一个图像,通过resnet基础网络提取图像特征后,通过一个单独的3
×
3卷积、relu和另一个1
×
1卷积分别得到中
心点坐标、字符大小、中心点偏移和连接中心点预测结果;单字检测和拼接网络预测四个热图,即中心点概率图、字符大小、中心点偏移和连接概率图;对于中心点概率图,使用具有对象大小自适应标准偏差的高斯核将所有文字的中心点p转换为概率图y;概率图y在p点的值=1对应于中心点,=0表示p在背景中,如果同一类的两个高斯重叠,取最大值作为该点的值;对于连接概率图,将属于同一个文字区域相邻的两个单字中心点的中点作为连接概率图的中心,同样用高斯核得到相应的概率图l,概率图l在p点的值=1表示两个字相连,=0表示两个字不相连。
技术总结本发明公开了一种基于单字连接的文档图像中文字符检测方法;该方法包括:给定一张或多张自然场景图像输入,区别于使用锚点的方法,直接通过分割的方法得到单个字的中心点和文字宽高。得到单字的检测结果后,通过预测连接的方法将单字进行拼接,得到最终检测结果。本发明可应用于任意场景下的中文字符定位,文档资料的字符定位,针对整文本行检测或单字检测都有较好的效果。测都有较好的效果。测都有较好的效果。
技术研发人员:周钊 郑莹斌 金城
受保护的技术使用者:复旦大学
技术研发日:2022.04.19
技术公布日:2022/7/5