使用 Renesas RZ/V2 系列 MPU 加速視覺辨識系統設計

作者:Jacob Beningo

資料提供者:DigiKey 北美編輯群

邊緣視覺辨識逐漸在許多產品中成為重要功能,也跟著帶動機器學習 (ML) 和人工智慧 (AI) 在更多應用領域中的運用。但開發人員也面臨一個問題,就是運用 ML/AI 能力的視覺功能可能需要更多的運算能力,才可執行辨識演算法,但功率受限的應用可能無法提供這種運算能力。如果要使用昂貴的散熱管理解決方案,更會增加成本。

邊緣 ML/AI 的目標是找出最佳的架構作法,在效能與功耗之間達成平衡,同時提供健全的軟體生態系統,以利開發應用。

考慮到這些條件,本文將以 Renesas Electronics 的 RZ/V2 系列微處理器單元 (MPU) 及其內建的 AI 硬體加速器為例,介紹解決方案。本文將探討 MPU,而非微控制器 (MCU) 或高階圖形處理單元 (GPU),如何解決設計人員面臨的幾個問題。包括說明如何使用 RZ/V2 系列開始設計視覺辨識系統,並提供一些讓過程更加順暢的「提示與秘訣」。

RZ/V2 系列 MPU 簡介

RZ/V2 系列是一款使用三核心微處理器的解決方案,能讓開發人員享受眾多功能。RZ/V2L 系列微處理器含有兩個 Arm Cortex-A55 處理器,運作頻率均為 1.2 GHz,還有一個即時微控制器核心 (Arm® Cortex®-M33),以 200 MHz 運作。此外,此系列中的零件包含一個以 Arm Mali-G31 多媒體處理器為基礎的 GPU,並具有 NEON 單指令/多重資料 (SIMD) 指令。三個處理核心搭配多媒體處理器後,就可為開發人員提供完整的視覺辨識系統解決方案。

RZ/V2 系列目前有兩個 MPU 類別,即 RZ/V2L 和 RZ/V2M 系列。RZ/V2L 具有簡易的影像訊號處理器 (ISP)、3D 圖形引擎和超多用途的周邊裝置組。RZ/V2M 本身則添加高效能 ISP,可支援 30 fps 的 4K 解析度。本文將重點介紹 RZ/V2L 系列,包括 R9A07G054L23GBGR9A07G054L24GBG。兩個零件的主要差異在於:R9A07G054L23GBG 採用 15 mm2、456-LFBGA 封裝,而 R9A07G054L24GBG 則採用 21 mm2、551-LFBGA 封裝。

圖 1 顯示 RZ/V2L 系列方塊圖。除了三個處理核心之外,MPU 還含有適用於標準周邊裝置的介面,例如 DDR3/DDR4 記憶體、SPI、USB、乙太網路、I²C、CAN、SCI、GPIO 和類比數位轉換器 (ADC)。此外,這些零件還包括安全啟動、加密引擎和真實亂數產生器 (TRNG) 等安全功能。然而,此 MPU 系列與眾不同之處,在於具有可動態重新配置處理器 (DRP) 的 AI 加速器。

Renesas 的 RZ/V2L MPU 系列圖片 (按此放大)圖 1:RZ/V2L MPU 系列可支援多種周邊裝置介面、安全性和視訊處理等選項。視覺辨識應用的關鍵特點是 DRP-AI 加速器。(圖片來源:Renesas Electronics Corporation)

DRP-AI 加速器的秘密武器

DRP-AI 加速器是本產品的秘密武器,可讓 RZ/V2L 系列 MPU 快速執行視覺辨識應用,不但能耗更低,熱曲線也更低。DRP-AI 由兩個元件組成:DRP 和 AI 乘積累加運算能力 (MAC)。可以透過內部開關將資料流最佳化,即可有效處理卷積神經網路及所有合併層中的運算 (圖 2)。

DRP-AI 硬體專門用來執行 AI 推論。DRP-AI 採用 Renesas 開發的獨特動態重新配置技術,可提供靈活性、高速處理能力和電源效率。此外,DRP-AI 轉換器是一款免費的軟體工具,能讓使用者實作最佳化 AI 模型,即可迅速發揮最大效能。DRP-AI 轉換器所輸出的多個執行檔可以放在外部記憶體。然後,相關應用就可在執行期間,在多個 AI 模型之間動態切換。

DRP 可以動態更改硬體配置,以便快速處理複雜的活動,如影像預處理和 AI 模型池化層。

Renesas DRP-AI 包含 DRP 和 AI-MAC 的示意圖圖 2:DRP-AI 由 DRP 和 AI-MAC 組成,兩者可以透過內部開關將資料最佳化,即可有效處理卷積神經網路及所有合併層中的運算。(圖片來源:Renesas Electronics Corporation)

DRP-AI 轉換器

DRP-AI 轉換器工具可利用訓練過的 ONNX 模型產生 DRP-AI 最佳化的執行檔,不受任何 AI 框架影響。舉例來說,開發人員可以使用 PyTorch、TensorFlow 或其他任何 AI 建模框架,但前提是可以輸出 ONNX 模型。模型完成訓練後,就會送入 DRP-AI 轉換器,藉此產生 DRP 和 AI-MAC 執行檔 (圖 3)。

AI 模型可使用任何 ONNX 相容框架進行訓練的示意圖圖 3:AI 模型可使用任何 ONNX 相容框架進行訓練。ONNX 模型接著會送入 DRP-AI 轉換器,藉此產生 DRP 和 AI-MAC 執行檔。(圖片來源:Renesas Electronics Corporation)

DRP-AI 轉換器有三個主要用途:

  1. 對每個運算進行排程,以處理 AI 模型。
  2. 隱藏排程中的開銷,例如每個運算轉換期間發生的記憶體存取時間。
  3. 最佳化網路圖結構。

轉換器會自動將 AI 模型的每項處理分配給 AI-MAC 和 DRP,即便使用者並非硬體專家也可輕鬆使用 DRP-AI。開發人員則可透過隨附的驅動程式執行調用,以執行高效能的 AI 模型。此外,DRP-AI 轉換器可以持續更新,以支援新開發的 AI 模型,而無需更改硬體。

系統使用案例及流程

圖 4 指出使用 RZ/V2L MPU 來訓練並部署視覺辨識應用的一般流程。如同往常一樣,工程師可以取得其資料集,並以此訓練視覺辨識模型。無論是嘗試辨識貓咪、購物車中的產品,或是組裝線上的故障零件,此訓練過程都會使用熟悉的 AI 框架進行。一旦模型經過訓練,就可轉換成 ONNX 格式並送入 DRP-AI 轉換器,即可輸出物件碼,在 DRP-AI 硬體上執行。接著會將來自攝影機、加速計或其他感測器的數據進行採樣,再送入執行檔中,以便提供執行推論的結果。

訓練和執行視覺辨識演算法示意圖圖 4:在 RZ/V2L MPU 上訓練並執行視覺辨識演算法的流程。(圖片來源:Renesas Electronics Corporation)

工程師有多種方法可在設計中運用 RZ/V2L MPU (圖 5)。第一種作法是以獨立式設計使用 RZ/V2L MPU,將此 MPU 當作系統中的唯一處理器。憑藉其三個核心和 AI 加速硬體,可能不需要額外運算能力。

第二種使用案例是讓 RZ/V2L 在更龐大的系統中當作 AI 處理器。在此使用案例中,RZ/V2L 會執行 AI 推論,並將結果回傳到其他處理器或系統,接著再加以執行。使用案例的挑選需取決於各種因素,例如成本、整體系統架構、效能和即時回應需求。

Renesas RZ/V2L MPU 的兩個使用案例示意圖圖 5:RZ/V2L MPU 有兩種使用案例,分別是在應用中單獨使用,或在更龐大的系統中當作 AI 處理器。(圖片來源:Renesas Electronics Corporation)

實際應用範例

視覺辨識技術可以部署在許多使用案例中。超市就是一個有趣的例子。今天,在超市結帳時,員工或購物者通常會掃描購物車中的每項商品。有個有趣的使用案例就是在輸送帶上使用視覺辨識功能,來偵測通過的產品並自動計價。

我們可使用簡易的 CMOS 攝影機及 Renesas 的 RTK9754L23S01000BE 評估板 (圖 6) 來製作原型。RZ/V2L 嵌入式開發板具有一個系統模組 (SOM) 和載板,能讓開發人員快速上手並運作。此外,開發板還支援 Linux 以及多種工具,如 DRP-AI 轉換器。

Renesas RZ/V2L 嵌入式開發板圖片圖 6:RZ/V2L 嵌入式開發板具有一個 SOM 及載板,能讓開發人員快速上手並運作。(圖片來源:Renesas Electronics Corporation)

圖 7 概述要採集圖像資料和產生 AI 結果所需的操作。在本應用範例中,則使用 CMOS 感測器,透過板載 ISP 擷取輸送帶圖像。接下來,圖像會儲存到記憶體並送入 DRP-AI 引擎。最後,DRP-AI 引擎會執行推論並提供 AI 結果。例如,結果可能是辨識出香蕉、蘋果或其他水果。

此結果通常會伴隨著 0 到 1 的可信度。例如,0.90 的可信度表示 AI 有信心偵測到的是蘋果。另一方面,如果可信度為 0.52,可能意味著 AI 認為這是蘋果,但不敢肯定。採集 AI 結果並在多個樣本中平均該結果,以提高正確結果的機率,這種做法時有所聞。

Renesas RZ/V2L 嵌入式開發板的圖片圖 7:RZ/V2L 嵌入式開發板可用於執行 AI 推論,以辨識輸送帶上的各種水果。此圖展示了擷取影像並產生 AI 結果所需的步驟。(圖片來源:Renesas Electronics Corporation)

最後在本範例中,系統會在偵測到的物件周圍繪製一個方框,並顯示已辨識物件的名稱並附上可信度 (圖 8)。

Renesas RZ/V2L 的輸出範例圖 8:RZ/V2L 在應用中偵測輸送帶上的水果和蔬菜的輸出範例。(圖片來源:Renesas Electronics Corporation)

開始使用 RZ/V2L 的提示與秘訣

開發人員若想要開始在 Renesas RZ/V2L MPU 上進行機器學習,可找到相當多資源,可協助其上手並運作。開發人員可記住幾個「提示與秘訣」,有利簡化並加速開發:

  • 先從開發板和現有範例著手,以體會應用部署和執行的情況。
  • 如果必須執行多個推論,請將可執行的模型儲存在外部記憶體,並使用 DRP-AI 功能快速切換不同模型。
  • 查看 Renesas RZ/V Embedded AI MPU 網站上的文件和影片。
  • 下載 DRP-AI 轉換器
  • 下載 RZ/V2L DRP-AI 支援套件

開發人員若遵循這些「提示和訣竅」,便可從一開始省下很多時間與麻煩。

結論

ML 與 AI 逐漸拓展到許多邊緣應用中,連帶著即時辨識物件的能力也日益受到重視。對設計人員來說,找到適當的架構在邊緣執行 AI/ML 並不容易。GPU 通常會消耗大量電力,而 MCU 可能沒有足夠的運算能力。

如本文所述,Renesas 的 RZ/V MPU 系列搭配 DRP-AI 後有諸多優點,如硬體加速 AI,以及充沛的工具鏈和原型開發支援。

DigiKey logo

聲明:各作者及/或論壇參與者於本網站所發表之意見、理念和觀點,概不反映 DigiKey 的意見、理念和觀點,亦非 DigiKey 的正式原則。

關於作者

Image of Jacob Beningo

Jacob Beningo

Jacob Beningo 是嵌入式軟體顧問,目前與超過十幾個國家的客戶合作,透過產品品質、成本和上市時間的改善,促成業務的大幅轉型。他曾在嵌入式軟體開發技術上發表超過兩百篇文章,是深思熟慮的講師和技術培訓師,共擁有三個學位,包括密西根大學的工程碩士學位。歡迎透過以下方法洽詢,電郵:[email protected]、網站:www.beningo.com,亦可登記取得他發行的Embedded Bytes 每月電子報

關於出版者

DigiKey 北美編輯群