visionvision.detect

vision.detect

查看 vision.detect 節點定義的輸入、輸出和執行支援。

影片教學

04

觀看如何在實際的萊彩 Flow 工作流程中設定並執行 vision.detect 節點。

節點教學: Object Detect
在 YouTube 觀看

輸入

5
輸入項目值類型是否必填可用來源
modelIdstring必填literal
allClassesbool選填literal
classNamesarray選填literal
minScorenumber必填literal
roirect必填literal

輸出

9
輸出路徑值類型座標空間
data.bestobject
data.best.scorenumber
data.best.modelIdstring
data.best.classNamestring
data.best.centerpointscreenRatio
data.best.center.xnumberscreenRatio
data.best.center.ynumberscreenRatio
data.best.rectrectscreenRatio
data.itemsarray

執行支援

桌面端支援
Android Agent支援

模型相容性與技術要求

副檔名是 ONNX,不代表模型一定相容。萊彩還必須理解模型輸入、輸出張量、偵測框座標、信心分數和類別順序。

訓練自訂偵測模型

模型檔案

使用匯出為 ONNX 的標準 YOLO 物件偵測模型。PyTorch .pt 檔、雲端 API 模型 ID,以及分類、分割、姿態或旋轉框模型都不能直接匯入。

.onnxtype: yolo

輸入張量

模型需要一個 NCHW RGB 三通道輸入,資料型別為 float32 或 float16,數值正規化到 0–1。萊彩以 RGB 114 補邊並保持長寬比;無法判定動態尺寸時回退到 640 × 640。

[1, 3, H, W]float32 / float16

類別對應

類別 ID 必須從 0 開始連續排列,並符合訓練順序。id2label 與 label2id 必須一致,節點中的 className 也要完全符合設定標籤。

id2labellabel2idclassName

模型大小與速度

持續偵測建議先用 Nano 或 Small。Medium 與更大模型可能更準確,但會使用更多記憶體並降低速度。請在實際桌面端和安卓裝置上測量匯出模型。

n / s / m / l / x

支援的輸出張量

模型必須只回傳一個輸出張量,並符合下列任一配置。對 raw YOLO 輸出,萊彩會執行信心分數篩選與 NMS。

輸出格式支援形狀含義
raw_yolo_no_objectness[1, 4 + nc, N] / [1, N, 4 + nc]偵測框與類別分數,沒有獨立 objectness。
raw_yolo_with_objectness[1, 5 + nc, N] / [1, N, 5 + nc]偵測框、objectness 與類別分數。
postprocessed_xyxy[1, N, 6] / [N, 6]經 NMS 後的 x1、y1、x2、y2、分數與類別 ID。

匯入前檢查

  • 檔案是 ONNX 物件偵測模型,不是 .pt 或雲端 API 識別碼。
  • 只有一個 NCHW RGB 輸入和一個支援的輸出張量。
  • 輸入與輸出使用 float32 或 float16,而非 INT8 或 UINT8 量化。
  • 已確認類別順序與輸出格式;單類別模型明確設定 outputFormat。
  • 模型目錄只有一個 .onnx,或在 config.json 以 modelFile 指定。
  • 先在桌面端測試目前畫面,再於 Android Agent 單獨驗證相同模型。

config.json 範例

下列標籤與 outputFormat 只是範例,請換成匯出模型實際的類別順序與張量格式。

{
  "id": "game-objects",
  "name": "Game Objects",
  "type": "yolo",
  "modelFile": "model.onnx",
  "outputFormat": "raw_yolo_no_objectness",
  "id2label": {
    "0": "ore",
    "1": "tree"
  },
  "label2id": {
    "ore": 0,
    "tree": 1
  }
}