【在 Arduino 上使用机器学习】(三)在Arduino上使用自定义...
2020-04-071.4万
精华项目
AI 快速预览详细
本文介绍了如何在Arduino上使用自定义手势识别模型。通过上传model.h文件并进行手势识别,解决了手势识别不准确的问题。重新采集样本并训练模型,最终实现了高置信度的手势识别。适用于零基础新手和STEM教育项目。
|
【在 Arduino 上使用机器学习】(一)在 Arduino 开发板上安装库及添加测试样本 【在 Arduino 上使用机器学习】(二)Tensorflow上构建及训练模型 【在 Arduino 上使用机器学习】(三)在Arduino上使用自定义手势识别模型 在Arduino上使用自定义手势识别模型 接下来,我们会将刚刚在上一节中在 Colab 中训练并下载的 model.h 文件,用于我们的 Arduino IDE 项目中:
![]()
![]()
将例程上传到板子中,打开串口监视器,做一些手势,发现几乎所有的手势被识别为曲肘(见下图),无论是击拳还是曲肘。仔细思考了一下发现了问题。原来训练的时候对“击拳”理解错误,以为是像武林高手一样击出去要收回来。实际上击拳只是将拳挥出去,收回的时候要非常缓慢,以免触发采样。同样曲肘也是,将手臂缓缓伸出,然后迅速收回,收回这个动作才是“曲肘”。 ![]() 出现这个错误,需要重新采集样本。下面的动图是新采集的样本,可以看到两个动作之间区别还是很大的: 好在前面走了一遍,后来就非常顺利了。分别采集10个击拳和10个曲肘的动作样本。再回到colab里进行训练,重新下载model.h文件。将原来的文件删除: ![]() 重新上传文件并使用串口监视器观察,开始击拳和曲肘的动作,识别的非常准备: ![]() 采样率是每秒119HZ,每秒采集119个样本,做10次动作可以采集1190个样本,样本量还是比较高的。为了样本的准确性,动作一定要标准,否则预测结果会不理想。 数字代表置信度,置信度越高,所预测的动作可能性越大。最后预测的结果与实际动作完全一致。 ![]() 教程参考: "想获得更多乐趣?您可使用 Emoji_Button.ino 示例创建 USB 键盘,在 Linux 和 macOS 中输出表情符号字符。尝试将 Emoji_Button.ino 示例与 IMU_Classifier.ino 例程相结合,创建手势控制的表情符号键盘 。" 如果您想详细了解 本文提及 的相关内容,请参阅以下文档。这些文档深入探讨了这篇文章中提及的许多主题:
|
-
Build&Train.gif (2.3 MB, 下载次数: 2193)
-
Build&Train_Correct.gif (392.26 KB, 下载次数: 2210)
-
IMU_Capture1.gif (1.28 MB, 下载次数: 2249)
-
modelPredict.gif (547.4 KB, 下载次数: 2246)














