此举有助于降低由人为错误或分心引起的事故风险,从而提升人们使用道路的安全性。 此外,将这项技术整合到运输系统和交通监控系统中,还有助于提高效率和减少拥堵。
方法
此用例的数据来源为一个用于对道路标志进行分类的德国交通标志数据集。 该解决方案提出了利用公共数据集进行过训练的模型;这些模型在STM32上运行时具有非常出色的精度表现。
这些模型是利用 STM32 model zoo 中提供的 Python 脚本训练的(请阅读我们的 教程了解更多信息)。
在此 设置我们的 STM32 Model Zoo 项目后下载数据集,并将其放入适当的结构中。 然后我们更新了 yaml 文件文件,该文件用于配置训练,设置如下:
general:
project_name:traffic_sign
数据集:
名称:交通
class_names:['0001', '0002', ..., '0042']
training_path:datasets/train
validation_path:
test_path:datasets/test
请根据您的用例情况随意调整这些设置。
最后,我们简单地运行了“train.py”脚本。
传感器
数据
结果
STM32 模型动物园包含 多个图像分类模型
在这里,我们针对相同的使用情况训练了 2 个不同的模型,每个模型都有各自的性能和内存占用:
模型:MobileNetV2 alpha 0.35
输入大小:128x128x3
量化模型的内存占用情况:
总RAM: 272 KB
- RAM激活:224 KB
- RAM运行时:48 KB
总Flash存储器: 563 KB
- Flash权重:454 KB
- 预估Flash存储器代码:109 KB
精度:
浮动模型: 99.87%
量化模型: 99.57%
STM32H747(高频)上的性能 @ 400 MHz
推断时间: 101 ms
帧频: 9.9 帧/秒
模型:FDMobileNet
输入大小:128x128x3
量化模型的内存占用情况:
总RAM: 65 KB
- RAM激活:51 KB
- RAM运行时:14 KB
总Flash存储器: 192 KB
- Flash权重:137 KB
- 预估Flash存储器代码:55 KB
精度:
浮动模型: 99.78%
量化模型: 99.51%
STM32H747(高频)上的性能 @ 400 MHz
推断时间: 20.04 ms
帧频: 49.9 帧/秒
量化MobiNetV2模型的混淆矩阵
模型库 ST EDGE AI MODEL ZOO
一系列经过优化的参考AI模型,可在附带相关部署脚本的意法半导体器件上运行。Model Zoo是一种宝贵的资源,可用于为嵌入式应用增添边缘AI功能。
优化工具 STM32Cube.AI
X-CUBE-AI是一个免费的STM32Cube扩展包,可帮助开发人员将预训练的AI算法(例如神经网络和机器学习模型)自动转换为经过优化的STM32 C代码。
兼容 STM32H7系列
STM32系列32位微控制器基于Arm Cortex®-M处理器,旨在为MCU用户提供新的开发自由度。它包括一系列产品,集高性能、实时功能、数字信号处理、低功耗/低电压操作、连接性等特性于一身,同时还保持了集成度高和易于开发的特点。