制作垃圾分类只要找到合适的数据集,垃圾分类的模型构建并不难。
这里收集了一份关于垃圾分类的数据集,一共有四个大类和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("纸巾")
}