当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]通过使用二维直接飞行时间(dToF)LiDAR,我们从周围环境中提取出“距离指纹”。这些360度的距离剖面被处理为时序特征向量,随后用于在Edge Impulse Studio中训练神经网络。最终生成的模型被部署回Arduino UNO Q,以实现实时、低延迟的推理。

基于2D dToF LiDAR与Arduino UNO Q的房间分类

该项目展示了如何利用激光雷达实现边缘人工智能环境分类,而无需传统SLAM(同步定位与建图)或计算机视觉的计算开销。

通过使用二维直接飞行时间(dToF)LiDAR,我们从周围环境中提取出“距离指纹”。这些360度的距离剖面被处理为时序特征向量,随后用于在Edge Impulse Studio中训练神经网络。最终生成的模型被部署回Arduino UNO Q,以实现实时、低延迟的推理。

硬件规格

•Arduino UNO Q

•DFRobot DTOF STL-19P 激光雷达开发套件

•USB集线器

克隆此应用程序,使用您自己的设备进行测试。

实施细节

LDRobot D500 LiDAR传感器采用dToF技术,可实现连续360°扫描,测距范围可达12米。

Arduino UNO Q 运行着一个基于 Python 的应用程序,用于采集来自 LiDAR 的数据,并且还可以使用 Edge Impulse 推理引擎进行推理。

Edge Impulse Studio 作为数据摄取、数据分割、特征提取、神经网络分类训练、量化和模型部署的协调层。

为了将这些数据用于分类推理任务,首先需要采集一段指定时长的扫描数据,例如10秒,并通过Ingestion API将其发送到Edge Impulse Studio。

然后将数据分割成每秒一个窗口。每个窗口代表一个由360个维度组成的独特特征向量,其中每个维度的值表示对应角度的距离。

机器学习流水线(Edge Impulse)

该模型架构经过优化,以最小的计算资源需求确保与边缘硬件兼容。在此案例中,我们使用Arduino UNO Q板。我们生成一个脉冲信号,并利用原始数据处理模块和分类模块,将这些360维的输入向量映射到特定的空间标签,例如走廊或房间等。

部署与边缘推理

训练完成后,模型将被导出为 `.eim`(Edge Impulse 模型)文件。该文件会被部署到 Arduino UNO Q 的文件系统中,并授予必要的执行权限(chmod +X)。

在运行过程中,Python推理引擎将模型加载到内存中,当新的LiDAR扫描数据到来时,`ImpulseRunner`会快速对当前特征向量进行前向传播。

结果与分析

初步测试表明,在受控环境中,该方法具有较高的分类准确率和极低的延迟。这种方法的主要优势在于,能够仅通过几何特征来区分空间,而无需依赖视觉系统或其他类似技术。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
关闭