visionvision.detect

vision.detect

Consulta las entradas, salidas y la compatibilidad de ejecución definidas para el nodo vision.detect.

Videotutorial

04

Mira cómo configurar y ejecutar el nodo vision.detect en un flujo de trabajo real de LaiCai Flow.

Tutorial del nodo: Object Detect
Ver en YouTube

Entradas

5
EntradaTipo de valorRequisitoFuentes aceptadas
modelIdstringObligatorioliteral
allClassesboolOpcionalliteral
classNamesarrayOpcionalliteral
minScorenumberObligatorioliteral
roirectObligatorioliteral

Salidas

9
Ruta de salidaTipo de valorEspacio de coordenadas
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

Compatibilidad de ejecución

EscritorioCompatible
Android AgentCompatible

Compatibilidad y requisitos técnicos del modelo

La extensión ONNX no basta para garantizar compatibilidad. LaiCai también debe interpretar la entrada, el tensor de salida, las coordenadas, la confianza y el orden de clases.

Entrena un modelo de detección personalizado

Archivo del modelo

Usa un modelo YOLO estándar de detección de objetos exportado a ONNX. No se pueden importar directamente archivos PyTorch .pt, identificadores de API alojadas ni modelos de clasificación, segmentación, pose o cajas rotadas.

.onnxtype: yolo

Tensor de entrada

Se necesita una entrada RGB NCHW de tres canales, float32 o float16 normalizada a 0–1. LaiCai conserva la proporción con letterbox RGB 114; si no resuelve el tamaño dinámico, usa 640 × 640.

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

Mapeo de clases

Los ID deben empezar en 0, ser continuos y seguir el orden de entrenamiento. id2label y label2id deben coincidir, y className debe ser idéntico a la etiqueta configurada.

id2labellabel2idclassName

Tamaño y velocidad

Empieza con Nano o Small para detección continua. Los modelos mayores pueden ser más precisos, pero consumen más memoria y son más lentos. Mide el modelo en el escritorio y Android reales.

n / s / m / l / x

Tensores de salida compatibles

El modelo debe devolver exactamente un tensor con uno de estos diseños. LaiCai aplica filtrado de confianza y NMS a la salida YOLO sin procesar.

FormatoShape admitidaSignificado
raw_yolo_no_objectness[1, 4 + nc, N] / [1, N, 4 + nc]Cajas y puntuaciones de clase sin objectness independiente.
raw_yolo_with_objectness[1, 5 + nc, N] / [1, N, 5 + nc]Cajas, objectness y puntuaciones de clase.
postprocessed_xyxy[1, N, 6] / [N, 6]x1, y1, x2, y2, puntuación e ID de clase después de NMS.

Comprobación antes de importar

  • Es un detector ONNX, no un .pt ni un ID de API alojada.
  • Tiene una entrada RGB NCHW y una salida compatible.
  • Usa float32 o float16, no cuantización INT8/UINT8.
  • Se conocen orden y formato; una clase declara outputFormat.
  • La carpeta contiene un .onnx o config.json lo señala con modelFile.
  • Prueba el fotograma actual en escritorio y luego valida por separado en Android Agent.

Ejemplo de config.json

Las etiquetas y outputFormat son ejemplos. Sustitúyelos por el orden y formato reales del modelo exportado.

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