本发明涉及字符识别技术领域,特别是涉及一种字符识别方法、装置、计算机设备和计算机可读存储介质。
背景技术:
随着人工智能技术的快速发展,图像识别作为计算机视觉研究领域的分支之一,被广泛应用于各个领域。
ocr(opticalcharacterrecognition,光学字符识别)技术属于图像识别领域,ocr是从输入图像中提取特定字符的过程。cor应用在金融、司法、教育、医疗、公安、交通等众多行业时,可以从输入的特定图像中提取银行卡信息、身份证信息及车牌信息,等等。
但是,目前的ocr技术在进行字符识别时,存在字符识别的准确率较低的技术缺陷,这对ocr的应用造成了一定的限制。
技术实现要素:
基于此,有必要针对上述技术问题,提供一种能够提高字符识别的准确率的字符识别方法、装置、计算机设备和计算机可读存储介质。
第一方面,本申请实施例提供了一种字符识别方法,所述字符识别方法包括:
获取待识别图像;所述待识别图像包括待识别字符;
根据所述待识别图像及目标字符识别模型,获取所述待识别字符的字符识别结果;所述目标字符识别模型是基于原始图像样本以及与所述原始图像样本对应的多个对抗图像样本训练得到的,所述多个对抗图像样本是对所述原始图像样本采用预设的对抗算法进行处理得到的。
在其中一个实施例中,所述根据所述待识别图像及目标字符识别模型,获取所述待识别字符的字符识别结果,包括:
将所述待识别图像输入至去噪模型中,获取去噪后的待识别图像;
将所述去噪后的待识别图像输入至所述目标字符识别模型中,获取所述待识别字符的字符识别结果。
在其中一个实施例中,所述目标字符识别模型的训练过程包括:
获取原始字符识别模型;所述原始字符识别模型是基于原始样本集训练得到的,所述原始样本集包括多个原始图像样本;
获取所述原始图像样本对应的多个对抗图像样本,并将各所述原始图像样本分别对应的多个对抗图像样本均添加至所述原始样本集,得到目标样本集;
根据所述目标样本集训练所述原始字符识别模型,得到所述目标字符识别模型。
在其中一个实施例中,所述原始字符识别模型包括第一特征提取模型及预测模型,
所述根据所述目标样本集训练所述原始字符识别模型,得到所述目标字符识别模型,包括:
从所述目标样本集中提取目标对抗图像样本,以及与所述目标对抗图像样本对应的目标原始图像样本;
对所述目标对抗图像样本进行去噪,得到去噪后的目标对抗图像样本;
根据所述去噪后的目标对抗图像样本训练第二特征提取模型,并将所述目标原始图像样本输入至所述第一特征提取模型,直到所述第二特征提取模型的输出结果与所述第一特征提取模型的输出结果之间的差值小于预设阈值,则确定所述第二特征提取模型收敛;
将收敛后的第二特征提取模型与所述预测模型拼接,得到所述目标字符识别模型。
在其中一个实施例中,所述获取所述原始图像样本对应的多个对抗图像样本,包括:
根据预设约束条件和所述对抗算法,获取所述原始图像样本对应的多个第一对抗图像样本;所述约束条件用于约束所述原始图像样本与各所述第一对抗图像样本之间的空间距离;
获取各所述第一对抗图像样本的权重系数,并根据各所述第一对抗图像样本及各所述第一对抗图像样本的所述权重系数,获取所述原始图像样本对应的第二对抗图像样本;
对所述原始图像样本对应的所述多个第一对抗图像样本及所述第二对抗图像样本进行筛选,得到所述原始图像样本对应的多个对抗图像样本。
在其中一个实施例中,所述对所述原始图像样本对应的所述多个第一对抗图像样本及所述第二对抗图像样本进行筛选,得到所述原始图像样本对应的多个对抗图像样本,包括:
采用所述原始字符识别模型,对所述多个第一对抗图像样本及所述第二对抗图像样本分别进行字符识别;
从所述多个第一对抗图像样本及所述第二对抗图像样本中获取字符识别的结果为错误的多个对抗图像样本。
在其中一个实施例中,所述目标字符识别模型的训练过程,还包括:
获取原始测试集;所述原始测试集包括多个原始测试样本,所述原始测试集用于验证所述原始字符识别模型的预测准确性;
通过所述对抗算法,获取所述原始测试样本的多个对抗测试样本;
根据所述原始测试集和各所述对抗测试样本,验证所述目标字符识别模型的预测准确性。
第二方面,本申请实施例提供一种字符识别装置,所述装置包括:
第一获取模块,用于获取待识别图像;所述待识别图像包括待识别字符;
字符识别模块,用于根据所述待识别图像及目标字符识别模型,获取所述待识别字符的字符识别结果;所述目标字符识别模型是基于原始图像样本以及与所述原始图像样本对应的多个对抗图像样本训练得到的,所述多个对抗图像样本是对所述原始图像样本采用预设的对抗算法进行处理得到的。
第三方面,本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的方法的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的方法的步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过获取待识别图像;所述待识别图像包括待识别字符;根据所述待识别图像及目标字符识别模型,获取所述待识别字符的字符识别结果;所述目标字符识别模型是基于原始图像样本以及与所述原始图像样本对应的多个对抗图像样本训练得到的,所述多个对抗图像样本是对所述原始图像样本采用预设的对抗算法进行处理得到的;由此,基于原始图像样本以及与所述原始图像样本对应的多个对抗图像样本训练得到目标字符识别模型,其中,多个对抗图像样本是对所述原始图像样本采用预设的对抗算法进行处理得到的,提升了目标字符识别模型对不同图像样本的泛化能力,提升了采用目标字符识别模型对待识别图像中的待识别字符进行识别时的识别准确率。
附图说明
图1为一个实施例提供的字符识别方法的应用环境图;
图2为一个实施例提供的字符识别方法的流程图;
图3为一个实施例中步骤s200的细化步骤流程图;
图4为一个实施例中目标字符识别模型训练过程的流程图;
图5为一个实施例中步骤s320的细化步骤流程图;
图6为一个实施例中步骤s323的细化步骤流程图;
图7为一个实施例中步骤s330的细化步骤流程图;
图8一个实施例中目标字符识别模型训练过程的流程图;
图9为一个实施例提供的字符识别装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的字符识别方法,可以应用于如图1所示的计算机设备,该计算机设备可以是服务器,其内部结构图可以如图1所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存字符识别方法的数据。
本申请实施例提供的字符识别方法、装置、计算机设备和计算机可读存储介质,旨在解决传统技术中,采用字符识别技术对图像中的字符进行识别时,存在的字符识别准确率低的技术问题。下面将通过实施例并结合附图具体地对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体地实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
需要说明的是,本申请实施例提供的字符识别方法,其执行主体可以是字符识别装置,该字符识别装置可以通过软件、硬件或者软硬件结合的方式实现成为计算机设备的部分或者全部。下述方法实施例中,均以执行主体是计算机设备为例来进行说明。
请参考图2,其示出了本申请实施例提供的一种字符识别方法的流程图,如图2所示,本实施例字符识别方法可以包括以下步骤:
步骤s100,获取待识别图像。
其中,待识别图像包括待识别字符。
本实施例中,待识别图像可以是拍摄设备拍摄到的图像,也可以是计算机设备从视频流中抽取到的一帧图像。待识别图像包括待识别字符,例如,待识别图像可以是车辆号牌图像,待识别字符则为该车辆号牌图像中的车牌号;待识别图像还可以是银行卡图像,待识别字符则可以是该银行卡图像中的银行卡号,等等,本实施例对待识别图像不做具体限制。
计算机设备获取该待识别图像。
步骤s200,根据待识别图像及目标字符识别模型,获取待识别字符的字符识别结果。
其中,目标字符识别模型是基于原始图像样本以及与原始图像样本对应的多个对抗图像样本训练得到的,多个对抗图像样本是对原始图像样本采用预设的对抗算法进行处理得到的。
本实施例中,计算机设备采用对抗算法创建每个原始图像样本对应的多个对抗图像样本。对抗样本是指会使机器学习模型产生误判的样本。计算机设备根据原始样本集中的多个原始图像样本,以及创建的与每个原始图像样本对应的多个对抗图像样本,训练得到目标字符识别模型。
目前,在字符识别模型的训练过程中,传统技术仅使用原始样本集中的原始图像样本进行模型的训练,由于原始样本集中样本的丰富性不够,往往会导致训练的字符识别模型鲁棒性差;也有人为指导原始样本集扩增,例如,对原始样本集中的原始图像样本进行几何变换、加噪声、改变对比度和亮度等,人为指导的样本集扩增会导致原始样本集中原始图像样本的单一规律性太强,导致训练的字符识别模型易被攻击、泛化性能差。其中,模型被攻击是指对字符识别模型可以正确识别的一张图像进行微小改变,即可导致字符识别模型识别错误。
本实施例中,计算机设备采用对抗算法对每个原始图像样本创建多个对抗样本,再根据原始样本集中的多个原始图像样本以及与每个原始图像样本对应的多个对抗图像样本训练目标字符识别模型,增加了训练样本的丰富性,提升了训练的目标字符识别模型的鲁棒性、泛化性能及稳定性。
本实施例通过获取待识别图像;待识别图像包括待识别字符;根据待识别图像及目标字符识别模型,获取待识别字符的字符识别结果;目标字符识别模型是基于原始图像样本以及与原始图像样本对应的多个对抗图像样本训练得到的,多个对抗图像样本是对原始图像样本采用预设的对抗算法进行处理得到的;由此,基于原始图像样本以及与原始图像样本对应的多个对抗图像样本训练得到目标字符识别模型,其中,多个对抗图像样本是对原始图像样本采用预设的对抗算法进行处理得到的,提升了目标字符识别模型对不同图像样本的泛化能力,提升了采用目标字符识别模型对待识别图像中的待识别字符进行识别时的识别准确率。
在上述图2所示实施例的基础上,参见图3,图3为另一个实施例中,步骤s200的细化步骤流程图,本实施例字符识别方法中,步骤s200包括步骤s210和步骤s220,具体地:
步骤s210,将待识别图像输入至去噪模型中,获取去噪后的待识别图像。
本实施例中,计算机设备获取待识别图像后,将待识别图像输入至去噪模型中进行去噪,得到去噪后的待识别图像,本实施例去噪模型可以是常用的图像去噪模型,在此不做具体限制。
针对待识别图像可能被加入了噪声等干扰信息的情况,本实施例为了进一步提升目标字符识别模型的字符识别准确性,计算机设备采用去噪模型对待识别图像进行去噪,再将去噪后的待识别图像输入至目标字符识别模型中进行字符识别。
步骤s220,将去噪后的待识别图像输入至目标字符识别模型中,获取待识别字符的字符识别结果。
计算机设备将去噪后的待识别图像输入至目标字符识别模型中,得到待识别字符的字符识别结果。
本实施例通过获取待识别图像;将待识别图像输入至去噪模型中,获取去噪后的待识别图像;将去噪后的待识别图像输入至目标字符识别模型中,获取待识别字符的字符识别结果;由此,先采用去噪模型对待识别图像进行去噪,再采用目标字符识别模型对去噪后的待识别图像进行字符识别,得到待识别字符的字符识别结果,进一步提升了目标字符识别模型的字符识别准确率。
在上述图2所示实施例的基础上,在另一个实施例中,参见图4,图4为目标字符识别模型训练过程的流程图,如图4所示,目标字符识别模型训练过程包括步骤s310、步骤s320和步骤s330,具体地:
步骤s310,获取原始字符识别模型。
原始字符识别模型是基于原始样本集训练得到的,原始样本集包括多个原始图像样本。
原始字符识别模型是计算机设备采用传统的字符识别模型的训练方法训练得到的。具体地,计算机设备从样本库中获取原始样本集,对原始样本集中的每个原始图像样本通过人为指导进行扩增,具体是对原始图像样本进行几何变换、加噪声、改变对比度和亮度等操作。计算机设备将扩增后得到的多个样本添加至原始样本集中。计算机设备对原始样本集中的各样本添加对应的字符标签,并将原始样本集分成训练集和测试集。
计算机设备根据该训练集训练字符识别模型,并采用测试集对训练得到的字符识别模型进行预测准确性验证,将在该测试集上预测准确性最高的模型作为原始字符识别模型。
步骤s320,获取原始图像样本对应的多个对抗图像样本,并将各原始图像样本分别对应的多个对抗图像样本均添加至原始样本集,得到目标样本集。
本实施例中,计算机设备利用对抗算法,获取每个原始图像样本分别对应的多个对抗图像样本。具体地,对于原始样本集中的每个原始图像样本,计算机设备采用黑盒和白盒创建对抗样本方法中的各个方法,创建每个原始图像样本对应的多个对抗图像样本。
其中,利用黑盒创建对抗图像样本,是计算机设备不知道原始字符识别模型的结构和参数的情况下,仿照原始字符识别模型的输入和输出,训练一个与原始字符识别模型具有同样功能的本地模型,再通过白盒创建对抗图像样本的方式,创建该本地模型的对抗样本。利用白盒创建对抗图像样本,是计算机设备已知原始字符识别模型的结构和参数的情况下,固定原始字符识别模型中的参数,在预设约束条件内调整输入的原始图像样本的像素值,使得原始字符识别模型的输出由原来的正确识别结果,变成错误识别结果;计算机设备调整输入的原始图像样本的像素值所得到的图像,即为该原始图像样本对应的一个对抗图像样本,原始图像样本的像素值的调整策略是沿着原始字符识别模型梯度变化的方向,使得原始字符识别模型的损失函数变大。
作为一种实施方式,在一个实施例中,参见图5,图5为步骤s320的细化步骤流程图,如图5所示,步骤s320包括步骤s321、步骤s322、步骤s323和步骤s324,具体地:
步骤s321,根据预设约束条件和对抗算法,获取原始图像样本对应的多个第一对抗图像样本。
约束条件用于约束原始图像样本与各第一对抗图像样本之间的空间距离。
本实施例中,约束条件具体是计算机设备在对原始图像样本中的各点像素值进行修改以得到第一对抗图像样本时,第一对抗图像样本与原始图像样本中,各对应点之间的像素值差值的绝对值不能超过阈值t,约束条件如公式1所示:
|xadv(i,j)-xori(i,j)|<t,0<=i<=w,0<=j<=h公式1
其中,xadv(i,j)是第一对抗图像样本在坐标(i,j)处的像素值,xori(i,j)是原始图像样本在坐标(i,j)处的像素值,w和h分别为原始图像样本的宽和高。阈值t的设置值在此不做具体限制,例如,可以设置为15,等等。
步骤s322,获取各第一对抗图像样本的权重系数,并根据各第一对抗图像样本及各第一对抗图像样本的权重系数,获取原始图像样本对应的第二对抗图像样本。
计算机设备采用黑盒和白盒创建对抗样本方法中的各个方法,在约束条件的约束下创建每个原始图像样本对应的多个第一对抗图像样本,对于一个原始图像样本,每一种方法可以得到该原始图像样本对应的一个第一对抗图像样本。
本实施例中,计算机设备获取各第一对抗图像样本的权重系数,各第一对抗图像样本的权重系数可以是根据各第一对抗图像样本的效果来确定的,效果越好的第一对抗图像样本对应的权重系数值越大。其中,效果越好的第一对抗图像样本,是指能够让原始字符识别模型对该第一对抗图像样本的字符识别结果与真实值之间的误差越大。
计算机设备根据各第一对抗图像样本及各第一对抗图像样本的权重系数,获取原始图像样本对应的第二对抗图像样本。具体地,第二对抗图像样本可以根据公式2生成:
xnewadv(i,j)=w1x1(i,j)+w2x2(i,j)+...+wnxn(i,j),0<=i<=w,0<=j<=h
公式2
其中,n为计算机设备使用的创建对抗样本方法的个数,w1...wn为原始图像样本对应的各第一对抗图像样本的权重系数,xnewadv(i,j)为该原始图像样本对应的第二对抗图像样本在坐标(i,j)处的像素值,x1(i,j)...xn(i,j)分别是各第一对抗图像样本在坐标(i,j)处的像素值,w和h分别为原始图像样本的宽和高。
计算机设备将生成的第二对抗图像样本的各点的像素值与对应的原始图像样本中对应点的像素值进行对比,如果两个图像样本中对应两点之间的像素值差值的绝对值大于上述的阈值t,则对第二对抗图像样本中该点的像素值进行调整以使第二对抗图像样本与原始图像样本中,各对应点之间的像素值差值的绝对值不超过阈值t,具体地,调整规则参见公式3:
其中,xori(i,j)是原始图像样本在坐标(i,j)处的像素值,xnewadv(i,j)为该原始图像样本对应的第二对抗图像样本在坐标(i,j)处的像素值,xnewadv1(i,j)为根据公式3对xnewadv(i,j)调整后的第二对抗图像样本在坐标(i,j)处的像素值。
步骤s323,对原始图像样本对应的多个第一对抗图像样本及第二对抗图像样本进行筛选,得到原始图像样本对应的多个对抗图像样本。
计算机设备对原始图像样本对应的多个第一对抗图像样本及第二对抗图像样本进行筛选,得到原始图像样本对应的多个对抗图像样本。
参见图6,图6为步骤s323的细化步骤示意图,作为一种实施方式,步骤s323包括步骤s323a和步骤s323b,具体地:
步骤s323a,采用原始字符识别模型,对多个第一对抗图像样本及第二对抗图像样本分别进行字符识别。
步骤s323b,从多个第一对抗图像样本及第二对抗图像样本中获取字符识别的结果为错误的多个对抗图像样本。
计算机设备采用原始字符识别模型对各原始图像样本对应的多个第一对抗图像样本及第二对抗图像样本分别进行字符识别,将字符识别的结果为错误的多个对抗图像样本确定为原始图像样本最终对应的多个对抗图像样本。
步骤s324,将各原始图像样本分别对应的多个对抗图像样本均添加至原始样本集,得到目标样本集。
将每个原始图像样本最终对应的多个对抗图像样本均添加至原始样本集,得到目标样本集,根据目标样本集训练原始字符识别模型,得到目标字符识别模型,由此,通过对抗算法创建原始图像样本对应的多个对抗图像样本,增加了目标样本集中图像样本的丰富性,基于目标样本集训练得到目标字符识别模型,提升了目标字符识别模型的鲁棒性、泛化性能及字符识别准确性。
步骤s330,根据目标样本集训练原始字符识别模型,得到目标字符识别模型。
计算机设备根据目标样本集中的多个原始图像样本以及与每个原始图像样本对应的多个对抗图像样本,训练原始字符识别模型,得到目标字符识别模型。
在一个实施例中,原始字符识别模型包括第一特征提取模型及预测模型,作为一种实施方式,参见图7,图7为步骤s330的细化步骤流程图,如图7所示,步骤s330包括步骤s331、步骤s332、步骤s333和步骤s334,具体地:
步骤s331,从目标样本集中提取目标对抗图像样本,以及与目标对抗图像样本对应的目标原始图像样本。
目标样本集包括多个原始图像样本以及与每个原始图像样本对应的多个对抗图像样本,计算机设备从目标样本集中提取对抗图像样本,即目标对抗图像样本,并提取与目标对抗图像样本对应的原始图像样本,即目标原始图像样本。
步骤s332,对目标对抗图像样本进行去噪,得到去噪后的目标对抗图像样本。
计算机设备将目标对抗图像样本输入至去燥模型中进行去燥,得到去噪后的目标对抗图像样本。
步骤s333,根据去噪后的目标对抗图像样本训练第二特征提取模型,并将目标原始图像样本输入至第一特征提取模型,直到第二特征提取模型的输出结果与第一特征提取模型的输出结果之间的差值小于预设阈值,则确定第二特征提取模型收敛。
第二特征提取模型与第一特征提取模型的网络结构相同。对第二特征提取模型训练的目的,是对于对抗图像样本以及与该对抗图像样本对应的原始图像样本,使得第二特征提取模型与第一特征提取模型分别提取到的高层特征要足够接近,即,两个特征提取模型输出的特征值的差值要小于一个足够小的预设阈值。
计算机设备将第二特征提取模型的参数初始化后,将去噪后的目标对抗图像样本输入至第二特征提取模型,同时将目标原始图像样本输入至第一特征提取模型,对比两个特征提取模型的输出结果,根据两个特征提取模型的输出结果调整第二特征提取模型的模型参数,若第二特征提取模型未收敛,计算机设备则继续从目标样本集中提取目标对抗图像样本以及与目标对抗图像样本对应的目标原始图像样本,对目标对抗图像样本进行去噪,得到去噪后的目标对抗图像样本,将去噪后的目标对抗图像样本输入至参数调整后的第二特征提取模型,同时将目标原始图像样本输入至第一特征提取模型,根据两个特征提取模型的输出结果再次调整第二特征提取模型的模型参数,直到第二特征提取模型的输出结果与第一特征提取模型的输出结果之间的差值小于预设阈值,则确定第二特征提取模型收敛。计算机设备从目标样本集中提取目标对抗图像样本可以是目标样本集中的任一个对抗图像样本。
步骤s334,将收敛后的第二特征提取模型与预测模型拼接,得到目标字符识别模型。
将收敛后的第二特征提取模型与原始字符识别模型包括的预测模型拼接,得到目标字符识别模型。
通过从目标样本集中提取目标对抗图像样本,以及与目标对抗图像样本对应的目标原始图像样本;对目标对抗图像样本进行去噪,得到去噪后的目标对抗图像样本;根据去噪后的目标对抗图像样本训练第二特征提取模型,并将目标原始图像样本输入至第一特征提取模型,直到第二特征提取模型的输出结果与第一特征提取模型的输出结果之间的差值小于预设阈值,则确定第二特征提取模型收敛;将收敛后的第二特征提取模型与预测模型拼接,得到目标字符识别模型;提升了目标字符识别模型对各种对抗图像样本的识别准确性,提升了目标字符识别模型的鲁棒性、泛化性能及字符识别的准确率。
在上述图4所示实施例的基础上,参见图8,图8为另一个实施例提供的目标字符识别模型训练过程的流程图,本实施例中,目标字符识别模型的训练过程还包括步骤s410、步骤s420和步骤s430,具体地:
步骤s410,获取原始测试集。
原始测试集包括多个原始测试样本,原始测试集用于验证原始字符识别模型的预测准确性。即,将原始测试样本输入至训练的原始字符识别模型中以验证原始字符识别模型的预测准确性,即字符识别的准确性。
步骤s420,通过对抗算法,获取原始测试样本的多个对抗测试样本。
计算机设备采用对抗算法获取各原始测试样本分别对应的多个对抗测试样本,具体可以参见上述实施例中,计算机设备基于对抗算法获取原始图像样本对应的多个对抗图像样本的方法。
计算机设备获取各原始测试样本对应的多个对抗测试样本。
步骤s430,根据原始测试集和各对抗测试样本,验证目标字符识别模型的预测准确性。
将多个原始测试样本及各对抗测试样本输入至目标字符识别模型中,验证目标字符识别模型的预测准确性;若目标字符识别模型的预测准确性未达到预期,则将多个对抗测试样本加入目标样本集继续进行模型训练,直至目标字符识别模型的字符识别性能满足要求。由此,通过对目标字符识别模型的预测准确性进行验证,进一步提升了目标字符识别模型字符识别结果的准确性。
应该理解的是,虽然图2-8的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-8中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图9所示,提供了一种字符识别装置,包括:
第一获取模块10,用于获取待识别图像;所述待识别图像包括待识别字符;
字符识别模块20,用于根据所述待识别图像及目标字符识别模型,获取所述待识别字符的字符识别结果;所述目标字符识别模型是基于原始图像样本以及与所述原始图像样本对应的多个对抗图像样本训练得到的,所述多个对抗图像样本是对所述原始图像样本采用预设的对抗算法进行处理得到的。
可选地,所述字符识别模块20,包括:
第一获取单元,用于将所述待识别图像输入至去噪模型中,获取去噪后的待识别图像;
第二获取单元,用于将所述去噪后的待识别图像输入至所述目标字符识别模型中,获取所述待识别字符的字符识别结果。
可选地,所述装置还包括:
第二获取模块,用于获取原始字符识别模型;所述原始字符识别模型是基于原始样本集训练得到的,所述原始样本集包括多个原始图像样本;
第三获取模块,用于获取所述原始图像样本对应的多个对抗图像样本,并将各所述原始图像样本分别对应的多个对抗图像样本均添加至所述原始样本集,得到目标样本集;
训练模块,用于根据所述目标样本集训练所述原始字符识别模型,得到所述目标字符识别模型。
可选地,所述原始字符识别模型包括第一特征提取模型及预测模型,所述训练模块包括:
提取单元,用于从所述目标样本集中提取目标对抗图像样本,以及与所述目标对抗图像样本对应的目标原始图像样本;
去噪单元,用于对所述目标对抗图像样本进行去噪,得到去噪后的目标对抗图像样本;
训练单元,用于根据所述去噪后的目标对抗图像样本训练第二特征提取模型,并将所述目标原始图像样本输入至所述第一特征提取模型,直到所述第二特征提取模型的输出结果与所述第一特征提取模型的输出结果之间的差值小于预设阈值,则确定所述第二特征提取模型收敛;
拼接单元,用于将收敛后的第二特征提取模型与所述预测模型拼接,得到所述目标字符识别模型。
可选地,所述第三获取模块包括:
第三获取单元,用于根据预设约束条件和所述对抗算法,获取所述原始图像样本对应的多个第一对抗图像样本;所述约束条件用于约束所述原始图像样本与各所述第一对抗图像样本之间的空间距离;
第四获取单元,用于获取各所述第一对抗图像样本的权重系数,并根据各所述第一对抗图像样本及各所述第一对抗图像样本的所述权重系数,获取所述原始图像样本对应的第二对抗图像样本;
筛选单元,用于对所述原始图像样本对应的所述多个第一对抗图像样本及所述第二对抗图像样本进行筛选,得到所述原始图像样本对应的多个对抗图像样本。
可选地,所述筛选单元包括:
识别子单元,用于采用所述原始字符识别模型,对所述多个第一对抗图像样本及所述第二对抗图像样本分别进行字符识别;
筛选子单元,用于从所述多个第一对抗图像样本及所述第二对抗图像样本中获取字符识别的结果为错误的多个对抗图像样本。
可选地,所述装置还包括:
第四获取模块,用于获取原始测试集;所述原始测试集包括多个原始测试样本,所述原始测试集用于验证所述原始字符识别模型的预测准确性;
第五获取模块,用于通过所述对抗算法,获取所述原始测试样本的多个对抗测试样本;
验证模块,用于根据所述原始测试集和各所述对抗测试样本,验证所述目标字符识别模型的预测准确性。
本实施例提供的字符识别装置,可以执行上述字符识别方法实施例,其实现原理和技术效果类似,在此不再赘述。
关于字符识别装置的具体限定可以参见上文中对于字符识别方法的限定,在此不再赘述。上述字符识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,还提供了一种如图1所示的计算机设备,该计算机设备可以是服务器。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储字符识别数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种字符识别方法。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体地计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待识别图像;所述待识别图像包括待识别字符;
根据所述待识别图像及目标字符识别模型,获取所述待识别字符的字符识别结果;所述目标字符识别模型是基于原始图像样本以及与所述原始图像样本对应的多个对抗图像样本训练得到的,所述多个对抗图像样本是对所述原始图像样本采用预设的对抗算法进行处理得到的。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(ramb微秒)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待识别图像;所述待识别图像包括待识别字符;
根据所述待识别图像及目标字符识别模型,获取所述待识别字符的字符识别结果;所述目标字符识别模型是基于原始图像样本以及与所述原始图像样本对应的多个对抗图像样本训练得到的,所述多个对抗图像样本是对所述原始图像样本采用预设的对抗算法进行处理得到的。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。