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

一种具有弯曲文本的印章识别方法与流程

2022-07-16 16:44:52 来源:中国专利 TAG:


1.本发明属于计算机技术领域,涉及图片文本的版面还原方法,特别涉及一种具有弯曲文本的印章识别方法。


背景技术:

2.随着基于深度学习方法的ocr(光学字符识别)方法不断优化更新,效率以及性能的改进足以让其在市面各类产品上落地,
3.目前在识别弯曲文本时,有如下两种方法:第一种是针对印章数据训练弯曲文本识别模型,这种方法需要针对印章重新训练,无法复用先前模型,而且由于印章弯曲文本字符分布不均,训练所需的字符数据匮乏,而文本识别模型的训练需要大量的数据且需要涵盖大多数的字符,因此会降低模型的精度,很可能达不到预计效果;第二种方法是使用极坐标方式处理印章,这会导致文字被切割,且当印章旋转角度及变形问题会影响最终结果。
4.如图1所示,文本的识别主要包括区域检测、区域矫正和识别三大部分,对于水平文本而言,可以通过外接最小矩形来获取文本区域,因此针对水平文本的识别模型比较简单且性能较佳,而对于弯曲文本而言,其识别模型的训练数据量要求较大,且容易造成无法复用,如何有效利用水平文本识别模型去解决弯曲文本识别问题,提高开发效率且达到模型复用的目的,是目前业界研究的重点。


技术实现要素:

5.本发明的目的,在于提供一种具有弯曲文本的印章识别方法,能够在保证可接受的精度损失的前提下,复用水平文本识别模型,提高识别效率。
6.为了达成上述目的,本发明的解决方案是:
7.一种具有弯曲文本的印章识别方法,包括如下步骤:
8.步骤一,将待识别图片利用分割网络进行处理,得到二值化图,计算该二值化图的轮廓得到至少一个连通域;
9.步骤二,对于每一个连通域,确定轮廓拐点,根据拐点坐标判断该连通域是水平文本还是弯曲文本;
10.步骤三,对于弯曲文本,拟合外接椭圆,并通过极坐标的方式对文本区域进行矫正裁剪,得到矩形区域;对于水平文本,直接裁剪获得外接矩形;
11.步骤四,将步骤三得到的矩形区域送入文本识别模型,作为输入进行识别。
12.上述步骤一中,采用dbnet模型得到二值化图。
13.上述步骤二中,计算拐点包围的区域面积与拐点对应的最小外接矩形面积的比值α,α≥t视为水平文本,α《t视为弯曲文本,t为设定数据。
14.上述步骤三中,对于弯曲文本,拟合外接椭圆的方法是:首先确定拐点包围区域的外接椭圆,计算该外接椭圆与所有拐点的夹角,从而获取拐点包围区域的角度跨度,进而求得拐点包围区域所拟合的椭圆区域。
15.上述步骤三中,对于弯曲文本,通过极坐标的方式对文本区域进行矫正裁剪,得到矩形区域的方法是:首先将直角坐标系的拐点坐标转化为极坐标形式,然后根据拟合椭圆区域的周长设定矩形的宽和高,最后将椭圆区域的像素映射到矩形区域。
16.上述步骤四中,文本识别模型采用开源的tesseract,深度学习采用crnn模型。
17.采用上述方案后,本发明利用深度学习的分割方法,得到弯曲文本区域,通过文本区域的形状特征区分文本弯曲程度,进一步对不同程序进行针对性的矫正,对弯曲程度小的直接外接矩形进行处理,而对于弯曲程度大通过点坐标方式拟合外接椭圆,获取文本区域跨越的角度,获取弯曲文本区域,利用椭圆极坐标方式矫正文本区域,将矫正后的文本区域输入到文本识别模型得到预测文本。
18.本发明具有以下有益效果:
19.(1)本发明在不改变识别模型的情况下,仅通过训练弯曲文本检测模型以及矫正的方法,使其支持水平文本识别模型,实现印章文字识别,能够复用先前的工作,而不必重新训练识别模型,提高开发效率;由于现有水平文本识别模型数据集较多且有大量的开源数据集,如icdar等,因此仅需要在检测阶段增加处理环节,便能复用先前工作,大大提高识别效率;
20.(2)本发明仅仅增加了弯曲文本检测后的矫正算法,相较其他矫正算法有明显的提升;
21.(3)本发明能够自适应处理预测的文本区域,对文本区域的矫正更加精确;
22.(4)本发明通过坐标点拟合的方法矫正弯曲文本区域,方便后续处理。
附图说明
23.图1是文本识别的整体流程原理图;
24.图2是本发明的流程图;
25.图3是检测到的文本区域及最小外接矩形示意图;
26.其中,(a)表示连通域,(b)表示其最小外接矩形;
27.图4是本发明中极坐标转化为直角坐标系的示意图。
具体实施方式
28.以下将结合附图,对本发明的技术方案及有益效果进行详细说明。
29.如图2所示,本发明提供一种具有弯曲文本的印章识别方法,包括如下步骤:
30.步骤一,将待识别图片利用分割网络进行处理,得到二值化图,计算该二值化图的轮廓得到至少一个连通域;
31.在本实施例中,文本区域(也即连通域)检测采用分割网络(如dbnet模型)获取文本区域的二值化图;
32.步骤二,对于每一个连通域,通过寻找轮廓拐点的方法确定包围该连通域的坐标点,并判断该连通域是水平文本还是弯曲文本;
33.所述步骤二中,利用图像处理手段获取连通域轮廓的拐点坐标位置,然后通过拐点坐标进行文本区域转化,下面重点介绍。
34.印章与传统文本的主要区别在于印章存在弯曲文本,且弯曲程度较大,利用弯曲
程度以及图像重叠面积,可有效区分出水平文本和弯曲文本。如图3所示,阴影区域为拐点包围的文本区域,而灰色区域是拐点对应的外接矩形,根据二者形状区域的重叠面积可看出,α≥t可视为水平文本,α《t视为弯曲文本,其中t=0.8,可根据业务需求调整。
[0035][0036]
步骤三,对于弯曲文本,拟合外接椭圆,并通过极坐标的方式对文本区域进行矫正裁剪,得到矩形区域;对于水平文本,直接裁剪获得外接矩形;
[0037]
初步判断拐点区域是否为弯曲文本后,寻求拐点的外接椭圆,假设为图中黑色轮廓,圆心亦可得到,计算所有拐点与圆心的夹角,获取文本区域的角度跨度。因为轮廓的下边界是外接椭圆的同心椭圆,故利用短轴差值可计算出下边界椭圆相关参数。
[0038][0039]
其中,x,y为拐点坐标,xc,yc为圆心坐标。
[0040][0041][0042]bdiff
=b
up_boundary-b
down_boundary
[0043]
其中,*up_boundary,*down_boundary分别为外接椭圆参数与下边界椭圆参数,c为椭圆焦点到中心的长度。获取到整个文本区域拟合的椭圆区域,即阴影区域,接下来利用极坐标方法将椭圆区域转为矩形区域。
[0044]
如图4所示,将极坐标转化为直角坐标系,实现弯曲区域转化为水平区域。首先先将直角坐标系的拐点坐标转化为极坐标形式:
[0045][0046][0047]
其次,根据拟合椭圆区域的周长设定矩形的宽高,高为b
diff
,宽为(l-b
diff
)/2,l为周长,也可以自行设定宽高。
[0048]
最后,将椭圆区域的像素映射到矩形区域上,具体的公式如下:
[0049]
xi=ρ
*
*cosθ
*
[0050]
yi=ρ
*
*sinθ
*
[0051]
其中,i,j为矩形区域的x,y轴坐标大小,w,h为矩形的宽、高。。
[0052]
步骤四,将步骤三得到的矩形区域送入文本识别模型,作为输入进行识别;
[0053]
所述文本识别模型可采用现有的水平文本识别模型,如开源的tesseract,深度学习可以采用crnn模型,这些方法获取数据都比较容易,且训练难度低。
[0054]
需要说明的是,对于多行文本或间隔比较大的待识别图片而言,步骤一得到的二值化图会存在多个连通域,那么在对每个连通域均进行步骤二-四的操作后,会得到多个文本内容,将该多个文本内容合并后,为了提高语义还原的准确性,可以采用如下方案:根据
dbnet检测结果求得的区域的坐标位置,对弯曲文本采用求重心方式,对于水平文本可以采用重心或左上角坐标位置进行排列,通过设置一定的行间距参数从而实现按行排列,而同行间隔若超过设置的字间距,说明其不在一个文本行,可以在输出时用空格做标记。
[0055]
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。
再多了解一些

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

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

相关文献