




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第15章综合案例分析:手写数字识别目录CONTENTS15.1
图像的存储表示15.2数据预处理15.3基于kNN的手写数字识别15.5本章小结15.4基于神经网络的手写数字识别15.1图像的存储表示学习基础学习认知能力信息素养高常见的图像分类有3种:彩色图像、灰度图像和二值图像。其中,对于彩色图像,每个像素通常是由红(R)、绿(G)、蓝(B)三个分量来表示,每个分量的取值范围为(0,255)。一幅完整的图像可以被分割为蓝(B分量)、绿(G分量)、红(R分量)三基色的单色图,如图15-1所示。15.1图像的存储表示灰度图像(GrayImage)是每个像素只有一个采样颜色的图像,即每个像素只有一个分量表示该像素的灰度值。在一个灰度图中,每个像素位置(x0,y0)对应一个灰度值,图像在计算机中存储为数值矩阵。像素的表示如图15-3所示。15.1图像的存储表示高度为24像素、宽度为16像素的数字“8”的灰度图像在计算机中的存储形式如图15-4所示。15.1图像的存储表示数字“8”的二值图像在计算机中的存储表示如图15-5所示。15.2数据预处理15.2.1将图像转换为文本这样的命名方式是为了方便提取出样本的真实标签。样本中手写数字0~9的存储形式如图12-6所示。手写数字“5”经过降噪处理,转换为0和1二值化数据后如图15-7所示。15.2数据预处理15.2.2将矩阵转换为向量前面已经把数字图像格式的文件转换为一个32×32的二进制像素矩阵文本文件,为了提取样本特征,还需要将每一个32×32的二进制像素矩阵转换为1×1024的向量。defdata_to_array(file_name):arr=[]f=open(file_name)foriinrange(0,32):line_data=f.readline()forjinrange(0,32):arr.append(int(line_data[j]))returnarr15.3基于kNN的手写数字识别15.3.2kNN分类模型分别将训练样本和测试样本中的数据转换为1×1024的向量,并获得训练样本特征集合train_X、测试样本特征集合test_X_set、训练样本真实标签集合train_y、测试样本真实标签集合true_y_set,然后利用kNN算法依次统计每一个测试样本其近邻样本中每一类样本的个数,确定该测试样本的标签,即测试样本预测标签pre_y,得到所有测试样本的预测标签集合pre_y_set。15.3基于kNN的手写数字识别15.3.3kNN分类模型评估根据kNN算法得到的测试样本预测标签和真实标签,计算分类的准确率。foriinrange(0,len(test_files)):print("真正数字:"+true_y_set[i]+""+"测试结果为:{}".format(pre_y_set[i]))ifpre_y_set[i]==(int)(true_y_set[i]):count=count+1accuracy=count/len(test_files)print("accuracy=",accuracy*100,"%")15.3基于kNN的手写数字识别直接使用kNN模块进行手写数字识别knn=KNeighborsClassifier(n_neighbors=2,weights='distance')knn.fit(train_X,train_y)predict_y=knn.predict(test_X_set)print(predict_y)true_y=np.array(list(map(int,true_y_set)))print(np.array(list(map(int,true_y_set))))acc=accuracy_score(predict_y,true_y)print("KNN准确率:",acc)15.4基于神经网络的手写数字识别15.4.1定义神经网络模型定义输入层到输出层的权值为W1,隐藏层到输出层的权值为W2,初始时,随机初始化权值W1和W2。W1=np.random.random((1024,50))-0.5W2=np.random.random((50,10))-0.515.4基于神经网络的手写数字识别BP神经网络训练模型deftrain(X_train,y_train,X_test,y_test,iter=10000,lr=0.08):W1=np.random.random((1024,50))-0.5W2=np.random.random((50,10))-0.5foritinrange(iter):k=np.random.randint(X_train.shape[0])X_data=X_train[k]X_data=np.atleast_2d(X_data)L1=sigmoid(np.dot(X_data,W1))L2=sigmoid(np.dot(L1,W2)L2_delta=(y_train[k]-L2)*dsigmoid(np.dot(L1,W2))L1_delta=np.dot(L2_delta,W2.T)*dsigmoid(np.dot(X_data,W1))
15.4基于神经网络的手写数字识别手写数字识别运行结果:15.5本章小结手写数字识别是一个图像处理问题,要想识别图像中的手写数字,需要先将图像信息转换为文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 5-2寄存器2-74194的应用
- 统编版语文五年级下册第1课《古诗三首》精美课件
- 新疆师范大学《临床技能与思维一》2023-2024学年第二学期期末试卷
- 沈阳航空航天大学北方科技学院《商务英语写作(二)》2023-2024学年第一学期期末试卷
- 朔州陶瓷职业技术学院《阿拉伯语精读》2023-2024学年第二学期期末试卷
- 山西林业职业技术学院《医疗与康复机器人》2023-2024学年第二学期期末试卷
- 山东省济南市长清五中学2025届初三下学期模拟试题(二)化学试题含解析
- 厦门大学《给排水管道系统》2023-2024学年第二学期期末试卷
- 利辛县2024-2025学年五年级数学第二学期期末学业水平测试试题含答案
- 江西省萍乡市莲花县2024-2025学年初三第五次中考模拟考试数学试题含解析
- (三模)吉林市2025届高三第三次模拟测试 历史试卷(含答案详解)
- 科室医疗质量管理小组职责
- 县域产业布局与升级-深度研究
- 江西省萍乡市2025届高三下学期一模考试化学试卷(含答案)
- 居室空间设计 课件 项目六 卧室空间设计
- 小红书运营:小红书账号运营培训课件
- 【WGSN】2025秋冬欧洲站童装趋势洞察
- DBJ04T 467-2023 建筑防烟排烟系统技术标准
- 2025年中国刹车片行业市场深度研究及发展趋势预测报告
- 第十六周《“粽”享多彩端午深耕文化传承》主题班会
- 林业行政执法培训课件
评论
0/150
提交评论