《Raspberry Pi 樹莓派官方消息》如何開始使用 Raspberry Pi AI 相機|奧斯丁國際有限公司 OURSTEAM Internationl
icon最新消息
2024 / 10 / 22

《Raspberry Pi 樹莓派官方消息》如何開始使用 Raspberry Pi AI 相機

如果您已經擁有我們幾週前推出Raspberry Pi AI 相機,您可能需要一些幫助來啟動和運行它 -- 它與我們的其他相機產品略有不同。我們查閱了文件並為您帶來了此入門指南,如果您按照這些步驟操作,您的相機將可以執行物體檢測和姿勢辨識,即使這一切對您來說都是新鮮事。然後,您可以深入了解我們的其餘 AI 相機文檔,以了解更多資訊。




這裡我們介紹如何在 Raspberry Pi AI 相機上執行預先安裝好的 MobileNet SSD(物件偵測)和 PoseNet(姿勢辨識)神經網絡模組。


事前準備

我們假設您正在使用連接到 Raspberry Pi 4 或 Raspberry Pi 5 的 AI 相機。

首先,確保您的 Raspberry Pi 運行最新的軟體。執行以下命令進行更新:


AI 相機整合 RP2040 晶片,負責將神經網絡模組上傳到相機,我們發布了新的 RP2040 晶片,大大提高了上傳速度。從現在開始發貨的 AI 相機均已進行此更新,如果您有早期設備,您可以按照此論壇中的韌體更新說明自行更新。這應該不會超過一兩分鐘,但在開始之前請注意,至關重要的是不要讓任何事情中斷過程,例如:如果相機斷開連接,或者您的 Raspberry Pi 斷電,如果發生這種情況相機將無法使用,您需要將其退回給經銷商進行更換。安裝了早期韌體的相機功能齊全,除模組上傳速度外,其性能各方面均相同。



安裝 IMX500 韌體

除了需要更新 RP2040 晶片韌體外,AI 相機還必須在啟動時將運行韌體下載到 IMX500 感測器上。若要將這些韌體檔案安裝到您的 Raspberry Pi 上,請執行以下命令:


此命令:
  • 安裝操作 IMX500 感測器所需的韌體/lib/firmware/imx500_loader.fpk文件/lib/firmware/imx500_firmware.fpk
  • 將多個神經網路模型韌體檔案放置在/usr/share/imx500-models/
  • 安裝 IMX500 後處理軟體階段 rpicam-apps
  • 安裝 Sony 網路模型打包工具
注意: IMX500 核心設備驅動程式在相機啟動時載入所有韌體文件,如果神經網絡模組韌體之前沒有緩存,這可能需要幾分鐘。我們在此處使用的演示在控制台上顯示進度條以指示韌體載入進度。


重啟

現在您已經安裝了先決條件,請重新啟動您的 Raspberry Pi:





運行範例應用程式

一旦所有系統套件都更新完畢且韌體檔案安裝完畢,我們就可以開始運行一些範例應用程式。如前所述,Raspberry Pi AI 相機與 libcamera、rpicam-apps 和完全整合 Picamera2。這篇部落格文章重點介紹了 rpicam-apps,但您可以在我們的 AI 相機文件中找到更多內容。


rpicam-apps

相機 rpicam-apps 應用包括可在後處理流程中運行的 IMX500 物件偵測和姿勢辨識階段。有關後處理管道的更多信息,請參閱後處理文件

本頁中的範例使用位於的後處理 JSON 檔案/usr/share/rpicam-assets/。



物體偵測

MobileNet SSD 神經網絡執行基本的物件偵測,為發現的每個物件提供邊界框和置信度值。imx500_mobilenet_ssd.json 包含使用 MobileNet SSD 神經網絡的 IMX500 物件偵測後處理階段的設定參數。

imx500_mobilenet_ssd.json聲明一個包含兩個階段的後處理管道:

1. imx500_object_detection,它在輸出張量中挑選出神經網絡產生的邊界框和置信度值

2. object_detect_draw_cv,在影像上繪製邊界框和標籤

MobileNet SSD 張量不需要在您的 Raspberry Pi 上進行大量後處理即可產生邊界框的最終輸出。所有物體偵測均直接在 AI 相機上運作。

以下命令rpicam-hello與物件檢測後處理一起運行:


運行命令後,你應該會看到一個取景器,其中覆蓋了神經網絡識別的物件上的邊界框:





要錄製具有物件檢測疊加的影片,請改用 rpicam-vid :


您可以 imx500_object_detection 透過多種方式配置舞台。

例如:max_detections 定義在任何預定時間檢測到的最大物件數量。threshold 定義將任何輸入視為物件所需的最小置信度值。

此網路的原始推理輸出資料可能非常複雜,因此此階段也執行一些時間過濾並套用滯後。若要停用此過濾,請刪除 temporal_filter 配置積木。



姿態辨識

PoseNet 神經網絡執行姿勢辨識,標記與關節和四肢相關的身體關鍵點。imx500_posenet.json 包含使用 PoseNet 神經網絡的 IMX500 姿態辨識後處理階段的設定參數。

imx500_posenet.json 聲明一個包含兩個階段的後處理管道:

1. imx500_posenet,從 PoseNet 神經網絡取得原始輸出張量

2. plot_pose_cv,在影像上繪製線條疊加

AI 相機執行基本偵測,但輸出張量需要在主機 Raspberry Pi 上進行額外的後處理才能產生最終輸出。

以下命令 rpicam-hello 與姿勢辨識後處理一起運行:





您可以 imx500_posenet 透過多種方式配置舞台。

例如:max_detections 定義在任何預定時間內檢測到的最大物件數量。threshold 定義將輸入視為主體所需的最小置信度值。



Picamera2

有關使用 Picamera2 進行影像分類、物件偵測、物件分割和姿勢辨識的範例,請參閱 GitHubpicamera2 儲存庫

大多數範例使用 OpenCV 進行一些額外的處理。若要安裝運行 OpenCV 所需的依賴項,請執行以下命令:


現在將儲存庫下載 picamera2 到您的 Raspberry Pi 來運行範例。您會在目錄中找到範例文件,其中包含附加資訊 README.md。

從儲存庫執行以下腳本以執行 YOLOv8 物件偵測:


要在 Picamera2 中嘗試姿勢辨識,請從儲存庫執行以下腳本:
 

要進一步探索,包括內部工作原理以及如何轉換現有模組以在 Raspberry Pi AI 相機上運行,請參閱我們的文件


 
原文出處:https://www.raspberrypi.com/news/how-to-get-started-with-your-raspberry-pi-ai-camera/
logo
iconiconiconiconicon
icon  電話:04-2375-3535
icon  傳真:04-2256-9949
icon  統編:90386785
icon  E-mail:service@oursteam.com.tw
icon  LINE ID:@oursteam
Inspire every child to create