news 2026/6/9 21:14:46

基于TensorFlow的简单的垃圾分类系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于TensorFlow的简单的垃圾分类系统

第三章 需求分析与系统功能分析

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

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 12:59:00

惊!中科院1区Top权威顶刊降为2区

🔥 🔥 🔥 🔥《Computers & Industrial Engineering》创刊于1976年,是工业工程与计算机科学交叉领域中历史悠久、享有盛誉的国际顶尖期刊,以其扎实的学术质量和明确的应用导向著称。它不仅见证了该…

作者头像 李华
网站建设 2026/6/10 12:59:49

模型驱动测试的理论基础与实践挑战

模型驱动测试的理论框架 模型驱动测试(Model-Driven Testing,简称MDT)作为一种先进的软件测试方法论,其核心思想是将测试活动提升到抽象模型层面,而非传统意义上针对具体代码的测试。这一理念的提出,标志着…

作者头像 李华
网站建设 2026/6/10 12:58:48

独家解密Open-AutoGLM睡眠模式设计,待机功耗进入微瓦时代的底层逻辑

第一章:Open-AutoGLM低功耗运行优化在边缘计算与物联网设备日益普及的背景下,Open-AutoGLM模型的低功耗运行成为关键挑战。通过算法与硬件协同优化策略,可在保证推理精度的同时显著降低能耗。模型剪枝与量化策略 为减少计算负载,采…

作者头像 李华
网站建设 2026/6/9 19:57:12

Open-AutoGLM推理加速实战:如何将模型延迟降低80%?

第一章:Open-AutoGLM推理加速实战:如何将模型延迟降低80%?在大模型推理场景中,Open-AutoGLM 作为一款支持自动优化的生成式语言模型框架,其推理延迟直接影响用户体验与系统吞吐。通过合理的优化策略组合,可…

作者头像 李华
网站建设 2026/6/10 12:02:06

当云原生遇见VMware—探讨容器化改造中vSphere的融合创新方案

随着云原生技术的浪潮席卷全球,以容器和Kubernetes为代表的新一代应用架构正在重塑企业IT格局。对于数以万计深度依赖VMware vSphere构建其虚拟化数据中心的企业而言,这既是前所未有的机遇,也带来了严峻的挑战:如何在既有的、成熟…

作者头像 李华
网站建设 2026/6/10 16:15:05

揭秘Open-AutoGLM高延迟难题:5步精准定位并降低操作延迟

第一章:揭秘Open-AutoGLM高延迟难题:5步精准定位并降低操作延迟在部署 Open-AutoGLM 模型服务时,高延迟问题常导致响应缓慢,影响用户体验。通过系统性排查与优化,可显著降低端到端操作延迟。以下是五个关键步骤&#x…

作者头像 李华