谷动谷力

 找回密码
 立即注册
查看: 4857|回复: 0
收起左侧

我在STM32单片机上跑神经网络算法

[复制链接]
发表于 2022-1-19 12:03:35 | 显示全部楼层 |阅读模式
本帖最后由 sunsili 于 2023-5-9 15:13 编辑
) M8 y7 S+ e- L. t/ A2 g; e
+ |$ O8 E/ q( b' ^  R+ J- `0 _7 D我在STM32单片机上跑神经网络算法[color=rgba(0, 0, 0, 0.3)]. G9 B1 ~4 d! @4 A: K

& x6 @+ s% V2 D1 a& |; w4 U+ q  w) n: o' x# C
640?wx_fmt=png.jpg
) i1 l0 W# d6 ?2 o
这里使用官方提供的模型进行测试,用keras框架训练:
640?wx_fmt=png.jpg https://github.com/Shahnawax/HAR-CNN-Keras
* i7 c8 q, n1 u1 k- r* p9 d, a  e4 c  s
模型介绍
* Q; L& T8 C( j
存储库包含以下文件
  • HAR.py,Python脚本文件,包含基于CNN的人类活动识别(HAR)模型的Keras实现,
  • actitracker_raw.txt、包含此实验中使用的数据集的文本文件,
  • model.h5,一个预训练模型,根据训练数据进行训练,
  • evaluate_model.py、Python 脚本文件,其中包含评估脚本。此脚本在提供的 testData 上评估预训练 netowrk 的性能,
  • testData.npy,Python 数据文件,包含用于评估可用预训练模型的测试数据,
  • groundTruth.npy,Python 数据文件,包含测试数据的相应输出的地面真值和
  • README.md.
    3 Y" Y8 l+ W! Z3 s5 J  a3 o
1.这里默认大家都已经安装好了STM32CubeMX软件。
然后按照下面的步骤安装好CUBE.AI的扩展包
640?wx_fmt=png.jpg
接下来就是熟悉得新建工程了
640?wx_fmt=png.jpg
接下来就是配置下载接口和外部晶振了。
640?wx_fmt=png.jpg 640?wx_fmt=png.jpg
选择Software Packs,进入后把AI相关的两个包点开,第一个打上勾,第一个选择Validation。
640?wx_fmt=png.jpg 640?wx_fmt=png.jpg
  • System Performance工程:整个应用程序项目运行在STM32MCU上,可以准确测量NN推理结果,CP∪U负载和内存使用情况。使用串行终端监控结果(e.g.Tera Term)
  • Validation工程:完整的应用程序,在桌面PC和基于STM32 Arm Cortex-m的MCU嵌入式环境中,通过随机或用户测试数据,递增地验证NN返回的结果。与 X-CUBE-A验证工具一起使用。
  • Application Template工程:允许构建应用程序的空模板项目,包括多网络支持。
    $ i" K- z( O7 Q4 x
选择刚刚配置的串口作为调试用。
640?wx_fmt=png.jpg
点击分析,可从中看到模型压缩前后的参数对比
640?wx_fmt=png.jpg
致此,模型验证完成,下面开始模型部署
四、模型转换与部署
最后点击GENERATE CODE生成工程。
640?wx_fmt=png.jpg
选择好下载器后就可以下载代码了。
640?wx_fmt=png.jpg 640?wx_fmt=png.jpg
代码烧写在芯片里后,回到CubeMX中下图所示位置,我们点击Validate on target,在板上运行验证程序,效果如下图,可以工作,证明模型成功部署在MCU中。
640?wx_fmt=png.jpg 640?wx_fmt=png.jpg
参考资料:
  • https://youtu.be/grgNXdkmzzQ?t=10
  • https://youtu.be/grgNXdkmzzQ?t=103
    ( C  \" n0 O* R
, Q5 E" c5 S; ~
更多图片 小图 大图
组图打开中,请稍候......
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|深圳市光明谷科技有限公司|光明谷商城|Sunshine Silicon Corpporation ( 粤ICP备14060730号|Sitemap

GMT+8, 2024-3-29 14:30 , Processed in 0.103281 second(s), 35 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表