电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>日常活动识别的超微型解决方案

日常活动识别的超微型解决方案

2023-07-13 | zip | 0.00 MB | 次下载 | 免费

资料介绍

描述

介绍

尽管当今可穿戴设备种类繁多,但大多数人工智能功能归结为仅定义非常简单的动作。他们确定一个人是在跑步还是在睡觉,他们计算步数,并确定一个人是否跌倒。

在我看来,我们已经准备好从我们的设备进行更复杂的分析。如果他们能够识别更具体、相似和复杂的活动会怎样?它将开启前所未有的可能性,创造出许多有趣的新应用程序和设备。

然而,识别更复杂的活动需要庞大而复杂的神经网络,这需要大量的计算。这显然会很快耗尽嵌入该神经网络的物联网设备的电池。大多数可穿戴设备应在常亮模式下运行,这对此类解决方案的能源效率提出了严格要求。

我们如何解决这个挑战?在我的项目中,我想展示一个示例,说明如何显着增加智能功能的复杂性,并确定可穿戴设备可以使用非常小且准确的神经网络识别什么。

在我的项目中,您将找到有关如何使用 Nicla Sense ME 实施多项日常活动识别的详细指南。

如果你有 Nicla Sense ME,你可以在你的实验/项目/课程中尝试我的预训练模型。

我们的测试结果表明,该模型完美地识别了 30 名未使用其数据训练模型的参与者的动作。

按照本教程,您还可以轻松地进行自己的实验并根据您的数据训练神经网络以识别相同或不同的动作。

我们相信,使用小型神经网络识别极其复杂和相似的动作的能力为永远在线的设备开辟了一个新时代。

下面,您将找到有关如何重现此实验的完整教程,包括数据收集、模型训练、模型嵌入和推理。此外,我们还创建了一个带有预训练模型的公共存储库,该模型已证明对新用户具有良好的泛化能力。它是一个预编译的模型存档,您只需点击几下鼠标即可下载并嵌入到您的 Nicla Sense ME 中,然后开始测试。

https://github.com/NeutonTinyML/hand-activity-recognition

使用 Nicla Sense ME 收集数据

对于这个案例,我选择了 5 种类型的活动(对于您的实验,您可以选择其他活动):

  • 洗手
  • 刷牙
  • 鼓掌
  • 梳理头发
  • 随机活动(负类)

对于每种活动类型,我使用 Nicla Sense ME 连续 10 分钟不间断地收集传感器数据。数据是从 7 个不同地点的 7 个不同的人那里收集的。这是一个非常具有挑战性但又很有趣的过程,因为为了正确收集数据,中断是不可取的。对于那些计划重新进行我的实验的人,这里有一些建议:在为另一项活动收集数据之前,先休息一下!但是,如果 10 分钟的持续刷毛太多了,您可以进行两个 5 分钟的数据收集流,然后将两个文件连接起来。

对于负类,我们收集了 60 分钟的数据。这次不需要做任何特别的事情;继续你的日常活动。在键盘上打字,操作鼠标,接听电话,喝茶,或做任何你想做的事。只需确保在收集负面类别数据期间,您的手不会完全闲着不动。负面类别是除上述 4 类之外的所有其他类别的子集。

脚步:

现在让我为您提供有关如何调整 Arduino 板 Nicla Sense ME 以收集数据的详细指南。

1.访问https://www.arduino.cc/en/software为您的操作系统下载 Arduino IDE 2.xx,并安装软件包。

pYYBAGSBPNKAERH1AAGTsevV4AI840.png
 

2.打开 Arduino IDE,单击Boards Manager图标,键入“nicla sense me”并安装Arduino Mbed OS Nicla Boards包。

poYBAGSBPNWAPWAWAACNybxqVys696.png
 

单击库管理器图标,在搜索框中键入“nicla sense me”并安装两个库:Arduino_BHY2ArduinoBLE

pYYBAGSBPNiAePCaAAHCQbSh9QY807.png
 

在搜索框中键入“printf”并安装LibPrintf

pYYBAGSBPNuAKIAiAACmpku-8fg108.png
 

3.在主菜单中选择File->Examples->Arduino_BHY2>BHYFirmwareUpdate

poYBAGSBPN6AQFH-AAL0C0EdwSs025.png
 

4.将Nicla Sense ME板连接USB 并在下拉菜单中选择端口

poYBAGSBPOGAQ9XNAAFwVF0g5pY324.png
 

5.点击上传按钮...

pYYBAGSBPOSAW2jJAAAyz3p7qTU483.png
 

…等到上传过程完成。

poYBAGSBPOaAIHStAADZ6VWMgfw634.png
 

6.单击串行监视器图标并选择115200 波特,然后单击 Nicla 开发板上的重置按钮。

pYYBAGSBPOiAdmviAAAVVFsD8Pw129.png
 

7. 5-10 秒后,您会看到 BHY 固件已上传。

poYBAGSBPOuAIwPWAABrcbCdW_0945.png
 

8.使用 Nicla Sense ME 从 Neuton存储库下载用于传感器数据收集的 Arduino 预编译库

模型 -> Arduino_Neuton.zip(不要解压存档)

9.将“Arduino_Neuton.zip”模型安装到 Arduino IDE 中:

Sketch -> Include Library -> Add .ZIP Library…(指向下载的“Arduino_Neuton.zip”存档)

pYYBAGSBPO6AJp9cAAFZkD4_nFA784.jpg
 

10.退出并重新启动 Arduino IDE(Arduino IDE 最多需要一分钟时间来索引所有示例,包括新安装的“Arduino_Neuton”)

11、打开安装好的例子:File -> Examples -> Arduino_Neuton -> Inertial_Sensor_Data_Collection (会弹出一个新的Arduino IDE窗口,关闭之前的Arduino IDE窗口)

pYYBAGSBPPKATKLPAAKFLhf99Go576.jpg
 

12.将 Nicla Sense ME 连接到计算机的 USB 端口。

13.在 IDE 中选择您的 MCU 并上传固件。

poYBAGSBPPSAaWWHAADiGKuReIg349.jpg
 

14.固件上传后(1-2 分钟),打开串行监视器 - 您应该看到传感器读数(如果您看到连接错误 - 重新启动 Arduino IDE 并再次打开串行监视器)

pYYBAGSBPPeAXNuGAAEVwySP0Yw373.png
 

现在您可以从 USB 端口拔下电路板。

15.将电路板牢固地连接到手表或手链上。Micro-USB 端口应位于右下角。

poYBAGSBPPuAGoSkAACF0FYnQ34465.png
 

16.将带有电路板的手表或手环戴在右手上,并连接数据线。确保连接器附近的电缆没有拉紧,以免损坏电路板。

pYYBAGSBPP2AQLC1AADZpQuWK3s172.png
 

17.根据您的操作系统,打开串行端口并尝试记录数据。在提示中可以看到串口。

poYBAGSBPQCAM1JVAADTU44bUiU590.png
 

如果您使用的是 macOS,请在终端中使用此命令:

stty -f /dev/cu.usbmodem85EB3A0F2 115200 | 猫/dev/cu.usbmodem85EB3A0F2 | T 恤 4_brushing_hair.csv

这会将端口速度设置为 115200 波特。从串行端口打印出文本数据并将其保存为 CSV 文件。

pYYBAGSBPQSAcRmZAAIJl-MyNfc571.png
 

按 Control-C 停止录制。将有一个 CSV 文件,其中包含来自传感器(加速度计、线性加速度计和陀螺仪)的数据和时间戳。

poYBAGSBPQeAWM28AAEHg6O8zLk519.png
 

18.开始记录运动。按下 Nicla 板上的重置按钮并重新开始记录到文件。

例如,拍手 10 分钟(使用智能手机中的秒表应用程序)。在此过程中,改变双手的位置,使数据更加多样化。录制过程中不要停止移动。

按下重置按钮后约 7 秒内将开始录制。

10 分钟结束后,继续运动 10-20 秒并停止记录。

19.对每个活动类型重复第 18 步(使用不同的文件名):

poYBAGSBPQmATFlsAAArsJhcdNM152.png
 

在记录每个动作之前重置板。

模型训练

在您收集了所有活动的数据并将它们组合成一个数据集后,前往Neuton.ai平台训练您的模型。

1.创建一个新的解决方案

poYBAGSBPQuAU-51AAAwARqLdbI298.jpg
 

2.选择数据类型,上传数据

pYYBAGSBPQ6AVeZYAACHRXXTm-4793.jpg
 
poYBAGSBPRGACTfeAAB0PTj5k10147.jpg
 

3.在左侧字段中删除变量 lacc_X、lacc_Y、lacc_Z(此模型不需要线性加速度计);在右边的字段中选择目标变量并单击下一步。

pYYBAGSBPRSAEaJGAAETSvfkhg8113.jpg
 

4.选择任务类型。

poYBAGSBPReAKW6CAACTvQ-Ey3k227.jpg
 

5.选择输入数据类型为 INT16。

poYBAGSBPRmAeG3BAABF5A3Zy_M761.jpg
 

6.启用数字信号预处理,选择 Window size 200 和 Sliding shift 5。

pYYBAGSBPRyATW4RAAFlTNeUpws141.jpg
 

7.对于每个特征(acc_X、acc_Y、acc_Z、gyro_X、gyro_Y、gyro_Z)重复以下步骤:

A。点击“编辑”

pYYBAGSBPR-APiHOAAC-2SOL49A434.jpg
 

b. 选择“全部删除”

poYBAGSBPSKAD4W6AACcdVKM0Aw465.jpg
 

C。选择“统计”功能并检查以下功能:均值、均方根、平均绝对偏差、标准偏差、均值交叉率、过零率

poYBAGSBPSWAR1QCAACPKxK0fhQ331.jpg
 

8.选择单片机位深:8位,开始训练。

pYYBAGSBPSeATbM5AABcgR5hK48963.jpg
 

模型训练完成后,进入“预测”选项卡,检查模型质量指标并下载包含模型的存档以进行嵌入。

poYBAGSBPSqANN1BAADDbdZ5Rzc447.jpg
 
pYYBAGSBPS2AMb8FAAHxz9ZELNw932.png
 

下载的模型源代码如下所示:

poYBAGSBPTCAd2lIAAFXBa_746o101.jpg
 

该档案包含将模型嵌入任何 MCU 所需的一切。使用存档内容编译一个 Arduino 草图,用这个草图刷新你的 Nicla Sense ME 并开始推理。

 


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费