⭕⭕ 目 录 ⭕⭕

  • ✳️ 一、引言
  • ✳️ 二、AlexNet 网络
  • ✳️ 三、实验验证
    • ✳️ 3.1 实验数据集
    • ✳️ 3.2 数据训练
    • ✳️ 3.3 手写体倾斜数字校正结果
  • ✳️ 四、参考文献
  • ✳️ 五、Matlab代码获取

✳️ 一、引言

手写体数字识别是光学字符识别(Optical CharacterRecognition,OCR)的一个分支,是利用计算机将图片中的文字信息转换为计算机语言的过程。数字识别是一种图像分类问题,一直是机器深度学习的一个热点研究问题,在快递单号、财务报表、手写票据等领域广泛应用。数字识别的重点在于算法对图像本身的特征提取,传统的分类算法都存在特征提取不充分的问题,如贝叶斯分类法、K最近邻算法、支持向量机(SupportVectorMachines,SVM)、BP(BackPropagation)神经网络等。

卷积神经网络(ConvolutionalNeuralNetwork,CNN)的出现,极大地提高了手写数字识别的准确率。CNN是由美国学者Cun提出的一种深度前馈人工神经网络,包括卷积层、池化层、全连接层和输出层。CNN通过对提取到的图像特征自动学习,能够获得更高层次的特征表达,使学习到的特征信息具有更好的泛化能力。邓长银等通过改变LeNet-5模型的网络层数、激活函数以及输入图片的尺寸,相较传统方法识别率有所提高。茹晓青等提出了一种基于形变卷积神经网络的识别方法,利用形变卷积代替VGG16模型中的普通卷积,提高了多变外观数字的识别精度。陈玄等提出了一种融合卷积神经网络,通过融合两种网络的高级特征,增加网络层的高级尺寸,增强网络的表达能力,识别的精度高于两种模型单独使用。

✳️ 二、AlexNet 网络

AlexNet 是由多伦多大学的 Krizhevsky 等在2012 年提出的, 并在当年的 ImageNet 大赛上打破了图像分类的记录获得了比赛的冠军, 使图像分类的准确率提高了一倍多。

AlexNet 的网络结构如图 1 所示, AlexNet 网络模型结构简洁, 由 5 层卷积层、2 层隐藏全连接层和一层输出全连接层组成。整个网络结构使用ReLu 代替 Sigmoid 作为激活函数, 能有效地解决Sigmoid 在层数较多的网络结构中出现的梯度弥散问题。同时网络在全连接层后添加 Dropout 操作,利用随机隐退神经元个数的方法, 在网络的训练过程中减少模型的参数量, 能够有效地防止过拟合现象的出现。在Relu激活函数后添加局部响应归一化( Local Response Norm, LRN) , 通过对局部神经元创建响应竞争机制, 提高了网络的泛化能力。使用重叠的最大池化层代替平均池化, 很好地解决了平均池化的模糊问题, 同时在一定程度上提高了图像特征的丰富性。AlexNet 模型相比于LeNet5 和传统的机器学习方法具有更高的识别精度, 但是本身的参数量巨大, 模型的训练时间长,识别速度慢。

图1 AlexNet 网络模型

✳️ 三、实验验证

✳️ 3.1 实验数据集

MNIST 数据集是一个手写体数字识别数据集, 包含 50 000 条训练数据集和 10 000 条测试数据集。数据集包含 250 个不同人手写的阿拉伯数字 0 ~ 9, 共 10 类手写体数字图像。每条数据集由图像和标签组成, 每张图像的大小为 28×28 = 784的一维数组, 标签类型为 One-Hot-Encoding 编码格式。部分数据集图像如图2所示。

图2 MNIST 数据集部分图像

✳️ 3.2 数据训练

训练周期设置100轮,每轮迭代次数设置为50,从图3图4中可知,随着训练迭代步数的增加,RMSE曲线、Loss曲线呈现明显的下降趋势,表明该网络模型可有效进行回归预测。

图3 AlexNet的训练结果

图4 AlexNet的训练结果

✳️ 3.3 手写体倾斜数字校正结果

基于AlexNet卷积神经网络的手写体数字倾斜校正结果如下图所示,可知, 该手写体的倾斜角度为12.6°。

图5 手写体数字倾斜校正结果

✳️ 四、参考文献

[1] 王梅,李东旭.基于改进VGG-16和朴素贝叶斯的手写数字识别[J].现代电子技术,2020,43(12):176-181+186.
[2] 张成,戴俊峰,熊闻心.融合LeNet-5改进的扫描文档手写日期识别[J].计算机工程与应用,2021,57(9):207-211.
[3] 杨旭,尚振宏.基于改进AlexNet的人脸表情识别[J].激光与光电子学进展,2020,57(14):243-250.
[4] 黄健,张钢.深度卷积神经网络的目标检测算法综述[J].计算机工程与应用,2020,56(17):12-23.
[5] 汪雅琴,夏春蕾,戴曙光.基于LeNet-5模型的手写数字识别优化方法[J].计算机与数字工程,2019,47(12):3177-3181.

✳️ 五、Matlab代码获取

上述实验由Matlab编程实现,可私信博主获取。


博主简介:研究方向涉及智能图像处理、深度学习、卷积神经网络等领域,先后发表过多篇SCI论文,在科研方面经验丰富。任何与算法程序科研方面的问题,均可私信交流讨论


基于AlexNet卷积神经网络的手写体数字倾斜校正系统研究-附Matlab代码相关推荐

  1. 基于AlexNet卷积神经网络的手写体数字识别系统研究-附Matlab代码

    ⭕⭕ 目 录 ⭕⭕ ✳️ 一.引言 ✳️ 二.手写体数字识别系统 ✳️ 2.1 MNIST 数据集 ✳️ 2.2 CNN ✳️ 2.3 网络训练 ✳️ 三.手写体数字识别结果 ✳️ 四.参考文献 ✳️ ...

  2. 基于TensorFlow卷积神经网络的手写体数字识别

    一.卷积神经网络(CNN) 二.LeNet 三.代码 1.Mnist手写体训练并测试 2.可视化 四.数据集分析 五.结果分析 1.准确率 2.可视化测试 一.卷积神经网络(CNN) 参考:https ...

  3. Pytorch实现手写体识别(基于CNN卷积神经网络)实操详解(附完整代码free)

    手写体作为深度学习的"Hello world",几乎所有的课程都会讲到这个,今天带着大家一些看看吧. 如果对你有所帮助,点个赞给个小关注,以后一起交流学习. 前言 首先和大家讲讲我 ...

  4. 深度学习实战——利用卷积神经网络对手写数字二值图像分类(附代码)

    系列文章目录 深度学习实战--利用卷积神经网络对手写数字二值图像分类(附代码) 目录 系列文章目录 前言 一.案例需求 二.MATLAB算法实现 三.MATLAB源代码 参考文献 前言 本案例利用MA ...

  5. Tensorflow - 加载卷积神经网络实现手写体数字识别

    上一篇博客中,我们已经训练好了模型 https://blog.csdn.net/Polaris47/article/details/80718328 接下来我们要加载模型并识别真实场景下的一个手写体数 ...

  6. 卷积神经网络 手写数字识别(包含Pytorch实现代码)

    Hello!欢迎来到六个核桃Lu! 运用卷积神经网络 实现手写数字识别 1 算法分析及设计 卷积神经网络: 图1-2 如图1-2,卷积神经网络由若干个方块盒子构成,盒子从左到右仿佛越来越小,但却越来越 ...

  7. OpenCV基于LeNet-5和连接组件分析的数字识别的实例(附完整代码)

    OpenCV基于LeNet-5和连接组件分析的数字识别的实例 OpenCV基于LeNet-5和连接组件分析的数字识别的实例 OpenCV基于LeNet-5和连接组件分析的数字识别的实例 #includ ...

  8. 【智能优化算法-白鲸算法】基于白鲸优化算法求解多目标优化问题附matlab代码

    1 内容介绍 在本文中,一种新的基于群体的元启发式算法灵感来自白鲸的行为鲸鱼,称为白鲸优化(BWO),是为了解决优化问题而提出的.三在 BWO 中建立了探索.开发和鲸落的阶段,对应于成对游泳.猎物和鲸 ...

  9. 【智能优化算法-白鲸优化算法】基于白鲸优化算法求解单目标优化问题附matlab代码

    1 内容介绍 白鲸优化算法(Beluga whale optimization,BWO)由Changting Zhong等人于2022年提出,该算法模拟了白鲸游泳,觅食和"鲸鱼坠落" ...

最新文章

  1. Hadoop学习之第七章节:Hive安装配置
  2. 2021湖南高考成绩分段查询,2021年湖南高考分数一分一段位次表,湖南高考个人成绩排名查询方法...
  3. QT5 中文乱码问题
  4. threejs 用 ExtrudeGeometry 画管线
  5. microsoftstore连不上网_win10系统下微软商店连不了网如何解决
  6. FreeRTOS内核实现02:任务的定义与任务切换
  7. OpenSSL 1.0.0生成p12、jks、crt等格式证书的命令个过程(转)
  8. Android shape半圆,1/4圆
  9. 快速入门Flink (7) —— 小白都喜欢看的Flink流处理之DataSources和DataSinks(转载)
  10. mysql: [ERROR] Found option without preceding group in config file /etc/my.cnf at line 1!
  11. 超级爆笑学生作文大全
  12. R语言中的“<-” 、 “=” 、“->”
  13. 比亚迪决定不给日系留“活路”了
  14. SQL Server 2012笔记分享-35:配置客户端网络协议
  15. 分享一个开源的QT的串口示波器
  16. 微信小程序之自定义组件(微信小程序完结)
  17. 垃圾填埋场渗滤液的主流处理方法
  18. 重装Windows系统 (以联想Y700重装Win10专业版为例)
  19. 电压并联后电压是多少?
  20. 自动驾驶公交车第 1 部分:车辆运营技术要求

热门文章

  1. Apache Spark基础知识
  2. 启动命令提示符定位到D盘java文件夹
  3. 對谷詞翻譯機器人(trans@xiaoi.com)的兩點建議
  4. SystemV 共享内存(一)—— 共享内存的创建与释放(shmget / shmctl)
  5. 好诗推荐之:面朝大海,春暖花开
  6. 关于strcmp函数的用法
  7. 打印机共享后,要主机打印一张其他电脑才能打印
  8. JAVA软件IDEA安装教程详细版
  9. 虚拟化服务器网页防篡改,web应用防火墙和网络防火墙、网页防篡改、IPS三者的区别...
  10. C# 实现Epson热敏打印机打印 Pos机用