语料库更新方法、装置、存储介质及终端与流程

文档序号:18467103发布日期:2019-08-17 02:35阅读:249来源:国知局
语料库更新方法、装置、存储介质及终端与流程

本发明实施例涉及自然语言处理技术领域,尤其涉及语料库更新方法、装置、存储介质及终端。



背景技术:

随着信息化的发展,数据已经深度地融入到社会发展的各个领域,渗透到各个方面。目前,已经存在大量的各种语言、各种领域的语料库,便于人们根据语料库对文字进行识别。

最新的tesseract4.0采用了lstm神经网络训练方式,通过这种方式对字符的上下文关系进行训练,所获得的语料库空间小,识别速度快,精度也不错,但当图片质量不好比如有残缺、干扰等情况下往往会导致识别错误,适应性不足。



技术实现要素:

本发明实施例提供一种语料库更新方法、装置、存储介质及终端,以不断优化语料库,有利于提高利用语料库对文字进行识别的精度、效率及适应性。

第一方面,本发明实施例提供了一种语料库更新方法,包括:

基于预设语料库对待识别文字图片集进行识别,获取文字识别结果;

将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本;其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误;

将所述补充训练图片样本输入至语料库生成网络模型中,更新所述预设语料库;其中,所述语料库生成网络模型用于生成所述预设语料库。

第二方面,本发明实施例提供了一种语料库更新装置,包括:

文字识别结果获取模块,用于基于预设语料库对待识别文字图片集进行识别,获取文字识别结果;

补充训练样本确定模块,用于将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本;其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误;

语料库更新模块,用于将所述补充训练图片样本输入至语料库生成网络模型中,更新所述预设语料库;其中,所述语料库生成网络模型用于生成所述预设语料库。

第三方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的语料库更新方法。

第四方面,本发明实施例提供了一种终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例提供的语料库更新方法。

本发明实施例中提供的语料库更新方案,基于预设语料库对待识别文字图片集进行识别,获取文字识别结果,并将文字识别结果与待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本,其中,当文字识别结果与待识别文字图片集对应的正确文字数据的比对结果不一致时,确定文字识别结果错误,最后将补充训练图片样本输入至语料库生成网络模型中,更新预设语料库,其中,语料库生成网络模型用于生成预设语料库。通过采用上述技术手段,可以不断对预设语料库进行更新,有利于提高基于更新后的语料库对文字进行识别的精度、效率及适应性。

附图说明

图1为本发明实施例提供的一种语料库更新方法的流程示意图;

图2为本发明实施例提供的另一种语料库更新方法的流程示意图;

图3为本发明实施例提供的处理后的补充训练图片样本在水平方向上的灰度值求和的曲线图;

图4为本发明实施例提供的处理后的补充训练图片样本中某个字符行在竖直方向上的灰度值求和的曲线图;

图5为本发明实施例提供的对补充训练图片样本的字符分割图;

图6为本发明实施例提供的另一种语料库更新方法的流程示意图;

图7为本发明实施例提供的另一种语料库更新方法的流程示意图;

图8为本发明实施例提供的基于不同语料库对某待识别图片进行识别的识别结果对比图;

图9为本发明实施例提供的一种语料库进行更新的操作流程图;

图10为本发明实施例提供的一种对初始识别结果进行中文校正的操作流程图;

图11为本发明实施例提供的一种语料库更新装置的结构框图;

图12为本发明实施例提供的一种终端的结构框图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

图1为本发明实施例提供的一种语料库更新方法的流程示意图,该方法可以由语料库更新装置执行,其中该装置可由软件和/或硬件实现,一般可集成在终端中。如图1所示,该方法包括:

步骤101、基于预设语料库对待识别文字图片集进行识别,获取文字识别结果。

在本发明实施例中,预设语料库可以理解为包含大量的字符信息且用于进行文字识别的数据库。其中,预设语料库可以是tesseract4.0中基于lstm神经网络训练生成的语料库,还可以是其他方式得到的语料库。需要说明的是,本发明实施例对预设语料库的生成方式不做限定。另外,待识别文字图片集可以包括票据、单证等纸质资料,还可以包括任意具有文字信息的文档,待识别文字图片集中包含的待识别文字图片的种类可以相同,也可以不同。

示例性的,获取待识别文字图片集,如利用高速扫描仪对待识别文字图片集进行扫描得到待识别文字图片集的扫描结果,然后基于预设语料库利用ocr识别技术对扫描结果进行识别,获取文字识别结果。需要说明的是,本发明实施例对基于预设语料库对待识别文字图片集进行识别的方式不做具体限定。

步骤102、将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本。

其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误;

在本申请实施例中,待识别文字图片集对应的正确文字数据可以理解为待识别文字图片集对应的真实文字数据。示例性的,可以利用高速扫描仪自动采集待识别文字图片集上的密文,然后对密文进行解密,将解密结果作为待识别文字图片集对应的真实文字数据。又示例性的,可以使用户人为识别的方式确定与待识别文字图片集对应的正确文字数据,如通过人工录入的方式获取与待识别文字图片集对应的正确文字数据。当然,也可以通过文字识别的技术方案对待识别文字图片集进行文字识别,然后对识别结果错误的文字进行人工校正,得到与待识别文字图片集对应的正文文字数据,这样可以有效减少人工操作。

示例性的,将步骤101中获取的文字识别结果与待识别文字图片集对应的正确文字数据进行比对,判断文字识别结果与所述正确文字数据是否一致。当文字识别结果与正确文字数据比对结果一致时,则认为获取的文字识别结果正确,也即对待文字识别图片集的识别结果正确;而当文字识别结果与正确文字数据比对结果为不一致时,则认为获取的文字识别结果错误,也即对待文字识别图片集的识别错误。当文字识别结果错误时,将文字识别结果错误的待识别文字图片作为补充训练图片样本。可以理解的是,当文字识别结果错误时,可能由于预设语料库包含的语料信息的不足,容易导致基于预设语料库对文字识别结果错误的待识别文字图片进行识别时,出现错误,需要对预设语料库进行进一步的优化,因此,可将文字识别结构错误的待识别为图片作为训练预设语料库时的补充训练图片样本。

步骤103、将所述补充训练图片样本输入至语料库生成网络模型中,更新所述预设语料库。

其中,所述语料库生成网络模型用于生成所述预设语料库。

在本发明实施例中,将补充训练图片样本输入至语料库生成网络模型中,重新对语料库生成网络模型进行训练,也即基于补充训练图片样本更新语料库生成网络模型的网络参数,以更新所述预设语料库。其中,语料库生成网络模型可以理解为基于预设机器学习模型对大量的文字图像样本进行训练的机器学习模型。其中,语料库生成网络模型可以包括神经网络模型、决策树模型、随机森林模型及朴素贝叶斯模型中的任意一种。本发明实施例对语料库生成网络模型的种类不做限定。

可选的,语料库生成网络模型包括长短记忆网络模型lstm。

示例性的,搜集常用的汉字、英文字符、数字及常用的符号合成文本文档,如收集5096个常用字符生成文本文档,并通过tesseract的文本合成图像以及特征文件生成方法生成与文本文档对应的文字图像和特征文件。然后将文字图像和特征文件输入是lstm神经网络模型中进行训练,得到语料库生成网络模型,从而获得预设语料库。其中,在基于lstm神经网络算法,以文字图像和特征文件作为输入数据进行计算获取预设语料库的过程中,主要通过三个门结构来实现信息的保护和控制,通过门来实现选择性地让信息通过,并通过一个sigmoid的神经层和一个逐点相乘的操作来实现的。lstm的主要计算原理如下:

lstm神经网络模型包括遗忘门(forgetgate)、输入门(inputgate)和输出门(outputgate)。

在将文字图像和特征文件输入lstm神经网络模型后,首先通过遗忘门决定从细胞cell状态中丢弃什么信息,通过ft=σ(wf.[ht-1,xt]+bf)来实现。其中,ht-1表示上一个细胞cell的输出信息,xt表示当前细胞cell的输入信息,σ表示sigmod函数。可以理解的是,该门读取ht-1和xt,并输出一个位于0到1之间的数值给每个在细胞状态ct-1中的数字,其中“1”表示“完全保留”,“0”表示“完全舍弃”。然后,通过输入门决定让多少新的信息加入到细胞cell状态中来。这主要包括两个步骤:第一、通过一个叫做“inputgatelayer”的sigmoid层决定哪些信息需要更新,通过it=σ(wi.[ht-1,xt]+bi)实现;第二、通过一个tanh层生成一个向量,以作为备选的用来更新的内容其中然后将两部分联合起来,对当前细胞cell的状态进行更新,其通过实现。最后,通过输出门确定输出什么值。首先运行一个sigmoid层来确定细胞cell状态的哪个部分将输出出去,如通过ot=σ(wo.[ht-1,xt]+bo)实现。接着,细胞cell状态通过tanh函数进行处理,得到一个在-1到1之间的值,并将该值和sigmoid的输出相乘,最终确定输出哪部分信息,如通过ht=ot*tanh(ct)实现。

需要说明的是,上述公式中,w表示权重,f,i,o,c分别表示遗忘门、输入门、输出门和细胞cell状态。

本发明实施例中提供的语料库更新方法,基于预设语料库对待识别文字图片集进行识别,获取文字识别结果,并将文字识别结果与待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本,其中,当文字识别结果与待识别文字图片集对应的正确文字数据的比对结果不一致时,确定文字识别结果错误,最后将补充训练图片样本输入至语料库生成网络模型中,更新预设语料库,其中,语料库生成网络模型用于生成预设语料库。通过采用上述技术手段,可以不断对预设语料库进行更新,有利于提高基于更新后的语料库对文字进行识别的精度、效率及适应性。

实施例二

图2为本发明实施例提供的另一种语料库更新方法的流程示意图,如图2所示,该方法包括如下步骤:

步骤201、基于预设语料库对待识别文字图片集进行识别,获取文字识别结果。

步骤202、将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本。

其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误。

步骤203、确定所述补充训练图片样本中的第一字符个数。

可选的,确定所述补充训练图片样本中的第一字符个数,包括:对所述补充训练图片样本进行预处理操作得到处理后的补充训练图片样本;其中,所述预处理操作包括灰度化、二值化及去除噪点;计算所述处理后的补充训练图片样本在水平方向的灰度值总和,确定所述补充训练图片样本的字符行位置信息及字符行个数;根据所述字符行位置信息计算所述处理后的补充训练图片样本的每个字符行在竖直方向的灰度值总和,确定所述补充训练图片样本中每个字符的位置信息及每个字符行包含的字符个数;根据所述字符行个数及每个字符行包含的字符个数确定所述补充训练图片样本中的第一字符个数。其中,第一字符个数可以理解为按照上述方法对补充训练图片样本进行处理后,确定的补充训练图片样本中包含的字符个数。这样设置的好处在于,可以简单、快速地确定出补充训练图片样本中的第一字符个数,提供工作效率。

示例性的,补充训练图片样本可以为彩色图片,也可以为灰度图片,为了准确地确定补充训练图片样本中包含的第一字符个数,可先对补充训练图片样本进行灰度化,得到补充训练图片样本对应的灰度图像。然后对灰度图像进行二值化处理。在进行二值化处理操作时,可采用全局阈值的二值化方式,也可采用自适应阈值的二值化方式。可选的,由于文字图像情况复杂,存在图片干扰、分辨率差别大等问题,为了能够适应补充训练图片样本的不同情况,可设置自适应阈值进行二值化,也即采用自适应阈值的二值化方式,通过计算补充训练图片样本对应的灰度图像中的每一个小区域对应的阈值,以能够在亮度不同的情况下得到更好的二值化效果。对补充训练图片样本进行二值化处理后,可能仍然存在一些噪声点,因此,可继续对二值化后的图像进行去噪处理。例如,可采用形态学开运算去除二值化图像中的噪点。通过以上步骤完成对补充训练图片样本的预处理操作,得到处理后的补充训练图片样本。

计算处理后的补充训练图片样本在水平方向的灰度值总和,根据在水平方向的灰度值总和的计算结果,确定补充训练图片样本的字符行位置信息及包含的字符行个数。其中,字符行个数可以理解为补充训练图片样本中包含的字符行的数量。可以理解的是,对处理后的补充训练图片样本进行水平方向的投影,绘制在水平方向上灰度值求和曲线,也即文本行和行间距形成了具有明显波峰和波谷的曲线,使得文本行被明显地分割开来,由此,可获取补充训练图片样本中字符行位置信息及字符行个数。也即,曲线中包含明显的波峰和波谷,可将波峰的对应的位置确定为字符行位置,波谷对应的位置为行间距的位置。示例性的,图3为本发明实施例提供的处理后的补充训练图片样本在水平方向上的灰度值求和的曲线图。

在本发明实施例中,在确定补充训练图片样本的字符行位置信息及字符行个数后,可根据字符行位置信息计算处理后的补充训练图片样本的每个字符行在竖直方向的灰度值总和,以根据在竖直方向的灰度值求和结果,确定补充训练图片样本中每个字符的位置信息及每个字符行包含的字符个数。可以理解的是,对处理后的补充训练图片样本中每个字符行进行竖直方向的投影,绘制每个字符行在竖直方向上灰度值求和曲线,也即每个字符行包含的字符和列间距形成了具有明显波峰和波谷的曲线,使得文本列被明显地分割开来,由此,可获取补充训练图片样本中每个字符行包含的每个字符的位置信息及每个字符行包含的字符个数,从而可进一步确定出补充训练图片样本中每个字符的位置信息。示例性的,图4为本发明实施例提供的处理后的补充训练图片样本中某个字符行在竖直方向上的灰度值求和的曲线图。

通过以上步骤确定的字符行个数和每个字符行包含的字符个数,可以准确确定出补充训练图片样本中包含的第一字符个数,也即补充训练图片样本中的包含的字符个数总和。图5为本发明实施例提供的对补充训练图片样本的字符分割图。

步骤204、当所述第一字符个数与所述补充训练图片样本对应的正确文字数据的第二字符个数相同时,将所述补充训练图片样本输入至语料库生成网络模型中,更新所述预设语料库。

其中,所述语料库生成网络模型用于生成所述预设语料库。

在本发明实施例中,补充训练图片样本对应的正确文字数据的第二字符个数可以理解为补充训练图片样本中包含的真实字符个数。示例性的,对于包含文字内容不是很多的补充训练图片样本,可以采用人工识别的方式确定补充训练图片样本中的第二字符个数。当然为了减少人工操作,提高工作效率,也可对补充训练图片样本进行识别并校正,根据校正结果确定补充训练图片样本中的第二字符个数。

在本发明实施例中,当第一字符个数与第二字符个数相同时,说明确定的补充训练图片样本中的字符个数与补充训练图片样本中包含的真实字符个数一致,此时,将补充训练图片样本输入至语料库生成网络模型中,可进一步提高语料库生成网络模型的训练精度,从而进一步提高更新后的语料库包含的语料信息的准确性。可选的,当第一字符个数与第二字符个数不相同时,可直接舍弃该补充训练图片样本,也即不将该补充训练图片样本输入至语料库生成网络模型中对预设语料库进行更新。可选的,当第一字符个数与第二字符个数不相同时,还可通过人工选择的方式确定是否将该补充训练图片样本输入至语料库生成网络模型中对预设语料库进行更新。

本发明实施例提供的语料库更新方法,基于预设语料库对待识别文字图片集进行识别,获取文字识别结果,并将文字识别结果与待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本,其中,当文字识别结果与待识别文字图片集对应的正确文字数据的比对结果不一致时,确定文字识别结果错误,然后进一步确定补充训练图片样本中的第一字符个数,当当第一字符个数与补充训练图片样本对应的正确文字数据的第二字符个数相同时,将补充训练图片样本输入至语料库生成网络模型中,更新预设语料库;其中,语料库生成网络模型用于生成预设语料库。通过上述技术方案,可以有效提高预设语料库更新后的效果,有利于进一步提高基于更新后的语料库对文字进行识别的精度、效率及适应性。

在一些实施例中,将所述补充训练图片样本输入至语料库生成网络模型中,包括:将所述补充训练图片样本及与所述补充训练图片样本对应的特征文件输入至语料库生成网络模型中;其中,所述特征文件包括所述补充训练图片样本中每个字符的位置信息及字符标签,所述每个字符的位置信息包括每个字符在所述补充训练图片样本中的左上坐标和右下坐标。这样设置的好处在于,可以有效提高预设语料库更新效率及更新后的效果。

示例性的,在确定补充训练图片样本中每个字符的位置信息后,可根据每个字符的位置信息及每个字符对应的字符标签生成与补充训练图片样本对应的特征文件。其中,字符标签可以理解为每个字符的位置信息对应的具体是哪个字符内容。每个字符的位置信息包括每个字符在补充训练图片样本中的左上坐标(x1img,y1img)和右下坐标(x2img,y2img)。其中,x1img=x1,y1img=h-y2,x2img=x2,y2img=h-y1,x1,y1,x2,y2分别表示每个字符在box文件中对应的坐标,h表示补充训练图片样本的高度。可选的,当补充训练图片样本包含多个时,可对多个补充训练图片样本进行编号,相应的,特征文件中还可以包括每个字符对应的补充训练图片样本的编号。然后,将补充训练图片样本及与补充训练图片样本对应的特征文件输入至语料库生成网络模型中,重新对语料库生成网络模型的网络参数进行训练,以更新预设语料库。

实施例三

图6为本发明实施例提供的另一种语料库更新方法的流程示意图,如图6所示,该方法包括如下步骤:

步骤601、基于预设语料库对待识别文字图片集进行识别,获取文字识别结果。

步骤602、将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本。

其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误。

步骤603、将所述补充训练图片样本输入至语料库生成网络模型中,更新所述预设语料库。

其中,所述语料库生成网络模型用于生成所述预设语料库。

步骤604、基于更新后的预设语料库对待识别图片进行识别,获取初始识别文本。

示例性的,利用高速扫描仪对待识别图片进行扫描得到待识别图片的扫描结果,然后基于更新后的预设语料库利用ocr识别技术对扫描结果进行识别,获取初始识别文本。

步骤605、对所述初始识别文本进行分词处理,确定中文单字散串。

在本发明实施例中对初始识别文本进行分词处理,生成词组序列和单字散串,其中,单字散串中可以包括中文单字散串、外文单字散串、标点符号及其他字符,可从各个单字散串中确定中文单字散串。可选的,在对初始识别文本进行分词处理时,可采用基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法中的任意一种,需要说明的是,本发明实施例对初始识别文本进行分词处理时采用的分词方法不做限定。

步骤606、将所述中文单字散串与所述中文单字散串在所述初始识别文本中的前后词进行组合,生成目标词组。

在本发明实施例中,将中文单字散串与该中文单字散串在初始识别文本中的前后词进行组合,生成目标词。示例性的,初始识别文本为“美丽的一国”,通过分词处理后,得到的中文单字散串包括“一”和“国”,对于单字散串“一”,可将“一”与“一”在初始识别文本中前面的词“美丽的”组成目标词“美丽的一”,同样,也可将“一”与“一”在初始识别文本中后面的词“国”组成目标词“一国”。

步骤607、在预设的中文词库中查找与所述目标词组对应的候选词组,并用所述候选词组替代所述目标词组,以对所述初始识别文本进行校正。

在本发明实施例中,预设的中文词库可以是基于某篇小说生成的中文词库,还可以是基于某些新闻报道生成的中文词库,需要说明的是,本发明对预设的中文词库的生成方式不做限定。在预设的中文词库中查找与目标词组对应的候选词,如在预设的中文词库中查找与目标词匹配度或者相似度最高的词作为候选词,然后用候选词替代目标词组,以对初始识别文本进行校正。示例性的,在预设的中文词库中查找不到与“美丽的一”对应的候选词,而可以查找到与“一国”对应的候选词“中国”,则可用“中国”替代“一国”,使得对初始识别文本“美丽的一国”校正后的文本信息为“美丽的中国”。

可选的,每对一个中文单字散串对应的目标词组进行替换处理后,可对校正后的初始识别文本重新进行分词处理,直至最后一个中文单字散串被处理,从而得到初始识别文本的最终校正结果。

可选的,对于中文词库中不存在与目标词组对应的候选词时,可能会存在中文校正的时候发生目标词组被替换错误而导致结果错误的情况,此时可采用人机交互的方式进行目标词组的替换操作,并重新将新候选词组加入中文词库。

本发明实施例提供的语料库更新方法,在更新预设语料库之后,基于更新后的预设语料库对待识别图片进行识别,获取初始识别文本,并对初始识别文本进行分词处理,确定中文单字散串,然后将中文单字散串与中文单字散串在初始识别文本中的前后词进行组合,生成目标词组,最后在预设的中文词库中查找与目标词组对应的候选词组,并用候选词组替代目标词组,以对初始识别文本进行校正。通过上述技术方案,考虑到待识别图片的分辨率不同造成干扰容易对识别结果产生较大影响,容易导致识别出错误的字或词组的情况,对初始识别结果进行中文的校正,可以有效提高识别的正确率。

在一些实施例中,在预设的中文词库中查找与所述目标词组对应的候选词组之前,还包括:获取所述预设的中文词库;确定所述预设的中文词库中每个词出现的次数及每个词的后接词出现的次数;根据所述每个词出现的次数及每个词的后接词出现的次数,计算各个词的出现概率及目标词序的出现概率,其中,所述目标词序由所述各个词与所述各个词的后接词组成;在预设的中文词库中查找与所述目标词组对应的候选词组,并用所述候选词组替代所述目标词组,包括:在预设的中文词库中查找与所述目标词组对应的多个候选词组,并用所述多个候选词中出现概率最大的候选词组替代所述目标词组;其中,所述候选词组为所述中文词库中的词或者目标词序。这样设置的好处在于,可以进一步提高对初始识别文本进行中文校正的准确率。

示例性的,获取预设的中文词库,对中文词库进行分词处理,确定中文词库中每个词出现的次数及每个词的后接词出现的次数,然后根据每个词的出现次数及每个词的后接词出现的次数,分别计算各个词的出现概率及由各个词与所述各个词的后接词组成的目标词序的出现概率。示例性的额,可基于n-gram语言模型计算各个词及目标词序的出现概率。其中,n的取值一般为2,3,4,此时n-gram语言模型分别为bi-gram模型,tri-gram模型和four-gram模型。可选的,在本发明实施例中可采用bi-gram模型计算中文词库中各个词及各个目标词序的出现概率,这样不仅可以保证出现概率计算的准确性,还可以提高计算速度。

在预设的中文词库中查找与目标词组对应的多个候选词组,并用多个候选词中出现概率最大的候选词组替代所述目标词组。示例性的,在中文词库中与目标词组对应的候选词组包括“中国”、“美国”、“外国”及“异国”,其中,“中国”、“美国”、“外国”及“异国”在中文词库中的出现概率分别为56%、20%、10%及14%,显然,候选词“中国”的出现概率最大,则用“中国”替代“一国”,以对初始识别文本进行校正。

实施例四

图7为本发明实施例提供的另一种语料库更新方法的流程示意图,如图7所示,该方法包括如下步骤:

步骤701、基于预设语料库对待识别文字图片集进行识别,获取文字识别结果。

步骤702、将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本。

其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误。

步骤703、对所述补充训练图片样本进行预处理操作得到处理后的补充训练图片样本。

其中,所述预处理操作包括灰度化、二值化及去除噪点。

步骤704、计算所述处理后的补充训练图片样本在水平方向的灰度值总和,确定所述补充训练图片样本的字符行位置信息及字符行个数。

步骤705、根据所述字符行位置信息计算所述处理后的补充训练图片样本的每个字符行在竖直方向的灰度值总和,确定所述补充训练图片样本中每个字符的位置信息及每个字符行包含的字符个数。

步骤706、根据所述字符行个数及每个字符行包含的字符个数确定所述补充训练图片样本中的第一字符个数。

步骤707、当所述第一字符个数与所述补充训练图片样本对应的正确文字数据的第二字符个数相同时,将所述补充训练图片样本及与所述补充训练图片样本对应的特征文件输入至语料库生成网络模型中,更新所述预设语料库。

其中,所述语料库生成网络模型用于生成所述预设语料库,所述特征文件包括所述补充训练图片样本中每个字符的位置信息及字符标签,所述每个字符的位置信息包括每个字符在所述补充训练图片样本中的左上坐标和右下坐标。

步骤708、基于更新后的预设语料库对待识别图片进行识别,获取初始识别文本。

步骤709、对所述初始识别文本进行分词处理,确定中文单字散串。

步骤710、将所述中文单字散串与所述中文单字散串在所述初始识别文本中的前后词进行组合,生成目标词组。

步骤711、确定预设的中文词库中每个词出现的次数及每个词的后接词出现的次数。

步骤712、根据所述每个词出现的次数及每个词的后接词出现的次数,计算各个词的出现概率及目标词序的出现概率。

其中,所述目标词序由所述各个词与所述各个词的后接词组成。

步骤713、在预设的中文词库中查找与所述目标词组对应的多个候选词组,并用所述多个候选词中出现概率最大的候选词组替代所述目标词组,以对所述初始识别文本进行校正。

其中,所述候选词组为所述中文词库中的词或者目标词序。

需要说明的是,本发明实施例对步骤708-步骤710与步骤711-步骤712的执行顺序不做限定,可以先执行步骤708-步骤710,后执行步骤711-步骤712;可以先执行步骤711-步骤712,后执行步骤708-步骤710;还可同时执行步骤708-步骤710与步骤711-步骤712。

示例性的,图8为基于不同语料库对某待识别图片进行识别的识别结果对比图。根据图8可以看出,采用tesseract4.0标准中文语料库识别结果正确率不高;采用lstm生成的初始中文语料库识别结果正确率有所提升;采用这些图片结合lstm神经元网络计算训练得到的中文语料库的识别正确率得到了大大的提升,但仍有个别字识别错误,对识别结果进行中文校正之后基本全部正确。

其中,对语料库进行更新的操作流程也可以参考图9所示的流程。而对语料库更新后,对初始识别结果进行中文校正的操作流程也可以参考图10所示的流程。

本发明实施例提供的语料库更新方法,基于预设语料库对待识别文字图片集进行识别,获取文字识别结果,将文字识别结果与待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本,并当补充训练图片样本中的第一字符个数与其正确的第二字符个数相同时,将补充训练图片样本及对应的特征文件输入至语料库生成网络模型中,更新预设语料库,考虑到了基于预设语料库无法对某些待识别文字图片集识别正确的情况,将识别错误的待识别文字图片作为补充训练样本,更新预设语料库,进一步提高了基于更新后的语料库对文字进行识别的精度、效率及适应性。另外,在确定补充训练图片样本中的第一字符时,对补充训练图片样本的灰度值分别进行水平方向和竖直方向的求和运算,获取补充训练图片样本中每个字符的位置信息,生成与补充训练图片样本对应的特征文件,节省了复杂的人工操作,提高了对预设语料库的更新效率。同时,基于更新后的预设语料库对待识别图片进行识别后,进一步对初始识别结果进行中文的校正,可以有效提高识别的正确率。

实施例五

图11为本发明实施例提供的一种语料库更新装置的结构框图,该装置可由软件和/或硬件实现,一般集成在终端中,可通过执行语料库更新方法来对预设语料库进行更新。如图11所示,该装置包括:

文字识别结果获取模块1101,用于基于预设语料库对待识别文字图片集进行识别,获取文字识别结果;

补充训练样本确定模块1102,用于将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本;其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误;

语料库更新模块1103,用于将所述补充训练图片样本输入至语料库生成网络模型中,更新所述预设语料库;其中,所述语料库生成网络模型用于生成所述预设语料库。

本发明实施例中提供的语料库更新装置,基于预设语料库对待识别文字图片集进行识别,获取文字识别结果,并将文字识别结果与待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本,其中,当文字识别结果与待识别文字图片集对应的正确文字数据的比对结果不一致时,确定文字识别结果错误,最后将补充训练图片样本输入至语料库生成网络模型中,更新预设语料库,其中,语料库生成网络模型用于生成预设语料库。通过采用上述技术手段,可以不断对预设语料库进行更新,有利于提高基于更新后的语料库对文字进行识别的精度、效率及适应性。

可选的,所述装置还包括:

第一字符个数确定模块,用于在将所述补充训练图片样本输入至语料库生成网络模型中之前,确定所述补充训练图片样本中的第一字符个数;

所述语料库更新模块,用于:

当所述第一字符个数与所述补充训练图片样本对应的正确文字数据的第二字符个数相同时,将所述补充训练图片样本输入至语料库生成网络模型中。

可选的,所述第一字符个数确定模块,用于:

对所述补充训练图片样本进行预处理操作得到处理后的补充训练图片样本;其中,所述预处理操作包括灰度化、二值化及去除噪点;

计算所述处理后的补充训练图片样本在水平方向的灰度值总和,确定所述补充训练图片样本的字符行位置信息及字符行个数;

根据所述字符行位置信息计算所述处理后的补充训练图片样本的每个字符行在竖直方向的灰度值总和,确定所述补充训练图片样本中每个字符的位置信息及每个字符行包含的字符个数;

根据所述字符行个数及每个字符行包含的字符个数确定所述补充训练图片样本中的第一字符个数。

可选的,所述语料库更新模块,用于:

将所述补充训练图片样本及与所述补充训练图片样本对应的特征文件输入至语料库生成网络模型中;其中,所述特征文件包括所述补充训练图片样本中每个字符的位置信息及字符标签,所述每个字符的位置信息包括每个字符在所述补充训练图片样本中的左上坐标和右下坐标。

可选的,所述语料库生成网络模型包括长短期记忆网络模型lstm。

可选的,所述装置还包括:

初始识别文本获取模块,用于在更新所述预设语料库之后,基于更新后的预设语料库对待识别图片进行识别,获取初始识别文本;

中文单字散串确定模块,用于对所述初始识别文本进行分词处理,确定中文单字散串;

目标词组生成模块,用于将所述中文单字散串与所述中文单字散串在所述初始识别文本中的前后词进行组合,生成目标词组;

初始识别文本校正模块,用于在预设的中文词库中查找与所述目标词组对应的候选词组,并用所述候选词组替代所述目标词组,以对所述初始识别文本进行校正。

可选的,所述装置还包括:

中文词库获取模块,用于在预设的中文词库中查找与所述目标词组对应的候选词组之前,获取所述预设的中文词库;

出现次数确定模块,用于确定所述预设的中文词库中每个词出现的次数及每个词的后接词出现的次数;

出现概率计算模块,用于根据所述每个词出现的次数及每个词的后接词出现的次数,计算各个词的出现概率及目标词序的出现概率,其中,所述目标词序由所述各个词与所述各个词的后接词组成;

所述初始识别文本校正模块,用于:

在预设的中文词库中查找与所述目标词组对应的多个候选词组,并用所述多个候选词中出现概率最大的候选词组替代所述目标词组;其中,所述候选词组为所述中文词库中的词或者目标词序。

实施例六

本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行语料库更新方法,该方法包括:

基于预设语料库对待识别文字图片集进行识别,获取文字识别结果;

将所述文字识别结果与所述待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本;其中,当所述文字识别结果与所述待识别文字图片集对应的正确文字数据的比对结果不一致时,确定所述文字识别结果错误;

将所述补充训练图片样本输入至语料库生成网络模型中,更新所述预设语料库;其中,所述语料库生成网络模型用于生成所述预设语料库。

存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如cd-rom、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如dram、ddrram、sram、edoram,兰巴斯(rambus)ram等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的语料库更新操作,还可以执行本发明任意实施例所提供的语料库更新方法中的相关操作。

实施例七

本发明实施例提供了一种终端,该终端中可集成本发明实施例提供的语料库更新装置。图12为本发明实施例提供的一种终端的结构框图。终端1200可以包括:存储器1201,处理器1202及存储在存储器1201上并可在处理器运行的计算机程序,所述处理器1202执行所述计算机程序时实现如本发明实施例所述的语料库更新方法。

本发明实施例提供的终端,基于预设语料库对待识别文字图片集进行识别,获取文字识别结果,并将文字识别结果与待识别文字图片集对应的正确文字数据进行比对,确定文字识别结果错误的待识别文字图片作为补充训练图片样本,其中,当文字识别结果与待识别文字图片集对应的正确文字数据的比对结果不一致时,确定文字识别结果错误,最后将补充训练图片样本输入至语料库生成网络模型中,更新预设语料库,其中,语料库生成网络模型用于生成预设语料库。通过采用上述技术手段,可以不断对预设语料库进行更新,有利于提高基于更新后的语料库对文字进行识别的精度、效率及适应性。

上述实施例中提供的语料库更新装置、存储介质及终端可执行本发明任意实施例所提供的语料库更新方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的语料库更新方法。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1