基于深度学习的水果识别系统

收藏和点赞,您的关注是我创作的动力

概要

  本文详细地介绍了深度学习算法卷积神经网络(CNN)的发展状况。主要介绍了卷积神经网络的几个基本层次结构:卷积层、激活函数、池化层(下采样层)和输出层这几种不同结构之间联系与区别。介绍了比较几种典型的卷积神经网络Alexnet、VGGNet、ResNet 及其主要网络结构,总结了深度学习算法卷积神经网络的优缺点。本文的实验部分是首先完成实验环境安装、样本制作和样本预处理,其次进行深度学习网络模型的训练,得到训练模型以后对测试数据集进行预测正确率,最后做出了一个水果识别可视化界面图显示每个水果的种类。

关键词:水果识别;深度学习; 卷积神经网络;特征提取

一、 水果识别的实验结果分析

3.1 实验环境

本系统在 window10 操作平台进行开发。Anaconda 是一款可以在计算机上安装同一个软件的各种版本,非常方便而且速度快,所以使用它来安装环境,开发语言为 python3.7,具体详细电脑环境版本如表 3.1。

表 3.1 软硬件环境表
在这里插入图片描述

python 的基础上利用 pytorch 来搭建使用的。搭建好深度学习环境和 anaconda 后,如下图 3.1 所示,进行开发环境的搭建。

在这里插入图片描述

图 3.1 pytorch 库的安装使用

安装好后上述 Pytorch 库后,还有个 torchvision 安装,这个主要集成了一些数据集、深度学习模型、数据集转换等,以后需要使用还是很方便的。

3.2 水果数据集

本文所用的水果数据集是一个具有挑战性的水果图片集。该数据集中包括不同水果拍摄的不同视角(俯视、正视和左视),水果一共有 10 个种类,分别有草莓,葡萄,香蕉,牛油果,苹果,杨桃,人参果、车厘子和火龙果具体示例原图和角度拍摄图如图 3.2 所示。

在这里插入图片描述

(a) 水果种类图

二、水果识别的界面展示

简单介绍了识别的准确率,但是不能直接显示的每类水果的识别是否正确,因此本文利用 python 的 pyqt 库写了水果识别可视化界面,界面如图 3.6 所示:

在这里插入图片描述

图 3.6 水果识别可视化界面图

由图 3.6 可知上面界面显示的是选择图片的路径,左边界面显示的是各个目标预测的百分比,右面界面是显示图片的内容,具体的操作如图 3.7 所示:

在这里插入图片描述

(a)图片识别 1

在这里插入图片描述

(b)图片识别 2

图 3.7 水果识别可视化界面图

结 论

  通过对国内外的相关文献资料研究发现,传统水果识别算法并不能满足日常生活中的应用要求,所以需要我们一种有效的算法来对水果的种类进行有效的分类识别,深度学习作为人工智能领域的重要组成部分,并且在蓬勃发展中引起了广泛的研究,在图像识别领域取得了重大的进展,基于深度学习的水果识别系统的实现具有重大意义。
  详细地介绍了深度学习算法卷积神经网络(CNN)的发展状况。主要介绍了卷积神经网络基本的几个层次结构:卷积层、激活函数、池化层(下采样层)和输出层这几种不同结构之间联系与区别,介绍了比较典型的卷积神经网络Alexnet、VGGNet、ResNet 及其主要网络结构,总结了深度学习算法卷积神经网络的优缺点。并且通过实验使用深度学习技术对水果种类进行识别,验证了这种方法具有优越的识别性能,可广泛应用在水果识别研究中。

目录

1 前言… 1
1.1 研究背景及意义 … 1
1.2 国内外研究现状 … 2
1.2.1 深度学习的国内外研究现状 … 2
1.2.2 水果识别的研究现状 … 2
1.3 研究内容及组织架构 … 3
2 深度学习基础 … 4
2.1 卷积神经网络基本概念 … 4
2.1.1 输入层 … 4
2.1.2 卷积层 … 5
2.1.3 激活函数 … 7
2.1.4 池化层 … 8
2.1.5 全连接层 … 9
2.2 卷积神经网络模型 … 10
2.2.1 典型网络结构 … 10
2.2.2 卷积神经网络的优缺点 … 12
2.3 本章小结 … 13
3 水果识别的实验结果分析 … 13
3.1 实验环境 … 13
3.2 水果数据集 … 14
3.3 网络结构与训练过程 … 16
3.3.1 网络结构 … 17
3.3.2 网络训练 … 17
3.4 实验测试与分析 … 17
3.4.1 水果识别率 … 17
3.4.2 水果识别的界面展示 … 18
3.5 本章小结 … 19
4 总结与展望 … 20
4.1 总结 … 20
4.2 展望 … 20
参考文献… 21
致谢 … 23
附录 … 24

猜你喜欢

转载自blog.csdn.net/m0_73485263/article/details/134091832