一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

手写汉字的识别方法、装置、计算设备及存储介质与流程

2022-11-19 10:23:40 来源:中国专利 TAG:


1.本发明实施例涉及图像处理技术领域,特别涉及一种手写汉字的识别方法、装置、计算设备及存储介质。


背景技术:

2.随着深度学习技术的快速发展,在手写汉字识别领域也广泛采用了深度学习方法。
3.相关技术中,在手写汉字的识别网络中建立两个分支模块,并同时分别向两个分支模块输入印刷字体的模板图像和手写汉字图像,以使该手写汉字识别网络的两个分支模块同时学习模板图像和手写汉字图像的特征,进而生成手写汉字的识别模型。然而,由于反馈机制的存在,两个分支模块在学习特征的训练过程中会互相影响,进而加大了手写汉字的识别网络的学习难度,从而限制了生成的识别模型对手写汉字的识别准确度。


技术实现要素:

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.将所述目标模板图像输入至所述手写汉字识别模型的第一分支模块中。
35.第二方面,本发明实施例还提供了一种手写汉字的识别装置,包括:
36.获取单元,用于获取待识别的手写汉字图像;
37.输入单元,用于将所述手写汉字图像输入至预先训练生成的手写汉字识别模型中;其中,所述手写汉字识别模型基于预设的第一神经网络训练得到,所述预设的第一神经网络包括第一分支模块、第二分支模块和相似度计算模块;所述第一分支模块的网络参数基于预设的第二神经网络训练得到;
38.输出单元,用于输出所述相似度计算模块的识别结果。
39.第三方面,本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
40.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
41.本发明实施例提供了一种手写汉字的识别方法、装置、计算设备及存储介质,将待识别的手写汉字图像输入至预先训练生成的手写汉字识别模型中,其中,手写汉字识别模型是利用预设的第一神经网络通过训练生成的,第一神经网络包括第一分支模块、第二分支模块和相似度计算模块,在生成手写汉字识别模型之前,第一神经网络的第一分支模块已经生成了网络参数,其中第一分支模块的生成了网络参数是基于预设的第二神经网络训练得到的。因此,第一神经网络的第一分支模块与第二分支模块不是同时进行训练的,这样有利于降低第一神经网络的学习难度,进而可以提高生成的手写汉字识别模型的识别准确度。
附图说明
42.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
43.图1是本发明一实施例提供的一种手写汉字的识别方法流程图;
44.图2是本发明一实施例提供的一种第二神经网络的结构示意图;
45.图3是本发明一实施例提供的一种残差模块的结构示意图;
46.图4是本发明一实施例提供的一种第一神经网络的结构示意图;
47.图5是本发明一实施例提供的一种电子设备的硬件架构图;
48.图6是本发明一实施例提供的一种手写汉字的识别装置结构图。
具体实施方式
49.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
50.如前所述,在相关技术中,通常在手写汉字的识别网络中建立两个分支模块,并同
时分别向两个分支模块输入印刷字体的目标模板图像和目标手写汉字图像,以使该手写汉字识别网络的两个分支模块同时学习目标模板图像和目标手写汉字图像的特征,进而生成手写汉字的识别模型。然而,由于反馈机制的存在,两个分支模块在学习特征的训练过程中会互相影响,进而加大了手写汉字的识别网络的学习难度,从而限制了生成的识别模型对手写汉字的识别准确度。
51.为了解决上述技术问题,发明人可以考虑对未生成手写汉字识别模型之前的第一神经网络的两个分支模块中的网络参数分开进行训练,利用预设的第二神经网络训练之后得到的网络参数,来确定第一分支模块的网络参数,然后再训练第一神经网络的第二分支模块的网络参数,以此来降低网络学习的复杂度,加速第一神经网络的学习过程,提升第一神经网络的稳定性和泛化性能,进而提高手写汉字识别模型的分类识别能力。
52.下面描述以上构思的具体实现方式。
53.请参考图1,本发明实施例提供了一种手写汉字的识别方法,该方法包括:
54.步骤100:获取待识别的手写汉字图像;
55.步骤102:将手写汉字图像输入至预先训练生成的手写汉字识别模型中;其中,手写汉字识别模型基于预设的第一神经网络训练得到,预设的第一神经网络包括第一分支模块、第二分支模块和相似度计算模块;第一分支模块的网络参数基于预设的第二神经网络训练得到;
56.步骤104:输出相似度计算模块的识别结果。
57.本发明实施例中,将待识别的手写汉字图像输入至预先训练生成的手写汉字识别模型中,其中,手写汉字识别模型是利用预设的第一神经网络通过训练生成的,第一神经网络包括第一分支模块、第二分支模块和相似度计算模块,在生成手写汉字识别模型之前,第一神经网络的第一分支模块已经生成了网络参数,其中第一分支模块的生成了网络参数是基于预设的第二神经网络训练得到的。因此,第一神经网络的第一分支模块与第二分支模块不是同时进行训练的,这样有利于降低第一神经网络的学习难度,进而可以提高生成的手写汉字识别模型的识别准确度。
58.下面描述图1所示的各个步骤的执行方式。
59.针对步骤100:
60.需要说明的是,本步骤中的待识别的手写汉字图像可以是学生的日常作业中的手写汉字,也可以是学生考试试卷中的手写汉字,具体可以根据实际应用场景而定,在此不做具体限定。
61.针对步骤102:
62.接下来,对手写汉字识别模型的构建过程进行描述。
63.在一些实施方式中,手写汉字识别模型的训练方式,可以包括如下步骤s1-s4:
64.步骤s1,生成多个训练样本;其中,训练样本包括由印刷体汉字生成的目标模板图像和目标手写汉字图像;
65.步骤s2,利用多个目标模板图像对预设的第二神经网络进行训练,以得到目标模板图像识别模型;
66.步骤s3,将目标模板图像识别模型中的网络参数输入到预设的第一神经网络的第一分支模块中,并固定第一分支模块的网络参数;其中,第二神经网络的网络结构是基于第
一分支模块的网络结构确定的;
67.步骤s4,利用多个目标模板图像和目标手写汉字图像对第一神经网络的第二分支模块和相似度计算模块进行训练,得到手写汉字识别模型;其中,第一分支模块、第二支模块的输出端分别与相似度计算模块连接。
68.在本发明实施例中,可以将生成的多个目标模板图像输入到预设的第二神经网络,可以训练生成目标模板图像识别模型;然后根据目标模板图像识别模型中的网络参数固定预设的第一神经网络的第一分支模块的网络参数,那么在后续对第一神经网络的第二分支模块和相似度计算模块进行训练时,第一分支模块的网络参数不会再变动,在利用多个目标模板图像和目标手写汉字图像对第一神经网络的第二分支模块和相似度计算模块进行训练后,可以得到手写汉字识别模型,因此,第一神经网络的第一分支模块与第二分支模块不是同时进行训练的,可以降低第一神经网络的学习难度,进而可以提高生成的手写汉字识别模型的识别准确度。
69.需要说明的是,可以先利用多个目标模板图像对预设的第二神经网络进行训练,然后根据训练结果确定第一分支模块的网络参数,也可以先利用多个目标手写汉字图像对预设的第二神经网络进行训练,然后根据训练结果确定第二分支模块的网络参数,相应地,第二神经网络的网络结构需要基于对应的分支模块的网络结构进行设置,故在此不对第一分支模块和第二分支模块网络参数的训练顺序进行具体限定。
70.在一些实施方式中,步骤s1可以包括:
71.确定汉字集合和多个字体种类;
72.根据汉字集合和字体种类,生成汉字集合中每个汉字对应的不同字体种类的原始目标模板图像;
73.根据汉字集合,生成汉字集合中每个汉字的原始目标手写汉字图像;
74.对每一个原始目标模板图像和原始目标手写汉字图像进行处理,生成目标模板图像和目标手写汉字图像。
75.在本发明实施例中,可以确定汉字集合为国标编码中使用频率为一级和二级的汉字,由于不同人的手写汉字可能偏向不同的字体,因此可以确定多种字体种类,例如,宋体、黑体等字体。举例来说,若汉字集合中有n个汉字,字体种类为m个时,每个汉字可以生成m个字体种类的原始目标模板图像,那么生成的原始目标模板图像的数量为n*m个。并且,根据汉字集合,生成汉字集合中每一个汉字的原始目标手写汉字图像。为了提高训练得到的手写汉字识别模型的泛化性能,在本发明实施例中,对每一个原始目标模板图像或原始目标手写汉字图像进行随机腐蚀操作、随机膨胀操作、添加随机噪点、随机局部扭曲操作、随机缩放操作、随机旋转变换、随机错切变换和随机透视变换中的一种或多种,以生成该原始目标模板图像或该原始目标手写汉字图像对应的多个目标模板图像或目标手写汉字图像。
76.其中,随机腐蚀操作是对目标模板图像或目标手写汉字图像随机取n个点,然后随机生成操作半径,对操作半径内的每个像素点,按照一定概率将前景值改为背景值;随机膨胀操作是将操作半径内相邻像素点至少有一个为前景值的背景值像素点按照一定概率改为前景值;添加随机噪点是将操作半径内相邻像素点中均为背景值的背景值像素点按照一定概率改为前景值;随机缩放操作是将目标模板图像或目标手写汉字图像的宽和高按随机比例进行缩放;随机旋转变换是将图像随机旋转一定角度;随机错切变换是将图像沿着x轴
或y轴随机错切一定距离;随机透视变换是将图像延x轴或y轴方向随机延z轴方向透视投影;随机局部扭曲操作是将扭曲前图像中坐标为f(x,y)的像素点的像素值按照如下公式映射到扭曲后图像中坐标为g(u,v)的像素点:
77.u=h
x
(x,y)=wn(a1,b1(x)) k1y c178.v=hy(x,y)=wn(a2,b2(y)) k2x c279.其中a1,a2,k1,k2,c1,c2为常量,b1和b2分别为x坐标映射函数和y坐标映射函数,在本实施例中,b1为x坐标与该扭曲前图像宽度的商值,b2为y坐标与该扭曲前图像高度的商值。其中,wn为非线性变换函数,如下所示w1函数和w2函数为wn的两种实施方式:
[0080][0081][0082]
综上,在本发明实施例中,由于不同人书写的汉字可能和不同字体的印刷体汉字相似,因此采用多种常用字体生成目标模板图像,与现有技术中仅采用某一种字体生成目标模板图像相比,采用多种字体生成目标模板图像,能够降低网络学习特征的难度,进而可以提高生成的手写汉字识别模型的识别准确度;并且,对每一个原始目标模板图像或原始目标手写汉字图像进行随机腐蚀操作、随机膨胀操作、添加随机噪点、随机局部扭曲操作、随机缩放操作、随机旋转变换、随机错切变换和随机透视变换中的一种或多种,可以生成大量的训练样本,可以有效提高手写汉字识别模型的泛化性能,进而提高生成的手写汉字识别模型的识别准确度。
[0083]
在一些实施方式中,第二神经网络包括特征提取模块和分类模块;其中,特征提取模块包括卷积层、多个残差模块和池化层,分类模块包括多个全连接层;卷积层、多个残差模块、池化层和多个全连接层依次串联连接。
[0084]
在一些实施方式中,步骤s2,可以包括:
[0085]
针对每一个目标模板图像,均执行:
[0086]
将该目标模板图像输入至特征提取模块,以对该目标模板图像进行特征提取,得到该目标模板图像的特征向量;
[0087]
将特征向量输入至分类模块,以对该目标模板图像中的汉字进行分类,得到对应的分类结果;
[0088]
根据分类结果和该目标模板图像中预先生成的类型标签,调整第二神经网络的网络参数,直至得到符合预期的目标模板图像识别模型。
[0089]
在本发明实施例中,如图2所示,为预设的第二神经网络,其中,conv0表示卷积层,m1-m7分别为7个残差模块,mp为池化层,即特征提取模块特征提取模块包括conv0、m1-m7、mp;fc1和fc2分别为两个全连接层,即分类模块。
[0090]
如图3所示,分别为m1-m7残差模块的网络结构,在本发明实施例中,每个残差模块的网络结构均相同,其中,conv1、conv2、conv3分别为卷积层,bn为批归一化层,relu为激活函数。
[0091]
举例来说,目标模板图像的尺寸为64*64,且通道数为1,首先将该目标模板图像输
入到conv0,进行卷积核为3*3,通道数为32,padding大小为1,步长为1的卷积操作,然后进行relu激活操作;接着从conv0依次输入m1-m7,在实施例中,目标模板图像在m1输出通道数为64,m2和m3的输出通道数为128,m4和m5的输出通道数为256,m6和m7的输出通道数为512,并且在m2,m4,m6模块之后,分别连接着一个最大池化层(图中未标出),这三个最大池化层的大小和步长均为2,m7输出该目标模板图像对应的512*8*8的特征张量;然后,将512*8*8的特征张量输入mp,其中mp是全局最大池化层,将512*8*8的特征张量投影为一个512*1*1的特征向量。至此可以完成对目标模板图像的特征提取,得到该目标模板图像的512*1*1的特征向量。
[0092]
接着,将该目标模板图像的512*1*1的特征向量依次输入至分类模块中的fc1和fc2,可以得到该目标模板图像中印刷体汉字的分类结果。在本实施例中,fc1的节点数为10000,fc2的节点数为6763,其中fc2的节点数与汉字集合中的汉字数量相等。
[0093]
将步骤s1生成的所有目标模板图像输入至预设的第二神经网络,其中,每个目标模板图像均含有图像中汉字的类型标签,通过根据fc2输出的每一个目标模板图像中印刷体汉字的分类结果和每一个目标模板图像对应的类型标签,不断调整第二神经网络的网络参数,可以得到符合预期的目标模板图像识别模型。
[0094]
在一些实施方式中,在步骤s3中的第一分支模块的网络结构与特征提取模块的网络结构相同;
[0095]
步骤“将目标模板图像识别模型中的网络参数输入到预设的第一神经网络的第一分支模块中”,可以包括:
[0096]
将目标模板图像识别模型中特征提取模块的网络参数输入到预设的第一神经网络的第一分支模块中。
[0097]
在本发明实施例中,由于步骤s3中的第一分支模块的网络结构与第二神经网络得特征提取模块的网络结构相同,因此可以将目标模板图像识别模型中特征提取模块的网络参数取出,即图2中conv0、m1-m7、mp的网络参数,然后输入到预设的第一神经网络的第一分支模块中,并固定第一分支模块的网络参数,以此来单独完成对第一神经网络的第一分支模块的网络参数的训练,以降低第一分支模块的学习难度,进而可以提高生成的手写汉字识别模型的识别准确度。
[0098]
在一些实施方式中,步骤s4,可以包括:
[0099]
针对每一个目标手写汉字图像,均执行:
[0100]
将该目标手写汉字图像输入至第一神经网络的第二分支模块,以对该目标手写汉字图像进行特征提取,得到该目标手写汉字图像的特征向量;
[0101]
将该目标手写汉字图像的特征向量输入至相似度计算模块,分别计算该目标手写汉字图像的特征向量与预先储存的所有目标模板图像的特征向量进行相似度计算,得到对应的识别结果;目标模板图像的特征向量由目标模板图像输入至第一分支模块得到;
[0102]
根据识别结果和该目标手写汉字图像中预先生成的类型标签,调整第二分支模块和相似度计算模块的网络参数,直至得到符合预期的手写汉字识别模型。
[0103]
在本发明实施例中,可以预先将所有目标模板图像输入至固定了网络参数的第一分支模块中,利用第一神经网络的第一分支模块可以输出所有目标模板图像对应的特征向量,并将所有目标模板图像对应的特征向量均储存起来;然后,将每一个目标手写汉字图像
输入至第一神经网络的第二分支模块,可以得到每一个目标手写汉字图像的特征向量,通过将每一个目标手写汉字图像的特征向量分别与储存起来的每一个目标模板图像对应的特征向量进行相似度计算,可以得到每一个目标手写汉字图像的识别结果,根据每一个目标手写汉字图像的识别结果和每一个目标手写汉字图像预先生成的类型标签,调整第二分支模块和相似度计算模块的网络参数,可以得到符合预期的手写汉字识别模型。由于,第一神经网络的第一分支模块与第二分支模块不是同时进行训练的,可以降低第一分支模块与第二分支模块的学习难度,进而可以提高生成的手写汉字识别模型的识别准确度。
[0104]
需要说明的是,可以预先将所有目标模板图像输入至固定了网络参数的第一分支模块中,然后储存第一分支模块输出的所有目标模板图像对应的特征向量;也可以在将目标手写汉字图像输入至第一神经网络的第二分支模块中时,同时将目标模板图像输入至第一分支模块,但第一分支模块的网络参数依然不会再改变,即生成所有目标模板图像对应的特征向量可以与第二分支模块和相似度计算模块的训练过程同时进行。
[0105]
如图4所示,为本发明一个实施例提供的第一神经网络的网络结构。图中,虚线框中为第一分支模块,与图2所示的第二神经网络的特征提取模块网络结构相同,图4中输入手写图像的分支为第二分支模块,包括conv0

、m1
′‑
m7

、mp

,两个全连接层fc3和fc4为相似度计算模块。本实施例中,第二分支模块的网络结构与第一分支模块、第二神经网络的特征提取模块的网络结构相同。
[0106]
因此,通过将所有目标手写汉字图像输入至第二分支模块,可以对目标手写汉字图像进行特征提取,可以得到每一个目标手写汉字图像对应的512*1*1的特征向量。然后,将第一分支模块和第二分支模块输出的两个512*1*1的特征向量连接为一个1024*1*1的组合向量,将该组合向量输入fc3和fc4,最终得到两个向量的相似度度量值,本发明将fc3和fc4记为求向量相似度的sim函数。
[0107]
综上,为手写汉字识别模型的构建过程。
[0108]
在本步骤102中,将待识别的手写汉字图像输入到利用上述方法构建的手写汉字识别模型的第二分支模块中,可以得到该手写汉字图像的特征向量,然后分别计算该手写汉字图像的特征向量与预先储存的每一个目标模板图像的特征向量的相似度,将相似度最大的目标模板图像的标签类别作为相似度计算模块的输出。
[0109]
需要说明的是,在完成手写汉字识别模型的构建后,在识别阶段,可以预先储存的每一个目标模板图像的特征向量,也可以预先储存的每一个原始目标模板图像的特征向量,因为原始目标模板图像比目标模板图像的数量少,因此预先储存每一个原始目标模板图像的特征向量,可以加快对待识别的手写汉字图像的识别速度。
[0110]
另外,在一些实施方式中,若步骤100中待识别的手写汉字图像中的汉字不属于步骤102中的汉字集合,那么步骤102之前,还包括:
[0111]
生成手写汉字图像中的汉字对应的目标模板图像;
[0112]
将目标模板图像输入至手写汉字识别模型的第一分支模块中。
[0113]
在本实施例中,当手写汉字识别模型的训练过程中没有学习待识别的手写汉字图像,可以针对待识别的手写汉字图像中的汉字生成目标模板图像,然后直接将目标模板图像输入至手写汉字识别模型的第一分支模块中,就可以生成该目标模板图像的特征向量,那么之后,将待识别的手写汉字图像输入至手写汉字识别模型的第二分支模块中,就可以
得到对应的识别结果。因此,本方案可以实现开放集字符的手写汉字识别。
[0114]
需要说明的是,现有技术中的深度学习方法主要应用于限定类别的闭集字符识别问题,对于闭集之外的字符则无法进行识别。在生成识别模型后,想要再学习其他汉字字符,则需要从重新学习所有训练样本,以重新生成新的识别模型。
[0115]
针对步骤104:
[0116]
将待识别的手写汉字图像,与多个字体对应的目标模板图像进行相似度计算,取相似度最大的汉字类别作为最终的识别结果。
[0117]
综上,本方案采用多种常用字体对应的文字图像作为模板,并且先利用第二神经网络对目标模板图像特征进行学习,然后利用第二神经网络的网络参数确定第一神经网络的第一分支模块的网络参数,并且固定第一分支模块的网络参数,再训练手第二分支模块,两个分支模块分开训练能够降低网络学习特征表示的难度,有利于降低网络学习的复杂度,加速第一神经网络的学习过程,提升网络的稳定性和泛化性能,进而提高生成的手写汉字识别模型的识别准确度。
[0118]
如图5、图6所示,本发明实施例提供了一种手写汉字的识别装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图5所示,为本发明实施例提供的一种手写汉字的识别装置所在计算设备的一种硬件架构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的计算设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图6所示,作为一个逻辑意义上的装置,是通过其所在计算设备的cpu将非易失性存储器中对应的计算机程序读取到内存中运行形成的。
[0119]
如图6所示,本实施例提供的一种手写汉字的识别装置,包括:
[0120]
获取单元601,用于获取待识别的手写汉字图像;
[0121]
输入单元602,用于将手写汉字图像输入至预先训练生成的手写汉字识别模型中;其中,手写汉字识别模型基于预设的第一神经网络训练得到,预设的第一神经网络包括第一分支模块、第二分支模块和相似度计算模块;第一分支模块的网络参数基于预设的第二神经网络训练得到;
[0122]
输出单元603,用于输出相似度计算模块的识别结果。
[0123]
在本发明的一个实施例中,输入单元602中,手写汉字识别模型的训练方式,包括:
[0124]
生成多个训练样本;其中,训练样本包括由印刷体汉字生成的目标模板图像和目标手写汉字图像;
[0125]
利用多个目标模板图像对预设的第二神经网络进行训练,以得到目标模板图像识别模型;
[0126]
将目标模板图像识别模型中的网络参数输入到预设的第一神经网络的第一分支模块中,并固定第一分支模块的网络参数;其中,第二神经网络的网络结构是基于第一分支模块的网络结构确定的;
[0127]
利用多个目标模板图像和目标手写汉字图像对第一神经网络的第二分支模块和相似度计算模块进行训练,得到手写汉字识别模型;其中,第一分支模块、第二支模块的输出端分别与相似度计算模块连接。
[0128]
在本发明的一个实施例中,输入单元602中,在执行生成多个训练样本时,用于执
行:
[0129]
确定汉字集合和多个字体种类;
[0130]
根据汉字集合和字体种类,生成汉字集合中每个汉字对应的不同字体种类的原始目标模板图像;
[0131]
根据汉字集合,生成汉字集合中每个汉字的原始目标手写汉字图像;
[0132]
对每一个原始目标模板图像和原始目标手写汉字图像进行处理,生成目标模板图像和目标手写汉字图像。
[0133]
在本发明的一个实施例中,输入单元602中,第二神经网络包括特征提取模块和分类模块;其中,特征提取模块包括卷积层、多个残差模块和池化层,分类模块包括多个全连接层;卷积层、多个残差模块、池化层和多个全连接层依次串联连接;
[0134]
利用多个目标模板图像对预设的第二神经网络进行训练,以得到目标模板图像识别模型,包括:
[0135]
针对每一个目标模板图像,均执行:
[0136]
将该目标模板图像输入至特征提取模块,以对该目标模板图像进行特征提取,得到该目标模板图像的特征向量;
[0137]
将特征向量输入至分类模块,以对该目标模板图像中的汉字进行分类,得到对应的分类结果;
[0138]
根据分类结果和该目标模板图像中预先生成的类型标签,调整第二神经网络的网络参数,直至得到符合预期的目标模板图像识别模型。
[0139]
在本发明的一个实施例中,输入单元602中,第一分支模块的网络结构与特征提取模块的网络结构相同;
[0140]
将目标模板图像识别模型中的网络参数输入到预设的第一神经网络的第一分支模块中,包括:将目标模板图像识别模型中特征提取模块的网络参数输入到预设的第一神经网络的第一分支模块中。
[0141]
在本发明的一个实施例中,输入单元602中,在执行利用多个目标模板图像和目标手写汉字图像对第一神经网络的第二分支模块和相似度计算模块进行训练,得到手写汉字识别模型时,用于执行:
[0142]
针对每一个目标手写汉字图像,均执行:
[0143]
将该目标手写汉字图像输入至第一神经网络的第二分支模块,以对该目标手写汉字图像进行特征提取,得到该目标手写汉字图像的特征向量;
[0144]
将该目标手写汉字图像的特征向量输入至相似度计算模块,分别计算该目标手写汉字图像的特征向量与预先储存的所有目标模板图像的特征向量进行相似度计算,得到对应的识别结果;目标模板图像的特征向量由目标模板图像输入至第一分支模块得到;
[0145]
根据识别结果和该目标手写汉字图像中预先生成的类型标签,调整第二分支模块和相似度计算模块的网络参数,直至得到符合预期的手写汉字识别模型。
[0146]
在本发明的一个实施例中,输入单元602中,若待识别的手写汉字图像中的汉字不属于汉字集合,在将手写汉字图像输入至预先训练生成的手写汉字识别模型中之前,还用于执行:
[0147]
生成手写汉字图像中的汉字对应的目标模板图像;
[0148]
将目标模板图像输入至手写汉字识别模型的第一分支模块中。
[0149]
可以理解的是,本发明实施例示意的结构并不构成对一种手写汉字的识别装置的具体限定。在本发明的另一些实施例中,一种手写汉字的识别装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
[0150]
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0151]
本发明实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种手写汉字的识别方法。
[0152]
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种手写汉字的识别方法。
[0153]
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
[0154]
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
[0155]
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
[0156]
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
[0157]
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
[0158]
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
…”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
[0159]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。
[0160]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献