一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

文本字符分割的方法和装置与流程

2021-12-13 00:47:00 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,尤其涉及一种文本字符分割的方法和装置。


背景技术:

2.在保险的理赔环节中,客户会上传多张理赔影像资料,包含卡证、医疗票据等。然后,通过ocr(optical character recognition,光学字符识别)技术进行字符识别以实现自动化录入卡证信息和医疗信息,辅助信息抽取,构建医疗知识图谱等,用于实现自动化理赔或者理赔质检等重要工作。
3.但是在客户上传的影像资料中,由于拍照设备、角度、距离、光线以及票据本身打印或扫描的深浅、错位等原因,可能会导致影像中的文字模糊、倾斜、压盖等,从而降低了文字识别的准确率,对于关键字段往往出现部分字符识别错误的情况。这时就需要对该字段文本行图像做字符分割,进一步做字符识别,提升该字段文本识别的准确率。目前常用传统图像处理或深度学习的方法来进行字符分割。
4.然而,在实现本发明过程中,发明人发现,目前常用的字符分割方法难以精确分割模糊、噪声干扰严重的字符,使得字符分割结果不够准确,严重影响了文本识别的准确率。


技术实现要素:

5.有鉴于此,本发明实施例提供一种文本字符分割的方法和装置,能够精确的进行字符分割,分割结果准确,进而可以提升文本识别的准确率,增加ocr结果的准确度,有效的代替人工操作,节省了人力和时间成本。
6.为实现上述目的,根据本发明实施例的一个方面,提供了一种文本字符分割的方法。
7.一种文本字符分割的方法,包括:
8.使用深度学习网络获取文本行图像中各字符的中心区域坐标;
9.对所述文本行图像进行图像处理以获取文本行的边界;
10.根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;
11.根据所述文本行的边界和相邻字符之间的分割点,进行文本字符分割。
12.可选地,使用深度学习网络获取文本行图像中各字符的中心区域坐标包括:
13.使用卷积神经网络对文本行图像进行特征提取得到特征图;
14.根据设定的特征向量序列长度将所述特征图转换为特征向量序列;
15.将所述特征向量序列输入到循环神经网络,得到所述文本行图像中各字符的中心区域坐标。
16.可选地,在使用卷积神经网络对文本行图像进行特征提取得到特征图之前,还包括:
17.根据设定的缩放因子对所述文本行图像进行图像缩放;
18.以及,将所述特征向量序列输入到循环神经网络,得到所述文本行图像中各字符的中心区域坐标包括:
19.将所述特征向量序列输入到循环神经网络,得到各字符的中心区域在缩放后的文本行图像中的坐标;
20.根据所述缩放因子和得到的各字符的中心区域在缩放后的文本行图像中的坐标,计算所述文本行图像中各字符的中心区域坐标。
21.可选地,对所述文本行图像进行图像处理以获取文本行的边界包括:
22.对所述文本行图像进行二值化处理得到二值图像;
23.获取所述二值图像的水平方向投影和垂直方向投影;
24.根据所述水平方向投影确定所述文本行图像的上下边界,根据所述垂直方向投影确定所述文本行图像的左右边界。
25.可选地,获取所述二值图像的水平方向投影和垂直方向投影包括:
26.通过计算所述二值图像中每一行像素值之和得到所述二值图像的水平方向投影;
27.通过计算所述二值图像中每一列像素值之和得到所述二值图像的垂直方向投影。
28.可选地,所述二值图像中像素点的像素值为0或255;
29.根据所述水平方向投影确定所述文本行图像的上下边界,根据所述垂直方向投影确定所述文本行图像的左右边界包括:
30.根据所述水平方向投影,从上往下依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为所述文本行图像的上边界;从下往上依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为所述文本行图像的下边界;
31.根据所述垂直方向投影,从左往右依次获取每个垂直列的像素值之和,将第一个像素值之和不为0的垂直列作为所述文本行图像的左边界;从右往左依次获取每个垂直列的像素值之和,将第一个像素值之和不为0的垂直列作为所述文本行图像的右边界。
32.可选地,根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点包括:
33.根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,判断相邻字符的中心区域之间是否存在空白间隔区域,所述空白间隔区域为垂直投影图像中列的像素值之和连续为0的区域;
34.在相邻字符的中心区域之间存在空白间隔区域的情况下,选取距离所述相邻字符中左边字符的中心区域最近的空白间隔区域中心作为相邻字符之间的分割点;
35.在相邻字符的中心区域之间不存在空白间隔区域的情况下,选取距离所述相邻字符中左边字符的中心区域最近且列的像素值之和最小的列作为相邻字符之间的分割点。
36.根据本发明实施例的另一方面,提供了一种文本字符分割的装置。
37.一种文本字符分割的装置,包括:
38.第一处理模块,用于使用深度学习网络获取文本行图像中各字符的中心区域坐标;
39.第二处理模块,用于对所述文本行图像进行图像处理以获取文本行的边界;
40.分割点确定模块,用于根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;
41.字符分割模块,用于根据所述文本行的边界和相邻字符之间的分割点,进行文本字符分割。
42.根据本发明实施例的又一方面,提供了一种文本字符分割的电子设备。
43.一种文本字符分割的电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例所提供的文本字符分割的方法。
44.根据本发明实施例的再一方面,提供了一种计算机可读介质。
45.一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例所提供的文本字符分割的方法。
46.上述发明中的一个实施例具有如下优点或有益效果:通过使用深度学习网络获取文本行图像中各字符的中心区域坐标;对文本行图像进行图像处理以获取文本行的边界;根据文本行图像中各字符的中心区域坐标,和各字符的中心区域在文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;根据文本行的边界和相邻字符之间的分割点,进行文本字符分割的技术方案,实现了结合深度学习网络和图像处理技术来确定相邻字符之间的分割点,用于进行文本字符分割,实现了精确的字符分割,分割结果准确,进而可以提升字符识别的准确率,增加ocr结果的可信度,有效的代替人工操作,节省了人力和时间成本。
47.上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
48.附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
49.图1是现有技术进行文本字符分割的实现原理示意图;
50.图2是现有技术中存在的字符分割错误情况示意图;
51.图3是根据本发明实施例的文本字符分割的方法的主要步骤示意图;
52.图4是本发明一个实施例深度学习分支的处理流程示意图;
53.图5是本发明一个实施例的文本字符分割的处理流程示意图;
54.图6是本发明实施例的文本字符分割的实现流程示意图;
55.图7是本发明另一个实施例的文本字符分割的处理流程示意图;
56.图8是根据本发明实施例的文本字符分割的装置的主要模块示意图;
57.图9是本发明实施例可以应用于其中的示例性系统架构图;
58.图10是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
59.以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
60.目前在保险理赔环节中,卡证、医疗影像文本信息需要靠人工录入或者校验,耗时耗力。利用ocr技术识别理赔影像,可以节省人力,缩短理赔时耗,影像质量影响文本识别准确率,利用字符分割对关键字段进行处理,进一步字符识别,可有效提升文本识别准确率,有效的代替人工录入或审核。
61.图1是现有技术进行文本字符分割的实现原理示意图。如图1所示,传统的字符分割方法流程通常是:首先对文本行图像进行二值化处理等,得到二值图像;然后,对二值图像做水平投影和垂直投影,基于水平投影结果得到文本行的上下边界,基于垂直投影得到文本行的左右边界,以及每个字符的边界位置;进而利用上下左右边界以及字符边界实现对每个字符进行分割,或结合边界和设定字符宽度实现对每个字符进行分割。
62.然而这种方法无法进行字符的精确分割,使得文本识别准确率大大降低。图2是现有技术中存在的字符分割错误情况示意图。结合图2所示,现有技术中存在的字符分割错误主要表现在以下三个方面:1、对于笔画存在分离的字符,分割效果差;2、汉字、字母、标点等字符在文本行中字符宽度不一致,设定字符宽度阈值很难自适应各类字符;3、因文本行模糊、打印/扫描质量、笔画复杂、噪声等因素导致在做垂直投影时字符粘连,分割效果差。
63.据此,本发明提供了一种文本字符分割的方法和装置,可以对理赔案件中卡证、医疗影像中的关键字段做字符分割,主要解决:1、文本行中存在笔画分离的字符导致字符分割难的问题;2、文本行中汉字、字母、标点各类字符宽度不一致导致字符分割难的问题;3、文本行中因模糊、打印/扫描质量、笔画复杂、噪声等因素使得字符粘连导致字符分割难的问题。进而提升字符识别的准确率,增加ocr结果的可信度,有效的代替人工,是实现理赔质检和自动化理赔的关键环节。
64.本发明提供的文本字符分割的方法,可以精确分割理赔影像中的文本字符,且普适性很强,适用于处理打印、扫描、电子版的影像中文本行字符的分割,且可分割字符类型包含汉字、英文、标点等类型。本发明的文本字符分割的方法,结合深度学习和图像处理算法实现精确字符分割。该方法利用深度学习网络预测出文本行图像中字符的个数,并获得文本行中各字符的估计中心坐标;利用图像处理方法获取文本行垂直和水平方向投影;然后结合深度学习结果中的文本行字符个数、字符估计中心坐标以及图像处理结果中的垂直和水平方向投影来确定字符边界,实现精确的字符分割。
65.图3是根据本发明实施例的文本字符分割的方法的主要步骤示意图。如图3所示,本发明实施例的文本字符分割的方法主要包括如下的步骤s301至步骤s304。
66.步骤s301:使用深度学习网络获取文本行图像中各字符的中心区域坐标;
67.步骤s302:对所述文本行图像进行图像处理以获取文本行的边界;
68.步骤s303:根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;
69.步骤s304:根据所述文本行的边界和相邻字符之间的分割点,进行文本字符分割。
70.通过上述的步骤s301至步骤s304,使用深度学习网络预测出文本行图像中各个字符的中心区域坐标,并利用图像处理技术得到文本行的边界,然后结合各个字符的中心区域坐标和各个字符在垂直投影图像中的位置确定相邻字符之间的分割点,最后根据文本行边界和相邻字符之间的分割点进行文本字符分割,实现了结合深度学习网络和图像处理技术来确定相邻字符之间的分割点,用于进行文本字符分割,实现了精确的字符分割,分割结
果准确,进而可以提升字符识别的准确率,增加ocr结果的可信度,有效的代替人工操作,节省了人力和时间成本。其中,在具体执行时,上述的步骤s301和步骤s302不具有先后顺序,可以依次执行,也可以同时执行。
71.根据本发明的一个实施例,步骤s301中在使用深度学习网络获取文本行图像中各字符的中心区域坐标时,具体可以按照以下步骤执行:
72.步骤s3011:使用卷积神经网络对文本行图像进行特征提取得到特征图;
73.步骤s3012:根据设定的特征向量序列长度将所述特征图转换为特征向量序列;
74.步骤s3013:将所述特征向量序列输入到循环神经网络,得到所述文本行图像中各字符的中心区域坐标。
75.其中,步骤s3011中在对文本行图像进行特征提取时,可以选取卷积神经网络cnn来进行,cnn网络优选为resnet网络;步骤s3013中所使用的循环神经网络rnn优选为双向lstm(long short

term memory,长短期记忆人工神经网络)。通过将特征向量序列输入到rnn网络中,可以每个预测特征向量序列对应的文本行图像区域中是否含有字符,以及该文本行图像中所含有的字符的个数。若某个文本行图像区域中含有字符,则将该区域作为字符的中心区域。
76.根据本发明的另一个实施例,在步骤s3011使用卷积神经网络对文本行图像进行特征提取得到特征图之前,还包括:
77.根据设定的缩放因子对所述文本行图像进行图像缩放;
78.以及,步骤s3013将所述特征向量序列输入到循环神经网络,得到所述文本行图像中各字符的中心区域坐标,具体可以包括:
79.将所述特征向量序列输入到循环神经网络,得到各字符的中心区域在缩放后的文本行图像中的坐标;
80.根据所述缩放因子和得到的各字符的中心区域在缩放后的文本行图像中的坐标,计算所述文本行图像中各字符的中心区域坐标。
81.通过在进行特征提取之前对文本行图像进行缩放处理,并在得到循环神经网络的输出后根据缩放因子进行与前述图像的缩放处理相反的坐标值的缩放,即可得到文本行图像中各字符的中心区域坐标。通过对图像的缩放处理,可以降低特征向量的维度,减少循环神经网络的计算数据量,从而提高文本行图像中各字符的中心区域坐标的计算效率。
82.图4是本发明一个实施例深度学习分支的处理流程示意图,其中示出了使用深度学习网络获取文本行图像中各字符的中心区域坐标的主要处理流程。深度学习分支的处理流程如下:
83.1、对文本行图像进行图像缩放resize操作,文本行图像原图的宽和高分别为w和h,将文本行图像的高缩放处理到固定值h,缩放因子ratio=h/h,优选的h=32;将文本行图像的宽按照原图的宽高比等比例缩放到w。那么,resize后的图像尺寸为h
×
w
×
c,其中c表示图像通道数;
84.2、对resize后的图像做cnn特征提取,cnn网络优选resnet。获取resize后的图像的特征图,特征图的尺寸为1
×
(w/step)
×
c1,step表示resize后的图像中横向像素的步长,c1表示特征图的通道数;
85.3、将cnn特征提取得到的特征图转换成特征向量序列,设置特征向量序列长度(以
下简称为“时间步”)为t=(w/step),每个时间步特征向量的尺寸为c1×
1,由于cnn中卷积层、最大池化层和激活函数层在局部区域上执行,因此具有平移不变性,每个特征向量对应resize后的图像中的一块h
×
step的区域;
86.4、将特征向量序列输入到rnn网络,优选双向lstm,预测序列的标签,标签值为“有字符”或“无字符”。被预测为“有字符”的时间步对应resize后的图像中一块h
×
step的区域坐标,该区域即为该字符中心区域在resize后的图像中的估计坐标。其中,被标签为“有字符”的时间步的个数即为文本行中的字符个数;
87.5、将被标签为“有字符”的时间步在resize后的图像中对应的区域坐标,结合缩放因子ratio,转换成“有字符”的时间步在原图中的区域坐标,即得到原图中各字符的中心区域坐标。
88.根据本发明的其中一个实施例,步骤s302中在对所述文本行图像进行图像处理以获取文本行的边界时,具体可以包括:
89.步骤s3021:对所述文本行图像进行二值化处理得到二值图像;
90.步骤s3022:获取所述二值图像的水平方向投影和垂直方向投影;
91.步骤s3023:根据所述水平方向投影确定所述文本行图像的上下边界,根据所述垂直方向投影确定所述文本行图像的左右边界。
92.在对文本行图像进行二值化处理时,一般方法是将图像转换成灰度图,再将灰度图利用自适应阈值等方法转换成二值图像。在获取所述二值图像的水平方向投影和垂直方向投影时,是通过计算所述二值图像中每一行像素值之和得到所述二值图像的水平方向投影;通过计算所述二值图像中每一列像素值之和得到所述二值图像的垂直方向投影。
93.在本发明的实施例中,二值图像中像素点的像素值为0或255。并且,步骤s3023在根据所述水平方向投影确定所述文本行图像的上下边界,根据所述垂直方向投影确定所述文本行图像的左右边界时,具体是通过以下步骤来实现的:
94.根据所述水平方向投影,从上往下依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为所述文本行图像的上边界;从下往上依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为所述文本行图像的下边界;
95.根据所述垂直方向投影,从左往右依次获取每个垂直列的像素值之和,将第一个像素值之和不为0的垂直列作为所述文本行图像的左边界;从右往左依次获取每个垂直列的像素值之和,将第一个像素值之和不为0的垂直列作为所述文本行图像的右边界。
96.根据本发明的又一个实施例,在步骤s303根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点时,具体可以包括:
97.根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,判断相邻字符的中心区域之间是否存在空白间隔区域,所述空白间隔区域为垂直投影图像中列的像素值之和连续为0的区域;
98.在相邻字符的中心区域之间存在空白间隔区域的情况下,选取距离所述相邻字符中左边字符的中心区域最近的空白间隔区域中心作为相邻字符之间的分割点;
99.在相邻字符的中心区域之间不存在空白间隔区域的情况下,选取距离所述相邻字符中左边字符的中心区域最近且列的像素值之和最小的列作为相邻字符之间的分割点。
100.根据上述的确定相邻字符之间的分割点的方法,可以找到在相邻字符之间有且只有一个分割点,从而可以解决因字符笔画分离,而导致垂直投影图像中相邻字符出现超过1个以上分割点,字符分割错误的问题,这是因为深度神经网络输出文本行中包括的精确的字符个数,以及字符估计的中心坐标,相邻字符有且只会得到一个分割点;也解决了由于字符粘连而导致垂直投影图像中相邻字符之间没有分割点,字符分割错误的问题,这是因为深度神经网络输出文本行精确的字符个数,以及字符估计的中心坐标,相邻字符必定会得到一个分割点。根据本发明的技术方案,分割点其实质为相邻字符之间的一个垂直列,映射在垂直投影图像中即为一个分割点。
101.图5是本发明一个实施例的文本字符分割的处理流程示意图,其中示出了结合深度学习分支和图像处理分支进行文本字符分割的处理流程示意图。如图5所示,图中最上面一行示出的即为图4中深度学习分支的处理结果,其中竖直方向的多个小矩形即为得到的各字符的中心区域;其中第二行示出的即为图像处理分支输出的垂直投影图。根据各字符的中心区域坐标及该文本行图像的垂直投影图即可得到各字符的中心区域在垂直投影图中的位置,如图中第三行所示出的。之后,根据各字符的中心区域坐标及各字符的中心区域在垂直投影图中的位置即可获取相邻字符的中心区域之间的分割点,即相邻字符的分割点,如图中第四行箭头所指向的位置。最后,利用文本行的上下边界、左右边界,和相邻字符的分割点分割字符,即得到图中最后一行所示出的结果。
102.图6是本发明实施例的文本字符分割的实现流程示意图。如图6所示,对文本行图像,分别进行两个分支的处理,已标示在方框中,左边方框中的分支为深度学习分支,右边方框中的分支为图像处理分支。对于深度学习分支,首先,进行图像缩放处理,根据缩放因子将图像高度缩放到固定值h,将图像宽度按照原图宽高比等比例缩放到w;再对缩放处理后的图像进行cnn特征提取得到特征图;之后,将特征图转换成特征向量序列;然后,使用循环神经网络对特征向量序列进行字符预测,并获取有字符的特征向量所对应的区域坐标;最后,根据缩放因子和前面获取的区域坐标进行计算,确定文本行图像中各个字符的中心区域坐标。对于图像处理分支,首先,进行图像二值化处理;再对二值化处理后的图像进行投影,得到水平投影和垂直投影;然后,根据水平投影确定文本行的上下边界,根据垂直投影确定文本行的左右边界,从而确定文本行的边界。之后,结合深度学习分支输出的文本行图像中各个字符的中心区域坐标,以及各字符的中心区域在垂直投影图中的位置,确定字符之间的分割点。最后,根据文本行的边界和相邻字符之间的分割点分割字符。
103.下面结合图7和另一个实施例,进一步阐述本发明的实施过程。图7是本发明另一个实施例的文本字符分割的处理流程示意图。在该实施例中,示出了保险理赔时某医疗发票中的项目名称的字符分割过程,其可以实现精确地字符分割,提升字符识别的准确率。文本字符分割的处理流程如下:
104.1)对输入的项目名称的文本行图像同时进行深度学习和图像处理两个分支的处理。其中,深度学习分支包括如下的步骤2)至6),图像处理分支包括如下的步骤7)至9);
105.2)深度学习分支,对文本行rgb图像进行resize操作,原图宽高分别为w和h,缩放文本行图像高到固定值h=32,缩放因子ratio=32/h,文本行宽按照原图宽高比等比例缩放到w,w=32/ratio,resize后的图像尺寸为32
×
w
×
c,c=3表示图像通道数;
106.3)对resize后的图像做cnn特征提取,cnn网络选取resnet、vgg,googlenet或
mobilenet等其中之一,优选resnet,获取resize图像的特征图,特征图的尺寸为1
×
(w/step)
×
c1,取step=4,表示resize图像中横向像素步长,c1表示特征图的通道数;
107.4)将cnn提取的特征图转换成特征向量序列s={t1,t2,
……
,t
t
},特征向量序列的时间步为t=(w/step),step=4,每个时间步特征向量t
i
(i∈(1,t))的尺寸为c1×
1,由于cnn中卷积层,最大池化层和激活函数层在局部区域上执行,因此具有平移不变性,第i个特征向量t
i
对应resize图中一块32
×
4的矩形区域为[[i*4,0],[(i 1)*4,32]],其中点p1=[i*4,0],p2=[(i 1)*4,32]分别表示该矩形区域的左上角顶点和右下角顶点的坐标;
[0108]
5)将转换得到的特征向量序列输入到rnn网络,优选双向lstm,预测序列s={t1,t2,
……
,t
t
}的标签,输出预测标签列表l={y(t1),y(t2),...,y(t
t
)},例如l={“无字符”,“有字符”,...,“无字符”};对应被预测为“有字符”的时间步对应resize图中一块32
×
4的区域坐标,该区域坐标即为该字符中心区域在resize图中的估计坐标;
[0109]
6)对于深度学习分支的输出的被标签为“有字符”的时间步,以及该时间步对应在resize图中区域的坐标,被标签为“有字符”的时间步个数即为文本行中字符的个数;将“有字符”的时间步在resize图中的区域坐标,例如假设t
i
时间步被预测为“有字符”,对应resize图中的区域坐标为[[i*4,0],[(i 1)*4,32]],结合缩放因子ratio,转换到原图中的区域坐标为[[(i*4)/ratio,0],[((i 1)*4)/ratio,h]],即得到估计的字符在原图中的中心区域坐标;
[0110]
7)图像处理流程,对文本行图像进行二值化处理,将文本行图像转换成灰度图,利用otsu二值化阈值分割方法将灰度图转成二值图像,图像中像素点的像素值为0或255;
[0111]
8)获取二值图像的水平、垂直方向投影图像,其中水平方向投影,是计算文本行的二值图像每一行像素点的像素值之和;垂直方向投影,是计算文本行的二值图像每一列像素点像素值之和;
[0112]
9)利用图像处理分支输出的水平方向投影确定文本行图像的上下边界;利用图像处理分支输出的垂直方向投影确定文本行图像的左右边界;根据水平方向投影,依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为文本行图像的上边界;从下往上依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为文本行图像的下边界;根据所述垂直方向投影,从左往右依次获取每个垂直列的像素值之和,将第一个像素值之和不为0的垂直列作为文本行图像的左边界;从右往左依次获取每个垂直列的像素值之和,将第一个像素值之和不为0的垂直列作为文本行图像的右边界;
[0113]
10)利用估计的字符中心区域坐标,得到字符中心区域在垂直投影图像中的位置,在相邻字符估计中心位置之间查找唯一的分割点:
[0114]
a、相邻字符中心区域之间存在空白间隔区域(表示垂直投影图像中列的像素值之和连续为0的区域)时,取距离左边字符中心区域位置最近的空白间隔区域中心列作为相邻字符的分割点;
[0115]
b、相邻字符中心区域之间不存在空白间隔区域时,在相邻字符中心区域之间,取距离左边字符中心区域位置最近的且像素值之和最小的列为相邻字符的分割点;
[0116]
11)利用文本行的上下边界、左右边界,以及相邻字符之间的分割点,分割字符。
[0117]
按照上述的处理流程即可得到精确的项目名称分割后的字符,用于字符识别,提升最终项目名称字段识别准确率。
[0118]
根据本发明的另一个方面,还提供了一种文本字符分割的装置。图8是根据本发明实施例的文本字符分割的装置的主要模块示意图,如图8所示,本发明实施例的文本字符分割的装置800主要包括第一处理模块801、第二处理模块802、分割点确定模块803和字符分割模块804。
[0119]
第一处理模块801,用于使用深度学习网络获取文本行图像中各字符的中心区域坐标;
[0120]
第二处理模块802,用于对所述文本行图像进行图像处理以获取文本行的边界;
[0121]
分割点确定模块803,用于根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;
[0122]
字符分割模块804,用于根据所述文本行的边界和相邻字符之间的分割点,进行文本字符分割。
[0123]
根据本发明的一个实施例,第一处理模块801还可以用于:
[0124]
使用卷积神经网络对文本行图像进行特征提取得到特征图;
[0125]
根据设定的特征向量序列长度将所述特征图转换为特征向量序列;
[0126]
将所述特征向量序列输入到循环神经网络,得到所述文本行图像中各字符的中心区域坐标。
[0127]
根据本发明的另一个实施例,第一处理模块801在使用卷积神经网络对文本行图像进行特征提取得到特征图之前,还可以用于:
[0128]
根据设定的缩放因子对所述文本行图像进行图像缩放;
[0129]
以及,在将所述特征向量序列输入到循环神经网络,得到所述文本行图像中各字符的中心区域坐标时,还可以用于:
[0130]
将所述特征向量序列输入到循环神经网络,得到各字符的中心区域在缩放后的文本行图像中的坐标;
[0131]
根据所述缩放因子和得到的各字符的中心区域在缩放后的文本行图像中的坐标,计算所述文本行图像中各字符的中心区域坐标。
[0132]
根据本发明的又一个实施例,第二处理模块802还可以用于:
[0133]
对所述文本行图像进行二值化处理得到二值图像;
[0134]
获取所述二值图像的水平方向投影和垂直方向投影;
[0135]
根据所述水平方向投影确定所述文本行图像的上下边界,根据所述垂直方向投影确定所述文本行图像的左右边界。
[0136]
根据本发明的又一个实施例,第二处理模块802还可以用于:
[0137]
通过计算所述二值图像中每一行像素值之和得到所述二值图像的水平方向投影;
[0138]
通过计算所述二值图像中每一列像素值之和得到所述二值图像的垂直方向投影。
[0139]
根据本发明的又一个实施例,所述二值图像中像素点的像素值为0或255;
[0140]
第二处理模块802还可以用于:
[0141]
根据所述水平方向投影,从上往下依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为所述文本行图像的上边界;从下往上依次获取每个水平行的像素值之和,将第一个像素值之和不为0的水平行作为所述文本行图像的下边界;
[0142]
根据所述垂直方向投影,从左往右依次获取每个垂直列的像素值之和,将第一个
像素值之和不为0的垂直列作为所述文本行图像的左边界;从右往左依次获取每个垂直列的像素值之和,将第一个像素值之和不为0的垂直列作为所述文本行图像的右边界。
[0143]
根据本发明的再一个实施例,分割点确定模块803还可以用于:
[0144]
根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,判断相邻字符的中心区域之间是否存在空白间隔区域,所述空白间隔区域为垂直投影图像中列的像素值之和连续为0的区域;
[0145]
在相邻字符的中心区域之间存在空白间隔区域的情况下,选取距离所述相邻字符中左边字符的中心区域最近的空白间隔区域中心作为相邻字符之间的分割点;
[0146]
在相邻字符的中心区域之间不存在空白间隔区域的情况下,选取距离所述相邻字符中左边字符的中心区域最近且列的像素值之和最小的列作为相邻字符之间的分割点。
[0147]
根据本发明实施例的技术方案,通过使用深度学习网络获取文本行图像中各字符的中心区域坐标;对文本行图像进行图像处理以获取文本行的边界;根据文本行图像中各字符的中心区域坐标,和各字符的中心区域在文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;根据文本行的边界和相邻字符之间的分割点,进行文本字符分割的技术方案,实现了结合深度学习网络和图像处理技术来确定相邻字符之间的分割点,用于进行文本字符分割,实现了精确的字符分割,分割结果准确,进而可以提升字符识别的准确率,增加ocr结果的可信度,有效的代替人工操作,节省了人力和时间成本。
[0148]
图9示出了可以应用本发明实施例的文本字符分割的方法或文本字符分割的装置的示例性系统架构900。
[0149]
如图9所示,系统架构900可以包括终端设备901、902、903,网络904和服务器905。网络904用以在终端设备901、902、903和服务器905之间提供通信链路的介质。网络904可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0150]
用户可以使用终端设备901、902、903通过网络904与服务器905交互,以接收或发送消息等。终端设备901、902、903上可以安装有各种通讯客户端应用,例如文本识别类应用、字符分割类应用、图片处理类应用、文本处理类应用、邮箱客户端、社交平台软件等(仅为示例)。
[0151]
终端设备901、902、903可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
[0152]
服务器905可以是提供各种服务的服务器,例如对用户利用终端设备901、902、903所发来的字符分割请求提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的文本行图像等数据进行深度学习网络处理和图像处理,确定相邻字符之间的分割点;进行文本字符分割等处理,并将处理结果(例如各字符的中心区域坐标、文本行的边界、字符分割结果
‑‑
仅为示例)反馈给终端设备。
[0153]
需要说明的是,本发明实施例所提供的文本字符分割的方法一般由服务器905执行,相应地,文本字符分割的装置一般设置于服务器905中。
[0154]
应该理解,图9中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
[0155]
下面参考图10,其示出了适于用来实现本发明实施例的终端设备或服务器的计算机系统1000的结构示意图。图10示出的终端设备或服务器仅仅是一个示例,不应对本发明
实施例的功能和使用范围带来任何限制。
[0156]
如图10所示,计算机系统1000包括中央处理单元(cpu)1001,其可以根据存储在只读存储器(rom)1002中的程序或者从存储部分1008加载到随机访问存储器(ram)1003中的程序而执行各种适当的动作和处理。在ram 1003中,还存储有系统1000操作所需的各种程序和数据。cpu 1001、rom 1002以及ram 1003通过总线1004彼此相连。输入/输出(i/o)接口1005也连接至总线1004。
[0157]
以下部件连接至i/o接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至i/o接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
[0158]
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(cpu)1001执行时,执行本发明的系统中限定的上述功能。
[0159]
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0160]
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要
注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0161]
描述于本发明实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,可以描述为:一种处理器包括第一处理模块、第二处理模块、分割点确定模块和字符分割模块。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定,例如,第一处理模块还可以被描述为“用于使用深度学习网络获取文本行图像中各字符的中心区域坐标的模块”。
[0162]
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:使用深度学习网络获取文本行图像中各字符的中心区域坐标;对所述文本行图像进行图像处理以获取文本行的边界;根据所述文本行图像中各字符的中心区域坐标,和各字符的中心区域在所述文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;根据所述文本行的边界和相邻字符之间的分割点,进行文本字符分割。
[0163]
根据本发明实施例的技术方案,通过使用深度学习网络获取文本行图像中各字符的中心区域坐标;对文本行图像进行图像处理以获取文本行的边界;根据文本行图像中各字符的中心区域坐标,和各字符的中心区域在文本行图像的垂直投影图像中的位置,确定相邻字符之间的分割点;根据文本行的边界和相邻字符之间的分割点,进行文本字符分割的技术方案,实现了结合深度学习网络和图像处理技术来确定相邻字符之间的分割点,用于进行文本字符分割,实现了精确的字符分割,分割结果准确,进而可以提升字符识别的准确率,增加ocr结果的可信度,有效的代替人工操作,节省了人力和时间成本。
[0164]
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献