DOCUMENTACIÓN CON IA
¿Qué desea saber?
Endpoint de ROI Recortada (Solo Clasificación)
Visión General
El endpoint cropped_roi proporciona acceso a las Regiones de Interés (ROIs) recortadas generadas a partir de los resultados de Clasificación en Haystack ejecutándose en el dispositivo.
Haystack no admite actualmente resultados de segmentación. Este endpoint funciona únicamente para resultados de tipo clasificación. Si necesita procesar la salida del segmentador de forma programática, utilice la API estándar de resultados de inspección en su lugar.
El formato de la URL base es:
http://{device-ip}/edge/haystack/cropped_roi/{classification_result_id}
Cómo Funciona
Cuando la cámara completa una captura de clasificación, el flujo de Node-RED construye dinámicamente las URLs para las imágenes de ROI recortadas emparejando la IP del dispositivo y el ID del resultado de clasificación:
const imageUrl = `http://${baseUrl}/edge/haystack/cropped_roi/${result.id}`;
Cada URL sirve una imagen recortada correspondiente a una ROI de clasificación individual, que típicamente representa una sola inspección.
Resumen del Flujo de Node-RED
El flujo ROI_Crop realiza lo siguiente:
-
Extrae la IP del Dispositivo
- Analiza el campo
image_urlpara encontrar la IP (p. ej.,192.168.0.101) - La almacena globalmente para reutilizarla
- Analiza el campo
-
Consulta los Datos de la Última Captura
-
Envía una solicitud GET a la API PostgREST del dispositivo:
http://{device-ip}/postgrest/captures?select=...
&order=id.desc&limit=1 -
Recupera la captura más reciente y todas las entradas de classification_result
-
-
Filtra Únicamente los Resultados de Clasificación
-
Omite los resultados de segmentación o alineación
-
Itera sobre cada resultado de clasificación:
classificationResults.forEach(result => {
const roiName = result.roi_result?.inspection_region?.name || `ROI_${result.id}`;
const imageUrl = `http://${baseUrl}/edge/haystack/cropped_roi/${result.id}`;
imageMap[roiName] = imageUrl;
});
-
-
Genera las URLs de ROI Recortadas
- Guarda todos los enlaces de imágenes de ROI en un
imageMapglobal - Devuelve la lista de las últimas URLs de imágenes de ROI recortadas
- Guarda todos los enlaces de imágenes de ROI en un


Ejemplo de Uso
Obtener una Imagen de ROI Recortada
curl http://192.168.0.101/edge/haystack/cropped_roi/42 -o roi_42.jpg
Uso en una Interfaz Web
<img src="http://192.168.0.101/edge/haystack/cropped_roi/42" alt="Cropped ROI 42">
Ejemplo de Salida
{
"ROI_1": "http://192.168.0.101/edge/haystack/cropped_roi/1",
"ROI_2": "http://192.168.0.101/edge/haystack/cropped_roi/2"
}
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
device-ip | string | Dirección IP de la cámara (p. ej., 192.168.0.101) |
Flujo de Integración
- Adquirir los metadatos de la última captura mediante
/postgrest/captures. - Identificar los IDs de
classification_resultdisponibles. - Construir las URLs de ROI recortadas para cada resultado.
- Mostrar o descargar esas imágenes para análisis, datos de entrenamiento o inspección de QA.
Descargar el Flujo de Node-RED
- ROI Crop Flow (JSON) - Flujo completo de Node-RED para extraer imágenes de ROI recortadas
- Importe este flujo directamente en Node-RED para acceder a las ROIs de clasificación recortadas
- Funciona con los sistemas OV10i y OV80i