首页 > 编程语言 >垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序

时间:2023-07-31 10:37:49浏览次数:48  
标签:微信 分类 程序 可回收 垃圾 识别


垃圾分类小程序


了解垃圾分类

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_图像、语音识别

2019年7月1日起上海就要开始正式执行《上海市生活垃圾管理条例》,真的。。。不是开开玩笑随便执行

如果依旧混合投放垃圾,拒不整改个人最高可罚款200元企业单位最高罚款5万元

所以魔都的朋友都开始努力复习垃圾分类

  • 干的东西不一定就是干垃圾
  • 湿的不一定就是湿垃圾
  • 你以为的可回收物未必就是可回收垃圾

不少人都表示:实在太难了!

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_数据库_02

垃圾分类可是要全国推行的到2020年底, 先行先试的46个重点城市, 要基本建成垃圾分类处理系统。

除上海外,还有:

北京、天津、重庆、石家庄、邯郸、太原、呼和浩特、沈阳、大连、长春、哈尔滨、南京、苏州,杭州、宁波、合肥、铜陵、福州、厦门、南昌、宜春、郑州、济南、泰安、青岛、武汉、宜昌、长沙、广州、深圳、南宁、海口、成都、广元、德阳、贵阳、昆明、拉萨、日喀则、西安、咸阳、兰州、西宁、银川、乌鲁木齐市。

这简直比高考还难!

难到都不想点外卖喝奶茶了…

于是 这款基于图像识别、语音识别的垃圾分类小程序 就来了~

扔垃圾再也不怕不怕啦!

更多垃圾分类相关参考:https://www.sohu.com/a/325019787_100159440

一、垃圾分类问题

1.关于垃圾分类

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_图像、语音识别_03

  • 垃圾分类是社会进步和生态文明的标志,是人人均可参与其中来保护环境和改善环境的方式。
  • 我们追求进步,崇尚文明,希望有碧水蓝天净土,共建美好家园。
2.垃圾分类的标准
  • 由于全国垃圾暂时没有统一的标准,开放垃圾分类的城市以自己的规定为准。
  • 像上海,生活垃圾分为 有害垃圾、可回收物、干垃圾、湿垃圾。
  • 像北京,生活垃圾分为 有害垃圾、可回收物、其他垃圾、厨余垃圾。

注意:北京的厨余垃圾就是上海的湿垃圾,北京的其他垃圾是上海的干垃圾,名称不同,实际上的垃圾种类是相通的。

3.基本分类及其定义

上海为例

  • 1、可回收垃圾:玻璃金属蓝桶入,循环利用变宝物。
    可回收垃圾即废纸张、废塑料、废玻璃制品、废金属、废织物等适宜回收、可循环利用的生活废弃物。
  • 2、有害垃圾:电池废药有害处,灯管油漆红桶入。
    有害垃圾即废电池、废灯管、废药品、废油漆及其容器等对人体健康或者自然环境造成直接或者潜在的危险的生活废弃物。
  • 3、湿垃圾:厨房剩饭瓜果皮,统统转入湿垃圾。
    湿垃圾即易腐垃圾,是指食材废料、剩菜剩饭、过期食品、瓜皮果核、花卉绿植、中药药渣等生物质生活废弃物。
  • 4、干垃圾:毛发尿片香烟蒂,无害无用灰桶里。
    干垃圾即其他垃圾,是指可回收物、有害垃圾、湿垃圾以外的其他生活废弃物。
4.垃圾分类技巧

上海为例

关于上海垃圾分类流行这样一句话

  • 猪能吃的——湿垃圾(厨余垃圾)
  • 猪都不吃的是——干垃圾(其他垃圾)
  • 猪吃会shi的是——有害垃圾
  • 卖了可以买猪的是——可回收垃圾

需要注意的是

  • 小骨头算湿垃圾,大个的猪骨头牛骨头算干垃圾;
  • 鸡蛋壳算湿垃圾,而坚果壳算干垃圾;
  • 陶瓷碗碟算干垃圾,塑料碗碟算可回收垃圾;
  • 纸杯算干垃圾,纸杯的塑料盖子算可回收垃圾;
  • 奶茶里的珍珠是湿垃圾,奶茶杯算干垃圾,奶茶塑料盖算可回收垃圾。
5.垃圾分类查询网站
  • 功能网站查询:https://www.8684.cn/ljfl
  • 上海市垃圾分类查询:http://www.lsnews.com.cn/py/qg/201907/t20190701_214222.shtml

二、小程序


1.需求

需要一款微信小程序,能够根据所在城市的垃圾分类准则,方便准确的为用户提供 关于垃圾投放 等相关问题。

涉及的功能模块

  • 首页
  • 搜索框直接搜索
  • 图像识别搜索
  • 语音识别搜索
  • 专题
  • 更多
2.开发环境
  • 工具:微信开发者工具
  • 环境:云函数、云数据库、云存储
  • api:百度Al接口
3.开发过程
3.1位置定位模块
  • 使用微信小程序的qqmap-sdk工具包,创建utils工具类封装方法getLocation()获取当前位置。
  • 定位失败、当前城市未开放垃圾分类的情况默认上海。
  • 用户可以点击选择指定的城市,可以一键重新定位当前城市。
  • 不同的城市对应不同的垃圾分类数据信息,数据存储在 云数据库 中。
3.2首页分类图片显示
  • 显示当前定位城市的垃圾分类数据。
  • 进入首页—》根据当前城市查询数据库—》获取 sx_name 即当前城市对应分类图片的缩写—》然后渲染为本地图片。(针对不同城市垃圾分类种类不相同,如上海的干垃圾即为北京及其他地区的其他垃圾
  • 点击分类图片进入该当前分类的详情页,具体展示 分类概述 、投放指南、代表垃圾。(图像识别、语音识别之后得到结果也是跳转这个分类图详情页面)
3.3图像、语音识别实现流程
  • 图像识别:上传图片,获得tempFilePath—》拿着tempFile获得base64编码—》拿着base64等参数访问api—》渲染结果—》拿着结果(多个)请求数据库获取分类信息—》渲染到页面该识别结果的后面显示。
  • 语音识别:上传语音(配置好recorderManager等录制参数,选在可选PCM格式)获得tempFilePath—》拿着tempFilePath获得base64编码—》拿着base64等参数访问api—》渲染结果到搜索框----》用户点击搜索框,进行类别匹配(丛云数据库中取数据)
3.3专题
  • 专题是针对于那些常见但是不宜区分、一种物品拆分分类的垃圾。
  • 专题的实现一般不需要频繁变动,因此可以使用静态数据,减轻云函数、云数据库的压力,提高响应速度。

注意

  • 实现并没有直接调用其他的识别接口,那样太简单了,而且一般这种接口需要付费。
  • 语音识别api因为是http,暂时只能pc端、体验版调试 使用,线上环境会出现 '网络错误~'的提示。(现已经解决)
问题

这里不再详细说明,开发中遇到的问题记录在博客(id:xiaosi、),参考

  • 微信小程序云开发问题篇1_使用云数据库查询不出数据解决(字段类型对应、数据库读写权限)
  • 微信小程序云开发问题篇2_微信小程序调百度图像识别接口问题小计(报错:216101 not enough param 参数不足、上传到云存储图片名称后缀问题、图像base64编码识别)
  • 微信小程序云开发问题篇3_云数据库导入Excel数据(xls转为json导入之后报错:导入数据库失败, Error: Poll error, 导入数据任务(id:1431654)异常…)
  • 微信小程序云开发问题篇4_微信云数据库记录内嵌数组查询( 根据数组对象的key 查询一条记录中 符合条件的 {key :xxx, value: xxx}对象,然后将该对象返回)
  • 微信小程序云开发问题篇5_关于navigateTo()页面跳转的传参问题(中文字符通过eventChannel实现参数传递)
  • 微信小程序云开发问题篇6_微信小程序从云存储保存图片到本地(关于图片保存授权的问题和一些坑:只弹出一次图片权限确认框、getSetting获取所有权限的判定存在undefined的情况)
  • 微信小程序云开发问题篇7_微信小程序调百度语音识别接口问题小记(报错1: invalid audio length 、报错2:json param error 、关于json和row两种方式的请求)
  • 微信小程序云开发问题篇8_语音识别问题:忽略了https校验
源码

开发的源代码也上传至GitHub:


4.效果

目前小程序1.0.0版已经发布,可以通过扫描二维码的方式体验


基本截图

这是1.0.0版本的截图,后续会改进优化~

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_小程序_04

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_图像、语音识别_05

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_垃圾识别_06

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_数据库_07

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_图像、语音识别_08

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_小程序_09

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_小程序_10

垃圾慧分类微信小程序_基于图像识别、语音识别的垃圾分类小程序_新星计划_11


标签:微信,分类,程序,可回收,垃圾,识别
From: https://blog.51cto.com/u_15790456/6905705

相关文章

  • 微信小程序相关
    1、框架选型原生微信小程序写法uniapp-clivue写法uniapp-hBuildXxue写法上述三个选项一般使用下方两个;毕竟在不修改代码写法的基础上,很易上手2、UI选型uView-移动端多端开发mintUI-饿了么团队mui-停止维护了vant-有赞前端团队目前在实际业务开发中使用过的只有uview和......
  • ChatGPT下程序员应该何去何从?
    自从看到ChatGPT会编程后,很多人产生了程序员会被淘汰的错觉。为啥说这是一种错觉?其一,从能力上ChatGPT当前的智能程度仍局限于解决具体问题,但对于全局仍无法掌控。其二,ChatGPT虽然降低了编程的门槛,但技术一直在更新,也有越来越多人进入程序员的行列,过时的技术和没有进步的人一样会被......
  • Qt将程序打包成.exe文件,并添加图标
    1、在工程中添加一个QtResourceFile,文件名任意2、将.ico后缀的图片放到跟工程文件(.pro)文件同目录下,并在QtResourceFile文件中添加该.ico文件3、添加相关代码,设置窗口图标4、双击打开.pro文件,并在文件末添加上添加完成后ctrl+s保存,此时可以尝试run一下看看窗口图标有没有修......
  • 我坦白我有厌蠢症,讨厌蠢货,讨厌数字垃圾制造者,博客加密码了
    截至今日,写技术博客6年半了写下每一篇的时候都意味着在一个技术领域发现了大量数字垃圾由于我极度讨厌蠢货,讨厌数字垃圾制造者所以,每篇文章都是调试通过后纪录部分文章阅读量还不少但都是白嫖党,帮他们解决了问题,结果连句谢谢都没有今天开始编写一个爬虫,把每篇文章都......
  • windows 获取系统中所有应用程序
    前言:  记录下。重点    RegistryView.Registry64与RegistryView.Registry32。有些程序在Registry64中,有些程序在Registry32中。 代码查看代码varlocalMachine=RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,RegistryView.Registry64......
  • 基于JAVA的程序设计语言网上考试系统
    科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用Java技术建设VisualC程序设计......
  • 【Spring Boot 初识丨八 丨外部应用程序属性 】
    上一篇讲了SpringBoot的外部化配置的加载顺序及一些简单的属性说明本篇来讲一讲外部化配置一些比较重要的部分SpringBoot初识:(外部化配置详解)外部应用程序属性  当您的应用程序启动时,SpringBoot将自动从以下位置查找并加载application.properties和application.......
  • 小程序
    初始渲染缓存工作原理小程序页面的初始化分为两个部分。逻辑层初始化:载入必需的小程序代码、初始化页面this对象(也包括它涉及到的所有自定义组件的this对象)、将相关数据发送给视图层。视图层初始化:载入必需的小程序代码,然后等待逻辑层初始化完毕并接收逻辑层发送的数据,最......
  • H5打包封装小程序系统开发
    H5打包封装小程序系统开发H5打包封装小程序系统开发是指将H5页面打包封装成小程序的开发过程。下面是一个简单的步骤:准备工作:首先,需要准备好H5页面的代码和资源文件。确保H5页面在浏览器中正常运行,并且没有依赖于浏览器特定的功能。创建小程序项目:在微信开发者工具中创建一个新的小......
  • python数据分析师入门-学习笔记(第五节 爬虫分类)
    学习链接:Python数据分析师入门爬虫分类1.聚焦爬虫-完成某一项特定数据的采集-百分之九十的爬虫2.通用爬虫-什么内容都采集,存储下来-搜索引擎3.增量爬虫-既可以使用聚焦爬虫,也可以使用通用爬虫-当内容变化时,可以爬取变化的内容4.暗网爬虫-深网爬......