您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 造纸印刷 > 【CN109902751A】一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法【专利】
(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号(43)申请公布日(21)申请号201910160157.3(22)申请日2019.03.04(71)申请人福州大学地址350108福建省福州市闽侯县上街镇福州大学城学院路2号福州大学新区(72)发明人吴林煌 杨绣郡 陈志峰 (74)专利代理机构福州元创专利商标代理有限公司35100代理人蔡学俊(51)Int.Cl.G06K9/62(2006.01)G06K9/38(2006.01)G06N3/04(2006.01)G06N3/08(2006.01)(54)发明名称一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法(57)摘要本发明涉及一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,首先获取带有全字半字标签的分割好的灰度图,接着将标签筛选分类,若标签为0则进行半字识别,若标签为1则进行全字识别;最后按照图像输入的顺序,依次输出灰度图的识别结果。本发明识别正确率高,为表盘数字字符半字全字的分开识别提供了新思路,并融合卷积神经网络和半字模板匹配,可广泛应用于需要进行数字字符识别的领域。权利要求书2页说明书10页附图6页CN109902751A2019.06.18CN109902751A1.一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,其特征在于:包括以下步骤:步骤S1:获取带有全字半字标签的分割好的灰度图,并输入到步骤S2中;其中,标签0代表半字,标签1代表全字;步骤S2:将标签筛选分类,若标签为0则进入步骤S4,若标签为1则进入步骤S3;步骤S3:训练一个卷积神经网络,将标签为1的全字灰度图输入到训练好的神经网络中识别,得到全字识别结果;步骤S4:将标签为0的半字灰度图二值化后,保留两个最大连通域,得到处理后的待识别半字二值图像M2;步骤S5:将步骤S4得到的处理后的图像与半字模板进行基于像素的模板匹配,得到半字识别结果;步骤S6:按照步骤S1中图像输入的顺序,依次输出灰度图的识别结果。2.根据权利要求1所述的一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,其特征在于:步骤S3具体包括以下步骤:步骤S31:输入测试集图片和标签以及训练集图片和标签,其中全字共有0至9共10个字符,用10个独热码表示;步骤S32:用TensorFlow训练一个前向传输的卷积神经网络;步骤S33:保存该卷积神经网络的各项权重值;步骤S34:将输入的全字灰度图输入到训练好的卷积神经网络中进行自动识别,得到识别结果。3.根据权利要求1所述的一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,其特征在于:步骤S4具体包括以下步骤:步骤S41:将半字灰度图M进行二值化处理,得到初步待识别半字二值化图像M1;步骤S42:将M1用八领域的方式找出连通域,并以自然数标记连通域;步骤S43:计算步骤S42标记的相同自然数的个数,比较得到两个最大个数的自然数,将这两个自然数所在的连通域的像素灰度值改为1,其余位置的像素灰度值改为0,得到保留最大连通域后的待识别半字二值化图像M2。4.根据权利要求3所述的一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,其特征在于:步骤S41具体包括以下步骤:步骤S411:设定一个t×t大小的候选框作为局部二值化每次选取像素的滑动窗口,设定两个初始阈值:T、S;其中T为当窗口只存在背景或目标时判断是否是目标的阈值;S为判断该滑动窗口中是否背景和目标同时存在的阈值;记f(x,y)为图像M在第x行y列的像素灰度值;记f′(x,y)为经过局部二值化处理后的图像在第x行y列的像素的值;步骤S412:用t×t的候选框以步长1遍历所述灰度图像M;令T2(x,y)=max-min,其中,max为灰度图像在该候选框范围下的像素点灰度值最大值,min为灰度图像在该候选框范围下的像素点灰度值最小值,T1(x,y)表示该候选框内灰度值最大值与灰度值最小值的均值,T2(x,y)表示该候选框内灰度值最大值与灰度值最小值的差值;步骤S413:比较T2(x,y)与S的大小;若T2(x,y)S,则说明候选框中灰色像素值波动范围权 利 要 求 书1/2页2CN109902751A2大,目标和背景同时存在,则将灰度图像上该像素点的灰度值f(x,y)与T1(x,y)对比,若f(x,y)T1(x,y),则令f′(x,y)=1;若f(x,y)T1(x,y),则令f′(x,y)=0;若T2(x,y)S,则说明候选框中灰色像素值波动范围小,只存在背景或只存在目标,则将所述灰度图像上该像素点的灰度值f(x,y)与阈值T值相比;若f(x,y)T,则f′(x,y)=1;若f(x,y)T,则f′(x,y)=0,得到初步待识别半字二值化图像M1。5.根据权利要求1所述的一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,其特征在于:步骤S5具体包括以下步骤:步骤S51:制作半字模板,个数为z;步骤S52:将待识别半字二值图像M2中各个像素点的值按照其各自所在的位置构成一个大小为m×n的矩阵A,其中m为图像的行数,n为图像的列数;步骤S53:将半字模板二值图中各个像素点的值按照其各自所在的位置构成一个m×n的矩阵C;步骤S54:将所述矩阵A和所述矩阵C两个矩阵逐点进行相减取绝对值操作,然后将所有的值相加,记为h;步骤S55:重复执行步骤S53-S54z次,找到最小的h值hmin,即半字模板与待识别半字的最小汉明距离,该距离下的半字模板的标签即为待识别半字的识别结果。6.根据权利要求5所述的一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,其特征在于:步骤S51具体包括以下步骤:步骤S511:根据表盘真实字符图像构造一张以0、1、2、3、4、5、6、7、8、9、0为顺序上下排列的图像;步骤S512:以一个大小为m×n的窗口对步骤S511得到的图像进行步长为1的上下移动裁剪并保存,同时将其中全字的模板剔除,得到z张半字模板。权 利 要 求 书2/2页3CN109902751A3一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法技术领域[0001]本发明涉及图像处理与识别中的表盘数字字符识别领域,特别是一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法。背景技术[0002]由于现阶段大多数表盘是基于齿轮的滚动型表盘,比如水表、电表、时钟等等,由于齿轮带动常会出现进位不完全,即低位表盘框同时出现相邻两个数字的上下各一半的情况,而高位为整个数字都在表盘框内,这就将表盘里的数字字符分为两个类别,我们称之为全字和半字。正确识别是表盘数字字符识别的核心,由于出现两种数字字符类别,并且全字半字的属性各不相同,若用同一种方法识别则整体识别效果不是特别好。发明内容[0003]有鉴于此,本发明的目的是提出一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,识别正确率高,为表盘数字字符半字全字的分开识别提供了新思路,并融合卷积神经网络和半字模板匹配,可广泛应用于需要进行数字字符识别的领域。[0004]本发明采用以下方案实现:一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法,具体包括以下步骤:[0005]步骤S1:获取带有全字半字标签的分割好的灰度图,并输入到步骤S2中;其中,标签0代表半字,标签1代表全字;其中输入图像的大小均为m×n,其中,m是所述输入图像的行数,n是所示输入图像的列数;[0006]步骤S2:将标签筛选分类,若标签为0则进入步骤S4,若标签为1则进入步骤S3;[0007]步骤S3:训练一个卷积神经网络,将标签为1的全字灰度图输入到训练好的神经网络中识别,得到全字识别结果;[0008]步骤S4:将标签为0的半字灰度图二值化后,保留两个最大连通域,得到处理后的待识别半字二值图像M2;[0009]步骤S5:将步骤S4得到的处理后的图像与半字模板进行基于像素的模板匹配,得到半字识别结果;[0010]步骤S6:按照步骤S1中图像输入的顺序,依次输出灰度图的识别结果。[0011]进一步地,步骤S3具体包括以下步骤:[0012]步骤S31:输入测试集图片和标签以及训练集图片和标签,其中全字共有0至9共10个字符,用10个独热码表示;[0013]步骤S32:用TensorFlow训练一个前向传输的卷积神经网络;其中,该卷积神经网络的结构为“卷积层1-池化层1-卷积层2-池化层2-……-卷积层x-池化层x-全连接层”;[0014]步骤S33:保存该卷积神经网络的各项权重值;[0015]步骤S34:将输入的全字灰度图输入到训练好的卷积神经网络中进行自动识别,得说 明 书1/10页4CN109902751A4到识别结果。[0016]较佳的,所述卷积神经网络的架构如下:[0017]输入层:由于输入的是一个m×n的灰度图像,其在二维空间上的维度是m×n。一个像素点相当于一个神经元,故输入层的维度就是三维[32,24,1];[0018]卷积层1:若卷积层的尺寸是(2m1+1)×(2m1+1),卷积深度为n1,设定步长为s1。(卷积前先将原始输入图像的上下左右m1以像素0填充)相当于用n1个(2m1+1)×(2m1+1)的滑动窗口以步长s1与输入图像在该窗口下的像素相卷积,得到的图像大小为[m,n,1];[0019]池化层1:设定池化步长为s1、池化尺寸为m2×m2、池化方式:最大池化或平均池化。若采用最大池化,则以步长s1在尺寸为m2×m2的滑动窗口扫描卷积层1得到的图像像素,存储该窗口下的最大值;若为平均池化,则以步长s1在尺寸为m2×m2的滑动窗口扫描卷积层1得到的图像像素,存储该窗口下的像素平均值;故该层池化后得到的图像大小为[0020]其余卷积层与池化层与上述所述原理一致,设最终得到图像大小为[x1,y1,z1];[0021]全连接层1:先将得到的图像[x1,y1,z1]平坦化成[1,x1×y1×z1],即x1×y1×z1个神经元与全连接层1的m×n个神经元全连接;[0022]全连接层2(即输出层):全字共有10个标签,用独热码表示,全连接层1的m×n个神经元与全连接层2的10个神经元相连接,输出应为1×10大小的向量;[0023]步骤S33:保存该卷积神经网络的各项权重值;[0024]步骤S34:将输入的全字灰度图输入到训练好的卷积神经网络中进行自动识别,得到识别结果。[0025]进一步地,步骤S4具体包括以下步骤:[0026]步骤S41:将半字灰度图M进行二值化处理,得到初步待识别半字二值化图像M1;[0027]步骤S42:将M1用八领域的方式找出连通域,并以自然数(1、2、3、4......)标记连通域;[0028]步骤S43:计算步骤S42标记的相同自然数的个数,比较得到两个最大个数的自然数,将这两个自然数所在的连通域的像素灰度值改为1,其余位置的像素灰度值改为0,得到保留最大连通域后的待识别半字二值化图像M2(默认在二值化图像中,值为0表示白色像素,值为1表示黑色像素)。[0029]进一步地,步骤S41具体包括以下步骤:[0030]步骤S411:(在灰度图中,将对识别有用的信息称为目标,如数字区域;将对识别无用的信息称为背景,如数字像素点以外的白色区域)设定一个t×t大小的候选框作为局部二值化每次选取像素的滑动窗口,设定两个初始阈值:T、S;其中T为当窗口只存在背景或目标时判断是否是目标的阈值;S为判断该滑动窗口中是否背景和目标同时存在的阈值;记f(x,y)为图像M在第x行y列的像素灰度值(以图像M左上角为原点);记f′(x,y)为经过局部二值化处理后的图像在第x行y列的像素的值;[0031]步骤S412:用t×t的候选框以步长1遍历所述灰度图像M;令T2(x,y)=max-min,其中,max为灰度图像在该候选框范围下的像说 明 书2/10页5CN109902751A5素点灰度值最大值,min为灰度图像在该候选框范围下的像素点灰度值最小值,T1(x,y)表示该候选框内灰度值最大值与灰度值最小值的均值,T2(x,y)表
本文标题:【CN109902751A】一种融合卷积神经网络和半字模板匹配的表盘数字字符识别方法【专利】
链接地址:https://www.777doc.com/doc-7187886 .html