基于Arduino的边缘AI构建自定义对象检测系统

  发布人:amy2025 时间:2025-08-12

在这里,我们展示了端到端过程来创建一个自定义对象检测系统,所有运行在边缘使用谷歌珊瑚开发板微型。

本指南解释了如何使用谷歌Coral Dev Board Micro构建自定义对象检测系统,以及谷歌Colab中使用Tensorflow训练的自定义数据集。

这种方法允许机器学习(ML)模型使用其板载边缘张量处理单元(TPU)在Dev Board Micro上本地运行推理,而无需连接互联网!

TPU之于机器学习就像GPU之于图形(两者都是专用集成电路(asic)),允许模型以令人印象深刻的速度在片上执行,每秒超过2万亿次操作!(见说明书)。

数据集集合

因为我们需要大量物体的图像来训练我们的模型,所以我们决定巴士站是我们可以在本地使用的常见项目。

首先,有一天我们在当地开车的时候拍了一些慢动作的视频。

然后我们从中提取了70张640px正方形的图像(包括一些不同的背景)。

图像可以是任何大小,我们的分辨率是船上珊瑚相机的两倍,但是图像越大,需要的时间就越长。

然而,图像越大,训练时间就越长。

这些需要放在一个名为“images”(区分大小写)的文件夹中。

数据集标签

在images文件夹旁边创建另一个名为Annotations的文件夹。

然后我们使用LabelImg工具。

点击左边的“保存目录”按钮,选择前面步骤中图像文件夹旁边的“annotation”文件夹。

在右侧设置默认标签(如果使用一个类),并选中它旁边的“使用默认标签”复选框。

然后我们通过左键点击并拖动来绘制每个公交车站周围的边界框。

现在单击左侧的Save,确保下面的格式选项设置为PascalVOC。

一旦所有的图片都被标注好了,我们就可以把这两个文件夹压缩成一个名为data . ZIP的文件。

Colab培训

现在我们可以打开Colab Notebook,并连接到运行时。如果你只是尝试,选择CPU,因为它是免费的,有最长的运行时间。GPU处理更快,但可能需要购买计算单元以在高峰时间运行。

连接运行时后,我们可以通过单击左侧的文件管理器上传dataset.zip,并将其拖放到....

现在我们可以开始一个接一个地运行每个代码块……最后,模型将被下载到您的PC的下载文件夹。

如果您愿意,您可以从此链接使用我们预先构建的公交车站模型。

根据使用的运行时间、上传/下载的互联网连接速度、图像数量和大小,这将需要大约45米到1小时来完成

一旦完成并下载了文件,就可以断开运行时。

在Visual Micro中安装Coral Micro板

需要附加板包URL来添加珊瑚微板,它可以在IDE位置屏幕上添加:

添加完成后,可以在浏览器中安装单板。

下载草图示例

从此链接下载CoralCustomObjectDetection ZIP,并将其解压缩到PC上的某个位置。

更新TFLite文件

使用从Colab下载的ZIP文件(或我们预先训练的文件):

model_int8_edgetpu。这个flite文件需要放到项目内部的data文件夹中。

在项目中,metadata.hpp位于INO文件旁边。

在vMicro中打开草图

在Visual Micro中正常打开解决方案,从板列表中选择Dev Board Micro + Wifi Add-on。

还要确保您设置了上传草图+数据的板选项。

用USB-C引线将电路板连接到PC,并检查COM端口是否正确选择。

如果您的板只有橙色灯显示,没有COM端口,您可能需要先将其强制进入SDP模式。请参阅Coral Micro故障排除指南。

更新WiFi凭据

在INO文件中,顶部有两个WIFI凭据的#定义,修改它们以适应您正在使用的网络。

上传到您的主板

点击Build and Upload按钮编译并显示代码,大约一分钟后,电路板就会启动。

查看串行输出并打开网页

串行输出将打印板上所有文件的列表,并显示其提供网页的地址。

将URL复制并粘贴到浏览器中,然后按enter键加载页面。

看看它是怎么工作的!

现在页面已经加载,你可以在页面上看到你的相机流。如果你把它指向一个你训练过的对象,你应该会看到一个识别项目的边界框和置信度。如果你没有一个物体的真实例子,你可以把它指向电脑屏幕上训练过的图像之一。

结束

所以我们得到了它!一个可定制的嵌入式目标检测系统,完全在船上运行,不需要云。当然,如果你在机器人割草机中使用它,你可以将板设置为接入点,只有当你靠近....时才能查看网页或者一旦你对它感到满意,就把Wifi代码全部删除。它不需要在任何形式的网络上工作。


关键词: Arduino GPU 边缘AI

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关电路