RT-AK 简介
RT-AK: RT-Thread AI kit,RT-Thread AI 套件
RT-AK 是 RT-Thread 团队为 RT-Thread 实时操作系统所开发的 AI 套件,能够一键将 AI 模型部署到 RT-Thread 项目中,让用户可以 在统一的 API 之上进行业务代码开发,又能在目标平台上获得极致优化的性能,从而更简单方便地开发端侧 AI 应用程序。
在 RT-AK 支持下,仅需要一行命令,python aitools.py --model xxx.。.,即可将 AI 模型部署到 RT-Thread 系统中:
详细的命令请查阅:[如何运行 aitools.py](# step1 运行 rt_ai_tools/aitools.py)
开源链接:https://github.com/RT-Thread/RT-AK
示例DEMO
以下项目为 RT-AK 的示例 Demo,基于 ART-PI 硬件平台和 Mnist 数据集。
1. 准备工作
Python 》= 3.7
准备以下四份重要重要重要的材料:
1.1 X-CUBE-AI 介绍
TO DO LIST: 最新的版本是 V6.0.0,目前使用的是 V5.2.0,稍后的 RT-AK 将会更新
X-CUBE-AI 是 STM32Cube.AI 生态系统的 STM32Cube 扩展软件包的一部分,能够自动转换预训练的神经网络。
X-CUBE-AI
下载界面
1.2 X-CUBE-AI 解压
下载后的文件夹界面
其中:
stm32ai-windows-5.2.0.zip 是我们所需要,该文件夹里面存放的是 X-CUBE-AI 模型转换软件:stm32ai
STMxxx.pack 是 STM32Cube.AI 的静态库文件,无需解压,已经存在。
解压 stm32ai-windows-5.2.0.zip 。
例:在这里我将其解压到:D:Program Files (x86)stm32ai-windows-5.2.0 ,可以在该路径下看见有一个 windows 文件夹。
记下该路径,重要重要重要
STM32: X-CUBE-AI 解压路径
1.3 ART-PI BSP
先打开 RT-Thread Studio
新建 ART-PI BSP
如果在开发板的地方,没有找到 STM32H750-RT-ART-PI,请查阅:
RT-Thread Studio 新建 ART-PI
2. 执行步骤
Step1 运行 rt_ai_tools/aitools.py
代码将会自动使用 STM32Cube.AI 的模型转换工具,获得一个集成了 AI 的 BSP
对,就是这么硬核,一步肝到位!
内部的流程请看源码或者 plugin_stm32 仓库下的 readme 文档
运行命令
进入 edge-ai/RTAK/tools 路径,运行 aitools.py。
1# 运行命令
2python aitools.py --project=《your_project_path》 --model=《your_model_path》 --platform=stm32 --ext_tools=《your_x-cube-ai_path》 --clear
3
4# 示例
5python aitools.py --project=“D:RT-ThreadStudioworkspace est” --model=“。/Models/keras_mnist.h5” --platform=stm32 --ext_tools=“D:Program Files (x86)stm32ai-windows-5.2.0windows” --clear
运行到该步骤操作已经结束,后续是补充说明。
运行命令其他参数补充说明
1# 指定转换模型的名称,--model_name 默认为 network
2python aitools.py --project=《your_project_path》 --model=《your_model_path》 --model_name=《model_name》 --platform=stm32 --ext_tools=《your_x-cube-ai_path》
3
4# 保存运行 stm32ai 线程过程中产生的文件,--clear 默认为空
5# 如果存在,则将会删除 `stm32ai` 运行时产生的工作文件夹,即`--stm_out`
6python aitools.py --project=《your_project_path》 --model=《your_model_path》 --platform=stm32 --ext_tools=《your_x-cube-ai_path》
7
8# 指定保存运行日志, --log 默认为空
9python aitools.py --project=《your_project_path》 --model=《your_model_path》 --log=。/log.log --platform=stm32 --ext_tools=《your_x-cube-ai_path》
10
11# 指定保存的文件夹名称,--stm_out 默认是当天时间,比如 ‘。/20210223’
12python aitools.py --project=《your_project_path》 --model=《your_model_path》 --platform=stm32 --ext_tools=《your_x-cube-ai_path》 --stm_out 《new_dir》
13
14# 指定生成的 c-model 名,--c_model_name 默认是network
15python aitools.py --project=《your_project_path》 --model=《your_model_path》 --platform=stm32 --ext_tools=《your_x-cube-ai_path》 --c_model_name=《new_model_name》
运行参数详细说明
主函数参数部分
STM32 平台插件参数部分
Step2 编译和烧录
本教程仅展示 RT-Thread Studio 编译,另外还支持以下几种编译方式:
基于 RT-Thread Env 的 Scons
不基于 RT-Thread Env 的Scons
RT-Thread Studio 编译和烧录
在 RT-Thread Studio 中,找到项目工程,右键,
更新软件包 + 刷新工程,
然后编译(),
最后烧录加显示。
编译成功
这时候你就已经成功获得了一个集成了 AI 和 RT-Thread 的新的 ART-Pi BSP,
就可以RT-Thread 系统上做应用开发啦。
示例应用代码提供
我们提供了一份运行模型推理的示例代码 mnist_app.c:
下载解压,放置到 /applications 路径下
选中 RT-Thread Studio 中的 项目工程,右击刷新
编译烧录,
输入命令:mnsit_app
3. 完整的示例工程
编辑:lyn
-
AI
+关注
关注
87文章
30897浏览量
269117 -
RT-Thread
+关注
关注
31文章
1289浏览量
40137
原文标题:RT-Thread AI kit开源:轻松实现一键部署AI模型至 RT-Thread
文章出处:【微信号:RTThread,微信公众号:RTThread物联网操作系统】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论