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 適配目標平臺:STM32
以下項目為 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
+關注
關注
91文章
39755瀏覽量
301346 -
RT-Thread
+關注
關注
32文章
1613瀏覽量
44818
原文標題:RT-Thread AI kit開源:輕松實現一鍵部署AI模型至 RT-Thread
文章出處:【微信號:RTThread,微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
恩智浦亮相RT-Thread 20周年開發者大會
RT-Thread首款低功耗AI產品預售: Edgi Talk
首搭RT-Thread程翧車控平臺| RT-Thread程翧 S32K344 快速原型開發平臺正式上市!| 產品動態
rt-thread studio 2.2.9如何使用最新的RT-Thread v5.2.0 released?
【好書推薦】RT-Thread第20本相關書籍!《嵌入式實時操作系統RT-Thread原理與應用》| 技術集結
“開源+AI”賦能萬物智聯:RT-Thread睿賽德亮相“上海硅巷”暢談國產操作系統 | 新聞速遞
用SPI玩轉WiFi,RT-Thread ESP-Hosted驅動深度適配指南 | 技術集結
深度剖析 RT-Thread 線程調度流程
揭秘RT-Thread上的AUTOSAR CP系統
玄鐵加入RT-Thread 高級會員合作伙伴 | 戰略新篇
RT-Thread睿賽德開源無人機領域硬核飛控上線!| 產品動態
2025 RT-Thread全球技術大會議程正式發布!
RT-Thread 上如何實現 SLAAC?
RT-Thread審核團招募: 深度參與開源RTOS社區治理與演進
關于RT-AK開源輕松實現一鍵部署AI模型至RT-Thread解析
評論