透過 NXP eIQ Potal 訓練 Tensorflow Flower 分類模型並部署在 i.MX RT1170 EVK

本文將介紹如何使用 NXP 提供的 eIQ Toolkit 模型開發工具來訓練一個 Tensorflow Flower 分類模型,並將訓練好的模型部署在 i.MX RT1170 EVK 上。

一、什麼是 eIQ Toolkit



eIQ Toolit 是 NXP 提供可實現模型開發及部署的工具。

開發者可以導入數據集和模型,快速訓練及部署模型在目標平台上。

輸出的模型類型包含 DeepViewRT™、TensorFlow™Lite、TensorFlow Lite Micro.. 等。

透過如此方便的工具,可以加快開發者建立自己的邊緣裝置。

官網 eIQ Toolit 下載連結:Link

圖一


二、下載與分配 Tensorflow Flower 數據集



1. 數據集下載連結:Link

2. 解壓縮數據,並手動分配數據。

由於此為小規模樣本集,所以建議分配比例為測試 30% 與訓練 70%,並以花的種類當作資料夾分類。




三、使用 eIQ Portal 訓練分類模型

1. 開啟 eIQ Portal 新增專案並導入數據集



2. 選擇分配好的數據集資料夾

① Structured folders
② SELECT DATASET FOLDER
③ 選擇數據集擺放位置
④ 選擇資料夾
⑤ 選擇 IMPORT






3. 可從 eIQ Portal 上查看測試集與訓練集數量以及圖片



四、開始訓練分類模型

1. 選擇 SELECT MODEL



2. 由於這次任務是要分類花的種類,因此選擇 Classification



3. 根據需求,可選擇追求執行效率、平衡或是追求精準度



4. 選擇後續要部署的平台,由於要部署在 i.MX RT1170 上,因此選擇 MCU


5. 模型參數設定並選擇 START TRAINING 開始訓練模型


6. 跑完訓練後,選擇 VALIDATE(模型驗證)



7. 檢查混淆矩陣並選擇 DEPLOY



8. 輸出模型

① 設定要輸出模型的類型
② 選擇 EXPORT MODEL 輸出模型
③ 確認模型儲存位置
④ 選擇存檔





五、將模型部署在 i.MX RT1170 EVK 並運行

1. 安裝 MCUXpresso 及 SDK(若已有安裝,可跳過此步驟)

MCUXpresso 下載連結:Link



SDK 下載連結:Link



2. 打開 MCUXpresso 並導入下載好的 SDK



3. 完成 SDK 導入



4. 選擇 Import SDK example(s)



5. 選擇 eiq_examples 中的 deepviewrt_labelimage_cm7 並點選下一步



6. 開啟模型存放位置

① 展開左側專案 source 資料夾並於 models 點右鍵 
② 滑鼠移至 Utilities 
③ Open directory browser here,此時就會跳出放置模型的資料夾



7. 將訓練好的放到此資料夾



8. 在程式修改模型名稱以及需要分類的圖片名稱

① 點開左側 source 中的 model.S   
② 更改模型名稱
③ 更改需分類的圖片名稱(需先將要分類的圖片放置在 data 資料夾中)



9. 確認好將 i.MX RT1170 EVK 與電腦連接後,選擇 build -> Debug -> RUN


10. 完成燒錄後,可透過串口通訊軟體看見圖片分類結果,以及得知圖片的相似程度,且執行速度都在 ms 以內




六、結論

以上就是如何利用 NXP eIQ Portal 訓練一個花分類的模型,除了花的分類外,也提供辨識手寫數字分類範例,讓新手不寫程式也能夠輕易的訓練自己的模型並且部署在 NXP i.MX RT 平台上。

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★博文作者未開放評論功能