一种提升手写数字识别准确率的方法

未命名 08-07 阅读:117 评论:0


1.本发明属于手写识别领域,尤其涉及一种提升手写数字识别准确率的方法。


背景技术:

2.现阶段训练手写数字识别模型一般采用mnist数据集。mnist数据集是一个大型的手写数字数据集,通常用于训练各种图像处理系统。该数据集也被广泛用于机器学习领域的训练和测试。它是通过对nist原始数据集的样本进行"重新混合"创建的。创建者认为,由于nist的训练数据集取自美国人口普查局的雇员,而测试数据集取自美国高中生,因此它并不适合机器学习实验。此外,nist的黑白图像被归一化以适合28x28像素的边界框,并进行了抗锯齿处理,从而引入了灰度等级。mnist数据集包含60,000张训练图像和10,000张测试图像。训练集的一半和测试集的一半取自nist的训练数据集,而训练集的另一半和测试集的另一半取自nist的测试数据集。
3.现有数据训练方法并不针对训练图像做预处理,而是直接做成样本集(含训练图像集和标签集、测试图像集和标签集);接着搭建深度卷积神经网络cnn,把样本集按一定比例分割成训练样本集和验证样本集,用训练样本集训练cnn参数,用验证样本集验证;经过一轮轮训练和验证等模型收敛后保存模型;最后使用模型对测试图像集进行测试,将测试结果与测试标签集进行比对得出测试准确率,如果测试准确率高则认可训练得到的模型。在数据集创建者的原始论文中,他们使用支持向量机得到的准确率为99.2%,后来的跟随者使用深度学习模型得到了更高的准确率。
4.mnist数据集的图片存在一定的随意性,如图2、3所示两个数字取自该数据集,显然,数字在图片中并不居中(数字偏下),考虑到生成该数据集的书写者们书写习惯的不同,这些数字在图片中是随机偏移的。
5.对于分类任务若不以最终的label为输出结果,而是以输出概率为衡量标准,对于一张目标有平移的图像,其预测的概率并不会和原图一样。论文(https://arxiv.org/abs/1904.11486)所做的实验验证了这一点,结论为:即使是很小的移动也会带来预测概率的剧烈震荡。
6.也就是说,cnn只是具有一定程度的平移不变性,若能够不平移,模型的识别准确率会有一定程度的提高。


技术实现要素:

7.本发明的目的在于提供一种提升手写数字识别准确率的方法,旨在解决现有技术中模型的识别准确率低的技术问题。
8.本发明是这样实现的,一种提升手写数字识别准确率的方法,所述方法包括以下步骤:
9.步骤s1:加载原生mnist数据集,且数据集的图片均为灰度图,每张图片宽高均为28像素;
10.步骤s2:对mnist数据集中的每一张图片进行二值化,阈值取0,即灰度值大于0则转为255,灰度值小于等于0则维持不变,获得每张图片的二值图;
11.步骤s3:在二值图中找到前景矩形包围边界上、下、左及右;
12.步骤s4:根据得到的前景矩形包围边界从灰度图中切割出紧凑灰度图,即上、下、左、右边距均为0;
13.步骤s5:对紧凑灰度图进行缩放并居中得到最终预处理灰度图。
14.本发明的进一步技术方案是:所述方法还包括以下步骤:
15.步骤s6:对训练集、验证集、测试集均做步骤s1-步骤s5的预处理,完成后搭建卷积神经网络使用训练集、验证集进行训练,使用测试集进行测试,得到存档模型。
16.本发明的进一步技术方案是:所述方法还包括以下步骤:
17.步骤s7:应用时通过图像分割得到的灰度图同样做步骤s1-步骤s5的预处理,完成后将得到的预处理灰度图送入模型进行预测,可得到更高的预测准确率。
18.本发明的进一步技术方案是:所述步骤s5包括以下步骤:
19.步骤s51:获取紧凑灰度图的高h和宽w;
20.步骤s52:判断高h是否大于等于宽w,若高h大于等于宽w,则执行步骤s53-步骤s57,否则执行步骤s58-步骤s512;
21.步骤s53:设上边距t_pad、下边距b_pad均为7,并计算缩放系数ratio为14/h;
22.步骤s54:计算出新的宽度w2和高度h2,分别为:ratio*w和ratio*h;
23.步骤s55:计算左边距l_pad与右边距r_pad,使宽度w2在总宽度28的背景中居中,当28-w2为偶数时,左边距l_pad=右边距r_pad=(28-w2)/2,当28-w2为奇数时,左边距l_pad=ceil((28-w2)/2),右边距r_pad=l_pad-1;
24.步骤s56:使用抗锯齿方式对紧凑灰度图进行缩放,缩放后尺寸为(w2*h2),缩放后灰度图为img3;
25.步骤s57:为img3灰度图添加上下左右边距,填充像素值均为灰度值0,得到img4;
26.步骤s58:设左边距l_pad、右边距r_pad均为7,并计算缩放系数ratio为14/w;
27.步骤s59:计算出新的宽度w2和高度h2,分别为:ratio*w和ratio*h;
28.步骤s510:计算上边距t_pad与下边距b_pad,使高度h2在总高度28的背景中居中,当28-h2为偶数时,上边距t_pad=下边距b_pad=(28-h2)/2,当28-h2为奇数时,上边距t_pad=ceil((28-h2)/2),下边距b_pad=t_pad-1;
29.步骤s511:使用抗锯齿方式对紧凑灰度图进行缩放,缩放后尺寸为(w2*h2);缩放后灰度图为img3;
30.步骤s512:为img3灰度图添加上下左右边距,填充像素值均为灰度值0,得到img4。
31.本发明的有益效果是:此种方法可以确保分割出来的图片中数字四周的边距和模型数据集图片中数字四周的边距相一致,即应用时数字分布与训练时数字分布一致,从而使手写数字识别准确率得到明显提升,经过实验,采用此种方法,针对测试集进行预测准确率提升了0.3%,若应用于实际场合,因为有一套方法的指引,避免了预处理的盲目性,准确率的提升将更加显著,用于实际系统时,小规模测试显示提升达到5%以上。
附图说明
32.图1是本发明实施例提供的一种提升手写数字识别准确率的方法的流程框图;
33.图2是本发明实施例提供的mnist数据集的图片一;
34.图3是本发明实施例提供的mnist数据集的图片二;
35.图4是本发明实施例提供的经本方法处理完成后的mnist数据集的图片一;
36.图5是本发明实施例提供的经本方法处理完成后的mnist数据集的图片二。
具体实施方式
37.图1示出了本发明提供的一种提升手写数字识别准确率的方法,所述方法包括以下步骤:
38.步骤s1:加载原生mnist数据集,且数据集的图片均为灰度图,每张图片宽高均为28像素;
39.步骤s2:对mnist数据集中的每一张图片进行二值化,阈值取0,即灰度值大于0则转为255,灰度值小于等于0则维持不变,获得每张图片的二值图;
40.步骤s3:在二值图中找到前景矩形包围边界上top、下bottom、左left及右right;
41.步骤s4:根据得到的前景矩形包围边界从灰度图中切割出紧凑灰度图,即上top、下bottom、左left、右right边距均为0;
42.步骤s5:对紧凑灰度图进行缩放并居中得到最终预处理灰度图;
43.步骤s51:获取紧凑灰度图的高h和宽w;
44.步骤s52:判断高h是否大于等于宽w,若高h大于等于宽w,则执行步骤s53-步骤s57,否则执行步骤s58-步骤s512;
45.步骤s53:设上边距t_pad、下边距b_pad均为7,并计算缩放系数ratio为14/h;
46.步骤s54:计算出新的宽度w2和高度h2,分别为:ratio*w和ratio*h;
47.步骤s55:计算左边距l_pad与右边距r_pad,使宽度w2在总宽度28的背景中居中,当28-w2为偶数时,左边距l_pad=右边距r_pad=(28-w2)/2,当28-w2为奇数时,左边距l_pad=ceil((28-w2)/2),右边距r_pad=l_pad-1;
48.步骤s56:使用抗锯齿方式对紧凑灰度图进行缩放,缩放后尺寸为(w2*h2),缩放后灰度图为img3;
49.步骤s57:为img3灰度图添加上下左右边距,填充像素值均为灰度值0,得到img4;
50.步骤s58:设左边距l_pad、右边距r_pad均为7,并计算缩放系数ratio为14/w;
51.步骤s59:计算出新的宽度w2和高度h2,分别为:ratio*w和ratio*h;
52.步骤s510:计算上边距t_pad与下边距b_pad,使高度h2在总高度28的背景中居中,当28-h2为偶数时,上边距t_pad=下边距b_pad=(28-h2)/2,当28-h2为奇数时,上边距t_pad=ceil((28-h2)/2),下边距b_pad=t_pad-1;
53.步骤s511:使用抗锯齿方式对紧凑灰度图进行缩放,缩放后尺寸为(w2*h2);缩放后灰度图为img3;
54.步骤s512:为img3灰度图添加上下左右边距,填充像素值均为灰度值0,得到img4;
55.步骤s6:对训练集、验证集、测试集均做步骤s1-步骤s5的预处理,完成后搭建卷积神经网络使用训练集、验证集进行训练,使用测试集进行测试,得到存档模型;
56.步骤s7:应用时通过图像分割得到的灰度图同样做步骤s1-步骤s5的预处理,完成后将得到的预处理灰度图送入模型进行预测,可得到更高的预测准确率。
57.仅仅将mnist数据集中图片居中带来的提升不是最大化的,如图4、5所示的两个数字,因为最终不仅仅是为了在测试集图片上获得高的准确率,而是要在实际复杂场景下先分割出手写数字图片,在分割出来的图片中数字四周的边距取多少用户是心里没数的,而此种方法可以确保分割出来的图片中数字四周的边距和模型数据集图片中数字四周的边距相一致,即应用时数字分布与训练时数字分布一致,从而使手写数字识别准确率得到明显提升,经过实验,采用此种方法,针对测试集进行预测准确率提升了0.3%,若应用于实际场合,因为有一套方法的指引,避免了预处理的盲目性,准确率的提升将更加显著,用于实际系统时,小规模测试显示提升达到5%以上。
58.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种提升手写数字识别准确率的方法,其特征在于,所述方法包括以下步骤:步骤s1:加载原生mnist数据集,且数据集的图片均为灰度图,每张图片宽高均为28像素;步骤s2:对mnist数据集中的每一张图片进行二值化,阈值取0,即灰度值大于0则转为255,灰度值小于等于0则维持不变,获得每张图片的二值图;步骤s3:在二值图中找到前景矩形包围边界上、下、左及右;步骤s4:根据得到的前景矩形包围边界从灰度图中切割出紧凑灰度图,即上、下、左、右边距均为0;步骤s5:对紧凑灰度图进行缩放并居中得到最终预处理灰度图。2.根据权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:步骤s6:对训练集、验证集、测试集均做步骤s1-步骤s5的预处理,完成后搭建卷积神经网络使用训练集、验证集进行训练,使用测试集进行测试,得到存档模型。3.根据权利要求2所述的方法,其特征在于,所述方法还包括以下步骤:步骤s7:应用时通过图像分割得到的灰度图同样做步骤s1-步骤s5的预处理,完成后将得到的预处理灰度图送入模型进行预测,可得到更高的预测准确率。4.根据权利要求1-3任一项所述的方法,其特征在于,所述步骤s5包括以下步骤:步骤s51:获取紧凑灰度图的高h和宽w;步骤s52:判断高h是否大于等于宽w,若高h大于等于宽w,则执行步骤s53-步骤s57,否则执行步骤s58-步骤s512;步骤s53:设上边距t_pad、下边距b_pad均为7,并计算缩放系数ratio为14/h;步骤s54:计算出新的宽度w2和高度h2,分别为:ratio*w和ratio*h;步骤s55:计算左边距l_pad与右边距r_pad,使宽度w2在总宽度28的背景中居中,当28-w2为偶数时,左边距l_pad=右边距r_pad=(28-w2)/2,当28-w2为奇数时,左边距l_pad=ceil((28-w2)/2),右边距r_pad=l_pad-1;步骤s56:使用抗锯齿方式对紧凑灰度图进行缩放,缩放后尺寸为(w2*h2),缩放后灰度图为img3;步骤s57:为img3灰度图添加上下左右边距,填充像素值均为灰度值0,得到img4;步骤s58:设左边距l_pad、右边距r_pad均为7,并计算缩放系数ratio为14/w;步骤s59:计算出新的宽度w2和高度h2,分别为:ratio*w和ratio*h;步骤s510:计算上边距t_pad与下边距b_pad,使高度h2在总高度28的背景中居中,当28-h2为偶数时,上边距t_pad=下边距b_pad=(28-h2)/2,当28-h2为奇数时,上边距t_pad=ceil((28-h2)/2),下边距b_pad=t_pad-1;步骤s511:使用抗锯齿方式对紧凑灰度图进行缩放,缩放后尺寸为(w2*h2);缩放后灰度图为img3;步骤s512:为img3灰度图添加上下左右边距,填充像素值均为灰度值0,得到img4。

技术总结
本发明适用于手写识别领域,提供了一种提升手写数字识别准确率的方法,所述方法包括以下步骤:步骤S1:加载原生MNIST数据集,且数据集的图片均为灰度图,每张图片宽高均为28像素;步骤S2:对MNIST数据集中的每一张图片进行二值化,阈值取0,即灰度值大于0则转为255,灰度值小于等于0则维持不变,获得每张图片的二值图;步骤S3:在二值图中找到前景矩形包围边界上、下、左及右;步骤S4:根据得到的前景矩形包围边界从灰度图中切割出紧凑灰度图,即上、下、左、右边距均为0;步骤S5:对紧凑灰度图进行缩放并居中得到最终预处理灰度图。旨在解决现有技术中模型的识别准确率低的技术问题。有技术中模型的识别准确率低的技术问题。有技术中模型的识别准确率低的技术问题。


技术研发人员:刘小华 张喜生 杨晨
受保护的技术使用者:深圳职业技术学院
技术研发日:2023.05.06
技术公布日:2023/8/6
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐