visionvision.detect

vision.detect

Semak input, output dan sokongan masa jalan yang ditakrifkan untuk node vision.detect.

Tutorial video

04

Tonton cara mengkonfigurasi dan menjalankan node vision.detect dalam aliran kerja LaiCai Flow sebenar.

Tutorial node: Object Detect
Tonton di YouTube

Input

5
InputJenis nilaiKeperluanSumber yang diterima
modelIdstringDiperlukanliteral
allClassesboolPilihanliteral
classNamesarrayPilihanliteral
minScorenumberDiperlukanliteral
roirectDiperlukanliteral

Output

9
Laluan outputJenis nilaiRuang koordinat
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

Sokongan masa jalan

DesktopDisokong
Android AgentDisokong

Keserasian dan keperluan teknikal model

Sambungan ONNX sahaja tidak menjamin keserasian. LaiCai juga perlu memahami input, tensor output, koordinat kotak, skor keyakinan dan susunan kelas.

Kereta api model deteksi kebiasaan

Fail model

Gunakan model pengesanan objek YOLO standard yang dieksport ke ONNX. Fail PyTorch .pt, ID model API awan serta model pengelasan, segmentasi, pose atau kotak berputar tidak boleh diimport terus.

.onnxtype: yolo

Tensor input

Perlu satu input RGB NCHW tiga saluran, float32 atau float16 yang dinormalkan kepada 0–1. LaiCai mengekalkan nisbah dengan letterbox RGB 114; saiz dinamik yang tidak diketahui menggunakan 640 × 640.

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

Pemetaan kelas

ID kelas mesti bermula dari 0, berterusan dan mengikut susunan latihan. id2label dan label2id mesti sepadan, dan className mesti sama tepat dengan label.

id2labellabel2idclassName

Saiz dan kelajuan

Mulakan dengan Nano atau Small untuk pengesanan berterusan. Model besar mungkin lebih tepat tetapi menggunakan lebih memori dan lebih perlahan. Ukur pada desktop dan Android sebenar.

n / s / m / l / x

Tensor output yang disokong

Model mesti mengembalikan tepat satu tensor dalam salah satu susun atur berikut. LaiCai menggunakan penapis keyakinan dan NMS pada output YOLO mentah.

FormatShape disokongMaksud
raw_yolo_no_objectness[1, 4 + nc, N] / [1, N, 4 + nc]Kotak dan skor kelas tanpa objectness berasingan.
raw_yolo_with_objectness[1, 5 + nc, N] / [1, N, 5 + nc]Kotak, objectness dan skor kelas.
postprocessed_xyxy[1, N, 6] / [N, 6]x1, y1, x2, y2, skor dan ID kelas selepas NMS.

Semak sebelum import

  • Model pengesanan objek ONNX, bukan .pt atau ID API awan.
  • Satu input RGB NCHW dan satu output yang disokong.
  • Menggunakan float32 atau float16, bukan INT8/UINT8.
  • Susunan kelas dan format diketahui; satu kelas menetapkan outputFormat.
  • Folder mengandungi satu .onnx atau config.json menetapkan modelFile.
  • Uji bingkai semasa pada desktop, kemudian sahkan secara berasingan dalam Android Agent.

Contoh config.json

Label dan outputFormat ialah contoh. Gantikan dengan susunan kelas dan format tensor sebenar model yang dieksport.

{
  "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
  }
}