首页> 中国专利> 文本识别方法以及电子设备、存储装置

文本识别方法以及电子设备、存储装置

摘要

本申请公开了一种文本识别方法以及电子设备、存储装置,其中,文本识别方法包括:获取待识别图像;其中,待识别图像内含有至少一个目标文本;对待识别图像进行特征提取,得到待识别图像的特征图;利用特征图进行目标检测,得到分别与至少一个目标文本对应的目标区域;识别目标区域中的目标文本和目标文本的文本类型。上述方案,能够提高文本识别的准确性。

著录项

  • 公开/公告号CN112949653A

    专利类型发明专利

  • 公开/公告日2021-06-11

    原文格式PDF

  • 申请/专利权人 科大讯飞股份有限公司;

    申请/专利号CN202110204628.3

  • 申请日2021-02-23

  • 分类号G06K9/46(20060101);G06K9/62(20060101);G06N3/08(20060101);

  • 代理机构44280 深圳市威世博知识产权代理事务所(普通合伙);

  • 代理人何倚雯

  • 地址 230088 安徽省合肥市高新开发区望江西路666号

  • 入库时间 2023-06-19 11:22:42

说明书

技术领域

本申请涉及图像处理技术领域,特别是涉及一种文本识别方法以及电子设备、存储装置。

背景技术

随着电子信息技术的发展,利用计算机自动识别图像上的文本及其类型已经在诸多行业、场景得到了应用。例如,通过自动识别发票图像上诸如税号、开户行等类型的文本,能够有助于后续自动对发票建立索引并归档,从而大大降低统计、核对等成本,提升效率。

在现实场景中,图像中的文本不可避免地存在错位等问题,从而影响文本识别的准确性。有鉴于此,如何提高文本识别的准确性成为亟待解决的问题。

发明内容

本申请主要解决的技术问题文本是提供一种文本识别方法以及电子设备、存储装置,能够提高文本识别的准确性。

为了解决上述问题文本,本申请第一方面提供了一种文本识别方法,包括:获取待识别图像;其中,待识别图像内含有至少一个目标文本;对待识别图像进行特征提取,得到待识别图像的特征图;利用特征图进行目标检测,得到分别与至少一个目标文本对应的目标区域;识别目标区域中的目标文本和目标文本的文本类型。

为了解决上述问题文本,本申请第二方面提供了一种电子设备,包括相互耦接的存储器和处理器,存储器中存储有程序指令,处理器用于执行程序指令以实现上述第一方面中的文本识别方法。

为了解决上述问题文本,本申请第三方面提供了一种存储装置,存储有能够被处理器运行的程序指令,程序指令用于实现上述第一方面中的文本识别方法。

上述方案,获取待识别图像,且待识别图像内含有至少一个目标文本,通过对待识别图像进行特征提取,得到待识别图像的特征图,并利用特征图进行目标检测,得到分别与至少一个目标文本对应的目标区域,在此基础上,再识别目标区域中的目标文本和目标文本的文本类型,故在文本识别过程中,即使存在文本错位等问题,只要检测出目标文本对应的目标区域,后续即能基于目标区域识别得到目标文本及其文本类型,即文本识别的准确性并不依赖于特定的文本位置,因此能够有利于提高文本识别的准确性。

附图说明

图1是本申请文本识别方法一实施例的流程示意图;

图2是训练文本检测模型一实施例的流程示意图;

图3是本申请电子设备一实施例的框架示意图;

图4是本申请存储装置一实施例的框架示意图。

具体实施方式

下面结合说明书附图,对本申请实施例的方案进行详细说明。

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。

本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。

请参阅图1,图1是本申请文本识别方法一实施例的流程示意图。具体而言,可以包括如下步骤:

步骤S11:获取待识别图像。

本公开实施例中,待识别图像可以基于实际应用场景获取得到。例如,在财务场景中,待识别图像可以包括发票、报销单等图像;或者,在保险场景中,待识别图像可以包括保单、发票等图像;或者,在售后场景中,待识别图像可以包括工单等图像。其他场景可以以此类推,在此不再一一举例。

本公开实施例中,待识别图像内含有至少一个目标文本。以财务场景为例,目标文本可以包括:税号文本(如“912……123”)、单位名称文本(如“XXX有限公司”)、地址文本(如“XX省XX市XX区XX路XX号”)等等,在此不做限定;或者,以保险场景为例,目标文本可以包括:投保人文本(如“张某某”)、被投保人文本(如“王某某”)、保额(如“XX万元”)等等,在此不做限定;或者,以售后场景为例,目标文本可以包括:维修项目文本(如“四轮定位”)、维修费用文本(如“XX元”)等等,在此不做限定。其他场景可以以此类推,在此不再一一举例。

此外,需要说明的是,待识别图像的获取途径可以包括但不限于:拍摄、扫描等,在此不做限定。例如,可以通过手机、平板电脑、数码相机等电子设备拍摄得到待识别图像,也可以通过扫描仪等设备扫描得到待识别图像。

步骤S12:对待识别图像进行特征提取,得到待识别图像的特征图。

在一个实施场景中,为了提高文本识别效率,可以预先训练一个文本检测模型,该文本检测模型可以包括特征提取网络,从而可以利用特征提取网络对待识别图像进行特征提取,得到待识别图像的特征图。

在一个具体的实施场景中,特征提取网络可以包括但不限于:VGG(VisualGeometry Group)、ResNet、HRNet(High-Resoultion Net)等等,在此不做限定。

在另一个具体的实施场景中,上述文本检测模型具体可以是利用样本图像训练得到的,且样本图像标注有样本文本的样本目标区域和样本文本类型。文本检测模型的训练过程可以参阅下述相关公开实施例,在此暂不赘述。

步骤S13:利用特征图进行目标检测,得到分别与至少一个目标文本对应的目标区域。

在一个实施场景中,为了提高文本识别效率,可以预先训练一个文本检测模型,该文本检测模型可以包括目标检测网络,从而可以利用目标检测网络对特征图进行检测,得到分别与至少一个目标文本对应的目标区域。

在一个具体的实施场景中,目标检测网络可以包括但不限于:RPN(RegionProposal Network,区域选取网络)等等,在此不做限定。

在另一个具体的实施场景中,以财务场景为例,通过目标检测网络可以检测出上述税号文本、单位名称文本、地址文本等在待识别图像中的目标区域;或者,以保险场景为例,通过目标检测网络可以检测出上述投保人文本、被投保人文本、保额文本等在待识别图像中的目标区域;或者,以售后场景为例,通过目标检测网络可以检测出上述维修项目文本、维修费用文本等在待识别图像中的目标区域,其他场景可以以此类推,在此不再一一举例。

在另一个实施场景中,为了在提高目标检测效率的基础上,进一步提高目标检测的精度,可以先利用特征图进行第一检测,得到分别与至少一个目标文本对应的候选区域,再分别对至少一个目标文本对应的候选区域进行第二检测,得到分别与至少一个目标文本对应的目标区域。上述方式,通过先利用特征图检测出于至少一个目标文本对应的候选区域,再对候选区域进一步检测得到目标文本对应的目标区域,能够有利于在“粗检测”得到的候选区域的基础上进一步“细检测”出目标文本对应的目标区域,故既能够大大减少若直接对待识别图像全图进行“细检测”而引起的大量计算负荷,提高目标区域的检测效率,也能够通过“粗检测”与“细检测”的二阶段检测,提高检测精度。

在一个具体的实施场景中,同一目标文本对应的候选区域与目标之间满足预设关系,且预设关系包括:候选区域不小于目标区域。上述方式,由于同一目标文本对应的候选区域不小于该目标文本对应的目标区域,故此能够有利于在“细检测”阶段提高目标区域的检测精度,从而能够在后续识别目标文本和文本类型的过程中,有利于降低图像噪声,提高识别准确性。

在另一个具体的实施场景中,为了提高上述“粗检测”和“细检测”的检测效率,可以预先训练一个文本检测模型,该文本检测模型可以包括目标检测网络,而目标检测网络可以进一步包括第一检测网络和第二检测网络,从而可以利用第一检测网络对特征图进行第一检测,得到分别与至少一个目标文本对应的候选区域,并利用第二检测网络分别对至少一个目标文本对应的候选区域进行第二检测,得到分别与至少一个目标文本对应的目标区域。具体地,第一检测网络可以包括但不限于:RPN等等,在此不做限定,第二检测网络可以包括但不限于:YOLO(You Only Look Once)、SSD(Single Shot multi-box Detector)等等,在此不做限定。

需要说明的是,目标文本对应的目标区域具体可以为矩形,或者,也可以为平行四边形、梯形等四边形,在此不做限定。

步骤S14:识别目标区域中的目标文本和目标文本的文本类型。

在一个实施场景中,可以对目标区域进行分类检测,得到目标区域对应的目标文本的文本类型,并对目标区域进行文字识别,得到若干识别文字,从而可以将若干识别文字的组合,作为目标区域中的目标文本。

在一个具体的实施场景中,以财务场景为例,对目标文本“XXX有限公司”对应的目标区域进行识别,可以得到若干识别文字‘X’、‘X’、‘X’、‘有’、‘限’、‘公’、‘司’,在此基础上可以将上述若干识别文字的组合,作为目标区域中的目标文本“XXX有限公司”。其他场景可以以此类推,在此不再一一举例。

在另一个实施场景中,为了提高文本识别效率,可以预先训练一个文本检测模型,文本检测模型具体可以包括分类检测网络和文本识别网络,从而可以利用分类检测网络对目标区域进行分类检测,得到目标区域对应的目标文本的文本类型,并利用文本识别网络对目标区域进行文字识别,得到目标区域中若干识别文字,并将若干识别文字的组合,作为目标区域对应的目标文本。

在一个具体的实施场景中,分类检测网络可以包括但不限于:卷积层、全连接层等等,在此不做限定。具体地,通过将文本区域输入分类检测网络,可以得到目标区域对应的目标文本分别属于多种预设类型的概率值,从而可以将最大概率值对应的预设类型,作为目标区域对应的目标文本所属的文本类型。仍以财务场景为例,可以将目标文本“XXX有限公司”对应的目标区域输入分类检测网络,得到目标文本“XXX有限公司”分别属于单位名称、税号、地址等多种预设类型的概率值,从而可以将最大概率值对应的预设类型“单位名称”,作为目标文本“XXX有限公司”所属的文本类型。其他场景可以以此类推,在此不再一一举例。

在另一个具体的实施场景中,文本识别网络可以包括但不限于:RNN(RecurrentNeural Network,循环神经网络)、LSTM(Long Short-Term Memory,长短期记忆网络)、GRU(Gated Recurrent Unit,门控循环单元)、CTC(Connectionist TemporalClassification)等等,在此不做限定。

在又一个实施场景中,如前所述,可以对目标区域进行分类检测,得到目标区域对应的目标文本的文本类型,并对目标区域进行文字识别,得到若干识别文字。为了进一步提高目标文本的准确性,在得到目标区域对应的目标文本的文本类型以及目标区域中若干识别文字之后,可以基于文本类型,对若干识别文字进行校正,得到目标文本。仍以财务场景为例,对目标文本“XXX有限公司”对应的目标区域进行识别,可以得到目标区域对应的目标文本的文本类型“单位名称”,以及若干识别文字‘X’、‘X’、‘X’、‘有’、‘限’、‘公’、‘司’、‘0’,由于目标文本的文本类型为“单位名称”,可见若干识别文字中最后一个识别文字‘0’不应包含于文本类型为“单位名称”的目标文本中,因此可以对上述若干识别文字进行校正,如可以删除识别文字‘0’,并将校正后的若干识别文字的组合,作为目标文本,即可以将校正后的识别文字‘X’、‘X’、‘X’、‘有’、‘限’、‘公’、‘司’的组合,作为目标文本“XXX有限公司”。其他场景可以以此类推,在此不再一一举例。具体校正过程可以参阅下述公开实施例中相关描述,在此暂不赘述。上述方式,在得到目标文本的文本类型以及目标区域中若干识别文字之后,基于文本类型对若干识别文字进行校正,得到目标文本,有利于进一步提高目标文本的准确性。

上述方案,获取待识别图像,且待识别图像内含有至少一个目标文本,通过对待识别图像进行特征提取,得到待识别图像的特征图,并利用特征图进行目标检测,得到分别与至少一个目标文本对应的目标区域,在此基础上,再识别目标区域中的目标文本和目标文本的文本类型,故在文本识别过程中,即使存在文本错位等问题,只要检测出目标文本对应的目标区域,后续即能基于目标区域识别得到目标文本及其文本类型,即文本识别的准确性并不依赖于特定的文本位置,因此能够有利于提高文本识别的准确性。

在一些公开实施例中,在基于文本类型对若干识别文字进行校正的过程中,可以删除若干识别文字中不属于文本类型的识别文字。上述方式,通过删除若干识别文字中不属于文本类型的识别文字,能够有利于降低由于目标区域中目标文本周围噪声而发生误识别的概率,从而能够有利于提升目标文本的准确性。

在一个实施场景中,由于因目标区域中目标文本周围的噪声而误识别的文字通常位于若干识别文字的首末位置,故可以优先检查位于若干识别文字的首末位置的识别文字是否属于目标文本的文本类型,从而能够有利于提高文字校正的效率。

在另一个实施场景中,仍以财务场景为例,对于文本类型为“税号”的目标文本“912……123”而言,该目标文本对应的目标区域经文字识别,可以得到若干识别文字:‘一’、‘9’、‘1’、‘2’……、‘1’、‘2’、‘3’,由于属于文本类型“税号”的识别文字包括数字、字母,故识别文字‘一’不属于文本类型“税号”,因此,可以在上述若干识别文字中删除识别文字‘一’。其他场景可以以此类推,在此不再一一举例。

在一些公开实施例中,在对目标区域进行文字识别过程中,可以得到若干识别文字以及每一识别文字的置信度,在此基础上,针对置信度低于预设阈值的识别文字,可以基于与该识别文字邻近的识别文字,检测是否利用预设文字映射表,将该识别文字替换为其他文字。上述方式,针对置信度低于预设阈值的识别文字,基于与该识别文字邻近的识别文字,检测是否利用预设文字映射表将该识别文字替换为其他文字,能够检验置信度较低的识别文字,从而能够有利于进一步提高目标文本的准确性。

在一个实施场景中,识别文字的置信度可以表示识别文字的可信程度,置信度越高,识别文字的可信程度越高,反之置信度越低,识别文字的可信程度越低。具体地,识别文字以及识别文字的置信度可以是由文本识别网络得到的,文本识别网络具体可以参阅前述公开实施例中相关描述,在此不再赘述。

在另一个实施场景中,预设阈值可以根据实际应用情况进行设置,例如,在对目标文本的准确性要求较高的情况下,可以将预设阈值设置地稍大一些,如可以设置为0.9、0.95;或者,在对目标文本的准确性要求相对宽松的情况下,可以将预设阈值设置地稍小一些,如可以设置为0.8、0.85等,在此不做限定。

在又一个实施场景中,预设文字映射表可以预先根据形近字等大量数据构建得到。例如,预设文字映射表中可以包括:“噪声”及其形近字“燥声”、“已经”及其形近字“己经”、“冶金”及其形近字“治金”等等,在此不做限定。

在又一个实施场景中,邻近的识别文字可以包括但不限于:位于置信度低于预设阈值的识别文字之前的若干识别文字,位于置信度低于预设阈值的识别文字之后的若干识别文字,在此不做限定。例如,对于若干识别文字‘X’、‘X’、‘市’、‘治’、‘金’、‘有’、‘限’、‘公’、‘司’而言,其中识别文字‘治’的置信度低于预设阈值,则可以将位于‘治’之后的识别文字‘金’作为其邻近文字。其他场景可以以此类推,在此不再一一举例。

在又一个实施场景中,可以利用语言模型对置信度低于预设阈值的识别文字及其邻近文字进行检测,确定置信度低于预设阈值的识别文字是否需要利用预设文字映射表进行替换。具体地,可以将置信度低于预设阈值的识别文字及其邻近文字输入语言模型进行语义理解,若语义理解无结果,则表明置信度低于预设阈值的识别文字需要进行替换。例如,由于对上述置信度低于预设阈值的识别文字‘治’及其邻近文字‘金’进行语义理解无结果,则可以确定识别文字‘治’需要进行替换,在此基础上,通过预设文字映射表中的“冶金”及其形近字“治金”,可以将识别文字‘治’替换为“冶”。其他情况可以以此类推,在此不再一一举例。此外,上述语言模型可以包括但不限于:BERT(Bidirectional EncoderRepresentations from Transformers)、LSTM等等,在此不做限定。

在一些公开实施例中,在基于文本类型对若干识别文字进行校正的过程中,还可以在文本类型为地址的情况下,按照行政区划的顺序,利用预设地址信息库对若干识别文字进行校正。上述方式,在文本类型为地址的情况下,按照行政区划的顺序,利用预设地址信息库对若干识别文字进行校正,能够有利于提高地址类文本的准确性,特别是能够提高存在生僻字的目标文本的准确性。

在一个实施场景中,行政区划的顺序具体可以是:省/自治区/直辖市、市、区/县/自治州/自治县、乡/镇/民族乡、街道等等,在此不做限定。

在另一个实施场景中,可以预先对预设区域(如,全国、某省等)内的地址按照行政区划建立信息库,得到预设地址信息库。

在又一个实施场景中,仍以财务场景为例,若干识别文字可以包括:‘江’、‘苏’、‘省’、‘苏’、‘州’、‘市’、‘吴’、‘中’、‘区’、‘角’、‘直’、‘镇’,通过利用预设地址信息库按照省市区镇的行政区划的顺序,依次检查上述若干文字后发现,“江苏”无误,“苏州”无误、“吴中”无误,而“角直”未在预设地址信息库中匹配到,故确定若干文字‘角’、‘直’需要校正,进一步地,可以根据预设地址信息库中录入的“甪直镇”,将识别文字“角”校正为“甪”。其他场景可以以此类推,在此不再一一举例。

在一些公开实施例中,在基于文本类型对若干识别文字进行校正的过程中,还可以在文本类型为单位名称的情况下,搜索属于纳税人识别号的识别文字作为第一参考文字,并利用第一参考文字对若干识别文字进行校正。上述方式,在文本类型为单位名称的情况下,搜索属于纳税人识别号的识别文字作为第一参考文字,并利用第一参考文字对若干识别文字进行校正,能够有利于确保单位名称和纳税人识别号之间的一致性。

在一个实施场景中,由于污损等原因,单位名称“XX市冶金有限公司”对应的目标区域经识别后得到若干识别文字包括:‘X’、‘X’、‘市’、‘冶’、‘金’、‘公’、‘司’,可以进一步搜索属于纳税人识别号的识别文字(如,“932……123”)作为第一参考文字,基于第一参考文字可以在纳税人信息库中查询到该纳税人识别号对应的单位名称为“XX市冶金有限公司”,在此基础上,可以将上述若干识别文字校正为包括:‘X’、‘X’、‘市’、‘冶’、‘金’、‘有’、‘限’、‘公’、‘司’。其他情况可以以此类推,在此不再一一举例。

在一些公开实施例中,与前述公开实施例类似地,在基于文本类型对若干识别文字进行校正的过程中,还可以在文本类型为纳税人识别号的情况下,搜索属于单位名称的识别文字作为第二参考文字,并利用第二参考文字对若干识别文字进行校正。上述方式,在文本类型为纳税人识别号的情况下,搜索属于单位名称的识别文字作为第二参考文字,并利用第二参考文字对若干识别文字进行校正,能够有利于确保单位名称和纳税人识别号之间的一致性。

在一个实施场景中,由于污损等原因,纳税人识别号“932……123”对应的目标区域经识别后得到若干识别文字包括:‘9’、‘2’、……、‘1’、‘2’、‘3’,可以进一步搜索属于单位名称的识别文字(如,“XX市冶金有限公司”)作为第二参考文字,基于第二参考文字可以在纳税人信息库中查询到该单位名称对应的纳税人识别号为“932……123”,在此基础上,可以将上述若干识别文字校正为包括:‘9’、‘3’、‘2’、……、‘1’、‘2’、‘3’。其他情况可以以此类推,在此不再一一举例。

在一些公开实施例中,在基于文本类型对若干识别文字进行校正的过程中,还可以在文本类型为金额的情况下,搜索属于预设类型的识别文字作为第三参考文字,并利用第三参考文字对若干识别文字进行校正。上述方式,在文本类型为金额的情况下,搜索属于预设类型的识别文字作为第三参考文字,并利用第三参考文字对若干识别文字进行校正,能够有利于确保与金额相关的识别文字之间保持一致性。

在一个实施场景中,预设类型具体可以包括与金额相关的类型,如可以包括但不限于:数量、税率、单价等等,在此不做限定。

在另一个实施场景中,由于污损等原因,金额“80.00”对应的目标区域经识别后得到若干识别文字包括:‘3’、‘0’、‘.’、‘0’、‘0’,可以进一步将单价对应的识别文字“20.00”以及数量对应的识别文字“4.00”作为第三参考文字,从而可以核算出金额应为“80.00”,在此基础上,可以将上述若干识别文字校正为包括:‘8’、‘0’、‘.’、‘0’、‘0’。其他情况可以以此类推,在此不再一一举例。

请参阅图2,图2是训练文本检测模型一实施例的流程示意图。本公开实施例中,目标区域和文本类型均是利用文本检测模型检测得到的,文本检测模型是利用样本图像训练得到的,且样本图像标注有样本目标文本的样本目标区域和样本文本类型,如可以在样本图像中标注包含样本目标文本“XX市冶金有限公司”的样本目标区域,并将该样本目标文本标注为样本文本类型“单位名称”,其他情况可以以此类推,在此不再一一举例。在此基础上,可以利用样本图像训练得到文本检测模型。具体可以包括如下步骤:

步骤S21:利用文本检测模型的特征提取网络对样本图像进行特征提取,得到样本图像的样本特征图。

关于特征提取网络以及特征提取具体可以参阅前述公开实施例中相关描述,在此不再赘述。

在一个实施场景中,为了提高文本检测模型检测不同图像的鲁棒性,可以获取初始图像,并对初始图像进行预处理,得到样本图像,且预处理包括以下至少一者:调整初始图像的分辨率,旋转初始图像,裁剪初始图像,对初始图像进行透视变换。上述方式,通过对获取到的初始图像进行预处理得到样本图像,且预处理包括以下至少一者:调整初始图像的分辨率,旋转初始图像,裁剪初始图像,对初始图像进行透视变换,能够提高样本图像的丰富度,有利于在训练过程中尽可能地模拟现实场景中各种可能出现的情况,以提高训练的多样性,有利于提高文本检测模型的鲁棒性。

在一个具体的实施场景中,为了进一步提高文本检测模型的鲁棒性,初始图像可以为利用手机、平板电脑、数码相机等电子设备拍摄得到的,也可以是利用扫描仪等设备扫描得到的,在此不做限定。

在另一个具体的实施场景中,具体可以将初始图像的分辨率调整为其原始分辨率的0.1倍、0.3倍、0.5倍、0.7倍、0.9倍、1.1倍、1.3倍、1.5倍、1.7倍、1.9倍等等,在此不做限定。上述方式,可以模拟现实拍摄场景下可能出现各种图像分辨率的情况。

在又一个具体的实施场景中,具体可以将初始图像旋转45度、90度、135度、180度、225度、270度、315度等等,在此不做限定。上述方式,可以模拟现实场景下图像可能存在不同旋转角度的情况。

在又一个具体的实施场景中,具体可以裁剪初始图像诸如边角等区域。上述方式,可以模拟现实场景下图像可能存在部分缺失、遮挡等情况。

在又一个具体的实施场景中,可以以任一角度对初始图像进行透视变换,以此可以模拟现实场景中图像可能存在部分形变的情况。

在一个实施场景中,为了提取得到图像深层特征,特征提取网络具体可以包括多个特征提取单元(如,残差块等),在此基础上,可以利用特征提取网络提取到多种分辨率的样本特征图。

步骤S22:利用文本检测模型的目标检测网络对样本特征图进行目标检测,得到样本目标文本的预测目标区域。

关于目标检测网络以及目标检测具体可以参阅前述公开实施例中相关描述,在此不再赘述。

在一个实施场景中,如前所述,可以利用特征提取网络对样本图像进行特征提取,得到多种分辨率的样本特征图,则在训练过程中,可以基于当前训练次数,选择一种分辨率的样本特征图作为候选特征图,并利用目标检测网络对候选特征图进行目标检测,得到预测目标区域。上述方式,通过利用特征提取网络对样本图像进行特征提取,得到多种分辨率的样本特征图,并在训练过程中基于当前训练次数,选择一种分辨率的样本特征图作为候选特征图,以利用目标检测网络对候选特征图进行目标检测,得到预测目标区域,能够支持对多尺度图像的检测,从而能够有利于提升诸如小目标等各种尺度目标检测的准确性。

在一个具体的实施场景中,可以在训练过程中,依次选择一种分辨率的样本特征图作为候选特征图。例如,在共有5种分辨率的样本特征图的情况下,可以在当前训练次数为第1次时,选择第1种分辨率的样本特征图作为候选特征图,并在当前训练次数为第2次时,选择第2种分辨率的样本特征图作为候选特征图,如此循环,并在当前训练次数为第6次时,重新选择第1种分辨率的样本特征图作为候选特征图,以此类推,在此不再一一举例。

在另一个具体的实施场景中,也可以在训练过程中,随机选择一种与前一次训练不同分辨率的样本特征图作为候选特征图。例如,在共有5种分辨率的样本特征图的情况下,可以在当前训练次数为第1次时,选择第1种分辨率的样本特征图作为候选特征图,并在当前训练次数为第2次时,随机选择第3种分辨率的样本特征图作为候选特征图,在此不再一一举例。

步骤S23:利用文本检测模型的分类检测网络对预测目标区域进行分类检测,得到预测目标区域对应的样本目标文本的预测文本类型。

关于分类检测网络以及分类检测具体可以参阅前述公开实施例中相关描述,在此不再赘述。

步骤S24:基于样本目标区域和预测目标区域之间的差异,得到文本检测模型的检测损失值,并基于样本文本类型和预测文本类型之间的差异,得到文本检测模型的分类损失值。

在一个实施场景中,可以利用诸如dice loss等损失函数处理样本目标区域和预测目标区域,得到检测损失值。

在另一个实施场景中,可以利用诸如交叉熵损失函数处理样本文本类型和预测文本类型,得到分类损失值。具体地,利用分类检测网络对预测目标区域进行分类检测,可以得到目标区域对应的样本目标文本分别属于多种预设文本类型的预测概率值,从而可以利用诸如交叉熵损失函数处理样本文本类型以及多种预设文本类型的预测概率值,得到分类损失值。

步骤S25:基于预设检测权值、预设分类权值对检测损失值、分类损失值的加权结果,调整文本检测模型的网络参数。

本公开实施例中,预设检测权值不大于预设分类权值。在一个实施场景中,预设检测权值可以设置为1,预设分类权值可以设置为1至1.5,在此不做限定。

在一个实施场景中,如前所述,为了提高目标检测的精度以及效率,目标检测可以分两阶段进行,在此基础上,上述目标检测网络可以包括第一检测网络和第二检测网络,预设检测权值可以包括第一检测权值和第二检测权值,从而在利用目标检测网络进行目标检测的过程中,可以利用第一检测网络对样本特征图进行第一检测,得到样本目标文本的第一预测区域,并利用第二检测网络对第一预测区域进行第二检测,得到样本目标文本的第二预测区域。在此基础上,可以基于样本目标区域和第一预测区域之间的差异,得到文本检测模型的第一检测损失值,并基于样本目标区域和第二预测区域之间的差异,得到文本检测模型的第二检测损失值,从而可以基于第一检测权值、第二检测权值和预设分类权值对第一检测损失值、第二检测损失值和分类损失值的加权结果,调整文本检测模型的网络参数,且第二检测权值不大于第一检测权值,且第一检测权值不大于预设分类权值。上述方式,通过将第二检测权值不大于第一检测权值,且第一检测权值不大于预设分类权值,故能够在训练过程中,最关注分类检测的准确性,其次关注第一检测的准确性,最后关注第二检测的准确性,故能够在确保第二检测具备一定精度的情况下,提高第一检测的精度,并进一步提升分类检测的精度。

在一个具体的实施场景中,第一检测损失值可以基于dice loss损失函数得到,第二检测损失值可以基于交叉熵损失函数得到。具体计算过程在此不再赘述。

在另一个具体的实施场景中,为了便于描述,可以将第一检测损失值记为L

L=k

上述公式(1)中,k

在又一个具体的实施场景中,在训练过程中,还可以根据第一检测损失值、第二检测损失值、分类损失值的变化趋势,调整第一检测权值、第二检测权值、预设分类权值的大小。例如,在分类损失值L

区别于前述实施例,通过利用文本检测模型的特征提取网络对样本图像进行特征提取,得到样本图像的样本特征图,在此基础上,利用文本检测模型的目标检测网络对样本特征图进行目标检测,得到样本目标文本的预测目标区域,并利用文本检测模型的分类检测网络对预测目标区域进行分类检测,得到预测目标区域对应的样本目标文本的预测文本类型,从而基于样本目标区域和预测目标区域之间的差异,得到文本检测模型的检测损失值,并基于样本文本类型和预测文本类型之间的差异,得到文本检测模型的分类损失值,进而基于预设检测权值、预设分类权值对检测损失值、分类损失值的加权结果,调整文本检测模型的网络参数,且预设检测权值不大于预设分类权值,即在训练过程中,相较于目标检测,更关注于分类检测,故能够有利于在确保目标检测精度的情况下,进一步提升文本检测模型的分类检测精度。

请参阅图3,图3是本申请电子设备30一实施例的框架示意图。电子设备30包括相互耦接的存储器31和处理器32,存储器31中存储有程序指令,处理器32用于执行程序指令以实现上述任一文本识别方法实施例中的步骤。具体地,电子设备30可以包括但不限于:台式计算机、笔记本电脑、服务器、手机、平板电脑等等,在此不做限定。

具体而言,处理器32用于控制其自身以及存储器31以实现上述任一文本识别方法实施例中的步骤。处理器32还可以称为CPU(Central Processing Unit,中央处理单元)。处理器32可能是一种集成电路芯片,具有信号的处理能力。处理器32还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器32可以由集成电路芯片共同实现。

上述方案,获取待识别图像,且待识别图像内含有至少一个目标文本,通过对待识别图像进行特征提取,得到待识别图像的特征图,并利用特征图进行目标检测,得到分别与至少一个目标文本对应的目标区域,在此基础上,再识别目标区域中的目标文本和目标文本的文本类型,故在文本识别过程中,即使存在文本错位等问题,只要检测出目标文本对应的目标区域,后续即能基于目标区域识别得到目标文本及其文本类型,即文本识别的准确性并不依赖于特定的文本位置,因此能够有利于提高文本识别的准确性。

在一些公开实施例中,处理器32用于对目标区域进行分类检测,得到目标区域对应的目标文本的文本类型,并对目标区域进行文字识别,得到若干识别文字;处理器32用于基于文本类型,对若干识别文字进行校正,得到目标文本。

区别于前述实施例,在得到目标文本的文本类型以及目标区域中若干识别文字之后,基于文本类型对若干识别文字进行校正,得到目标文本,有利于进一步提高目标文本的准确性。

在一些公开实施例中,处理器32用于剔除若干识别文字中不属于文本类型的识别文字;和/或,处理器32用于在文本类型为地址的情况下,按照行政区划的顺序,利用预设地址信息库对若干识别文字进行校正;和/或,处理器32用于在文本类型为单位名称的情况下,搜索属于纳税人识别号的识别文字作为第一参考文字,并利用第一参考文字对若干识别文字进行校正;和/或,处理器32用于在文本类型为纳税人识别号的情况下,搜索属于单位名称的识别文字作为第二参考文字,并利用第二参考文字对若干识别文字进行校正;和/或,处理器32用于在文本类型为金额的情况下,搜索属于预设类型的识别文字作为第三参考文字,并利用第三参考文字对若干识别文字进行校正。

区别于前述实施例,通过删除若干识别文字中不属于文本类型的识别文字,能够有利于降低由于目标区域中目标文本周围噪声而发生误识别的概率,从而能够有利于提升目标文本的准确性;在文本类型为地址的情况下,按照行政区划的顺序,利用预设地址信息库对若干识别文字进行校正,能够有利于提高地址类文本的准确性,特别是能够提高存在生僻字的目标文本的准确性;在文本类型为单位名称的情况下,搜索属于纳税人识别号的识别文字作为第一参考文字,并利用第一参考文字对若干识别文字进行校正,能够有利于确保单位名称和纳税人识别号之间的一致性;在文本类型为纳税人识别号的情况下,搜索属于单位名称的识别文字作为第二参考文字,并利用第二参考文字对若干识别文字进行校正,能够有利于确保单位名称和纳税人识别号之间的一致性;在文本类型为金额的情况下,搜索属于预设类型的识别文字作为第三参考文字,并利用第三参考文字对若干识别文字进行校正,能够有利于确保与金额相关的识别文字之间保持一致性。

在一些公开实施例中,处理器32用于利用特征图进行第一检测,得到分别与至少一个目标文本对应的候选区域;处理器32用于分别对至少一个目标文本对应的候选区域进行第二检测,得到分别与至少一个目标文本对应的目标区域。

区别于前述实施例,通过先利用特征图检测出于至少一个目标文本对应的候选区域,再对候选区域进一步检测得到目标文本对应的目标区域,能够有利于在“粗检测”得到的候选区域的基础上进一步“细检测”出目标文本对应的目标区域,故既能够大大减少若直接对待识别图像全图进行“细检测”而引起的大量计算负荷,提高目标区域的检测效率,也能够通过“粗检测”与“细检测”的二阶段检测,提高检测精度。

在一些公开实施例中,处理器32用于同一目标文本对应的候选区域与目标区域之间满足预设关系,且预设关系包括:候选区域不小于目标区域。

区别于前述实施例,由于同一目标文本对应的候选区域不小于该目标文本对应的目标区域,故此能够有利于在“细检测”阶段提高目标区域的检测精度,从而能够在后续识别目标文本和文本类型的过程中,有利于降低图像噪声,提高识别准确性。

在一些公开实施例中,目标区域和文本类型是利用文本检测模型检测得到的,文本检测模型是利用样本图像训练得到的,且样本图像标注有样本目标文本的样本目标区域和样本文本类型。

区别于前述实施例,通过标注有样本目标文本的样本目标区域和样本文本类型的样本图像训练文本检测模型,并利用文本检测模型检测得到目标区域和文本类型,能够有利于提升目标区域和文本类型的准确性和检测效率。

在一些公开实施例中,处理器32用于利用文本检测模型的特征提取网络对样本图像进行特征提取,得到样本图像的样本特征图;处理器32用于利用文本检测模型的目标检测网络对样本特征图进行目标检测,得到样本目标文本的预测目标区域;以及,处理器32用于利用文本检测模型的分类检测网络对预测目标区域进行分类检测,得到预测目标区域对应的样本目标文本的预测文本类型;处理器32用于基于样本目标区域和预测目标区域之间的差异,得到文本检测模型的检测损失值,并基于样本文本类型和预测文本类型之间的差异,得到文本检测模型的分类损失值;处理器32用于基于预设检测权值、预设分类权值对检测损失值、分类损失值的加权结果,调整文本检测模型的网络参数;其中,预设检测权值不大于预设分类权值。

区别于前述实施例,通过利用文本检测模型的特征提取网络对样本图像进行特征提取,得到样本图像的样本特征图,在此基础上,利用文本检测模型的目标检测网络对样本特征图进行目标检测,得到样本目标文本的预测目标区域,并利用文本检测模型的分类检测网络对预测目标区域进行分类检测,得到预测目标区域对应的样本目标文本的预测文本类型,从而基于样本目标区域和预测目标区域之间的差异,得到文本检测模型的检测损失值,并基于样本文本类型和预测文本类型之间的差异,得到文本检测模型的分类损失值,进而基于预设检测权值、预设分类权值对检测损失值、分类损失值的加权结果,调整文本检测模型的网络参数,且预设检测权值不大于预设分类权值,即在训练过程中,相较于目标检测,更关注于分类检测,故能够有利于在确保目标检测精度的情况下,进一步提升文本检测模型的分类检测精度。

在一些公开实施例中,目标检测网络包括第一检测网络和第二检测网络,预设检测权值包括第一检测权值和第二检测权值,处理器32用于利用第一检测网络对样本特征图进行第一检测,得到样本目标文本的第一预测区域,并利用第二检测网络对第一预测区域进行第二检测,得到样本目标文本的第二预测区域;处理器32用于基于样本目标区域和第一预测区域之间的差异,得到文本检测模型的第一检测损失值,并基于样本目标区域和第二预测区域之间的差异,得到文本检测模型的第二检测损失值;处理器32用于基于第一检测权值、第二检测权值和预设分类权值对第一检测损失值、第二检测损失值和分类损失值的加权结果,调整文本检测模型的网络参数;其中,第二检测权值不大于第一检测权值,且第一检测权值不大于预设分类权值。

区别于前述实施例,通过将第二检测权值不大于第一检测权值,且第一检测权值不大于预设分类权值,故能够在训练过程中,最关注分类检测的准确性,其次关注第一检测的准确性,最后关注第二检测的准确性,故能够在确保第二检测具备一定精度的情况下,提高第一检测的精度,并进一步提升分类检测的精度。

在一些公开实施例中,文本检测模型是经过若干次训练得到的,处理器32用于利用特征提取网络对样本图像进行特征提取,得到多种分辨率的样本特征图,处理器32用于基于当前训练次数,选择一种分辨率的样本特征图作为候选特征图;处理器32用于利用目标检测网络对候选特征图进行目标检测,得到预测目标区域。

区别于前述实施例,通过利用特征提取网络对样本图像进行特征提取,得到多种分辨率的样本特征图,并在训练过程中基于当前训练次数,选择一种分辨率的样本特征图作为候选特征图,以利用目标检测网络对候选特征图进行目标检测,得到预测目标区域,能够支持对多尺度图像的检测,从而能够有利于提升诸如小目标等各种尺度目标检测的准确性。

在一些公开实施例中,处理器32用于获取初始图像,并对初始图像进行预处理,得到样本图像;其中,预处理包括以下至少一者:调整初始图像的分辨率,旋转初始图像,裁剪初始图像,对初始图像进行透视变换。

区别于前述实施例,通过对获取到的初始图像进行预处理得到样本图像,且预处理包括以下至少一者:调整初始图像的分辨率,旋转初始图像,裁剪初始图像,对初始图像进行透视变换,能够提高样本图像的丰富度,有利于在训练过程中尽可能地模拟现实场景中各种可能出现的情况,以提高训练的多样性,有利于提高文本检测模型的鲁棒性。

请参阅图4,图4是本申请存储装置40一实施例的框架示意图。存储装置40存储有能够被处理器运行的程序指令41,程序指令41用于实现上述任一文本识别方法实施例中的步骤。

上述方案,能够提高文本识别的准确性。

在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。

上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号