本发明涉及图像处理,尤其涉及一种基于深度学习的文本识别模型的训练方法。
背景技术:
1、人工智能作为计算机科学的一个分支,旨在开发需要人类智能才能完成的任务的机器系统,人工智能涵盖了多个领域,其中包括语音识别、图像处理、自然语言处理(nlp)、文本识别、机器学习和深度学习领域;在文本识别领域,人工智能通过模拟人类的认知和学习过程,使机器能够理解和识别图像或文档中的文本信息。
2、现有技术中,文本识别的字符识别阶段通常通过字符识别网络实现。并且,现有的字符识别网络通常以ctc(connectionist temporal classification,连接时序分类)loss作为损失函数,以确定图像中的每个字符,进而确定图像的文本。但ctc loss仅关注单个字符的特征,而识别出的文本的准确率是与单个字符以及字符之间的语义关系均相关的,因此上述方法确定的文本可能不准确或者语义不连贯,通过该不准确的文本对文本识别模型进行训练可能会降低文本识别模型的训练效率。
技术实现思路
1、本发明针对现有技术中存在的技术问题,提供一种提高模型训练效率的训练方法。
2、本发明解决上述技术问题的技术方案如下:
3、一种基于深度学习的文本识别模型的训练方法,包括:
4、s101:建立样本图像集,从样本图像集中获取多个存在文本的样本图像作为第一样本图像;
5、s102:通过对第一样本图像进行对比度调整和去噪操作,并对对比度调整和去噪后的第一样本图像进行边缘检测,得到第二样本图像;
6、所述边缘检测算法可以为canny边缘检测;
7、s103:通过对第二样本图像使用直线检测算法识别图像中的直线段,从识别到的直线段中筛选出长度大于图像宽度一半或预设阈值的目标横线,得到第一直线检测结果;
8、所述直线检测算法可以是霍夫变换(hough transform);
9、图像中的直线段可以是文字行或者表格边框等;
10、预设阈值根据图像的分辨率和内容进行调整,分辨率高且规整的文本,预设目标横线的阈值为图像宽度的60%;分辨率低且布局复杂的文本,预设目标横线的阈值为图像宽度的30%;
11、所述目标横线用于分隔不同的文本区域或指示文本方向;
12、s104:基于第一直线检测结果,通过使用文本检测算法识别图像中的文本区域,定位每个文本区域的边界框,记录每个文本区域边界框的位置和大小,得到第一文本区域;
13、所述文本检测算法可以是文本识别模型的区域检测网络;
14、所述区域检测网络用于对图像进行检测,确定图像中存在文本的区域,得到第一文本区域;
15、s105:通过分析第一文本区域中的直线段和字符排列规律,确定文字的主方向;
16、所述文字的主方向可以是水平、垂直或倾斜;
17、对于倾斜的文本区域,计算其倾斜角度,并应用几何校正方法将其校正为水平或垂直方向,得到第二文本区域;
18、所述几何校正方法可以是仿射变换等;
19、s106:在第二文本区域内生成一条或多条文字方向线,所述文字方向线通常与文本行平行或垂直,用于指示文本的阅读方向;
20、文字方向线可以用于后续的字符识别和文本拼接过程,确保字符按正确的顺序被识别;
21、s107:通过使用字符识别算法对第二文本区域中的字符进行识别,并根据文字方向线的指示,将识别出的字符按正确的顺序拼接成完整的文本行或段落,得到第一文本识别结果;
22、所述字符识别算法是文本识别模型的字符识别网络;
23、所述字符识别网络用于对存在文本的图像进行字符识别,确定图像中的文本。
24、在本技术的一些实施例中,在步骤s107中,字符识别算法对第二文本区域中的字符进行识别,对识别出来的字符使用圆形边框进行标记,得到第一圆形边框标记结果,并将具有第一圆形边框标记结果的字符按照文字方向线的指示,将识别出的字符按正确的顺序拼接成完整的文本行或段落。
25、所述对识别出来的字符使用圆形边框进行标记,具体标记方法为:
26、s201:字符识别算法对第二文本区域中的字符进行识别,获取识别出的字符的具体位置,即图像中字符所在位置的像素坐标,记为第一字符像素坐标;
27、s202:根据第一字符像素坐标,计算出每个字符中心点的坐标,以字符中心点为基准点设定圆形标记的半径,半径根据字符的大小动态调整;
28、以设定的圆形标记的半径为基准,为每个字符绘制圆形标记,得到第一圆形边框标记结果;
29、圆形标记确保能够覆盖单个字符,但不影响其他字符。
30、所述具有第一圆形边框标记结果的字符按照文字方向线的指示,将识别出的字符按正确的顺序拼接成完整的文本行或段落,具体拼接方法为:
31、s203:在具有第一圆形边框标记结果的字符中选取一个或多个起始字符作为第一圆形边框标记字符;
32、所述第一圆形边框标记字符根据文字位置进行选取,通常选取所在文字区域的起始位置;
33、s204:第一圆形边框标记字符根据文字方向线,拼接出完整的文本行或段落,从中选取正确的文本行和段落;
34、通过自然语言处理技术检查拼接出完整的文本行或段落的语义关系,若某一行文本与上下文明显不符,则判定文本行错误;
35、所述文字方向线为不同方向或不同角度的方向线,指示下一可选文字的方向。
36、在本技术的一些实施例中,对手稿或有交叠的文本进行识别,具体包括以下步骤:
37、s301:通过对手稿或有交叠的文本进行对比度调整和去噪操作,并对对比度调整和去噪后的第一样本图像进行边缘检测,得到第二样本图像;
38、s302:通过对第二样本图像使用霍夫变换等算法识别图像中的直线段,从识别到的直线段中筛选出长度大于图像宽度一半或预设阈值的目标横线,得到第一直线检测结果;
39、s303:基于第一直线检测结果,通过使用文本检测算法识别图像中的文本区域,定位每个文本区域的边界框,记录每个文本区域边界框的位置和大小,得到第一文本区域;
40、s304:通过分析第一文本区域中的直线段和字符排列规律,确定文字的主方向;
41、所述文字的主方向可以是水平、垂直或倾斜;
42、对于倾斜或弯曲的文本区域,计算其倾斜角度,并应用几何校正方法将其校正为水平或垂直方向,得到第二文本区域;
43、s305:在第二文本区域内生成一条或多条文字方向线,所述文字方向线沿着文本的方向延伸,用于指示文本的阅读方向;
44、s306:通过使用字符识别算法对第二文本区域中的字符进行识别,对识别出来的字符使用圆形边框进行标记,得到第一圆形边框标记结果;
45、s307:根据第一圆形边框标记结果和文字方向线,确定文本区域,对包含文本区域的部分进行裁剪,分割成多个独立文本;
46、s308:对每个分割出的文本区域应用字符识别模型,识别其中的字符内容,并根据文字方向线的指示,将识别出的字符按正确的阅读顺序拼接成完整的文本行;
47、s309:通过查找完整的文本行中错误识别和重复识别的部分,进行删除处理,得到正确的文本行。
48、在本技术的一些实施例中,在步骤s306中,所述通过使用字符识别算法对第二文本区域中的字符进行识别,对识别出来的字符使用圆形边框进行标记,圆形边框标记的字符中包含多条文字方向线交叉节点字符,记为第一交叉节点字符;第一交叉节点字符沿着文字方向线将文本进行拼接,得到完整的文本,具体包括以下步骤:
49、s401:使用字符识别算法对第二文本区域中的字符进行识别,对识别出来的字符使用圆形边框进行标记,圆形边框标记的字符中包含多条文字方向线交叉节点字符,记为第一交叉节点字符;
50、s402:定义文字方向线的初始方向,构建与文字方向线数量相同的虚拟文本层,根据下一文字方向线与上一文字方向线的倾斜角度,将文字方向线按照倾斜角度从小到大的顺序排列;
51、所述虚拟文本层垂直排列;
52、s403:将圆形边框标记的字符根据文字方向线指引映射到相应的文本层上,倾斜角度最小的映射到最上层,倾斜角度最大的映射到最下层;
53、第一交叉节点字符根据所在的文字方向线,分配到多个对应的虚拟文本层中;
54、s404:在单个虚拟文本层中,根据文字方向线的指示,将识别出的字符按正确的阅读顺序拼接成完整的文本行;
55、整合多个虚拟文本层的文本行,得到完整的文本识别结果。
56、本发明的有益效果是:通过确定文字方向,模型更精确地识别图像中的字符及其顺序,在处理多行文本或复杂布局时,文字方向信息能够正确拼接字符序列。
57、在识别过程中,模型能够检测和修正倾斜的文本区域,从而确保字符识别的准确性,不受文本倾斜角度的影响。
58、基于文字方向线,模型能够更准确地划分图像中的文本区域,避免将非文本区域误识别为文本或将文本区域分割得过于细碎。
59、通过识别文字方向,模型能够理解图像的布局结构(如单栏、双栏或多栏),提高模型的识别效率。
1.一种基于深度学习的文本识别模型的训练方法,其特征在于,包括:
2.根据权利要求1所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,所述文本检测算法是文本识别模型的区域检测网络;所述区域检测网络用于对图像进行检测,确定图像中存在文本的区域,得到第一文本区域。
3.根据权利要求1所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,所述文字的主方向是水平、垂直或倾斜方向,对于倾斜方向的文本区域,计算倾斜角度,并应用几何校正方法将其校正为水平或垂直方向,得到第二文本区域。
4.根据权利要求1所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,所述文字方向线与文本行平行或垂直,用于指示文本的阅读方向。
5.根据权利要求1所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,在步骤s107中,字符识别算法对第二文本区域中的字符进行识别,对识别出来的字符使用圆形边框进行标记,得到第一圆形边框标记结果,并将具有第一圆形边框标记结果的字符按照文字方向线的指示,拼接成完整的文本行。
6.根据权利要求5所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,所述对识别出来的字符使用圆形边框进行标记,具体标记方法为:
7.根据权利要求6所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,所述具有第一圆形边框标记结果的字符按照文字方向线的指示,拼接成完整的文本行或段落,具体拼接方法为:
8.根据权利要求7所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,对手稿或有交叠的文本进行识别,具体包括以下步骤:
9.根据权利要求8所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,在步骤s306中,所述通过使用字符识别算法对第二文本区域中的字符进行识别,对识别出来的字符使用圆形边框进行标记,圆形边框标记的字符中包含多条文字方向线交叉节点字符,记为第一交叉节点字符;第一交叉节点字符沿着文字方向线将文本进行拼接,得到完整的文本。
10.根据权利要求9所述的一种基于深度学习的文本识别模型的训练方法,其特征在于,所述第一交叉节点字符沿着文字方向线将文本进行拼接,得到完整的文本,具体包括以下步骤: