張高興的 Raspberry Pi AI 開發指南:(一)Hailo-8 配置

张高兴發表於2024-12-01

目錄
  • 攝像頭配置
  • AI Kit 配置
  • 測試
  • 參考

2024 年 6 月,Raspberry Pi AI Kit 釋出,將 M.2 HAT+ 與 Hailo-8 AI 加速模組捆綁在一起,使 Raspberry Pi 具有了執行 AI 程式的能力。Hailo-8 是由以色列公司 Hailo 開發的一款高效能邊緣 AI 處理器(NPU),它專為低功耗、高效率的深度學習推理任務設計,可以提供高達 26 TOPS 的計算能力,適用於各種邊緣計算場景。本文主要介紹 AI Kit(AI HAT+)在 Raspberry Pi 5 上的配置和使用。

攝像頭配置

Raspberry Pi 5 的主機板上有兩個 CSI 介面用於接入攝像頭,其位置在有線網口後。接入攝像頭時將排線的金屬面朝向有線網口位置,插入介面。

如果是官方的攝像頭模組,不需要做任何配置,即插即用。如果是第三方攝像頭模組,需要修改 /boot/firmware/config.txt 配置檔案。找到 camera-auto-detect=1 語句,修改為 camera_auto_detect=0 在檔案結尾,根據攝像頭型號加入以下設定語句:

型號 設定語句
OV9281 dtoverlay=ov9281
IMX290/IMX327 dtoverlay=imx290,clock-frequency=37125000
IMX378 dtoverlay=imx378
IMX219 dtoverlay=imx219
IMX477 dtoverlay=imx477
IMX708 dtoverlay=imx708

如果需要同時接入兩路攝像頭,可以在對應的攝像頭配置語句後面加入 cam0cam1 指定攝像頭,例如 dtoverlay=imx219,cam0

配置完成後重啟,執行命令,預覽攝像頭並將攝像頭畫面顯示在螢幕上。

rpicam-hello -t 0

AI Kit 配置

Raspberry Pi 5 主機板上有一個 PCIe 介面,其位置在 SD 卡槽上方。接入模組時將排線的金屬面朝向有線網口位置,插入介面。

安裝完成後需要更新系統軟體以及韌體。

sudo apt update && sudo apt full-upgrade
sudo rpi-eeprom-update

使用 raspi-config 工具啟用 PCIe Gen 3.0 確保 NPU 獲得最佳效能。

sudo raspi-config  # 選擇 Advanced Options -> 選擇 PCIe Speed -> 選擇 Yes

安裝 NPU 所需的軟體包。

sudo apt install hailo-all

重啟後可執行命令,檢查 NPU 是否正常執行。

hailortcli fw-control identify

看到類似於以下內容的輸出,則表示已成功。

Executing on device: 0000:01:00.0
Identifying board
Control Protocol Version: 2
Firmware Version: 4.18.0 (release,app,extended context switch buffer)
Logger Version: 0
Board Name: Hailo-8
Device Architecture: HAILO8L
Serial Number: HLDDLBB243301512
Part Number: HM21LB1C2LAE
Product Name: HAILO-8L AI ACC M.2 B+M KEY MODULE EXT TMP

測試

透過克隆官方的倉庫 rpicam-apps 來執行示例程式。rpicam 程式實現了一個後處理框架(post-processing framework),可以使用 JSON 處理從攝像頭中獲取的影像。

git clone --depth 1 https://github.com/raspberrypi/rpicam-apps.git ~/rpicam-apps

倉庫提供了物件檢測、影像分割、姿態識別等主流模型的應用案例,例如使用如下命令執行 YOLOv8 的物件檢測模型。

rpicam-hello -t 0 --post-process-file ~/rpicam-apps/assets/hailo_yolov8_inference.json --lores-width 640 --lores-height 640

參考

  1. AI software - Raspberry Pi Documentation:https://www.raspberrypi.com/documentation/computers/ai.html
  2. AI Kit - Raspberry Pi Documentation:https://www.raspberrypi.com/documentation/accessories/ai-kit.html
  3. 樹莓派攝像頭使用方法 Camera教程:https://www.raspi.cc/index.php?c=read&id=53&page=1

相關文章