文本检测方法、装置、存储介质及计算机设备与流程

文档序号:29166359发布日期:2022-03-09 02:43阅读:100来源:国知局
文本检测方法、装置、存储介质及计算机设备与流程

1.本技术涉及文本识别技术领域,尤其涉及一种文本检测方法、装置、存储介质及计算机设备。


背景技术:

2.目前,绝大部分产品在售出时都会附带有对应的实物标签,而实物标签主要是用于标明物品的品名、重量、体积、用途等信息的简要标牌。如产品说明标签、价格标签、主要成分标签、规格标签、材质标签、地址标签、日期标签等。
3.一般地,在产品上架前,需要对该产品的实物标签中的内容进行检查,如核对实物标签中的价格是否错误、地址是否正确、产品说明中是否有文本错误等。现有的检查方式主要是采用人工进行核对,核对时,将该实物标签与plm(产品生命周期管理)系统中存储的真实标签进行逐字比对,如果出现错误,则返回给设计师重新进行修改,修改后重新进行人工核对,直到设计正确为止。
4.但是,由于产品的上新速度较快,而人工核对的速度较慢,无法在短时间内完成大量的检查工作,从而导致检查效率较低,且由于检查量过大,还可能会出现漏检、错检的情况,使得人工检查的准确率较低。


技术实现要素:

5.本技术的目的旨在至少能解决上述的技术缺陷之一,特别是现有技术中产品的上新速度较快,而人工核对的速度较慢,无法在短时间内完成大量的检查工作,从而导致检查效率较低,且由于检查量过大,还可能会出现漏检、错检的情况,使得人工检查的准确率较低的技术缺陷。
6.本技术提供了一种文本检测方法,所述方法包括:
7.获取包含文本的待检测图像;
8.确定所述待检测图像中待识别的文本区域;
9.对所述待识别的文本区域中的文本进行识别,得到文本识别结果;
10.抽取所述文本识别结果中的目标实体,并将所述目标实体与标准实体进行比对,根据比对结果确定所述待检测图像中的文本是否编写正确。
11.可选地,所述确定所述待检测图像中待识别的文本区域,包括:
12.获取目标文本区域检测模型;
13.将所述待检测图像输入到所述目标文本区域检测模型中,得到所述目标文本区域检测模型输出的所述待检测图像中待识别的文本区域。
14.可选地,所述获取目标文本区域检测模型,包括:
15.获取包含文本的第一样本图像;
16.按照预设的划分策略,将所述第一样本图像划分为多个子样本图像;
17.标注每一子样本图像的真实图像中心点、真实图像大小,以及每一子样本图像在
所述第一样本图像中的真实图像坐标;
18.将各个子样本图像依次输入至预设的初始文本区域检测模型中,得到所述初始文本区域检测模型输出的每一子样本图像的预测图像中心点、预测图像大小,以及每一子样本图像在所述第一样本图像中的预测图像坐标;
19.以每一子样本图像的预测图像中心点、预测图像大小,以及每一子样本图像在所述第一样本图像中的预测图像坐标,趋近于每一子样本图像的真实图像中心点、真实图像大小,以及每一子样本图像在所述第一样本图像中的真实图像坐标为目标,训练所述初始文本区域检测模型;
20.当所述初始文本区域检测模型满足预设的第一训练条件时,将训练完成的初始文本区域检测模型作为目标文本区域检测模型。
21.可选地,对所述待识别的文本区域中的文本进行识别,得到文本识别结果,包括:
22.对所述待识别的文本区域中的文本行进行定位,得到至少一个文本行;
23.获取目标文本识别模型;
24.将每个文本行依次输入至所述目标文本识别模型中,得到所述目标文本识别模型输出的文本识别结果。
25.可选地,所述获取目标文本识别模型,包括:
26.获取包含文本的第二样本图像,对所述第二样本图像中的文本行进行截取后,得到多个训练图像;
27.对各个训练图像中的文本分别进行标注后得到第二样本标签,所述第二样本标签为各个训练图像中的文本所对应的字符在字典中映射得到的索引;
28.将各个训练图像分别输入至预设的初始文本识别模型,得到所述初始文本识别模型输出的与各个训练图像对应的预测标签;
29.以所述预测标签趋近于所述第二样本标签为目标,训练所述初始文本识别模型;
30.当所述初始文本识别模型满足预设的第二训练条件时,将训练完成的初始文本识别模型作为目标文本识别模型。
31.可选地,所述将各个训练图像分别输入至预设的初始文本识别模型之前,还包括:
32.按照预设的增强策略,对各个训练图像分别进行数据增强。
33.可选地,所述抽取所述文本识别结果中的目标实体,包括:
34.确定目标nlp模型;
35.将所述文本识别结果输入至所述目标nlp模型中,得到所述目标nlp模型输出的所述文本识别结果中的目标实体。
36.可选地,所述确定目标nlp模型,包括:
37.获取包含文本的第三样本图像;
38.对所述第三样本图像中的文本进行分词,并对分词后的单词的词性进行标注,确定标注词性后的每一单词所对应的真实实体类别;
39.将所述第三样本图像输入至预设的初始nlp模型中,得到所述初始nlp模型输出的所述第三样本图像中预测的每一单词对应的预测实体类别;
40.以预测的每一单词对应的预测实体类别趋近于所述单词对应的真实实体类别为目标,训练所述初始nlp模型;
41.当所述初始nlp模型满足预设的第三训练条件时,将训练完成的初始nlp模型作为目标nlp模型。
42.可选地,所述将所述目标实体与数据库中的标准实体进行比对,根据比对结果确定所述待检测图像中的文本是否编写正确,包括:
43.根据所述目标实体对应的产品类别,从数据库中提取与所述产品类别对应的标准实体;
44.计算所述目标实体对应的词向量与所述标准实体对应的词向量之间的余弦值;
45.将所述余弦值与预设的余弦阈值进行比对;
46.若所述余弦值小于所述预设的余弦阈值,则确定所述待检测图像中的文本编写错误;
47.若所述余弦值不小于所述预设的余弦阈值,则确定所述待检测图像中的文本编写正确。
48.本技术还提供了一种文本检测装置,包括:
49.图像获取模块,用于获取包含文本的待检测图像;
50.文本区域检测模块,用于确定所述待检测图像中待识别的文本区域;
51.文本识别模块,用于对所述待识别的文本区域中的文本进行识别,得到文本识别结果;
52.文本检测模块,用于抽取所述文本识别结果中的目标实体,并将所述目标实体与标准实体进行比对,根据比对结果确定所述待检测图像中的文本是否编写正确。
53.本技术还提供了一种存储介质,所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上述实施例中任一项所述文本检测方法。
54.本技术还提供了一种计算机设备,包括:一个或多个处理器,以及存储器;
55.所述存储器中存储有计算机可读指令,所述计算机可读指令被所述一个或多个处理器执行时,执行如上述实施例中任一项所述文本检测方法。
56.从以上技术方案可以看出,本技术实施例具有以下优点:
57.本技术提供的文本检测方法、装置、存储介质及计算机设备,在对包含文本的待检测图像进行文本检测时,可以先确定该待检测图像中待识别的文本区域,从而将文本检测范围从整个待检测图像缩小至单个的文本区域,有利于后续文本识别的效率和精度,避免其他非文本区域的影响;接着本技术可以对待识别的文本区域中的文本进行识别,并得到相应的文本识别结果,该文本识别结果中包含待检测图像中所有的文本信息,在此基础上,本技术可以对文本信息中的关键词进行检查,如对文本识别结果中的目标实体进行抽取后,根据目标实体与标准实体之间的比对结果来确定待检测图像中的文本是否编写正确,这样既可以保证待检测图像中的关键词的正确性,还可以减少文本检测的计算量,进一步提高文本检测的效率。
附图说明
58.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
59.图1为本技术实施例提供的一种文本检测方法的流程示意图;
60.图2为本技术实施例提供的实物标签的结构示意图;
61.图3为本技术实施例提供的命名实体抽取的结果示意图;
62.图4为本技术实施例提供的对第二样本图像中的文本行进行截取时的结构示意图;
63.图5为本技术实施例提供的一种文本检测装置的结构示意图;
64.图6为本技术实施例提供的一种计算机设备的内部结构示意图。
具体实施方式
65.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
66.一般地,在产品上架前,需要对该产品的实物标签中的内容进行检查,如核对实物标签中的价格是否错误、地址是否正确、产品说明中是否有文本错误等。现有的检查方式主要是采用人工进行核对,核对时,将该实物标签与plm(产品生命周期管理)系统中存储的真实标签进行逐字比对,如果出现错误,则返回给设计师重新进行修改,修改后重新进行人工核对,直到设计正确为止。
67.但是,由于产品的上新速度较快,而人工核对的速度较慢,无法在短时间内完成大量的检查工作,从而导致检查效率较低,且由于检查量过大,还可能会出现漏检、错检的情况,使得人工检查的准确率较低。
68.基于此,本技术提出如下技术方案,具体参见下文:
69.在一个实施例中,如图1所示,图1为本技术实施例提供的一种文本检测方法的流程示意图;本技术提供了一种文本检测方法,所述方法可以包括:
70.s110:获取包含文本的待检测图像。
71.本步骤中,在进行文本检测之前,可以获取包含文本的待检测图像,该待检测图像中的文本是依据预先设置并存储在数据库中的相关产品数据进行提取后得到的。如待检测图像中包含产品名称及地址信息,该产品名称与数据库中保存的已生产,或已销售,或待销售的产品名称相对应,而地址信息则是在数据库中提取的与该待检测图像中的产品名称相关的生产地址或代理商地址等。
72.因此,本技术在对待检测图像中的文本进行检测时,可以参照数据库中存储的与之相关的标准信息,以此来确定该待检测图像中的文本是否有误。
73.进一步地,这里的待检测图像可以是实物标签图像,也可以是设计海报图像,还可以是产品广告图像。而这里的实物标签图像中可以包含产品名称、规格、产品特点、注意事项、贮存方法、生产日期、地址信息、价格等文本信息。示意性地,如图2所示,图2为本技术实施例提供的实物标签的结构示意图。
74.图2中,该实物标签中包含有产品名称,如隐形无痕系列卫生巾;还包含有规格,如
8片装;还包含有贮存方法,如存放于阴凉通风干燥处;还包含有注意事项,如请勿丢弃于厕所内,如有过敏请暂停使用;还包含有代理商及地址、产品标准、卫生标准、生产日期、产品特点、价格等。当然,针对不同的实物标签,其包含的内容可以不同,也可以相同,具体可视实际情况而定,在此不做限制。
75.而本技术中的文本可以是文字,如汉字、英文、俄文等;也可以是阿拉伯数字,如具体的价格等;还可以是文字与阿拉伯数字的结合,如8片装;另外,本技术中的文本还可以包含数学字符,如&、*等,在此不做限制。
76.s120:确定待检测图像中待识别的文本区域。
77.本步骤中,通过s110获取到包含文本的待检测图像后,可以根据该待检测图像来确定待识别的文本区域。
78.可以理解的是,由于不同的待检测图像的图像大小、待检测图像中的文本的排版方式等存在区别,若直接对待检测图像中的文本进行识别,不仅会提高文本识别的难度,还会导致文本识别的精度降低。因此,本技术在对待检测图像中的文本进行识别之前,可以先确定待检测图像中待识别的文本区域,然后对待识别的文本区域中的文本进行识别,这样既可以降低文本识别的难度,又可以保证文本识别的精确度。
79.而本技术在确定待检测图像中待识别的文本区域时,可以基于连通域的方法,假定待检测图像中文字的颜色一致,利用颜色聚类来确定待识别的文本区域;也可以基于边缘检测的方法,利用文字与背景之间具有相对较高的对比度,先检测出边缘,然后用形态学算子将边缘连接成文字区域,最后利用启发式规则进行筛选;还可以基于纹理的方法,将待检测图像中的文本区域看出特殊的纹理,利用文本区域与背景区域的不同纹理特征进行文字的检测、提取和识别等;另外,本技术还可以将待检测图像中包含的文本区域作为检测目标,并使用目标检测算法来对待检测图像中的检测目标进行检测,从而确定待检测图像中的待识别的文本区域。
80.在一种具体的实现方式中,本技术可以基于centernet模型对待检测图像进行目标检测。由于实物标签的分辨率通常是比较大的,如上亿像素,使用一般的目标检测算法很难对大分辨率下的小目标进行检测;而使用centernet模型对待检测图像进行目标检测,centernet模型中分配的锚点仅仅是放在对应的位置上,没有尺寸框,也没有人工设置的阈值做前后景分类,因此减去了超参数的设置,降低了调参的难度;centernet模型中每个目标仅仅有一个正的锚点,因此不需要nms(非极大值抑制)后处理;centernet模型相比较传统的目标检测模型而言,使用更大分辨率的输出特征图,因此无需用到多重特征图锚点;另外,centernet模型相对于其他基于关键点的目标检测方法而言(比如cornernet、extremenet),无需执行归类过程以及后处理操作,从而可以有效提升目标检测速度。
81.进一步地,本技术在确定待检测图像中待识别的文本区域之前,还可以对待检测图像进行预处理操作,以使文本区域的识别精度更高,识别速度更快。该预处理操作包括但不限于对待检测图像的图像区域进行划分,如按照待检测图像的图像大小将待检测图像划分为多个子图像,接着将每个子图像依次送入神经网络中进行目标检测,此时,神经网络的输入图像的分辨率也可以进行相应的调整,而神经网络输出的每个子图像的检测结果可以进行合并,从而得到最终的待识别的文本区域。
82.s130:对待识别的文本区域中的文本进行识别,得到文本识别结果。
83.本步骤中,通过s120确定待检测图像中待识别的文本区域后,接着,可以对待识别的文本区域中的文本进行识别,并得到相应的文本识别结果。
84.可以理解的是,当得到待检测图像中的待识别的文本区域后,为了获取文本区域中的文本信息,本技术可以对待识别的文本区域中的文本极性识别,从而得到文本识别结果,并根据该文本识别结果来检测当前待检测图像中的文本是否编写正确。而文本识别方法基本上可以分为统计、逻辑判断和句法三大类,常用的文字识别方法主要有模板匹配法和几何特征抽取法。
85.其中,模板匹配法主要是将输入的文字与给定的各类别标准文字(模板)进行相关匹配,计算输入文字与各模板之间的相似性程度,取相似度最大的类别作为识别结果。这种方式适用于识别固定字型的印刷体文字,且对文字的缺损、边缘噪声等具有较强的适应能力。
86.而几何特征抽取法主要是抽取文字的一些几何特征,如文字的端点、分叉点、凹凸部分以及水平、垂直、倾斜等各方向的线段、闭合环路等,根据这些特征的位置和相互关系进行逻辑组合判断,获得识别结果。这种识别方式由于利用结构信息进行文字识别,因此,适用于变型较大的文字识别,如阅读、翻译、文献资料的检索、信件和包裹的分拣、稿件的编辑和校对、大量统计报表和卡片的汇总与分析、银行支票的处理、商品发票的统计汇总、商品编码的识别、商品仓库的管理,以及水、电、煤气、房租、人身保险等费用的征收业务中的大量信用卡片的自动处理和办公室打字员工作的局部自动化等。
87.当本技术中的待检测图像为实物标签所对应的图像时,由于实物标签中一般使用的是固定字型的印刷体文字,因此,对于该种类型的待检测图像,本技术可以使用模板匹配法进行文本识别。
88.在一种具体的实现方式中,本技术在使用模板匹配法进行文本识别时,可以基于深度学习的端到端的文字识别,将文字识别转化为序列学习问题。如crnn网络,其网络结构可以包含三部分,从下到上依次为:卷积网络层:该层使用cnn,作用是从输入图像中提取特征序列;循环网络层:该层使用rnn,作用是预测从卷积网络层获取的特征序列的标签(真实值)分布;序列识别层:该层使用ctc算法,作用是把从循环网路层获取的标签分布通过去重整合等操作转换成最终的识别结果。
89.由于crnn网络可以处理不定长序列,因此,对于文本区域中长度不一的文本行,使用crnn网络进行文本识别后,可以进一步提高识别精度;另外,crnn网络既提取了鲁棒特征,又通过序列化识别避免了传统算法中难度极高的单字符切分与单字符识别,同时序列化识别也嵌入有时序依赖,如在对crnn网络进行训练时,根据训练时所使用的语料的时序来进行序列化识别,从而使得文本识别的效率更高。
90.进一步地,本技术在对待识别的文本区域中的文本进行识别时,可以先定位待识别的文本区域中的文本行,接着对每一文本行中的文本进行识别,这样既可以提高识别效率,又可以提高识别精度,还有利于后续文本识别时网络模型的选择。
91.s140:抽取文本识别结果中的目标实体,并将目标实体与数据库中的标准实体进行比对,根据比对结果确定待检测图像中的文本是否编写正确。
92.本步骤中,通过s130对待识别的文本区域中的文本进行识别,得到文本识别结果后,接着可以抽取文本识别结果中的目标实体,并将该目标实体与数据库中的标准实体之
间进行比对,然后根据比对结果来确定待检测图像中的文本是否编写正确。
93.可以理解的是,文本实体抽取是自然语言处理(nlp)的主要任务之一,nlp中对命名实体进行识别并抽取时,可以抽取特定的字符长度较短的实体,比如产品名,规格,然后把抽取结果进行储存;也可以正则匹配字符长度较为冗长的信息,例如正则匹配到实物标签中的注意事项,然后提取注意事项所限定的文本段落中的字符内容,当遇到句号时则结束当前操作。
94.其中,命名实体指的是人名、机构名、地名以及其他所有以名称为标识的实体,更广泛的实体还包括数字、日期、货币、地址等。对命名实体进行识别指的是从文本中识别出人名,地名,组织名,日期时间等。
95.命名实体识别大体上可以分为三种:字符串匹配、统计语言模型、序列标注。前两种方法需要预先构建词典、穷举所有实体,其缺点是无法发现新词、变体等,而序列标注的方式则无需构建词典,并穷举所有实体,因此,在命名实体识别时大多使用序列标注的方式。
96.当对文本识别结果中的目标实体进行识别并抽取后,为了进一步确保抽取到的目标实体的准确度,本技术可以将该目标实体与数据库中的标准实体之间进行比对,若目标实体与标准实体相同或基本相同的话,则确定待检测图像中的文本编写正确,若目标实体与标准实体之间差距较大的话,则确定待检测图像中的文本编写有误,此时可以将编写错误的文本进行标注,并返回重新进行编写。
97.可以理解的是,由于待检测图像中的文本是依据预先设置并存储在数据库中的相关产品数据进行提取后得到的,而数据库中也预先保存有各个类别的产品对应的实体信息,本技术为了对文本识别结果中抽取的实体信息与数据库中预先保存的该产品对应的实体信息进行区分,进而将从文本识别结果中抽取到的实体信息统称为目标实体,将数据库中预先保存的该产品对应的实体信息统称为标准实体,并使用标准实体与目标实体进行比对,从而检测文本编写是否有误。
98.进一步地,在进行比对时,本技术可以根据目标实体对应的产品类别,在数据库中提取与该产品类别对应的标准实体,如根据抽取到的地址信息对应的产品类别,在数据库中提取与该产品类别对应的地址信息,从而根据数据库中提取的该产品类别的地址信息来对抽取到的地址信息进行检测。
99.在一种具体的实现方式中,如图3所示,图3为本技术实施例提供的命名实体抽取的结果示意图;结合图2可知,当本技术对图2中的命名实体进行抽取后,可以得到如图3所示的抽取结果,其中,抽取实体和实体标识包括产品名、规格、材质、品牌商以及价钱,与抽取实体和实体标识对应的抽取结果分别为隐形无痕系列卫生巾,8片装,无纺布、高分子吸水纸、pe膜,株式会社,rmb:10。由此可见,本技术中对文本识别结果进行实体抽取后,可以更加直观地获取待检测图像中的关键词,后续对这些关键词进行文本检测时,既可以提高检测效率,又可以避免漏检、错检的情况发生。
100.上述实施例中,在对包含文本的待检测图像进行文本检测时,可以先确定该待检测图像中待识别的文本区域,从而将文本检测范围从整个待检测图像缩小至单个的文本区域,有利于后续文本识别的效率和精度,避免其他非文本区域的影响;接着本技术可以对待识别的文本区域中的文本进行识别,并得到相应的文本识别结果,该文本识别结果中包含
待检测图像中所有的文本信息,在此基础上,本技术可以对文本信息中的关键词进行检查,如对文本识别结果中的目标实体进行抽取后,根据目标实体与标准实体之间的比对结果来确定待检测图像中的文本是否编写正确,这样既可以保证待检测图像中的关键词的正确性,还可以减少文本检测的计算量,进一步提高文本检测的效率。
101.在一个实施例中,s120中确定所述待检测图像中待识别的文本区域,可以包括:
102.s121:获取目标文本区域检测模型。
103.s122:将所述待检测图像输入到所述目标文本区域检测模型中,得到所述目标文本区域检测模型输出的所述待检测图像中待识别的文本区域。
104.本实施例中,在确定待检测图像中待识别的文本区域时,本技术可以先获取目标文本区域检测模型,接着通过目标文本区域检测模型来对待检测图像进行目标检测,从而得到待检测图像中待识别的文本区域。
105.其中,由于本实施例中的待检测图像,如实物标签的分辨率通常是比较大的,使用一般的目标检测算法很难对大分辨率下的小目标进行检测,因此,本实施例中获取的目标文本区域检测模型可以是centernet模型,通过centernet模型对待检测图像进行目标检测,不仅可以提升目标检测的速度,还可以提升目标检测的精度。
106.在一个实施例中,s121中获取目标文本区域检测模型,可以包括:
107.s1211:获取包含文本的第一样本图像。
108.s1212:按照预设的划分策略,将所述第一样本图像划分为多个子样本图像。
109.本步骤中,在获取到包含文本的第一样本图像后,为了更好地对第一样本图像中的目标进行检测,本技术可以按照预设的划分策略,来将第一样本图像划分为多个子样本图像。
110.其中,上述预设的划分策略可以是依据第一样本图像的尺寸大小,设置具体的划分个数,以使得尺寸越大的第一样本图像,其划分的子样本图像越多,而尺寸越小的第一样本图像,其划分的子样本图像越少,从而保证划分后的子样本图像的尺寸既不会太小,也不会太大。
111.进一步地,本技术还可以根据预设的子样本图像的尺寸区间,对第一样本图像进行划分,以确保划分后的子样本图像的尺寸均在预设的子样本图像的尺寸区间内。
112.s1213:标注每一子样本图像的真实图像中心点、真实图像大小,以及每一子样本图像在所述第一样本图像中的真实图像坐标。
113.本步骤中,在对目标文本区域检测模型进行训练之前,可以将获取到的多个子样本图像进行标注,以便模型依据标注后的样本标签来对预测结果进行不断修正,并得到最终的目标文本区域检测模型。
114.进一步地,当本技术使用centernet模型作为优选地目标文本区域检测模型时,在对centernet模型进行训练之前,可以预先标注每一子样本图像的真实图像中心点、真实图像大小,以及每一子样本图像在第一样本图像中的真实图像坐标。
115.其中,每一子样本图像的真实图像中心点表示的是该子样本图像的真实关键点,该真实关键点可以通过计算得到,本技术中的centernet模型可以在训练过程中学习该真实关键点;而每一子样本图像的真实图像大小则表示的是该子样本图像的真实宽高,本技术通过每一子样本图像的真实图像中心点一级真实图像大小即可锁定每一子样本图像中
的文本区域。
116.另外,本技术的每一子样本图像中还标注有该子样本图像在第一样本图像中的真实图像坐标,由于本技术中将第一样本图像划分为多个子样本图像,因此,对每一子样本图像在第一样本图像中的真实图像坐标进行标注后,可以更好地对多个子样本图像进行合成,从而得到最终的待检测图像中待识别的文本区域。
117.s1214:将各个子样本图像依次输入至预设的初始文本区域检测模型中,得到所述初始文本区域检测模型输出的每一子样本图像的预测图像中心点、预测图像大小,以及每一子样本图像在所述第一样本图像中的预测图像坐标。
118.s1215:以每一子样本图像的预测图像中心点、预测图像大小,以及每一子样本图像在所述第一样本图像中的预测图像坐标,分别趋近于每一子样本图像的真实图像中心点、真实图像大小,以及每一子样本图像在所述第一样本图像中的真实图像坐标为目标,训练所述初始文本区域检测模型。
119.本步骤中,当将每一子样本图像依次输入进预设的初始文本区域检测模型之后,该初始文本区域检测模型便可以对每一子样本图像中的文本区域进行检测,并输出每一子样本图像的预测图像中心点、预测图像大小,以及每一子样本图像在第一样本图像中的预测图像坐标。接着,本技术可以以每一子样本图像的预测图像中心点趋近于该子样本图像的真实图像中心点为目标,计算每一子样本图像的预测图像中心点与该子样本图像的真实图像中心点之间的中心点损失值,并根据该中心点损失值对模型中的各项参数进行更新;以每一子样本图像的预测图像大小趋近于该子样本图像的真实图像大小为目标,计算每一子样本图像的预测图像大小与该子样本图像的真实图像大小之间的尺寸损失值,并根据该尺寸损失值来对模型中的各项参数进行更新;以每一子样本图像在第一样本图像中的预测图像坐标趋近于该子样本图像在第一样本图像中的真实图像坐标为目标,计算每一子样本图像在第一样本图像中的预测图像坐标与该子样本图像在第一样本图像中的真实图像坐标之间的坐标损失值,并根据该坐标损失值来对模型中的各项参数进行更新,以此来训练初始文本区域检测模型。
120.s1216:当初始文本区域检测模型满足预设的第一训练条件时,将训练完成的初始文本区域检测模型作为目标文本区域检测模型。
121.本步骤中,经过s130中对初始文本区域检测模型进行迭代训练后,可以判断每一次迭代训练后的初始文本区域检测模型是否满足预设的第一训练条件,若满足,则将训练完成的初始文本区域检测模型作为目标文本区域检测模型。
122.其中,这里的第一训练条件可以是初始文本区域检测模型在训练之前设置的迭代次数,当达到该迭代次数时,则表示该初始文本区域检测模型已经训练完成;第一训练条件还可以是初始文本区域检测模型中的各项参数对应的参数阈值,若各项参数对应的参数值满足参数阈值,则表示该初始文本区域检测模型已经训练完成。本技术中的第一训练条件还可以是其他条件,具体可以根据实际情况进行设置,在此不做限制。
123.在一个实施例中,s130中对所述待识别的文本区域中的文本进行识别,得到文本识别结果,可以包括:
124.s131:对所述待识别的文本区域中的文本行进行定位,得到至少一个文本行。
125.s132:获取目标文本识别模型。
126.s133:将每个文本行依次输入至所述目标文本识别模型中,得到所述目标文本识别模型输出的文本识别结果。
127.本实施例中,在对待识别的文本区域中的文本进行识别时,本技术可以先对待识别的文本区域中的文本行进行定位,从而得到至少一个文本行,接着获取目标文本识别模型,通过该目标文本识别模型来对每一行文本行中的文本进行识别,从而得到对应的文本识别结果。
128.可以理解的是,自然场景下,文本类型有水平文本、倾斜文本和曲形文本,基于分割的方法能够在像素水平进行预测,能更好的描述自然场景下不同形状的文字。而本技术在对待识别的文本区域中的文本行进行定位时,可以使用dbnet算法,dbnet算法可以将二值化操作插入到分割网络中进行联合优化,这样网络便可以自适应的预测图像中每一个像素点的阈值,从而实现完全区分前景和背景的像素。另外,dbnet算法中的二值化阈值由网络学习得到,将二值化这一步骤加入到网络里一起训练,这样最终的输出图对于阈值便会具有非常强的鲁棒性,在简化了后处理的同时提高了文本检测的效果。
129.而本技术在获取目标文本识别模型时,可以选用crnn网络作为目标文本识别模型。crnn网络可以处理不定长序列,因此,对于文本区域中长度不一的文本行,使用crnn网络进行文本识别后,可以进一步提高识别精度;另外,crnn网络既提取了鲁棒特征,又通过序列化识别避免了传统算法中难度极高的单字符切分与单字符识别,同时序列化识别也嵌入有时序依赖,如在对crnn网络进行训练时,根据训练时所使用的语料的时序来进行序列化识别,从而使得文本识别的效率更高。
130.在一个实施例中,s132中获取目标文本识别模型,可以包括:
131.s1321:获取包含文本的第二样本图像,对所述第二样本图像中的文本行进行截取后,得到多个训练图像。
132.本步骤中,如图4所示,图4为本技术实施例提供的对第二样本图像中的文本行进行截取时的结构示意图;图4中,在对第二样本图像的文本行进行截取时,可以使用dbnet算法,从而可以快速精确地得到第二样本图像中的每一文本行对应的训练图像。
133.s1322:对各个训练图像中的文本分别进行标注后得到第二样本标签,所述第二样本标签为各个训练图像中的文本所对应的字符在字典中映射得到的索引。
134.本步骤中,结合图4可知,当对图4中的文本行进行截取并得到多个训练图像后,可以分别对每一训练图像中的文本进行标注,标注时,可以将每一训练图像中的文字映射为字典中的数字id,即索引,以便后得到与各个训练图像对应的第二样本标签。
135.可以理解的是,这里的字典也叫做散列表,是python中唯一的映射类型,用于存储一个个键值对的关联容器,且字典中的内容是可以修改、添加、删除的。本技术中,当确定各个训练图像中的文本所对应的字符后,可以将该字符作为键值对中的key值输入至字典中,以便在字典中查找与该key值对应的value值,即与该字符对应的索引。
136.s1323:将各个训练图像分别输入至预设的初始文本识别模型,得到所述初始文本识别模型输出的与各个训练图像对应的预测标签。
137.s1324:以所述预测标签趋近于所述第二样本标签为目标,训练所述初始文本识别模型。
138.本步骤中,将各个训练图像分别输入至预设的初始文本识别模型后,可以得到该
初始文本识别模型输出的与各个训练图像对应的预测标签,接着,本技术可以以该预测标签趋近于第二样本标签为目标,来训练初始文本识别,以便得到目标文本识别模型。
139.s1325:当所述初始文本识别模型满足预设的第二训练条件时,将训练完成的初始文本识别模型作为目标文本识别模型。
140.本步骤中,经过s1324中对初始文本识别模型进行迭代训练后,可以判断每一次迭代训练后的初始文本识别模型是否满足预设的第二训练条件,若满足,则将训练完成的初始文本识别模型作为目标文本识别模型。
141.其中,这里的第二训练条件可以是初始文本识别模型在训练之前设置的迭代次数,当达到该迭代次数时,则表示该初始文本识别模型已经训练完成;第一训练条件还可以是初始文本识别模型中的各项参数对应的参数阈值,若各项参数对应的参数值满足参数阈值,则表示该初始文本识别模型已经训练完成。本技术中的第二训练条件还可以是其他条件,具体可以根据实际情况进行设置,在此不做限制。
142.在一个实施例中,s1323中将各个训练图像分别输入至预设的初始文本识别模型之前,还可以包括:按照预设的增强策略,对各个训练图像分别进行数据增强。
143.本实施例中,在启动训练时,可以按照预设的增强策略将各个训练图像分别进行数据增强。其中,增强策略可以包括对训练图像进行模糊(blur)、抖动(jitter)、噪声(gasuss noise)、随机切割(random crop)、透视(perspective)、颜色反转(reverse)、tia数据增广等扰动方式。另外,在训练过程中每种扰动方式可以以20%的概率被选中。
144.进一步地,本技术针对数据增强crnn的网络结构的训练共分可以为三个阶段,每个阶段对学习率的设置均不一样,直到损失和精度保持不变。训练数据增强crnn的各级神经网络架构时可以采用以下的方式:
145.a.使用连接时序分类器ctc作为损失函数;
146.b.使用adam算法作为整体模型调整的优化算法;
147.c.初始阶段可以使用0.00005的学习率调整多级神经网络架构的参数,并可以设置训练迭代次数为3000。
148.可以理解的是,本技术中的crnn网络可以根据不同的应用场景使用不同的语料进行微调。通常在大的公共数据集训练后的模型对具体的应用场景存在误报跟漏报,此时,我们可以根据实际的应用场景搜集对应的预料进行微调,这样针对具体的应用场景模型的识别正确率就会高很多。另外,本技术在模型训练时还可以采用ctc损失函数、adam优化算法,这样能够进一步通过训练来提高模型的预测准确率。
149.在一个实施例中,s140中抽取所述文本识别结果中的目标实体,可以包括:
150.s141:确定目标nlp模型。
151.s142:将所述文本识别结果输入至所述目标nlp模型中,得到所述目标nlp模型输出的所述文本识别结果中的目标实体。
152.本实施例中,在抽取目标实体时,可以先确定目标nlp模型,接着将文本识别结果输入至该目标nlp模型中,以使该目标nlp模型对文本识别结果中的实体进行识别和抽取,从而得到该目标nlp模型输出的文本识别结果中的目标实体。
153.其中,目标nlp模型可以选用rnn+crf模型,具体模型可以是ernie-gram+crf,本技术中自然语言处理模型可以依据实际情况进行选取,在此不做限制。
154.在一个实施例中,s141中确定目标nlp模型,可以包括:
155.s1411:获取包含文本的第三样本图像。
156.s1412:对所述第三样本图像中的文本进行分词,并对分词后的单词的词性进行标注,确定标注词性后的每一单词所对应的真实实体类别。
157.本步骤中,在对初始nlp模型进行训练之前,可以对获取到的包含文本的第三样本图像中的文本进行分词,并对分词后的单词的词性进行标注,标注词性的目的是为每一个单词赋予一个类别,这个类别称为词性标记,比如名词(noun)、动词(verb)、形容词(adjective)等。
158.当对第三样本图像中分词后的每一单词的词性进行标注后,接着可以确定标注词性后的每一单词的真实实体类别。例如,“2016年6月20日,骑士队在奥克兰击败勇士队获得nba冠军”这句中的实体类别分别有地名(奥克兰)、时间(2016年6月20日)、球队(骑士队、勇士队)和机构(nba)。命名实体识别系统通常包含两个部分:实体边界识别和实体分类,其中实体边界识别主要是判断一个字符串是否为一个实体,而实体分类则将识别出的实体划分到预先给定的不同类别中去。
159.s1413:将所述第三样本图像输入至预设的初始nlp模型中,得到所述初始nlp模型输出的所述第三样本图像中预测的每一单词对应的预测实体类别。
160.s1414:以预测的每一单词对应的预测实体类别趋近于所述单词对应的真实实体类别为目标,训练所述初始nlp模型。
161.本步骤中,将第三样本图像输入至预设的初始nlp模型之后,通过该初始nlp模型对第三样本图像中的文本进行分词,并确定分词后的单词对应的词性,以及每一单词所对应的预测实体类别,接着以预测的每一单词对应的预测实体类别趋近于该单词对应的真实实体类别为目标,对初始nlp模型进行训练,直到训练完成为止,得到最终的目标nlp模型。
162.s1415:当所述初始nlp模型满足预设的第三训练条件时,将训练完成的初始nlp模型作为目标nlp模型。
163.本步骤中,经过s1414中对初始nlp模型进行迭代训练后,可以判断每一次迭代训练后的初始nlp模型是否满足预设的第三训练条件,若满足,则将训练完成的初始nlp模型作为目标nlp模型。
164.其中,这里的第三训练条件可以是初始nlp模型在训练之前设置的迭代次数,当达到该迭代次数时,则表示该初始nlp模型已经训练完成;第三训练条件还可以是初始nlp模型中的各项参数对应的参数阈值,若各项参数对应的参数值满足参数阈值,则表示该初始nlp模型已经训练完成。本技术中的第三训练条件还可以是其他条件,具体可以根据实际情况进行设置,在此不做限制。
165.在一个实施例中,s140中将所述目标实体与数据库中的标准实体进行比对,根据比对结果确定所述待检测图像中的文本是否编写正确,可以包括:
166.s151:根据所述目标实体对应的产品类别,在数据库中提取与所述产品类别对应的标准实体。
167.本步骤中,由于待检测图像中的文本是依据预先设置并存储在数据库中的相关产品数据进行提取后得到的。如待检测图像中包含产品名称及地址信息,该产品名称与数据库中保存的已生产,或已销售,或待销售的产品名称相对应,而地址信息则是在数据库中提
取的与该待检测图像中的产品名称相关的生产地址或代理商地址等。
168.因此,本技术可以根据目标实体对应的产品类别,在数据库中提取与该产品类别对应的标准实体,如根据抽取到的地址信息对应的产品类别,在数据库中提取与该产品类别对应的地址信息,从而根据数据库中提取的该产品类别的地址信息来对抽取到的地址信息进行检测。
169.进一步地,这里的数据库可以是plm(产品生命周期管理)系统,该系统可以对产品从设计到最终生产进行全流程管理,因此,该系统中保存有多个产品类别,以及每一产品类别对应的标准实体。
170.s152:计算所述目标实体对应的词向量与所述标准实体对应的词向量之间的余弦值。
171.s153:将所述余弦值与预设的余弦阈值进行比对。
172.s154:若所述余弦值小于所述预设的余弦阈值,则确定所述待检测图像中的文本编写错误。
173.s155:若所述余弦值不小于所述预设的余弦阈值,则确定所述待检测图像中的文本编写正确。
174.本步骤中,在确定目标实体的词向量以及标准实体的词向量时,可以通过特征抽取网络来获得的对应的词向量,如通过word2vec提取词向量信息,然后计算两个词向量之间的夹角的cos值,如果cos值为1则完全相同,如果小于预设的余弦阈值,如0.8,则判断提取的信息与plm数据库里面的信息不符合,此时可报警异常。
175.上述实施例中,在对目标实体与标准实体进行比对时,通过特征抽取网络来获取对应的词向量,无需人工构建特征,便能够自动从文本中提取对应每个实体的特征向量,实现了特征工程的自动化演变,相较于相关技术,自动化特征工程可以大大的减少工作量。
176.下面对本技术实施例提供的文本检测装置进行描述,下文描述的文本检测装置与上文描述的文本检测方法可相互对应参照。
177.在一个实施例中,如图5所示,图5为本技术实施例提供的一种文本检测装置的结构示意图;本技术还提供了一种文本检测装置,可以包括图像获取模块210、文本区域检测模块220、文本识别模块230、文本检测模块240,具体包括如下:
178.图像获取模块210,用于获取包含文本的待检测图像。
179.文本区域检测模块220,用于确定所述待检测图像中待识别的文本区域。
180.文本识别模块230,用于对所述待识别的文本区域中的文本进行识别,得到文本识别结果。
181.文本检测模块240,用于抽取所述文本识别结果中的目标实体,并将所述目标实体与标准实体进行比对,根据比对结果确定所述待检测图像中的文本是否编写正确。
182.上述实施例中,在对包含文本的待检测图像进行文本检测时,可以先确定该待检测图像中待识别的文本区域,从而将文本检测范围从整个待检测图像缩小至单个的文本区域,有利于后续文本识别的效率和精度,避免其他非文本区域的影响;接着本技术可以对待识别的文本区域中的文本进行识别,并得到相应的文本识别结果,该文本识别结果中包含待检测图像中所有的文本信息,在此基础上,本技术可以对文本信息中的关键词进行检查,如对文本识别结果中的目标实体进行抽取后,根据目标实体与标准实体之间的比对结果来
确定待检测图像中的文本是否编写正确,这样既可以保证待检测图像中的关键词的正确性,还可以减少文本检测的计算量,进一步提高文本检测的效率。
183.在一个实施例中,所述文本区域检测模块220可以包括:
184.第一获取模块,用于获取目标文本区域检测模型。
185.目标识别模块,用于将所述待检测图像输入到所述目标文本区域检测模型中,得到所述目标文本区域检测模型输出的所述待检测图像中待识别的文本区域。
186.在一个实施例中,所述第一获取模块可以包括:
187.第一获取子模块,用于获取包含文本的第一样本图像。
188.图像划分模块,用于按照预设的划分策略,将所述第一样本图像划分为多个子样本图像。
189.第一标注模块,用于标注每一子样本图像的真实图像中心点、真实图像大小,以及每一子样本图像在所述第一样本图像中的真实图像坐标。
190.第一预测模块,用于将各个子样本图像依次输入至预设的初始文本区域检测模型中,得到所述初始文本区域检测模型输出的每一子样本图像的预测图像中心点、预测图像大小,以及每一子样本图像在所述第一样本图像中的预测图像坐标。
191.第一训练模块,用于以每一子样本图像的预测图像中心点、预测图像大小,以及每一子样本图像在所述第一样本图像中的预测图像坐标,趋近于每一子样本图像的真实图像中心点、真实图像大小,以及每一子样本图像在所述第一样本图像中的真实图像坐标为目标,训练所述初始文本区域检测模型。
192.第一判断模块,用于当所述初始文本区域检测模型满足预设的第一训练条件时,将训练完成的初始文本区域检测模型作为目标文本区域检测模型。
193.在一个实施例中,所述文本识别模块230包括:
194.文本行定位模块,用于对所述待识别的文本区域中的文本行进行定位,得到至少一个文本行。
195.第二获取模块,用于获取目标文本识别模型。
196.文本识别子模块,用于将每个文本行依次输入至所述目标文本识别模型中,得到所述目标文本识别模型输出的文本识别结果。
197.在一个实施例中,所述第二获取模块可以包括:
198.第二获取子模块,用于获取包含文本的第二样本图像,对所述第二样本图像中的文本行进行截取后,得到多个训练图像;
199.第二标注模块,用于对各个训练图像中的文本分别进行标注后得到第二样本标签,所述第二样本标签为各个训练图像中的文本所对应的字符在字典中映射得到的索引。
200.第二预测模块,用于将各个训练图像分别输入至预设的初始文本识别模型,得到所述初始文本识别模型输出的与各个训练图像对应的预测标签。
201.第二训练模块,用于以所述预测标签趋近于所述第二样本标签为目标,训练所述初始文本识别模型。
202.第二判断模块,用于当所述初始文本识别模型满足预设的第二训练条件时,将训练完成的初始文本识别模型作为目标文本识别模型。
203.在一个实施例中,所述装置还可以包括:
204.数据增强模块,用于按照预设的增强策略,对各个训练图像分别进行数据增强。
205.在一个实施例中,所述文本检测模块240可以包括:
206.模型确定模块,用于确定目标nlp模型;
207.文本检测子模块,用于将所述文本识别结果输入至所述目标nlp模型中,得到所述目标nlp模型输出的所述文本识别结果中的目标实体。
208.在一个实施例中,所述模型确定模块可以包括:
209.第三获取模块,用于获取包含文本的第三样本图像。
210.第三标注模块,用于对所述第三样本图像中的文本进行分词,并对分词后的单词的词性进行标注,确定标注词性后的每一单词所对应的真实实体类别。
211.第三预测模块,用于将所述第三样本图像输入至预设的初始nlp模型中,得到所述初始nlp模型输出的所述第三样本图像中预测的每一单词对应的预测实体类别。
212.第三训练模块,用于以预测的每一单词对应的预测实体类别趋近于所述单词对应的真实实体类别为目标,训练所述初始nlp模型。
213.第三判断模块,用于当所述初始nlp模型满足预设的第三训练条件时,将训练完成的初始nlp模型作为目标nlp模型。
214.在一个实施例中,所述文本检测模块240可以包括:
215.提取模块,用于根据所述目标实体对应的产品类别,在数据库中提取与所述产品类别对应的标准实体。
216.余弦计算模块,用于计算所述目标实体对应的词向量与所述标准实体对应的词向量之间的余弦值。
217.比对模块,用于将所述余弦值与预设的余弦阈值进行比对。
218.第一检测模块,用于若所述余弦值小于所述预设的余弦阈值,则确定所述待检测图像中的文本编写错误。
219.第二检测模块,用于若所述余弦值不小于所述预设的余弦阈值,则确定所述待检测图像中的文本编写正确。
220.在一个实施例中,本技术还提供了一种存储介质,所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上述实施例中任一项所述文本检测方法。
221.在一个实施例中,本技术还提供了一种计算机设备,包括:一个或多个处理器,以及存储器。
222.所述存储器中存储有计算机可读指令,所述计算机可读指令被所述一个或多个处理器执行时,执行如上述实施例中任一项所述文本检测方法。
223.示意性地,如图6所示,图6为本技术实施例提供的一种计算机设备的内部结构示意图,该计算机设备300可以被提供为一服务器。参照图6,计算机设备300包括处理组件302,其进一步包括一个或多个处理器,以及由存储器301所代表的存储器资源,用于存储可由处理组件302的执行的指令,例如应用程序。存储器301中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件302被配置为执行指令,以执行上述任意实施例的文本检测方法。
224.计算机设备300还可以包括一个电源组件303被配置为执行计算机设备300的电源
管理,一个有线或无线网络接口304被配置为将计算机设备300连接到网络,和一个输入输出(i/o)接口305。计算机设备300可以操作基于存储在存储器301的操作系统,例如windows server tm、mac os xtm、unix tm、linux tm、free bsdtm或类似。
225.本领域技术人员可以理解,图6中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
226.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
227.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间可以根据需要进行组合,且相同相似部分互相参见即可。
228.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1