基于CNN的垃圾分类识别系统

        昨天在整理电脑资料的时候无意间发现了前两年下载的数据集,应该是哪里举办的比赛,赛题就是垃圾分类识别相关的任务,当时其实做了一些工作,无奈后面没有继续了就搁置了,最近一年多的时间大都在做CV的项目,今天看到这个数据集,萌生了继续做的想法,于是我拿出上周用来做云状识别开发的模型,改造了一下就可以直接用到这个垃圾分类识别数据集上面了。

       首先看下效果:

       这里的垃圾总分类一共有40个类别,也就是多分类任务,各垃圾类别详情如下所示:

{
    "0": "其他垃圾/一次性快餐盒",
    "1": "其他垃圾/污损塑料",
    "2": "其他垃圾/烟蒂",
    "3": "其他垃圾/牙签",
    "4": "其他垃圾/破碎花盆及碟碗",
    "5": "其他垃圾/竹筷",
    "6": "厨余垃圾/剩饭剩菜",
    "7": "厨余垃圾/大骨头",
    "8": "厨余垃圾/水果果皮",
    "9": "厨余垃圾/水果果肉",
    "10": "厨余垃圾/茶叶渣",
    "11": "厨余垃圾/菜叶菜根",
    "12": "厨余垃圾/蛋壳",
    "13": "厨余垃圾/鱼骨",
    "14": "可回收物/充电宝",
    "15": "可回收物/包",
    "16": "可回收物/化妆品瓶",
    "17": "可回收物/塑料玩具",
    "18": "可回收物/塑料碗盆",
    "19": "可回收物/塑料衣架",
    "20": "可回收物/快递纸袋",
    "21": "可回收物/插头电线",
    "22": "可回收物/旧衣服",
    "23": "可回收物/易拉罐",
    "24": "可回收物/枕头",
    "25": "可回收物/毛绒玩具",
    "26": "可回收物/洗发水瓶",
    "27": "可回收物/玻璃杯",
    "28": "可回收物/皮鞋",
    "29": "可回收物/砧板",
    "30": "可回收物/纸板箱",
    "31": "可回收物/调料瓶",
    "32": "可回收物/酒瓶",
    "33": "可回收物/金属食品罐",
    "34": "可回收物/锅",
    "35": "可回收物/食用油桶",
    "36": "可回收物/饮料瓶",
    "37": "有害垃圾/干电池",
    "38": "有害垃圾/软膏",
    "39": "有害垃圾/过期药物"
}

      将其对应划归到不同索引目录中,如下所示:

        随便抽样几个类别的数据集,如下所示:

【0】

 【6】

 【13】

【24】

 【37】

         原始数据集处理代码如下:

#!usr/bin/env python
#encoding:utf-8
from __future__ import division

'''
__Author__:沂水寒城
功能: 数据归类处理
'''

import os
import random
import shutil


saveDir='data/'

file_list=os.listdir('train_data_v2/')
name_list=list(set([one.strip().split('.')[0].strip() for one in file_list]))
for one_name in name_list:
    one_png='train_data_v2/'+one_name+'.jpg'
    one_txt='train_data_v2/'+one_name+'.txt'
    with open(one_txt) as f:
        one_label=f.read().strip().split(',')[-1].strip()
    oneDir=saveDir+one_label+'/'
    if not os.path.exists(oneDir):
        os.makedirs(oneDir)
    new_path=oneDir+str(len(os.listdir(oneDir))+1)+'.png'
    shutil.move(one_png,new_path)

        这里使用的是与前面博文云状识别同样的模型,只不过改成了多分类模型,这里就不再多介绍了,感兴趣的话可以直接去看前面的博文,这里我默认执行了200次的迭代计算,过程可视化如下所示:

 

        准确度曲线:

        Loss曲线

 

  • 5
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Together_CZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值