Loading spinner
利用AI识别交通标志可以为驾驶员和城市基础设施管理者带来很多好处,例如可以提高安全性、改善驾驶体验和提升效率等等。 凭借各种先进的算法,系统能够实时准确地检测和识别交通标志,并及时为驾驶员或城市监管者提供有关速度限制、交通信号或道路标志映射的准确信息。
此举有助于降低由人为错误或分心引起的事故风险,从而提升人们使用道路的安全性。 此外,将这项技术整合到运输系统和交通监控系统中,还有助于提高效率和减少拥堵。

方法

此用例的数据来源为一个用于对道路标志进行分类的德国交通标志数据集。 该解决方案提出了利用公共数据集进行过训练的模型;这些模型在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”脚本。

train.py_python_script train.py_python_script train.py_python_script

在STM32 Model Zoo中,您将找到利用自己的数据训练和重新训练模型所需的一切。 还可以使用资源库中提供的 Python 脚本在 STM32H747 发现套件上轻松部署模型(请阅读我们的 部署教程了解更多信息)。
您可以在 我们的入门视频.

传感器

视觉:相机模块捆绑包 (参考文献: B-CAMS-OMV)

数据

数据集 德国交通标志识别基准*
数据 格式:该数据集由超过50000张RGB图像组成,我们可将其分为43类交通标志。

结果

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 帧/秒

use-case-stm32-cube-ai-confusion-matrix-traffic-sign-classification use-case-stm32-cube-ai-confusion-matrix-traffic-sign-classification use-case-stm32-cube-ai-confusion-matrix-traffic-sign-classification

量化MobiNetV2模型的混淆矩阵

优化工具
STM32Cube.AI
STM32Cube.AI
兼容

STM32H7系列

STM32H7系列
资源

模型库 ST EDGE AI MODEL ZOO

一系列经过优化的参考AI模型,可在附带相关部署脚本的意法半导体器件上运行。Model Zoo是一种宝贵的资源,可用于为嵌入式应用增添边缘AI功能。

ST EDGE AI MODEL ZOO ST EDGE AI MODEL ZOO ST EDGE AI MODEL ZOO

优化工具 STM32Cube.AI

X-CUBE-AI是一个免费的STM32Cube扩展包,可帮助开发人员将预训练的AI算法(例如神经网络和机器学习模型)自动转换为经过优化的STM32 C代码。

STM32Cube.AI STM32Cube.AI STM32Cube.AI

兼容 STM32H7系列

STM32系列32位微控制器基于Arm Cortex®-M处理器,旨在为MCU用户提供新的开发自由度。它包括一系列产品,集高性能、实时功能、数字信号处理、低功耗/低电压操作、连接性等特性于一身,同时还保持了集成度高和易于开发的特点。

STM32H7系列 STM32H7系列 STM32H7系列
以下案例可能对您也有所启发

工业 | 智慧城市 | 视觉 | STM32Cube.AI | STM32 AI MCU | 合作伙伴 | 视频 | 智能家居

Secure entry systems using id3 face recognition with liveness detection

通过RGB摄像头与ToF传感器进行边缘处理,结合STM32N6 MCU实现快速且安全的反欺骗门禁控制。

工业 | 智慧城市 | 视觉 | STM32Cube.AI | STM32 AI MCU | 合作伙伴 | 视频 | 交通运输 | Model zoo

Smart rear view camera running on batteries

STM32N6 如何提升盲区内人员、汽车、卡车及骑行者的实时检测性能

视觉 | STM32Cube.AI | STM32 AI MCU | 视频 | 客户案例 | 加速度计 | 可穿戴设备

How ultralight AR glasses are redefined with Edge AI

莫界科技利用STM32N6 MCU搭载的边缘AI和计算机视觉技术提升AR眼镜性能