垃圾分类数据集-8w张图片245个类附赠tensorflow代码

news/2024/12/30 2:20:28/

课程设计要做一个垃圾分类系统,需要识别可回收垃圾、厨余垃圾、有害垃圾和其他垃圾等四个大类,在网上找到了很多开源的数据集,但是质量参差不齐,而且有坏图的存在,所以我就将这些数据集还有自己爬取的数据一起清洗了一遍,全部保存为了jpg的格式,一共有245个小类4个大类,包含80012张图片。模型训练使用的是tensorflow2.3,其中mobilenet的准确率有82%,并使用pyqt5构建了图形化界面,如下所示。

image-20210618133633509

目前课程设计已经提交并获得了不错的成绩,很开心!这里我把代码和数据集一起分享出来,大家根据需要自取。

下载地址如下:

数据集和模型:垃圾分类数据集和tf代码-8w张图片245个类.zip-深度学习文档类资源-CSDN下载

代码:trash_classification_tf2.3: 基于tensorflow2.3的垃圾分类系统 (gitee.com)

数据集构成

数据集总览

数据集一共包含245个小类4个大类,4个大类分别是可回收垃圾、厨余垃圾、有害垃圾和其他垃圾,图片一共是10个g左右,包含80012张图片,如下所示:

image-20210618113358137

Figure_1

数据集细节

数据集按照子文件夹进行了放置,直接使用tensorflow的api读取就可以,省去了标注的流程,如下所示:

image-20210618132908233

详细的图像类别如下,一共是245类,包含了我们日常生活中所能见到的绝大数垃圾

trash_jpg
├─ 其他垃圾_PE塑料袋
├─ 其他垃圾_U型回形针
├─ 其他垃圾_一次性杯子
├─ 其他垃圾_一次性棉签
├─ 其他垃圾_串串竹签
├─ 其他垃圾_便利贴
├─ 其他垃圾_创可贴
├─ 其他垃圾_卫生纸
├─ 其他垃圾_厨房手套
├─ 其他垃圾_厨房抹布
├─ 其他垃圾_口罩
├─ 其他垃圾_唱片
├─ 其他垃圾_图钉
├─ 其他垃圾_大龙虾头
├─ 其他垃圾_奶茶杯
├─ 其他垃圾_干燥剂
├─ 其他垃圾_彩票
├─ 其他垃圾_打泡网
├─ 其他垃圾_打火机
├─ 其他垃圾_搓澡巾
├─ 其他垃圾_果壳
├─ 其他垃圾_毛巾
├─ 其他垃圾_涂改带
├─ 其他垃圾_湿纸巾
├─ 其他垃圾_烟蒂
├─ 其他垃圾_牙刷
├─ 其他垃圾_电影票
├─ 其他垃圾_电蚊香
├─ 其他垃圾_百洁布
├─ 其他垃圾_眼镜
├─ 其他垃圾_眼镜布
├─ 其他垃圾_空调滤芯
├─ 其他垃圾_笔
├─ 其他垃圾_胶带
├─ 其他垃圾_胶水废包装
├─ 其他垃圾_苍蝇拍
├─ 其他垃圾_茶壶碎片
├─ 其他垃圾_草帽
├─ 其他垃圾_菜板
├─ 其他垃圾_车票
├─ 其他垃圾_酒精棉
├─ 其他垃圾_防霉防蛀片
├─ 其他垃圾_除湿袋
├─ 其他垃圾_餐巾纸
├─ 其他垃圾_餐盒
├─ 其他垃圾_验孕棒
├─ 其他垃圾_鸡毛掸
├─ 厨余垃圾_八宝粥
├─ 厨余垃圾_冰激凌
├─ 厨余垃圾_冰糖葫芦
├─ 厨余垃圾_咖啡
├─ 厨余垃圾_圣女果
├─ 厨余垃圾_地瓜
├─ 厨余垃圾_坚果
├─ 厨余垃圾_壳
├─ 厨余垃圾_巧克力
├─ 厨余垃圾_果冻
├─ 厨余垃圾_果皮
├─ 厨余垃圾_核桃
├─ 厨余垃圾_梨
├─ 厨余垃圾_橙子
├─ 厨余垃圾_残渣剩饭
├─ 厨余垃圾_水果
├─ 厨余垃圾_泡菜
├─ 厨余垃圾_火腿
├─ 厨余垃圾_火龙果
├─ 厨余垃圾_烤鸡
├─ 厨余垃圾_瓜子
├─ 厨余垃圾_甘蔗
├─ 厨余垃圾_番茄
├─ 厨余垃圾_秸秆杯
├─ 厨余垃圾_秸秆碗
├─ 厨余垃圾_粉条
├─ 厨余垃圾_肉类
├─ 厨余垃圾_肠
├─ 厨余垃圾_苹果
├─ 厨余垃圾_茶叶
├─ 厨余垃圾_草莓
├─ 厨余垃圾_菠萝
├─ 厨余垃圾_菠萝蜜
├─ 厨余垃圾_萝卜
├─ 厨余垃圾_蒜
├─ 厨余垃圾_蔬菜
├─ 厨余垃圾_薯条
├─ 厨余垃圾_薯片
├─ 厨余垃圾_蘑菇
├─ 厨余垃圾_蛋
├─ 厨余垃圾_蛋挞
├─ 厨余垃圾_蛋糕
├─ 厨余垃圾_豆
├─ 厨余垃圾_豆腐
├─ 厨余垃圾_辣椒
├─ 厨余垃圾_面包
├─ 厨余垃圾_饼干
├─ 厨余垃圾_鸡翅
├─ 可回收物_不锈钢制品
├─ 可回收物_乒乓球拍
├─ 可回收物_书
├─ 可回收物_体重秤
├─ 可回收物_保温杯
├─ 可回收物_保鲜膜内芯
├─ 可回收物_信封
├─ 可回收物_充电头
├─ 可回收物_充电宝
├─ 可回收物_充电牙刷
├─ 可回收物_充电线
├─ 可回收物_凳子
├─ 可回收物_刀
├─ 可回收物_包
├─ 可回收物_单车
├─ 可回收物_卡
├─ 可回收物_台灯
├─ 可回收物_吊牌
├─ 可回收物_吹风机
├─ 可回收物_呼啦圈
├─ 可回收物_地球仪
├─ 可回收物_地铁票
├─ 可回收物_垫子
├─ 可回收物_塑料制品
├─ 可回收物_太阳能热水器
├─ 可回收物_奶粉桶
├─ 可回收物_尺子
├─ 可回收物_尼龙绳
├─ 可回收物_布制品
├─ 可回收物_帽子
├─ 可回收物_手机
├─ 可回收物_手电筒
├─ 可回收物_手表
├─ 可回收物_手链
├─ 可回收物_打包绳
├─ 可回收物_打印机
├─ 可回收物_打气筒
├─ 可回收物_扫地机器人
├─ 可回收物_护肤品空瓶
├─ 可回收物_拉杆箱
├─ 可回收物_拖鞋
├─ 可回收物_插线板
├─ 可回收物_搓衣板
├─ 可回收物_收音机
├─ 可回收物_放大镜
├─ 可回收物_日历
├─ 可回收物_暖宝宝
├─ 可回收物_望远镜
├─ 可回收物_木制切菜板
├─ 可回收物_木桶
├─ 可回收物_木棍
├─ 可回收物_木质梳子
├─ 可回收物_木质锅铲
├─ 可回收物_木雕
├─ 可回收物_枕头
├─ 可回收物_果冻杯
├─ 可回收物_桌子
├─ 可回收物_棋子
├─ 可回收物_模具
├─ 可回收物_毯子
├─ 可回收物_水壶
├─ 可回收物_水杯
├─ 可回收物_沙发
├─ 可回收物_泡沫板
├─ 可回收物_灭火器
├─ 可回收物_灯罩
├─ 可回收物_烟灰缸
├─ 可回收物_热水瓶
├─ 可回收物_燃气灶
├─ 可回收物_燃气瓶
├─ 可回收物_玩具
├─ 可回收物_玻璃制品
├─ 可回收物_玻璃器皿
├─ 可回收物_玻璃壶
├─ 可回收物_玻璃球
├─ 可回收物_瑜伽球
├─ 可回收物_电动剃须刀
├─ 可回收物_电动卷发棒
├─ 可回收物_电子秤
├─ 可回收物_电熨斗
├─ 可回收物_电磁炉
├─ 可回收物_电脑屏幕
├─ 可回收物_电视机
├─ 可回收物_电话
├─ 可回收物_电路板
├─ 可回收物_电风扇
├─ 可回收物_电饭煲
├─ 可回收物_登机牌
├─ 可回收物_盒子
├─ 可回收物_盖子
├─ 可回收物_盘子
├─ 可回收物_碗
├─ 可回收物_磁铁
├─ 可回收物_空气净化器
├─ 可回收物_空气加湿器
├─ 可回收物_笼子
├─ 可回收物_箱子
├─ 可回收物_纸制品
├─ 可回收物_纸牌
├─ 可回收物_罐子
├─ 可回收物_网卡
├─ 可回收物_耳套
├─ 可回收物_耳机
├─ 可回收物_衣架
├─ 可回收物_袋子
├─ 可回收物_袜子
├─ 可回收物_裙子
├─ 可回收物_裤子
├─ 可回收物_计算器
├─ 可回收物_订书机
├─ 可回收物_话筒
├─ 可回收物_豆浆机
├─ 可回收物_路由器
├─ 可回收物_轮胎
├─ 可回收物_过滤网
├─ 可回收物_遥控器
├─ 可回收物_量杯
├─ 可回收物_金属制品
├─ 可回收物_钉子
├─ 可回收物_钥匙
├─ 可回收物_铁丝球
├─ 可回收物_铅球
├─ 可回收物_铝制用品
├─ 可回收物_锅
├─ 可回收物_锅盖
├─ 可回收物_键盘
├─ 可回收物_镊子
├─ 可回收物_闹铃
├─ 可回收物_雨伞
├─ 可回收物_鞋
├─ 可回收物_音响
├─ 可回收物_餐具
├─ 可回收物_餐垫
├─ 可回收物_饰品
├─ 可回收物_鱼缸
├─ 可回收物_鼠标
├─ 有害垃圾_指甲油
├─ 有害垃圾_杀虫剂
├─ 有害垃圾_温度计
├─ 有害垃圾_灯
├─ 有害垃圾_电池
├─ 有害垃圾_电池板
├─ 有害垃圾_纽扣电池
├─ 有害垃圾_胶水
├─ 有害垃圾_药品包装
├─ 有害垃圾_药片
├─ 有害垃圾_药瓶
├─ 有害垃圾_药膏
├─ 有害垃圾_蓄电池
└─ 有害垃圾_血压计

代码构成

注:代码中的数据集目录需要修改为你本地的目录,模型名称如果改了的话也要修改,如下

image-20210618140144582

代码结构

images 目录主要是放置一些图片,包括测试的图片和ui界面使用的图片
models 目录下放置训练好的两组模型,分别是cnn模型和mobilenet的模型
results 目录下放置的是训练的训练过程的一些可视化的图,两个txt文件是训练过程中的输出,两个图是两个模型训练过程中训练集和验证集准确率和loss变化曲线
utils 是主要是我测试的时候写的一些文件,对这个项目没有实际的用途
mainwindow.py 是界面文件,主要是利用pyqt5完成的界面,通过上传图片可以对图片种类进行预测
testmodel.py 是测试文件,主要是用于测试两组模型在验证集上的准确率,这个信息你从results的txt的输出中也能获取
train_cnn.py 是训练cnn模型的代码
train_mobilenet.py 是训练mobilenet模型的代码

效果展示

image-20210618140744256

image-20210618140804792

results_mobilenet_epoch30

heatmap


http://www.ppmy.cn/news/406507.html

相关文章

【houdini】带着uv进行模拟(冰激凌案例)

整个sop的路线图 前半部分:赋予材质并分离冰激凌球 一般模型是分部分的,比方说下面这个冰激凌的,分为5个部分。三个不同的冰激凌球和水和杯子。这些部分在houdini中被称为group。 用material节点一口气赋予5个group材质。 具体的材质的指…

css- 雪碧图与渐变

1. 雪碧图 解决图片闪烁的问题: 可以将多个小图片统一保存到一个大图片中,然后通过调整background-position来显示响应的图片 这样图片会同时加载到网页中就可以有效的避免出现闪烁的问题 这个技术在网页中应用十分广泛,被称为CSS-Sprite&…

冰激凌指数

对于冰激凌,是大多数女孩子喜欢的。记得2000年的时候,有很多小mm请我的大哥请她们吃冰激凌。玲是其中的一个。我大哥是一家软件公司的中层主管,经常去蹦迪,在那个时候认识了玲。 说起来,玲认识我大哥,纯粹…

CSS3背景图片

一&#xff0c;background-origin 背景图片的定位区域 看下面一个例子 <div class"wrap"><span>padding</span><div class"content">content</div> </div><style> .wrap{width:200px;border:20px dashed #00…

【HTML】图片标签(img)

图片标签&#xff08;img&#xff09; 图片标签&#xff08;img&#xff09;属性src属性alt属性图片的宽高注意 图片的格式jpge(jpg)gifpngwebpbase64使用规则 图片标签&#xff08;img&#xff09; 图片标签用于向当前页面中引入一个外部图片。 使用img标签来引入外部图片&am…

时尚的蓝紫色动漫网站HTML模板 - OneAnime

OneAnime是精美的动漫在线观看网站HTML5模板&#xff0c;也可以作为动漫新闻和博客网站的界面。模板使用紫黑色的UI设计,看起来很漂亮。模板编码基于Bootstrap v4.1.3框架&#xff0c;很容易自定义。 主要特色 Bootstrap v4.1.3 响应式布局 时尚的UI设计 themify字体小图标 无…

冰激凌的诱惑

冰激凌的诱惑&#xff0c;花掉了小贝一周的午饭……  我们呢?北京这个地方有太多的诱惑&#xff0c;想去拥有太多的东西。怎么办?靠自己去争取&#xff0c;努力努力努力!加油吧。  少吃一个冰激凌我就可以离房子近一点&#xff0c;哪怕一点我也要争取。什么冰激凌、优酪乳…

CSS样式——背景图片

文章目录 颜色color图片image图片大小size重复repeat滚动行为attachment坐标position位置origin裁剪clip 颜色color 用颜色作为背景。 <div id"app"></div>* {margin: 0;padding: 0; } #app {width: 400px;height: 300px;background-color: red; }图…