掌桥专利:专业的专利平台
掌桥专利
首页

一种OCR识别纠错装置和方法

文献发布时间:2023-06-19 13:26:15


一种OCR识别纠错装置和方法

技术领域

本发明涉及自然语言处理领域,尤其涉及一种OCR识别纠错装置和方法。

背景技术

现有的OCR引擎内置有纠错功能,一般是将文本中每个字都纠一遍,通常基于通用的词库来进行纠错,但在特殊领域例如医药领域,例如药品的名称往往是一些特殊的名词,在通用词库中很多没有进行统计,如果采用现有的OCR引擎默认的纠错技术,会将正确的药品名称判断为错误的名称,从而错误地将这些词进行纠错,反而产生错误的结果,因此,现有OCR引擎不适合类似医药等特殊领域的文字识别,其OCR识别的纠错率很低,如何提高这些特殊领域OCR引擎的识别纠错率是该领域亟需解决的技术问题。

发明内容

本发明为解决现有技术中存在的上述缺陷,提出一种OCR识别纠错装置和方法。

为了实现以上目的,本发明提出了一种OCR识别纠错装置,包括特征抽取模块、特征拼接模块、分类检错模块、分类纠错模块、特征融合模块、纠错验证模块、目标函数模块,其中:

特征抽取模块用以提取句子中每个字的特征;

特征拼接模块用以将每个字的特征进行拼接使得特征更丰富;

分类检错模块用以检测是否存在错字,包括判断每个字是否正确,是否存在错别字;

特征融合模块用以将特征进行融合得到特征库;

分类纠错模块用以预测正确字;

目标函数模块用以优化OCR识别纠错装置的参数以及度量OCR识别纠错装置的准确率。

进一步地,所述特征抽取模块包括Bert模块和LSTM模块,其中,Bert模块用以提取句子中每个字的特征;LSTM模块用以提取句子中每个字的特征。

进一步地,所述采用的Bert模块为12层的Bert模块。

进一步地,所述采用的LSTM模块为1层的LSTM模块。

进一步地,所述分类检错模块包括:

检测网络单元:用以分类判断每个字是否正确;

损失函数单元一:用以对检测网络单元计算损失,然后通过误差反向传播,让检测网络单元进行学习;

辅助分类器:用以检测是否存在错别字。

进一步的,所述特征融合模块采用CNN卷积神经网络实现。

进一步的,所述分类纠错模块包括:

纠错网络单元:用以辅助分类预测模块检测错误的字,并对错误的字进行纠正;

损失函数单元二:用以对纠错网络单元计算损失,然后通过误差反向传播,让纠错网络单元进行学习;

分类预测模块:用以预测正确的字。

进一步的,所述目标函数模块包括损失函数。

本发明还公开一种OCR识别纠错方法,应用于OCR识别纠错装置,其步骤包括:

获取输入的句子;

抽取所述句子中每个字的特征;

将每个字的特征进行拼接;

检测判断每个字是否正确;

对错误的字进行纠错,预测正确的字;

输出纠错的结果;

等待下一轮输入的句子。

其中,所述的OCR识别纠错装置为上述所述的OCR识别纠错装置。

本发明还公开一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行所述的OCR识别纠错方法。

本发明还公开一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行所述的OCR识别纠错方法。

本发明公开的方法和系统中所述模块,在实际应用中,即可以在一台目标服务器上部署多个模块,也可以每一模块独立部署在不同的目标服务器上,特别的,根据需要,为了提供更强大的计算处理能力,也可以根据需要将模块部署到集群目标服务器上。

由此可见,本发明的OCR识别纠错装置采用了联合学习的架构,把错误字的检测网络和纠正网络进行特征共享和融合,最后把两个网络的损失加权求和进行联合学习。在训练阶段,检测网络的特征,采用软硬标签相结合的方式对检测网络单元输出特征进行加工,输入到纠错网络单元。在预测阶段,只采用检测网络的二分类的硬标签,判断字是否有错。利用本发明公开的OCR识别纠错装置和方法,可以解决现有OCR引擎不适合类似医药等特殊领域的文字识别的问题,提高了OCR在这些特殊领域的识别纠错的准确率。

为了对本发明有更清楚全面的了解,下面结合附图,对本发明的具体实施方式进行详细描述。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例的一种OCR识别纠错装置的结构示意图。

图2为本申请实施例的一种OCR识别纠错装置的具体实施结构示意图。

图3为本申请实施例的另一种OCR识别纠错装置的具体实施结构示意图。

其中:特征抽取模块1、特征拼接模块2、分类检错模块3、特征融合模块4、分类纠错模块5、目标函数模块6。

具体实施方式

请参阅图1,图1示出了一种OCR识别纠错装置的结构示意图。

本申请提出的一种新型OCR识别纠错装置,将输入句子输入一个特征抽取模块中,获得句子中每个字的特征,再采用特征拼接模块将每个字的特征进行拼接使得特征集更丰富,再将特征集分别输入分类检错模块,对OCR识别中可能的错误进行纠错,再将特征集的备份输入特征融合模块对特征集进行融合,获得更丰富的特征集,再将融合的特征集输入分类纠错模块预测正确的字,最后采用目标函数模块优化OCR识别纠错装置的参数以及度量OCR识别纠错装置的准确率,进一步提高装置的准确率。

作为一种举例,对于一种错误的OCR识别文本“ADC”,其正确的文本应该是“ABC”,通过本申请上述纠错装置,采用检测网络能够把D检测为错误的字,然后通过纠错网络把错误字进行纠正,最终输出正确的ABC。

作为一种实施方式,本申请实施例的OCR识别纠错装置包括特征抽取模块、特征拼接模块、分类检错模块、分类纠错模块、特征融合模块、纠错验证模块、目标函数模块,其中:

特征抽取模块用以提取句子中每个字的特征;

特征拼接模块用以将每个字的特征进行拼接使得特征更丰富;

分类检错模块用以检测是否存在错字,包括判断每个字是否正确,是否存在错别字;

特征融合模块用以将特征进行融合,得到特征库;

分类纠错模块用以预测正确字;

目标函数模块用以对分类纠错模块参数进行调整优化。

请参阅图2,作为一种优选的实施方式,本申请实施例中的特征抽取模块提取句子中每个字的特征包括Bert模块及LSTM模块,其中Bert模块用以提取句子中每个字的特征,LSTM模块用以提取句子中每个字的特征。

作为一种更优选的实施方式,所述采用的Bert模块为12层的Bert模块。

此外,作为一种更优选的实施方式,所述采用的LSTM模块为1层的LSTM模块模型。

请参阅图3,作为一种优选的实施方式,本申请实施例中分类检错模块包括检测网络单元、损失函数单元和辅助分类器,其中:

检测网络单元用以分类判断每个字是否正确;

损失函数单元一:用以对纠错网络单元计算损失,然后通过误差反向传播,让纠错网络单元进行学习;

辅助分类器用以检测是否存在错别字。

作为一种优选的实施方式,本申请实施例中分类纠错模块包括纠错网络单元、损失函数单元二和分类预测模块,其中:

纠错网络单元:用以辅助分类预测模块检测错误的字,并对错误的字进行纠正;通过纠错网络单元能明显提升纠错的准确率,防止把正确的字纠为错误的字;

损失函数单元二:用以对纠错网络单元计算损失,然后通过误差反向传播,让纠错网络单元进行学习;

分类预测模块:用以预测正确的字。

作为一种优选的实施方式,本申请实施例中特征融合模块采用CNN卷积神经网络实现,CNN卷积神经网络用以将输入的特征进行融合,获得更丰富的特征。

基于上述实施例的OCR识别纠错装置,本申请还公开一种OCR识别纠错方法,其步骤包括:

获取输入的句子,输入OCR识别纠错装置;

OCR识别纠错装置抽取所述句子中每个字的特征;

OCR识别纠错装置将每个字的特征进行拼接;

OCR识别纠错装置检测判断每个字是否正确;

OCR识别纠错装置对错误的字进行纠错,预测正确的字;

OCR识别纠错装置输出纠错的结果;

等待下一轮输入的句子。

其中,使用的OCR识别纠错装置为上述任意一种实施例的OCR识别纠错装置。

本申请还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述实施例所述的方法。

本申请还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述实施例所述的方法。

需要说明的是,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过计算机程序来指令相关的硬件来完成,所述计算机程序可以存储于计算机可读存储介质中,所述存储介质可以包括但不限于:只读存储器(ROM,Read OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的条件下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 一种OCR识别纠错装置和方法
  • 一种OCR识别结果纠错方法、装置及存储介质
技术分类

06120113678365