vision.detectvision.detect
Consulta las entradas, salidas y la compatibilidad de ejecución definidas para el nodo vision.detect.
Videotutorial
04Mira cómo configurar y ejecutar el nodo vision.detect en un flujo de trabajo real de LaiCai Flow.
Entradas
5modelIdstringObligatorioliteralallClassesboolOpcionalliteralclassNamesarrayOpcionalliteralminScorenumberObligatorioliteralroirectObligatorioliteralSalidas
9data.bestobject—data.best.scorenumber—data.best.modelIdstring—data.best.classNamestring—data.best.centerpointscreenRatiodata.best.center.xnumberscreenRatiodata.best.center.ynumberscreenRatiodata.best.rectrectscreenRatiodata.itemsarray—Compatibilidad de ejecución
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: yoloTensor 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 / float16Mapeo 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.
id2labellabel2idclassNameTamañ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 / xTensores 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.
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
}
}