跳至內容
測試伺服器
開發伺服器

Object Detection vTool#

Object Detection vTool 會根據您所選的模型來偵測並分類圖像中的物件。

Object Detection vTool 可以對透過 Image 輸入接腳接收到的圖像中的物件進行分類。它會透過 InferenceImage、BBoxes_px、Classes 以及 Scores 輸出接腳輸出結果。系統會在每個偵測到的物件周圍繪製一個邊界方框。

如果您在偵測前使用 ROI Creator vTool 指定感興趣區域,Object Detection vTool 會透過其 Roi 輸入接腳接收 ROI 資料。在此情況下,偵測作業將僅針對感興趣區域進行。這會帶來一個附帶好處,即加快處理速度。

如需購買 Object Detection vTool 的授權,請造訪 Basler 網站。

Object Detection vTool

運作原理#

假設您想要偵測並識別圖像中的特定物件,例如畫面中的人物或其他元素。

這是您的輸入圖像,顯示了六名配備滑雪裝備的兒童:

顯示六名滑雪兒童的輸入圖像

您可以透過載入經過訓練以偵測各種物件(包括人物和滑雪裝備)的模型來設定 vTool。

已選取 Object Detection 的 Bundle

接下來,您可以選取想要偵測和分割的類別。有些模型可能會完全針對您的使用案例量身打造。在這種情況下,所有想要的類別都已經被選取。

選取類別對話方塊

設定 vTool 後,您即可執行啟動推論程序的 recipe。vTool 會利用模型來分析圖像,並識別和定位現有的物件。分析完成後,即會傳回分割結果。其中包含圖像中偵測到的每個相異物件實例的邊界方框、類別標籤以及信心分數。

這是接腳資料檢視中的結果影像:

已突顯結果的 Object Detection

已有六人被偵測為標記為 person 的紫色邊界方框中的人員。同樣地,有 5 個滑雪板被偵測並包含在標記為 skis 的邊界方框中。

詳細輸出

  • 邊界框 (Bounding Box):邊界框是繪製在偵測到的物件周圍的矩形。針對每個邊界框,會輸出中心像素、寬度、高度和旋轉。
  • Class: person, skis
    類別標籤顯示模型將邊界方框中的物件識別為人員或滑雪板。
  • Score: 分數值(例如 0.890817)表示模型對其偵測結果的信心程度(例如 89.08 %)。較高的分數(接近 1.0)表示信心水準較高。

設定 vTool#

若要設定 Object Detection vTool:

Object Detection vTool 設定

  1. 在 Recipe Management 窗格的 vTool Settings 區域中,按一下 Open Settings 或按兩下 vTool。
    隨即會開啟 Object Detection 對話方塊。
  2. 在 伺服器選取 區域中,選取您要連線的伺服器。
    伺服器必須正在執行,才能與其建立連線。
    • 選項 1:手動輸入 Triton Inference Server 的 IP 位址與連接埠。
    • 選項 2:在下拉式清單中選取您伺服器的 IP 位址 / 主機名稱與連接埠。
  3. 按一下 Connect 以建立連線。
    接著,vTool 便會載入可用的模型。
  4. 在 模型選取 區域中,在下拉式清單選取包含所需模型的 bundle。
    選取 bundle 後,下拉式清單下方的資訊便會填入該 bundle 的詳細資料,讓您可以確認所選取的 bundle 是否正確。
    模型選取區域
  5. 如果清單中沒有所需的 bundle,請按一下 部署新模型 下拉式清單中的
    這會開啟 pylon AI Agent ,可讓您部署更多模型。
    部署新模型
    部署新模型後,您必須按一下 Refresh 按鈕。
  6. 在 Detection Settings 區域中,按一下 Select Classes 來選取您要分類的類別。
    隨即會開啟包含可用類別的對話方塊。依預設會選取所有類別。您可以依需求選取任意數量的類別。

    資訊

    此區域中可用的參數取決於所選的模型。某些參數只有在選取特定模型後才會顯示 (例如 IOU Threshold)。預設值由模型提供。

  7. 在檢測設定中指定其他選項:

    1. Number of objects: 您可以指定要檢測的最大物件數,或選取 Unlimited。
      此限制適用於每個個別類別。如果影像中存在的物件數量多於此處指定的數量,系統將會檢測出評分最高的配對。
    2. Maximum/Minimum height: 如果您想依高度篩選邊界框,請指定適當的值。由於邊界框的高度對應於物件的高度,這可讓您僅檢測所需大小的物件。
    3. Maximum/Minimum width: 如果您想依寬度篩選邊界框,請指定適當的值。由於邊界框的高度對應於物件的寬度,這可讓您僅檢測所需大小的物件。
    4. Confidence threshold: Confidence 是神經網路的一個係數,表示影像中的物件對於所選類別的代表性。較高的值表示較高的 Confidence,且能減少誤報。
    5. Edges: 您可以透過移動方框的各個邊緣達指定的像素數,來擴大偵測到之物件周圍的邊界方框。這可確保物件完全位於方框內。
    6. IOU Threshold: 某些邊界方框可能會重疊。透過此參數,您可以控制是否要合併邊界方框。較低的值代表較低的容差,大多數的邊界方框將會被合併。
  8. 按一下 OK。

您可以在 pin data view 中檢視 object detection 的結果。在此您可以選取要顯示的輸出。

Inputs#

Image#

可直接從「相機」vTool 或任何能輸出影像的 vTool(例如「Image Format Converter 」vTool)接收影像。

  • 資料類型:圖片
  • 影像格式:8 位元至 16 位元彩色影像

Roi#

接受來自 ROI Creator vTool 或任何其他輸出矩形的 vTool 的興趣區域。如果輸入多個矩形,則會使用第一個矩形作為單一興趣區域。

  • 資料類型:RectangleF、RectangleF Array

Outputs#

若要將 vTool 與 Starter vTools 搭配使用,可以將輸出接腳的資料類型從多值資料切換為單值資料。若要這麼做,請使用 Features - All 窗格中的 Data Type Selector 參數。

InferenceImage#

針對每個輸入影像傳回繪製了圍繞所檢測物件之邊界框的影像,以將結果視覺化。

  • 資料類型:圖片

BBoxes_px#

為每個檢測到的物件傳回一個邊界框。每個邊界框都是由其中心像素的座標、寬度與高度 (x_center, y_center, width, height) 來定義。邊界框輸出可用作其他 vTools 的 Roi 輸入接腳的輸入。

  • 資料類型:RectangleF 陣列

Classes#

傳回所檢測物件的類別標籤。

  • 資料類型:字串陣列

Scores#

傳回每個偵測到之物件的信賴分數。

  • 資料類型:Float Array

Payload#

傳回有關 Inference Server 效能的額外資訊以供評估。只有在 Debug Settings パラメーターグループの Features - All ペインで有効にした場合にのみ、この出力ピンを利用できるようになります。

  • 資料類型:String

典型前置元件#

典型後續元件#