手把手教你写垃圾分类系统

文章介绍了一个关于垃圾分类的数据集,包括四个大类和245个小类,并提供了数据集的划分方法。作者分享了数据预处理的代码,包括垃圾名称过滤函数,以及一个使用Axios库发送请求的JavaScript类。这个类用于向特定API发送查询垃圾类型的请求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 垃圾分类是目前社会的一个热点,制作垃圾分类只要找到合适的数据集,垃圾分类的模型构建并不难。

这里收集了一份关于垃圾分类的数据集,一共有四个大类和245个小类,大类分别是厨余垃圾、可回收物、其他垃圾和有害垃圾,小类主要是垃圾的具体类别,果皮、纸箱等。

按照8比1比1的比例将原始数据集划分成了训练集、验证集和测试集.... ... 为了方便大家使用,已经提前将数据集进行了处理,分享出来给大家

一、对垃圾名称进行过滤

// 垃圾名称过滤
  garbage_name_filter (name) {

    // 如果查询名称为全字母
    var letter_reg = /^[A-Za-z]+$/

    // 如果查询名称为全数字
    var number_reg = /^[0-9]*$/

    // 如果查询名称为全字母和数字
    var letter_number_reg = /^[A-Za-z0-9]+$/
    
    if (name.trim().length === 0) {
      console.log('查询类型不能为空');
      return
    } else if (letter_reg.test(name)) {
      console.log('查询类型不能全字母');
      return
    } else if (number_reg.test(name)) {
      console.log('查询类型不能全数字');
      return
    } else if (letter_number_reg.test(name)) {
      console.log('查询类型不能全字母和数字');
      return
    }
    return name
  }

二、封装一个初始方法

// 初始化方法
  constructor () {
    // token
    this.token = "Z1QljZOZiT4NTG"

    // 请求地址
    this.req_url = 'http://api.txapi.cn/v1/c/rubbish_classify_query'

    // 垃圾名称
    this.garbage_name = ''
  }

到这里框架已经基本搭好了,下边直接上完整代码,复制粘贴即可使用

三、完整代码

const axios = require('axios')

class Parse {
  // 初始化方法
  constructor () {
    // token
    this.token = "Z1QljZOZiT4NTG"

    // 请求地址
    this.req_url = 'http://api.txapi.cn/v1/c/rubbish_classify_query'

    // 垃圾名称
    this.garbage_name = ''
  }

  // 垃圾名称过滤
  garbage_name_filter (name) {

    // 如果查询名称为全字母
    var letter_reg = /^[A-Za-z]+$/

    // 如果查询名称为全数字
    var number_reg = /^[0-9]*$/

    // 如果查询名称为全字母和数字
    var letter_number_reg = /^[A-Za-z0-9]+$/
    
    if (name.trim().length === 0) {
      console.log('查询类型不能为空');
      return
    } else if (letter_reg.test(name)) {
      console.log('查询类型不能全字母');
      return
    } else if (number_reg.test(name)) {
      console.log('查询类型不能全数字');
      return
    } else if (letter_number_reg.test(name)) {
      console.log('查询类型不能全字母和数字');
      return
    }
    return name
  }

  // 发送请求
  send_request (url, token, name) {
    let p = new Promise(function (resolve, reject) {
        axios({
          url: url,
          method: 'GET',
          params: {
              token: token,
              name: name
          }
        }).then(resp => {
          if(resp.data.code != 200 && resp.data.msg != "ok"){
              console.log("查询失败")
          } else {
            resolve(resp.data)
          }
        })
    })
    return p
  }

  // run函数
  run (name) {

    // 检测名称是否合法
    this.garbage_name = this.garbage_name_filter(name)

    if(!this.garbage_name){
        return
    }


    var url = this.req_url // token
    var token = this.token // 请求地址
    var name = this.garbage_name // 垃圾名称

    this.send_request(url, token, name).then(res => {
      console.log(res); // 查询结果
    })
  }
}

if(__filename === process.mainModule.filename) {
  // new一个Parse对象
  const p = new Parse()

  // 调用run方法
  p.run("纸巾")
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值