前言

大三的时候利用MATLAB搭建了一个基于BP神经网络框架的手写字母识别程序,其中使用了EMNIST数据集进行训练和测试,可实时对手写输入样本进行识别,并返回两个最可能的结果,过程中可继续添加样本训练,以提高训练的精度。今天简单展示一下程序的功能,后续有时间会详细讲解编程的思路以及上传资源,供有需要的朋友借鉴。


首先运行主程序文件,展示手写输入窗口如下:


这个手写输入窗口主要由手写输入面板识别结果正确率训练精度学习速率字号字体颜色当前鼠标坐标训练数据集添加样本识别清除组成。
其中训练精度、学习速率、字号、颜色都是可选的,也就是支持直接在窗口更改。
使用鼠标在面板处输入手写字母,然后点击识别按钮,左侧会给出两个最有可能的识别结果(如下图)



右下角清除按钮可清空当前面板的手写输入,在左下角点击控件可选择更改成想要的字号和颜色:


如果要看手写识别结果的正确率,可点击面板下方的训练数据集按钮,自动运行神经网络训练样本的程序,然后返回训练正确率并显示在手写字母识别窗口左侧:



当出现识别结果失误的情况时,说明样本训练的精度还有待提高,此时可点击输入面板下方的添加该样本按钮,将当前识别失误的样本添加到训练集中进行训练以提高识别准确率


点击添加该样本按钮后将会弹出一个窗口,此时将该样本属于的字母类别正确地输入就好了。
接下来MATLAB的命令行窗口就会显示再次对数据集进行训练:


训练完毕后将再次返回数据集训练的正确率


跟前面对比,发现正确率有所提升(虽然只是一点点),这说明添加训练样本后确实可以提高训练精度,随着样本训练的数据越来越大,相信识别的准确度会有更大的提升。


(这是程序的所有文件)

结束语

好了,今天暂时先展示程序的运行效果,之后有时间再来更新。对了,我的截图貌似有点糊,拜托各位看官就凑合看看吧~(嘿嘿)


呜呜,发布的时候发现等级不够不能自定义标签哇

使用MATLAB实现基于BP神经网络训练的手写字母识别程序相关推荐

  1. 深蓝学院第三章:基于卷积神经网络(CNN)的手写数字识别实践

    参看之前篇章的用全连接神经网络去做手写识别:https://blog.csdn.net/m0_37957160/article/details/114105389?spm=1001.2014.3001 ...

  2. MATLAB实现基于BP神经网络的手写数字识别+GUI界面+mnist数据集测试

    文章目录 MATLAB实现基于BP神经网络的手写数字识别+GUI界面+mnist数据集测试 一.题目要求 二.完整的目录结构说明 三.Mnist数据集及数据格式转换 四.BP神经网络相关知识 4.1 ...

  3. 基于随机梯度下降法的手写数字识别、epoch是什么、python实现

    基于随机梯度下降法的手写数字识别.epoch是什么.python实现 一.普通的随机梯度下降法的手写数字识别 1.1 学习流程 1.2 二层神经网络类 1.3 使用MNIST数据集进行学习 注:关于什 ...

  4. 基于朴素贝叶斯的手写数字识别

    基于朴素贝叶斯的手写数字识别 关于数据集 关于SIMD 关于python 数据预处理 总结 关于数据集 MNIST数据库(http://www.cs.nyu.edu/~roweis/data.html ...

  5. DL之CNN:利用自定义DeepConvNet【7+1】算法对mnist数据集训练实现手写数字识别、模型评估(99.4%)

    DL之CNN:利用自定义DeepConvNet[7+1]算法对mnist数据集训练实现手写数字识别.模型评估(99.4%) 目录 输出结果 设计思路 核心代码 输出结果 设计思路 核心代码 netwo ...

  6. DL之CNN:利用自定义DeepConvNet【7+1】算法对mnist数据集训练实现手写数字识别并预测(超过99%)

    DL之CNN:利用自定义DeepConvNet[7+1]算法对mnist数据集训练实现手写数字识别并预测(超过99%) 目录 输出结果 设计思路 核心代码 输出结果 准确度都在99%以上 1.出错记录 ...

  7. 在MNIST数据集上训练一个手写数字识别模型

    使用Pytorch在MNIST数据集上训练一个手写数字识别模型, 代码和参数文件 可下载 1.1 数据下载 import torchvision as tvtraining_sets = tv.dat ...

  8. 【图像识别】基于BP神经网络和RGB颜色空间实现人民币识别系统matlab代码

    1 简介 随着信息化时代的到来,智能识别成为研究的热点,本文以人民币识别为研究对象,运用 Matlab 软件系统中所提供的神经网络工具箱,结合图像处理技术,实现对各种不同面值纸质版人民币的识别.本文主 ...

  9. MATLAB实现基于BP神经网络的图像压缩

    神经网络建模 BP神经网络用于压缩的原理如下: BP网络至少包含一个隐含层,这里只采用一个隐含层,因此整体构成了一个三层的网络.把一组输入模式通过少量的隐含层单元映射到一组输出模式,并使输出模式尽可能 ...

最新文章

  1. 记一次性能优化,单台 4 核 8G 机器支撑 5 万 QPS
  2. SDNE: 阿里应用深度学习进行图嵌入,构造凑单算法模型
  3. Python 高级网络操作 - Python Advanced Network Operations
  4. 【JEECG 官方】技术支持联系方式
  5. github上传_上传本地代码到github
  6. 简单创建两个线程,交替输出内容
  7. golang语言os.Stat()用法及功能
  8. python3怎么安装opencv_Python:即使安装了opencv,也无法导入cv2(如何为python3安装opencv3)...
  9. VC里一些容易混淆的地方(转)
  10. XMind软件简易使用教程
  11. 几何画板椭圆九种画法_几何画板怎么制作椭圆定义演示动画?
  12. 装双系统出现winload.efi,也就是安装win10,提示0xc0000359
  13. 51单片机模块化编程
  14. 以后不该吃的不能吃了。。。
  15. SLAM领域的优秀作者与实验室汇总
  16. 361度与国棉联盟达成战略合作;开利宣布收购空调企业广东积微集团;大陆集团与地平线成立智能驾驶合资公司 | 美通企业周刊...
  17. swift纯代码UITabBarController的使用
  18. C语言如何打开txt文件
  19. android消息发送字符串,android - 从Android客户端通过HTTP在HL7消息中发送base64字符串时遇到错误 - 堆栈内存溢出...
  20. linux io栈(读写流程)

热门文章

  1. 解决win7 无线网络红叉问题
  2. OrientedRCNN论文解读
  3. 网络连接变成小地球,提示无法访问internet
  4. 用java实现表白二维码(附源码)
  5. ireport4.5在JVM中添加新字体解决方案(Font ‘標楷體‘ is not available to the JVM. See the Javadoc for more details.)
  6. 穷人和富人的思维方式探析
  7. k1658停运_2016年10月20日火车停运信息
  8. 数字中国建设意义和面临的挑战
  9. 有苦有乐的算法 --- 使用队列结构实现栈结构
  10. HC32L系列MCU在KEIL新建工程后在JLINK 下 SW Device下找不到设备的解决方法