在 Ameba 上執行邊緣 AI
NPU 加速 | 多框架支援 | 線上與離線工具
Ameba AI 是專為 Realtek AmebaAIoT SoC 設計的全面人工智慧(AI)解決方案。它為開發者提供強大的工具與函式庫,以在應用程式中實現 AI 功能。借助 NN 硬體引擎加速推論過程,SoC 支援廣泛的 AI 應用,包括音訊分類、物件偵測等。它針對效能與效率進行了優化,讓開發者能夠在資源受限的裝置上執行 NN 模型,同時不犧牲功能性。無論您是初學者還是經驗豐富的 AI 開發者,Ameba AI 都能提供您所需的工具與資源,將您的 AI 專案付諸實現。在 SoC 上部署 NN 的步驟如下:
- 模型訓練: 根據您想實現的特定 AI 應用,選擇合適的 NN 模型。使用相容的框架(如 TensorFlow 或 PyTorch)訓練模型。確保模型已針對資源受限裝置的部署進行優化。
- 模型轉換: 將訓練好的模型轉換為與 SoC 上 NN 硬體引擎相容的網路二進位圖形檔案。這可能涉及量化或其他優化技術,以減少模型大小並提升推論速度。
- 模型部署: 使用 SDK 將轉換後的模型部署到 SoC 上。這包括將模型整合到您的應用程式中,並進行部署配置。
- 推論執行: 使用已部署的模型在 SoC 上執行推論過程。這包括將輸入資料送入模型並擷取輸出結果。NN 硬體引擎將加速推論過程,實現即時 AI 應用。
- 效能優化: 監控已部署模型的效能,並依需求進行優化。這可能包括微調模型、調整輸入資料,或優化推論過程以獲得更好的結果。
透過以上步驟,開發者可以成功地在 Realtek AmebaAIoT SoC 上部署 NN 模型,並打造利用 AI 強大能力的智慧應用程式。
NN 工作流程
AmebaPro2 整合了專屬的 NPU (神經處理單元),在 INT8 精度下可提供高達約 0.4 TOPS 的算力,藉此加速邊緣端 (Edge) 的深度神經網路推論。
神經網路 (NN) 工作流程
神經網路的工作流程始於使用 Acuity Toolkit 進行模型轉換。
- 支援框架:可將來自 TensorFlow、PyTorch、ONNX、Caffe、Keras 與 Darknet 等主流框架的預訓練模型進行轉換。
- 輸出格式:轉換為最佳化的
.nb(network binary) 檔案。 - 量化支援:支援 INT8、INT16 (DFP) 以及 FP16 量化技術。
執行階段 (Runtime) 處理
在執行階段,vipnn MMFv2 模組會執行以下步驟:
影像擷取:從 ISP 攝影機管線 (camera pipeline) 擷取 RGB 影像影格 (video frames)。
前處理:進行影像調整大小 (resize) 與格式轉換。
NPU 推論:透過 VIPLite 驅動程式將張量 (tensor) 資料傳送至 NPU 進行推論。
後處理:執行針對特定模型的後處理作業 (例如:邊界框解碼 Bounding box decoding、非極大值抑制 NMS),最終產生結構化的物件偵測或分類結果。
模組化架構優勢
此模組化架構具備極高的彈性與安全性,支援下列功能:
隨插即用 (Plug-and-play) 的模型整合
零拷貝 (Zero-copy) 緩衝區最佳化
串聯式多模型管線 (Cascaded multi-model pipelines)
可選的模型安全功能:包含 Ed25519 簽章驗證與 AES-CBC 加密技術。
應用範例 📋
自訂模型安裝指南
- Arduino SDK
- FreeRTOS SDK
物件偵測
- 模型: YOLOv3/4/7-tiny
- Arduino 範例
- FreeRTOS 範例
人臉偵測
- 模型: SCRFD
- Arduino 範例
- FreeRTOS 範例
人臉識別
- 模型: MobileFaceNet (需搭配人臉偵測作為串聯前置模型)
- Arduino 範例
- FreeRTOS 範例
音訊分類
- 模型: YAMNet (521 audio classes)
- Arduino 範例
- FreeRTOS 範例
影像分類
- 模型: MobileNetV2 / Custom CNN
- Arduino 範例
- FreeRTOS 範例
手勢偵測
- 模型: Palm Detection + Hand Landmark (2-model cascade)
- Arduino 範例
- FreeRTOS 範例
線上生成式 AI
Realtek IoT/Wi-Fi MCU Solutions . All Rights Reserved. 使用條款