基于神经网络的手写数字图像识别研究设计

2021-01-02 13:04
电工材料 2021年6期
关键词:数字图像权值手写

汪 愿

(三峡大学 电气与新能源学院,湖北宜昌 443000)

引言

自动识别和人工智能技术,特别是数字自动识别技术在人类日常生活中发挥着重要作用。人工神经网络是由大量的、简单的处理单元组成的相对复杂的网络系统。人工神经网络具有大规模并行,分布式存储和处理,自组织和自主学习的许多功能。神经网络的自动识别技术发展与神经科学、数学科学、计算机科学、人工智能和信息科学密切相关。神经网络独特的非线性自适应信息处理能力弥补了人类先前的直觉、语言识别和非线性自适应信息处理能力的人工智能方法的一些缺点。它在神经科学系统、智能控制、组合优化、模式识别和预测等领域得到了很好的应用。近年来,人工神经网络正在模拟人类认知的道路上进一步发展。现在人们将遗传算法。模糊系统和进化机制结合起来形成智能计算,成为人工智能的重要研究方向。MATLAB软件包含用于解决各种应用问题的Toolbox工具,可以根据自己的需要调用与神经网络设计和培训相关的工具箱,不需要那些繁琐的编程,可以省去很多麻烦,更好地集中精力去思考和解决设计者需要的一些问题。通过MATLAB软件,可实现BP神经网络实现手写数字图像的识别[1-10]。本研究采用仿真获取大量手写数字的识别正确概率,为其他手写数字识别系统设计和实际应用方案选取时提供参考。

1 数字图像预处理

1.1 图像二值化

图像二值化是按照一定的标准将图像分为黑白两种颜色。二值化处理将图像上的点的灰度值进行设置。将手写数字图像的黑白效果明显呈现出来,这方便对数字图像在技术上进行下一步处理。图像像素值的点的位置与图像集合性质有关,这里对像素的多级值不需要进行过多处理,图像数据和压缩量大大减小。为了二值图像更方便处理,这里判定像素灰度值大于等于阈值认定是特定物体,255为其灰度值,否则这些像素点被排除在物体区域以外,灰度值为0,表示背景或者例外的物体区域。

有些特定的物体其有均匀的灰度值在内部,当这些物体在具有其他等级灰度值的均匀区域背景条件下,要得到较好的分割图像效果需要通过阈值法。遇到物体和背景在灰度值没有差别表现出来的时候,可以转化为灰度上的差别,分割数字图像时通过阈值选取技术来实现。动态观察分割图像的具体结果可以通过动态调节阀值实现。数字字符图像二值化后,需要真实再现原始数字及其基本要求,笔画中不出现空白点,要保持原来笔画结构特征,可以在要显示的图像中看到更多细节。

1.2 边缘检测与特征值提取

由于二值化图像字体模糊,需要进行渐变锐化。渐变锐化在消除噪声方面也起着重要作用,其中使用Roberts算子锐化图像,可以清楚模糊边缘,选择适当的阈值可以减少和消除小噪声。经过预处理后,不同大小和不规则分布的原始字符变成相同大小和整齐排列的字符。每个功能都有其自身的局限性,所有这些都旨在突出显示图像的某些功能,简化甚至忽略其他方面的功能,导致信息丢失。只要能够提及具体的、客观的和现实的特征,那些丢失的二级信息对于某些问题(如指纹识别和文字识别)的影响可以忽略不计。这里采用逐个像素的特征提取方法,遇到白色像素时,其特征值为0。在完成扫描之后,形成具有与图像中的像素数量相同的像素数的特征向量矩阵。特征提取是系统设计的重点和难点,与整个设计方案的成败有关。

2 BP神经网络学习训练

2.1 BP算法的多层感知器

在神经网络中,应用较多的是多层感知器。三层感知器中,b为偏值,输入向量为X=(x1,x2,…xi,…xn)T;输出层输出向量为Y=(y1,y2,…yj,…yi)T;隐藏层输出向量为O=(o1,o2,…ok,…ot)T;期望输出向量为D=(d1,d2,...dk,...dt)T;输入层到输出层的权值为V1=(v11,v12,...v1j,...v1m)T,V2=(v21,v22,...v2j,...v2m)T。

对隐藏层有:

对输出层有:

式中,变换函数f(x)均为单极性sigmoid函数f(x)=具有连续可导特点 ,f'(x)=f(x)[1-f(x)],以上共同构成三层感知器的数学模型。

2.2 BP神经网络算法过程

本设计采用将输出值作为线性方程组,对训练样本任意选定一组自由权值,作为输入层,与隐藏层之间的固定自由权。通过传递函数计算隐藏层的实际输出,再将输出层与隐藏层间的权值作为待求量,直接将目标输出作为等式的右边建立方程组来求解。BP算法包含两个过程:第一是正向输入过程,将采样信息从第一层输入层输入,然后一层一层地逐层处理并将信息传递下去,直到最后的输出层,当输出层的输出信息和需要的预期值不一致时,就会进入第二个过程;第二过程是将第一过程最后实际输出反向传播,通过隐藏层将输出信息传到输入层,并将误差信息分发下去给其他单元层,因此,这些误差信号将作为校正的权值基础。输入信号在正方向传播过程中循环,不断调整权值和减少误差的过程就是神经网络的学习和训练过程,直到最终训练结果误差达到可以接受的水平。该过程是输入一个学习样本,并使用反向传播算法重复训练和调整网络的权重和偏差,以便目标尽可能接近预期目标。其主要目的是回退输出误差,并将误差分布到每一层的所有单元,以获得每层单元的误差信号并校正每个单元的权重。当网络输出层错误小于指定值时,训练完成。

2.3 BP神经网络设计与训练

BP网络的设计主要包括输入层和隐含层,输出层和各层之间的传递函数关系。大多数神经网络具有预定义的网络层,并且BP神经网络可以包含不同的隐藏层。多层神经网络至少有一层或多层,每层神经元的数目有一个或多个。构建一个训练样本集,一些网站也有经过训练的数据集供实验使用。然后构造训练t所需的输入向量p和目标向量。实际上,它是调整这两个参数的权重和偏移量。正向传输,输出值的逐层传输。反向反馈,将层中的权重和偏差值向后调整。

3 仿真平台的搭建

MATLAB的图像处理和工具箱能支持的图像形式有RGB图像、二进制图像、灰度图像等并且能够处理BMP、JPG、TIFD等不同格式文件。程序完成以后就是GUI界面设计,设计的界面尽量以简洁为主,能够实现所有功能的分布执行,按照顺序依次进行。GUI设计主要利用GUIDE编辑器进行。GUIDE编辑器可以快捷地进行GUI界面设计却不需要那些复杂的函数,GUIDE是以对象为主体的思想,使GUI设计更加方便灵活。

4 仿真实验的结果

测试以20组0到9的50个阿拉伯手写数字,只对手写数字的图像进行处理,不进行其他的前期处理。通过前期实验准备步骤,将准备好的手写数字图像进行多次的训练,直到达到我们需要的权值要求和误差精度。将准备好的手写数字图片放入测试集中,通过仿真软件处理图像。逐一测试每一张手写数字图片,记录下每一次测试结果。经过多次的实验,数字识别率高达99%,达到了预期,仿真实验结果见表1。

表1 实验仿真结果

5 结论

通过实验仿真得到手写数字图像的基本特征。通过大量的训练次数与权值优化保证识别正确率。仿真结果表明,该方法可实现手写数字图像的快速识别,且有效消除图片嘈杂等干扰因素对识别产生的负面影响,从而为手写数字识别系统设计和实际应用方案选取时提供参考。

猜你喜欢
数字图像权值手写
一种融合时间权值和用户行为序列的电影推荐模型
基于Blob算法的多特征联合数字图像转换仿真
我手写我心
我手写我意
6万字的情书
财务风险跟踪评价方法初探
一种对矢量地图的理论研究
《数字图像处理》课程的驱动教学实践
基于洪泛查询的最短路径算法在智能交通系统中的应用
数字图像取证