1.1项目介绍
本项目是一个以行空板M10 为控制核心,结合实例分割 AI 技术的创意互动装置,覆盖“实例分割模型训练”、“摄像头捕获→实例分割模型精准识别并抠取小鱼实例对象→创意鱼缸界面随机显示抠取结果”的完整链路。它特别适合家庭亲子互动或学校创客课堂 —— 家长可以和孩子一起用摄像头捕捉你设计的创意小鱼,通过 AI 技术让小鱼“游”到屏幕鱼缸中,孩子还能自由绘制小鱼内部的鳞片、花纹,既增添了趣味,又能在动手过程中直观理解 AI 实例分割的原理。
2. 项目实现原理
项目原理如下:通过Mind+ V2.0的模型训练工具数据采集、标注、模型训练过程训练流程,训练一个实例分割模型,这个模型的本领就是“认出”摄像头里的海底生物——鱼类。
接着使用行空板M10接上摄像头,再加载这个提前训练好的实例分割模型。运行过程中,摄像头会一直拍摄画面,当按钮被按下后,模型就会开始推理和计算:从摄像头画面里找出目标海底生物,把它单独提取出来,再随机放在行空板M10鱼缸背景的某个位置,看起来就像是你绘制的小鱼自己游进了鱼缸一样。

3.软硬件环境准备
3.1软硬件器材清单

注意:行空板系统版本在 v0.4.1 及以上均适用于本项目制作,行空板的 Python 环境版本为 3.12,Mind+ 编程软件版本为 v2.0。
3.2硬件连接准备
本项目需在行空板上实现图像 “输入 - 推理与计算 - 输出” 流程:通过 USB 摄像头拍摄图像,在行空板部署实例分割模型完成推理与结果输出。
请参照下方连接图,完成电脑、行空板、按钮与 USB 摄像头的连接:

3.3软件平台准备
官网下载安装Mind+ V2.0及以上安装包,安装完成后,双击打开。

3.4环境和扩展准备
本项目要求行空板的Python环境的版本为3.12.7,请根据下面的步骤将其切换到指定版本。
打开编程软件Mind+ V2.0,选择“程序设计”中的“Python模式”。


进入 “扩展” 页面并搜索 “行空板”,点击扩展包上的 “下载” 按钮。


下载完成后点击该扩展包完成加载,再点击 “返回” 按钮返回编程界面。

在终端连接选项中选择“默认-10.1.2.3”以连接行空板M10。

在终端中输入“python --version”后按下“回车”键以检查行空板M10的Python环境版本:


如上图行空板的Python环境已为指定版本3.12.7。
若版本不符合,请在终端中输入“pyenv global 3.12.7”以将其切换为该版本。

环境切换完毕后,需要加载模型推理的用户库。请按照下面的步骤操作。
加载模型推理的用户库需要在行空板中下载依赖库,所以在加载该用户库之前,我们需要先给行空板联网。
行空板连接好后,在浏览器地址栏中输入“10.1.2.3”。

选择“网络设置”→点击“扫描”→选择无线网络名称并输入密码→点击“连接”。

显示“wifi连接成功”,说明你的行空板已经成功连接网络。

行空板的环境和网络都设置成功了,接下来需要加载模型推理用户库。
按照相同的方法,在扩展中搜索“模型训练”,点击下载并添加该用户库。(注意:模型训练库的版本需要为0.1.1以上)

等待依赖库下载完毕,即可开始程序的编写(可在终端中查看进度)。
4. 项目制作
我们使用Mind+ V2.0中的模型训练来完成实例分割模型的训练。
首先,打开Mind+ V2.0软件,选择“模型训练”并打开“实例分割”(注意:只有Mind+2.0及以上版本才有模型训练功能)。


打开初始界面如下:

页面分为三部分,从左至右依次为:数据采集、模型训练、模型校验与导出(后面会详细说明各部分的使用方法)。
4.1数据采集与标注
模型训练的第一步是准备小鱼的数据集。
请根据下面的步骤使用摄像头采集和标注数据:
点击 “摄像头” 按钮进行数据采集,该按钮可直接打开电脑自带摄像头,使用该摄像头采集数据。
长按“按住即可录制”按钮开始数据采集,变换角度对实例对象进行多方位的图像录制。默认每秒采集一张照片,可根据需求在设置中调整。


采集结束后,返回。

接下来,对数据进行标注。

弹窗显示“标签列表为空,是否前往创建标签?”,点击“确定”创建标签。

输入标签名称→选择标签颜色→确认→标签创建成功。

创建好的标签如下:

创建好所有标签后,我们要对图片中的实例对象进行标注,方法如下:
选择标签(或者使用其对应快捷键)→用鼠标画出实例轮廓(单击左键依次绘制,绘制闭合区域)

若对标注框的大小和位置不满意,可在标注框区域内点击鼠标右键,对标注框进行调整或删除(选中后按下键盘上的 “Delete” 键)。

标注当前图片中的所有实例对象后,点击“下一张”(或使用空格键)继续标注下一张图片。

所有图片标注完成后点击“×”返回主界面。

本项目附录中也提供了已标注的数据集(YOLO 格式),可按照下列步骤完成数据集上传:
上传→有标注数据(YOLO格式)→选择文件上传→选择ZIP文件→确定→上传成功



数据集准备过程完成,接下来进入模型训练。
4.2模型训练
在训练模型前,我们可以根据数据集特点修改训练参数。展开“高级设置”以调整参数,本项目的参数如下:

参数设置完成后,点击 “训练模型” 按钮,即可开始模型训练(训练过程中请保持页面开启,避免训练中断)。

在训练过程中,点击“深入了解”,可对模型训练过程进行监测。


等待训练完成,点击“确定”。

4.3模型校验与导出
模型训练结束后,可以通过模型校验来验证模型效果。摄像头输入能简单直接的观察到模型的应用效果,请按照下面的步骤进行校验。
开启“输入”开关→选择摄像头→将摄像头对准实例对象→观察输出

校验结果符合预期后,即可导出模型文件。
点击“导出模型”将模型导出为ONNX格式的文件和yaml格式的配置文件(上述两个文件在部署中会使用到)。


选择位置保存模型文件(包括onnx格式的模型文件和yaml的配置文件)。


建议将该模型训练项目保存为项目文件,方便后期对模型进行优化和调整。步骤如下:
展开“快速体验”,选择保存项目。选择要保存的位置,点击“确认”完成保存操作。并通过“快速体验”中的“打开项目”打开保存的项目文件。

模型训练和导出到这一步就结束了,之后就是模型的部署了。
4.4模型推理与应用
请按照下列步骤,将模型训练导出的模型文件上传到行空板 M10,并编写程序实现功能。打开Mind+ V2.0编程软件并进入Python积木模式。


首先,请按照下面的步骤上传模型文件。
点击“资源文件”→选择“上传文件”→选择模型(.onnx)及其配置文件(.yaml)→点击“打开”。

模型文件上传成功。

按照上述步骤上传程序背景图片,上传后资源文件如下:

编写程序如下:

核心代码块的解析如下:

5. 项目相关资料附录

文件链接: https://pan.baidu.com/s/11nS13EKaV5b696cD_leW4A?pwd=fuf6

返回首页
回到顶部


评论