湖 南 农 业 大 学
全日制普通本科生毕业论文(设计)
基于 RGB 图像的杂草分类技术研究
RESEARCH ON WEED CLASSIFICATION TECHNOLOGY BASED
ON RGB IMAGE
学生姓名:
学 号:
年级专业及班级:
指导老师及职称:
学 院:
湖南·长沙
提交日期:2021 年 05 月
湖南农业大学全日制普通本科生毕业设计
诚 信 声 明
本人郑重声明:所呈交的本科毕业论文(设计)是本人在指导老师的指导下,进
行研究工作所取得的成果,成果不存在知识产权争议。除文中已经注明引用的内容外,
本论文不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重
要贡献的个人和集体在文中均作了明确的说明并表示了谢意。本人完全意识到本声明
的法律结果由本人承担。
毕业设计作者签名:
年 月 日
目 录
摘 要.......................................................................................................................................1
关键词.......................................................................................................................................1
1 前言.......................................................................................................................................2
1.1 背景与意义........................................................................................................................2
1.1.1 杂草定义与杂草传播.....................................................................................................2
1.1.2 除草方法与除草剂.........................................................................................................3
1.2 杂草识别研究现状分析....................................................................................................4
1.2.1 图像识别杂草在中国研究状况.....................................................................................4
1.2.2 国外杂草识别与除草研究.............................................................................................4
2 相关技术介绍.......................................................................................................................4
2.1 python 与深度学习.............................................................................................................4
2.1.1 python 语言特性..............................................................................................................4
2.1.2 深度学习简介.................................................................................................................5
2.2 用于本次杂草识别技术研究计算的 python 开源库介绍...............................................5
2.2.1 TensorFlow ......................................................................................................................5
2.2.2 Keras ................................................................................................................................6
2.2.3 NumPy,pandas ..............................................................................................................6
2.2.4 SciPy ................................................................................................................................7
2.2.5 Matplotlib.........................................................................................................................7
2.2.6 Tkinter..............................................................................................................................7
2.3 深度学习中 GPU 的作用..................................................................................................7
3 深度学习环境搭建...............................................................................................................8
3.1 本机配置............................................................................................................................8
3.2 文件准备与环境配置........................................................................................................8
3.2.1 文件准备.........................................................................................................................8
3.2.2 安装.................................................................................................................................8
3.2.3 环境配置.........................................................................................................................9
3.3 验证是否成功....................................................................................................................9
3.3.1 检查 cuda,cudnn 版本 ....................................................................................................9
3.3.2 检查 tensorflow-gpu 是否能够运行 ..............................................................................9
3.3.3 利用 tensorflow-gpu 进行一次简单运算 ....................................................................10
4 基于卷积神经网络的杂草识别模型.................................................................................11
4.1 卷积神经网络..................................................................................................................11
4.2 数据集划分......................................................................................................................15
4.3 数据增强..........................................................................................................................16
4.4 resnet 构建模型 ................................................................................................................17
4.5 inception 构建模型...........................................................................................................18
4.6 结果分析..........................................................................................................................19
5 杂草识别系统的设计与实现.............................................................................................22
5.1 批量预测图片杂草的种类..............................................................................................22
5.1.1 确定图片的地址...........................................................................................................22
5.1.2 载入训练好的模型.......................................................................................................22
5.1.3 使用模型进行预测.......................................................................................................22
5.1.4 打印并计算出预处理时间和计算出单张图片推断时间...........................................23
5.2 使用 python GUI 编程实现预测界面 ............................................................................24
5.2.1 软件需求.......................................................................................................................24
5.2.2 python GUI 库介绍 .......................................................................................................25
5.2.3 使用 Tkinter..................................................................................................................25
5.2.4 载入模型,列出杂草种类...........................................................................................25
5.2.5 设置监听器调用模型预测...........................................................................................26
5.2.6 将 python 文件转换成 exe 可执行文件......................................................................27
5.2.7 使用展示.......................................................................................................................27
6 结论.....................................................................................................................................28
参考文献.................................................................................................................................29