第三章 需求分析与系统功能分析
3.1 系统需求分析
3.1.1功能需求
(1)输入图片:
①摄像头拍照
②通过文件载入图片
(2)识别垃圾:
①当识别为蓝色的垃圾时即可回收物
②当识别为绿色的垃圾时即餐厨垃圾
③当识别为红色的垃圾即有害垃圾
④当识别为灰色的垃圾时即其他垃圾
(3)输出结果
3.1.2性能需求
(1)识别时间:
在95%的情况下,一般的识别时间不超过2秒。
(2)识别广度:
需要对大部分物品识别出是那一类垃圾。
(3)识别精度:
对大部分物品识别的准确率要超过90%。
(4)输入图片:
对jpg,与png格式图片需要都支持。
3.1.3兼容性需求
系统支持Windows10操作系统;
系统支持Python3.6
3.1.4易用性需求
简易式操作方式,仅仅需要导入图片即可进行识别,不需要
登录,注册等即可。
3.1.5硬件约束
推荐配置:
Cpu: intel core i7-7700k 4.4G
内存:至少1x8G
GPU显存:4G以上
硬盘:HDD一个,SSD一个
3.2系统主要功能
系统的主要功能总结十分简单明确,通过拍照或者文件载入
图片输入到已经使用训练好的模型当中去识别,将其识别的结果
输出。
详细由见以下流程图3-1:
图3-1 基本流程图
开始,进入输入图片,输入图片有格式的要求,如果符合需求则进行下一步识别,如果不符合需求则输出不符合需求,并且回到输入图片这一步。进行识别,识别有正确错误之分,但是都会输出结果,但是有可能会出现无法识别,如果无法识别则回到输入图片,可以识别即输出结果。
第四章 基于TensorFlow的简单的垃圾分类系统的实现
4.1系统架构
整个系统的架构有以下组成,输入设备,输入到电脑终端,电脑终端对图像进行图像分类,图像处理,图像识别,识别后的图像再分类的工作,然后输出结果如图4-1所示:
图4-1 架构图
此系统基于TensorFlow设计的分类大脑,对图像的处理大致分为这两步:
(1)使用OpenCV对输入的图片进行预处理
(2)使用基于TensorFlow的卷积神经网络模型的实现图像的分类[6]
4.2 TensorFlow进行模型训练
4.2.1收集获取数据集
通过网络和自己拍的方式,去收集各类的数据集,验证集总共收集13000多张。如下图4-1是一部分的收据集,其中txt是标签。
4.2.4迁移学习
经过一系列调参的操作之后,实际得到的如上两图仍旧是准确率无法得到再次的提升了,于是我通过别的方法让准确率再一次的提升。
这里所用到的方法:迁移学习,即Transfer-learning,它是一种机器学习方法,用不太恰当的言语来描述的话就是:温故而知新。它的目标是将从一个环境A所学到的知识,用于学习另一个环境B的任务。迁移学习通过已学习的相关任务A转移来改进学习的新任务B。迁移学习对人类来说很常见,比如,现实生活中会发现,学习认识狗能够帮助你认识猫,学习拉小提琴能够帮你学习拉二胡,这是因为人具有迁移知识帮助自己学习的能力,对于电脑来讲,通过一些方法也是可以达成同样的目标。
对于迁移学习的定义[9]:
给出一个源域 Ds={Xs, Fs(X)} ,再给出一个学习任务 Ts ,然后是一个目标域 DT={Xt,Ft(X)} 再是学习任务 Tt ,迁移学习的目标就是在源域与目标域不同或者是学习任务 Tt 与学习任务 Ts不同的条件下通过使用学习任务 Ts 和源域 Ds={Xs,Fs(X)} 得到的相关知识帮学习目标的在目标域Dt的预测函数 Ft(.) 。
关于迁移学习的一些研究:
比如基于模型生成的迁移学习方法,当前很多的迁移学习算法都是基于如何判别模型的学习算法[10],判别算法根据给定的一个源域的数据A,通过直接的训练能够获得的判别模型P(B|A),但是因为源域和目标域数据分布是不一样的,又因为判别模型没有考虑有关联合概率的情况P(A,B),所以在某些时候就不能够得到比较好的预测函数。不同于这个判别模型,生成模型是通过计算得出联合概率P(A,B),再去计算P(B|A),生成模型也因此提供了一个相对较好的机制,对源域和目标域的数据不相同,分布不相同,进行生成建模,达到一个比较好的知识迁移提高预测函数准确度。
在本文主要的方向,图像处理方面有一种[11]翻译迁移学习方法,通过使用文本的数据,来帮助图像聚类、也有一种[12]从无标签数据进行迁移学习的方法,这个方法使用了系数编码的技术从无标签的数据中上构造出高层的特征,从而能够提高图像的分类性能。
我们结合图来看,如下图4-13,传统的器学习在同的学习任务时需要建立不同的模型,去学习不同的参数,而对于迁移学习(图4-14),只需要利用源域中的数据将知识迁移到目标域,就能完成模型建立。
4.3运行效果
运行效果基本能够对大部分的测试集图片进行比较准确的识别,下面图4-23为一些中间段实时效果展示,图4-24和图4-25运行最终界面结果展示:
图4-23 中间时段
图4-24
图4-25
文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。