位置: IT常识 - 正文

垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210(垃圾分类手工小模型)

编辑:rootadmin
垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210

推荐整理分享垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210(垃圾分类手工小模型),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:垃圾分类 模板,垃圾分类手工小模型,垃圾分类模拟,垃圾分类模型训练,垃圾分类手工小模型,垃圾分类模块,垃圾分类模型训练,垃圾分类模型训练,内容如对您有帮助,希望把文章链接给更多的朋友!

时间:2023-2-1

本文是图文演示内容,将给大家介绍 ,在MaixHub上训练模型,然后部署到Maix duino开发板上的流程。我这里用于演示的是垃圾分类任务,大家也可以按照该流程训练自己想要的模型。

通过MaixHub的迁移学习,在Maix-1系列开发板上部署一些简单的模型会很方便。 相比之下,自己使用其它平台训练的模型,例如tensorflow,在模型转换和适配的过程中很容易在一些奇怪的问题上卡住,如果没有比较深入的相关知识,可能比较难解决。(比如我之前就失败了)

我也整理了一些资源链接,包括数据集、软件工具下载地址、技术参考文档、交流群。

在过程中遇到一些问题卡住,也挺正常,那就努力解决它们叭!

笔者支持私聊交流 个人主页:清风莫追的主页

文章目录我的准备开始干活在MaixHub训练模型1、上传数据集2、创建训练任务,进行训练3、下载训练好的模型在开发板上运行模型1、烧录模型文件到板子2、通过IDE运行模型3、上传main.py文件到板子(直接板上运行)结束我的准备Maix duino开发板一块(含摄像头配件)Type-c数据集一根垃圾的图片数据集分四类垃圾:厨余垃圾、有害垃圾、可回收垃圾、其它垃圾。每类垃圾分一个文件夹,文件夹中就是该类垃圾的图片。MaixPy IDE(软件)编辑用来调用模型的代码kflash_gui(软件)将模型文件烧录(下载)到开发板上

数据集:有许多地方可以下载,例如:

中文生活垃圾分类数据集-modelscope百度飞桨-AIStudio

软件工具:

kflash_gui:下载教程,下载地址-githubMaixPy IDE:MaixPy安装教程

参考文档:

MaixPy参考文档

了解MaixPy建议阅读其中的”入门必看指南“;或者,在你遇到问题时可以在改文档中进行搜索,大部分可以找到。

MaxPy交流群:

群号:696014576

好的,接下来让我们开始叭。

开始干活在MaixHub训练模型

首先,让我们在浏览器打开MaixHub的网站:MaixHub,任务分为三步:

上传数据集创建训练任务,进行训练下载训练好的模型1、上传数据集

打开MaixHub网站后,点击模型训练

然后创建一个新的数据集

为数据集起个朴素的名字,选择标注类型

分类:判断一张图片的类别。检测:比分类更进一步,从图片找到特定物体,得到物体的位置(坐标)和类别

这里我们选择的是分类;检测任务的训练数据标注会比较麻烦。

然后点击进入我们刚刚创建的数据集,现在它里面还什么都没有

接着添加标签,依次输入添加本次任务中所有的标签。

我这里是把垃圾分成四类,所以标签有food、harmful、other、recyclable,分别代表厨余垃圾、有害垃圾 、其它垃圾、可回收垃圾。

然后点击一个标签,比如food,接着选择图片,以上传类别为food的图片。

选中所有food类别的图片,然后点击打开,就可以批量一次性上传所有该类别的图片。

图片会要加载小一会儿,加载完成后开始上传。 一定要点击“开始上传”!仅仅加载完是没有用的。

至此,我们就已经成功上传了其中一个类别的图片啦!按照上面的方式,我们可以继续上传其余每个类别的图片。

上传完所有类别的图片后,来到总览,可以大致浏览我们刚刚上传的图片。 接下来,就要用这些图片来训练用于垃圾分类的模型了!

2、创建训练任务,进行训练

前面我们已经上传好了模型训练所需要的数据,接下来的任务就是用这些数据来训练一个模型。

来到模型训练,项目,我们创建一个新项目。

填写项目信息。

名称:随便编个项目类型:需要与我们创建数据集时的类型保持一致,这里我选择图像分类项目描述:给自己看的,随便写写。

垃圾分类模型训练部署教程,基于MaixHub和MaixPy-k210(垃圾分类手工小模型)

创建完成后我们就会进入这个项目,选择我们刚刚上传的数据集。

下一步是训练配置。配置通常很重要,但我们大部分使用默认的就行,深入了解这些配置的意义可能需要学习一些深度学习方面的知识。

随机处理:可以全勾上;增强你的模型抗环境条件干扰的能力。部署平台:根据你的开发板来选就好,你可以在MaixPy的文档了解到一些板子相关的信息。

如果选择tfjs,你的模型将可以很方便地在手机或电脑的浏览器中运行,体验模型的效果。数据均衡:如果你上传数据集中,不同类别之间的图片数量差距比较大,就需要开。像我每类都是700张左右,不开也没关系。

然后滑到网页最下面,点击创建训练任务。

小小地等待一会儿,就可以看到它开始训练啦! 训练可能会花费10来分钟的时间(与训练配置中的迭代次数成正比)。即使你关闭网页,MaixHub的后台仍然会继续帮你完成训练,你可以在训练记录查看你正在训练、或已经训练好的模型。

3、下载训练好的模型

将模型下载到电脑本地,为上板做准备。

在训练记录,点击部署。

选择手动部署,然后下载模型。

解压下载得到的压缩包,里面包含如下文件:

main.py:python代码文件,执行它调用模型,MaixHub自动生成。也可以自己写。*.kmodel:模型文件。report.json:没什么用,训练过程中的一些记录。

我们需要的是下图中main.py和model-27622.kmodel这两个文件。

在开发板上运行模型1、烧录模型文件到板子

使用kflash_gui工具,可以完成这个任务。

参考:下载教程,下载地址-github

打开kflash_gui,使用Type-c数据线连接开发板和电脑,然后将.kmodel文件烧录到板子上。我板子上留给模型的烧录地址是0x300000。

烧录到小于这个值的地址,可能会覆盖掉固件。问题也不大,重新刷固件就好(下载固件,然后用kflash_gui烧录到0x000000地址)。

将.kmodel模型文件上传到板子上后,运行模型可以有两种方式:

通过MaixPy IDE中运行,需要板子连接电脑使用IDE直接在板子上运行,给板子通电就可以2、通过IDE运行模型

我们将使用MaxiPy IDE工具完成这个任务。

参考:MaixPy安装教程

打开MaixPy IDE,保证板子连着电脑,然后在IDE中点击左下角的连接按钮(绿色),选择串口,连接成功后按钮会由绿色变成红色。

选择串口:如果不知道选哪个,就都试试叭。

然后在IDE中打开我们下载的main.py文件,点击左下角的播放按钮,即可开始运行。

MaixHub给你的main.py文件或许不能直接运行,下面的代码可能需要改一下,因为你的模型是烧录在板子的指定地址的。 只需要用上面那行注释掉的代码代替下面的代码。

修改如下:

if __name__ == "__main__": try: main(labels=labels, model_addr=0x300000) except Exception as e: sys.print_exception(e) lcd_show_except(e) finally: gc.collect()

如果一切顺利的话,开始体验你的模型吧!祝你好运!

3、上传main.py文件到板子(直接板上运行)

上传main.py文件到板子后,你可以通过两种途径查看模型的运行效果:

串口终端(还是要连电脑)板子的屏幕配件(只需给板子通电)

和烧录类似,都是把文件传到板子。但烧录是直接从指定的地址开始,写入二进制文件;而接下来的文件,是上传后交给板子上的文件系统管理的。

打开MaixPy IDE,将IDE连接板子(左下角的连接按钮),连接成功后,在工具栏选择发送文件到开发板即可,选择main.py文件上传。

接下来演示一下通过串口终端的运行方式。(因为我板子没有屏幕配件?)

虽然和IDE左下角的播放按钮运行一样,需要连接电脑。但串口终端还是有它的优势:占用板子内存更少出错时可能显示更多的错误信息

IDE需处于断开连接状态,否则会和串口终端的连接冲突! 然后在工具栏,选择打开终端,串行端口。

我的串口终端并不能显示摄像头拍摄到的图像(不知是否正常现象),所以我选择修改代码将运行结果打印出来。

结束

写得有点累,不知道对你有没有帮助,感谢阅读!

到此为止。

本文链接地址:https://www.jiuchutong.com/zhishi/297362.html 转载请保留说明!

上一篇:Vue.js笔记------事件(vue.js.)

下一篇:联邦学习(FL)+差分隐私(DP)

  • 一个地址可以注册几个公司必须满足以下要求

    一个地址可以注册几个公司必须满足以下要求

  • 海康威视摄像头密码怎么重置(海康威视摄像头安装方法视频教程)

    海康威视摄像头密码怎么重置(海康威视摄像头安装方法视频教程)

  • 苹果怎么设置录视频功能(苹果怎么设置录屏的清晰度)

    苹果怎么设置录视频功能(苹果怎么设置录屏的清晰度)

  • 照片弄成漫画图怎么弄(照片弄成漫画图的软件)

    照片弄成漫画图怎么弄(照片弄成漫画图的软件)

  • 手机屏幕打不开但是是开机状态(手机屏幕打不开黑屏怎么办)

    手机屏幕打不开但是是开机状态(手机屏幕打不开黑屏怎么办)

  • 华为隐私空间完全隔离吗(华为隐私空间用法)

    华为隐私空间完全隔离吗(华为隐私空间用法)

  • 快手提现失败是怎么回事(快手提现失败是咋回事)

    快手提现失败是怎么回事(快手提现失败是咋回事)

  • qq赞资料卡是什么意思(qq赞资料卡有什么用)

    qq赞资料卡是什么意思(qq赞资料卡有什么用)

  • 微信点不进去聊天界面怎么办(微信聊天点不进去)

    微信点不进去聊天界面怎么办(微信聊天点不进去)

  • 同屏器需要网络吗(同屏器连接wifi那还能上网吗)

    同屏器需要网络吗(同屏器连接wifi那还能上网吗)

  • 为什么插耳机进去却不能用(为什么插耳机进去却没有声音)

    为什么插耳机进去却不能用(为什么插耳机进去却没有声音)

  • 耳机和耳麦有什么区别(耳机耳麦有什么用)

    耳机和耳麦有什么区别(耳机耳麦有什么用)

  • 苹果共享的相簿干嘛的(苹果共享的相簿会被别人看到吗)

    苹果共享的相簿干嘛的(苹果共享的相簿会被别人看到吗)

  • android设备登录是什么手机(Android设备登录是什么手机)

    android设备登录是什么手机(Android设备登录是什么手机)

  • iphone7plus微信消息不提示(苹果7plus微信信息不提示)

    iphone7plus微信消息不提示(苹果7plus微信信息不提示)

  • ipad分析共享要开吗(ipad共享分析打开还是关闭)

    ipad分析共享要开吗(ipad共享分析打开还是关闭)

  • 快手怎么设置顶置作品(快手怎么设置顶置评论)

    快手怎么设置顶置作品(快手怎么设置顶置评论)

  • 苹果11支持5g吗2019(苹果11支持5g不?)

    苹果11支持5g吗2019(苹果11支持5g不?)

  • vivos1pro支持无线充电吗(vivos1pro带无线充电功能吗?)

    vivos1pro支持无线充电吗(vivos1pro带无线充电功能吗?)

  • 计算机资源主要是指(计算机资源主要指)

    计算机资源主要是指(计算机资源主要指)

  • pr里的渲染是什么意思(pr渲染是干嘛)

    pr里的渲染是什么意思(pr渲染是干嘛)

  • 计算机上onc是什么键(计算机上的on/c表示什么意思)

    计算机上onc是什么键(计算机上的on/c表示什么意思)

  • 华为p30手机虚电怎么解决(华为手机虚电怎么办)

    华为p30手机虚电怎么解决(华为手机虚电怎么办)

  • 如何接网线插座(如何接网线插座视频教程)

    如何接网线插座(如何接网线插座视频教程)

  • 百度小程序如何添加到桌面(百度小程序如何开发)

    百度小程序如何添加到桌面(百度小程序如何开发)

  • Win10如何设置右边显示器为主显示器?(win10如何设置右键)

    Win10如何设置右边显示器为主显示器?(win10如何设置右键)

  • 企业销售固定资产车辆怎么开票
  • 纳税检查调整的滞纳金怎么收
  • 注册公司不开账户可以吗
  • 服务行业人工费计入什么科目
  • 如何区分追索权和付款请求权的区别
  • 开发支出在资产负债表是怎
  • 事业单位固定资产管理办法
  • 公司员工提成怎么交个税
  • 小微企业附加税税收优惠政策
  • 利息收入为什么不能在贷方
  • 自然灾害造成的房屋损失怎么处理
  • 服务业税收包括什么
  • 补发工资是否计入工资
  • 变更注册资本的股东会决议范本
  • 燃油税里面包含哪些内容
  • 广告位租赁交印花税吗
  • 当期软件产品可抵扣进项税额 留抵
  • 设备的配件怎么做分录
  • 股票授予代替工资缴税吗?
  • 增值税普票销售方无开户行账号是否可以
  • 企业所得税业务招待费扣除比例
  • 外国常驻代表机构经费支出
  • 什么是大头小头
  • 或有负债如何计量
  • 制造业企业存货管理论文
  • mac终端怎么运行命令
  • 怎么激活win10密钥
  • 汽车零部件的成本核算
  • 什么情况下公司可以开除员工
  • 对外捐赠款属于什么会计科目
  • 无偿取得固定资产算不算收入
  • 销售产品出去 怎么做科目
  • php获取文件内容的函数
  • php glob
  • php字符串定义
  • win10任务栏隐藏正在运行的程序
  • php如何防止xss攻击
  • 外商投资企业和外资企业的区别
  • 企业合并进行过程中发生的各项直接相关费用
  • 苏格兰高地什么意思
  • 移动端h5页面适配
  • php常用数组函数和用法
  • php sid
  • php socket_create
  • php和sql
  • 完美解决win10间歇性掉线
  • php如何判断用户是否在线
  • 预缴税款计入什么科目
  • 小规模纳税人的增值税计入成本吗
  • 差旅费取得发票怎么处理
  • SQL Server 2016 TempDb里的显著提升
  • python send_from_directory
  • 拆迁补偿收入是否缴纳所得税
  • 产品成本计算的分类法适用于( )
  • 利用java实现计算器
  • mysql 中文乱码 识别
  • 商业折扣应该怎么计算
  • 印花税不足一元免征吗
  • 收汇结汇以什么汇率入账
  • 员工还款还公司会计分录
  • 年金现值系数和复利现值系数的公式
  • 人工费没有发票怎么办
  • 老板个人借款要纳税吗
  • mysql语句删除表
  • 深入浅出了解啥意思
  • ssh访问windows
  • 安装solaris11
  • mac开机密码怎么取消
  • iis安装文件xp版
  • win8应用商店停止服务
  • u3d手游开发
  • jquery将文本框设置为只读
  • linux网络编程有什么用
  • python win
  • 文件夹怎么变成
  • jquery实现输入框自限制
  • jQuery Ajax使用FormData对象上传文件的方法
  • jquery聚焦输入框
  • 国税干部任前谈心谈话
  • 如何查询公司的电话号码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设