Entrenar un Segmenter
Esta guía le muestra cómo configurar y ajustar la función de segmentación del OV20i para detectar, medir y analizar automáticamente características o defectos específicos en sus piezas. Use segmentación cuando necesite identificar formas irregulares, medir áreas o detectar patrones específicos que no pueden ser manejados por una clasificación simple.
OV10i no tiene capacidades de segmentación.
Cuándo usar la segmentación: Defectos de superficie, derrames de líquido, formas irregulares, mediciones de áreas, detección de patrones, o cualquier característica que requiera precisión a nivel de píxel.
Antes de empezar
Lo que necesitará
- Sistema de cámara OV20i configurado y conectado
- Piezas de prueba con características que desee segmentar (p. ej., láminas con marcas de lápiz)
- Buenas condiciones de iluminación para su aplicación específica
- 15-20 imágenes de muestra para el entrenamiento
Paso 1: Crear una Receta de Segmentación
1.1 Iniciar Nueva Receta
- Navegue a la página All Recipes
- Haga clic en
+ New Recipe(esquina superior derecha)
- Ingrese el nombre de la Receta: Use un nombre descriptivo como "Pencil_Mark_Detection" o "Surface_Defect_Segmentation"
- Seleccionar Tipo de Receta: Elija "Segmentación" del menú desplegable
- Haga clic en
OKpara crear
1.2 Activar Receta
- Encuentre su receta en la lista (muestra como "Inactiva")
- Haga clic en
Activate - Haga clic en
Activate and go to editorpara confirmar y lanzar el editor de Recetas
✅ Resultado: La Receta pasa a estar "Activa" y se muestra el Editor de Recetas.
Paso 2: Configurar la Cámara
2.1 Abrir Configuración de Imagen
- Haga clic en
Configure Imaging(en la esquina inferior izquierda)

2.2 Optimizar el Enfoque para Segmentación
El enfoque es crítico para una detección de bordes precisa:
- Coloque su pieza de prueba en la vista de la cámara
- Ajuste el enfoque hasta que los bordes sean nítidos y claros
- Pruebe con diferentes piezas para asegurar un enfoque consistente a lo largo de su rango
- Enfoque en la superficie donde aparecerán defectos o características
- Asegúrese de que toda el área de interés esté en enfoque nítido
- Un ligero sobreenfoque es mejor que un enfoque suave para la segmentación
2.3 Configurar la Exposición Óptima
Una exposición adecuada garantiza una detección de características constante:
- Ajuste la Exposición para una iluminación balanceada
- Evite áreas sobreexpuestas (regiones completamente blancas)
- Asegúrese de que las características sean visibles con buen contraste
Directrices de Exposición para Segmentación:
- Las características deben tener un contraste claro con el fondo
- Evite sombras que podrían confundirse con defectos
- Pruebe con diversas condiciones de pieza (limpia, sucia, desgastada)
2.4 Configurar el Patrón de Iluminación LED
Elija la iluminación en función de lo que está segmentando:
| Tipo de característica | Iluminación recomendada | Por qué |
|---|---|---|
| Defectos de superficie | Campo claro | Una iluminación uniforme revela irregularidades de la superficie |
| Rasguños/Fisuras | Iluminación lateral | Crea sombras que destacan defectos lineales |
| Elementos en relieve | Campo oscuro | Hace que los elementos en relieve se destaquen del fondo |
| Derrames de líquido | Iluminación lateral | Muestra diferencias de textura de la superficie |
2.5 Ajustar Gamma para la Mejora de Características
- Aumentar Gamma para mejorar el contraste entre las características y el fondo
- Probar diferentes valores mientras observa las características objetivo
- Encontrar la configuración que haga que las características sean más distinguibles
2.6 Save Configuration
- Revisar la configuración en la vista previa en vivo
- Haga clic en
Save Imaging Settings

✅ Punto de verificación: Las características deberían ser claramente visibles con buen contraste.
Step 3: Set Up Template and Alignment
3.1 Navegar a la Sección de Plantilla
Haga clic en "Template Image and Alignment" en el menú de migas de pan
3.2 Configurar Alineación (Opcional)
![]()
Para este ejemplo, omitiremos la alineación:
- Seleccionar
Skip Alignersi las piezas están posicionadas de forma consistente - Haga clic en
Save

Cuándo usar Aligner: Habilite cuando las piezas lleguen en posiciones u orientaciones variables que afectarían la precisión de la segmentación.
Step 4: Define Inspection Region
4.1 Navegar a Configuración de Inspección
Haga clic en "Inspection Setup" en el menú de migas de pan
4.2 Configurar la Región de Interés (ROI)
La ROI define dónde se realizará la segmentación:
- Coloque una pieza de prueba en la vista de la cámara
- Arrastre las esquinas de la ROI para enmarcar el área de inspección
- Ajuste el tamaño de la ROI adecuadamente:
- Incluir todas las áreas donde podrían aparecer las características
- Excluir áreas de fondo innecesarias
- Deje un pequeño margen alrededor de las ubicaciones esperadas de las características

4.3 Mejores Prácticas de ROI para Segmentación
| Hacer | No hacer |
|---|---|
| Cubrir toda la superficie de inspección | Incluir objetos de fondo irrelevantes |
| Dejar espacio de margen alrededor de los bordes | Hacer que la ROI sea demasiado pequeña para la variación de características |
| Considerar la variación de posicionamiento de la pieza | Solapamiento con fijaciones o herramientas |
| Probar con las características esperadas más grandes | Incluir áreas con marcas permanentes |
4.4 Guardar Configuración de ROI
- Verificar que la ROI cubra todas las áreas objetivo
- Haga clic en
Save
Step 5: Label Training Data
5.1 Navegar a Etiquetar y Entrenar
Haga clic en "Label And Train" en el menú de migas de pan
5.2 Configurar Clase de Inspección
- Haga clic en
Editbajo Tipos de Inspección - Renombrar la clase para que coincida con su característica (p. ej., "Pencil Mark", "Surface Defect", "Spill Area")
- Elegir color de clase para identificación visual
- Guardar cambios
5.3 Capturar y Etiquetar Imágenes de Entrenamiento
Se requieren al menos 10 imágenes etiquetadas, pero se recomiendan de 15 a 20:
Proceso de Captura de Imagen

- Coloque la primera pieza de prueba en el área de inspección
- Tomar una imagen usando la interfaz de la cámara
- Utilice la herramienta Brush para pintar sobre las características objetivo
- Pinte con precisión:
- Cubrir toda el área de la característica
- Mantenerse dentro de los límites de la característica
- No pintar áreas de fondo
- Utilizar un enfoque de etiquetado consistente
- Haga clic en
Save Annotations - Repetir con la siguiente pieza
Buenas Prácticas de Etiquetado
| Etiquetado correcto | Etiquetado incorrecto |
|---|---|
| Límites de características precisos | Pintado de bordes descuidado |
| Definición de características coherente | Criterios inconsistentes |
| Cobertura completa de características | Áreas de características faltantes |
| Fondo limpio (no pintado) | Pintado accidental del fondo |
5.4 Variedad de Datos de Entrenamiento
Asegúrese de que su conjunto de entrenamiento incluya:
- Diferentes tamaños de características
- Diversas intensidades de características
- Múltiples ubicaciones dentro de la ROI
- Diferentes condiciones de iluminación (si aplica)
- Casos límite y ejemplos fronterizos
5.5 Verificación de la Calidad de los Datos de Entrenamiento
- Revisar todas las imágenes etiquetadas
- Verificar un enfoque de etiquetado consistente
- Eliminar cualquier ejemplo etiquetado incorrectamente
- Agregar más ejemplos si es necesario
Paso 6: Entrenar el Modelo de Segmentación
6.1 Iniciar el Proceso de Entrenamiento
- Haga clic en
Volver a En vivocuando el etiquetado haya terminado - Haga clic en
Entrenar Modelo de Segmentación

6.2 Configurar Parámetros de Entrenamiento
- Establecer el número de iteraciones:
- Entrenamiento rápido: 50-100 iteraciones (5-10 minutos)
- Calidad de producción: 200-500 iteraciones (15-30 minutos)
- Alta precisión: 500+ iteraciones (30+ minutos)
- Haga clic en
Iniciar Entrenamiento
6.3 Monitorear el Progreso del Entrenamiento
El progreso del entrenamiento muestra:
- Número de iteración actual
- Porcentaje de precisión de entrenamiento
- Tiempo estimado de finalización

Controles de Entrenamiento:
- Cancelar Entrenamiento: Detener si surgen problemas
- Finalizar Entrenamiento Temprano: Detener cuando la precisión sea suficiente

- Una precisión del 85% suele ser buena para producción
- El entrenamiento se detiene automáticamente cuando se alcanza la precisión objetivo
- Más datos de entrenamiento suelen ser mejores que más iteraciones
Paso 7: Prueba del Rendimiento de Segmentación
7.1 Acceder a la Vista previa en vivo
- Haga clic en
Vista previa en vivodespués de completar el entrenamiento - Pruebe con varias piezas:
- Piezas buenas conocidas (deberían mostrar segmentación nula o mínima)
- Piezas defectuosas conocidas (deberían resaltar defectos)
- Casos límite y ejemplos fronterizos

7.2 Evaluar Resultados
Verificar la calidad de la segmentación:
| Métrica | Rendimiento Bueno | Necesita Mejora |
|---|---|---|
| Precisión | Encuentra características reales de forma consistente | No detecta características obvias |
| Precisión | Pocos falsos positivos | Muchas áreas de fondo resaltadas |
| Calidad de Borde | Bordes limpios y precisos | Bordes ásperos o inexactos |
| Consistencia | Resultados similares en pruebas repetidas | Resultados altamente variables |
7.3 Solución de Problemas de Resultados Deficientes
| Problema | Causa probable | Solución |
|---|---|---|
| Faltan características | Datos de entrenamiento insuficientes | Agregar más ejemplos etiquetados |
| Falsos positivos | Iluminación/contraste deficiente | Mejorar la configuración de imagen |
| Bordes ásperos | Calidad de imagen deficiente | Mejorar enfoque/iluminación |
| Resultados inconsistentes | Variedad de entrenamiento inapropiada | Agregar más ejemplos diversos |
Paso 8: Configurar la Lógica de Aprobación/Rechazo
8.1 Acceder al Bloque IO
- Asegúrese de que el modelo AI muestre verde (estado entrenado)
- Navegue al Bloque IO vía el menú de migas
8.2 Eliminar la Lógica Predeterminada
- Eliminar el nodo de Lógica del Bloque de Clasificación
- Prepararse para construir una lógica de segmentación personalizada
8.3 Construir el Flujo de Segmentación
Crear flujo Node-RED con estos componentes:
- Arrastre nodos desde el panel izquierdo:
- Nodo Function (para la lógica)
- Nodo Debug (para pruebas)
- Nodo Final Pass/Fail
- Conectar los nodos con cables

8.4 Configurar la Lógica según Sus Necesidades
Opción A: Aprobado si no se detectan defectos
Caso de uso: Inspección de calidad donde cualquier característica detectada se considera un defecto
Código del Nodo Function:
const allBlobs = msg.payload.segmentation.blobs;
const results = allBlobs.length <1; // Pass if no features found
msg.payload = results;
return msg;
Opción B: Aprobado si solo hay defectos pequeños
Caso de uso: Aceptar defectos menores por debajo del umbral de tamaño
Código del Nodo Function:
const threshold = 500; // Adjust pixel count threshold
const allBlobs = msg.payload.segmentation.blobs;
const allUnderThreshold = allBlobs.every(blob => blob.pixel_count < threshold);
msg.payload = allUnderThreshold;
return msg;
Opción C: Aprobado si el área total de defectos es pequeña
Caso de uso: Aceptar piezas con un área total de defectos limitada
Código del Nodo Function:
const threshold = 5000; // Adjust total pixel threshold
const allBlobs = msg.payload.segmentation.blobs;
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_count, 0);
msg.payload = totalArea < threshold;
return msg;
8.5 Configurar el Nodo Function
- Haga doble clic en el nodo Function
- Copie el código apropiado de los ejemplos anteriores
- Pega en la pestaña On Message
- Ajuste los valores umbral para su aplicación
- Haga clic en Listo
8.6 Desplegar y Probar la Lógica
- Haga clic en Desplegar para activar la lógica
- Navegue al HMI para pruebas
- Pruebe con piezas buenas y malas conocidas
- Verifique que los resultados de Aprobación/Rechazo coincidan con las expectativas
Paso 9: Validación de Producción
9.1 Pruebas Exhaustivas
Pruebe el sistema de segmentación con:
| Caso de Prueba | Resultado Esperado | Acción en caso de Falla |
|---|---|---|
| Piezas limpias | Aprobado (sin segmentación) | Ajustar umbrales o volver a entrenar |
| Defectos menores | Aprobado/Rechazo según sus criterios | Refinar parámetros de la lógica |
| Defectos mayores | Rechazado (segmentación clara) | Verificar la precisión del modelo |
| Casos límite | Comportamiento consistente | Agregar datos de entrenamiento |
9.2 Validación de Rendimiento
Monitorear estas métricas:
- Tiempo de procesamiento por inspección
- Consistencia entre múltiples pruebas
- Precisión con iluminación de producción
- Confiabilidad durante operación prolongada
9.3 Ajustes Finales
Si el rendimiento no es satisfactorio:
- Agregar más datos de entrenamiento para casos límite
- Ajustar los valores umbral en la lógica
- Mejorar las condiciones de imagen
- Reentrenar el modelo con iteraciones adicionales
¡Éxito! Su sistema de segmentación está listo
Ahora tiene un sistema de segmentación operativo que puede:
- Detectar automáticamente características o defectos específicos
- Medir áreas con precisión a nivel de píxel
- Aplicar lógica de aprobación/rechazo personalizada basada en sus requisitos
- Integrar con sistemas de producción mediante controles de I/O
Opciones Avanzadas de Configuración
Lógica de Umbrales Personalizados
Para criterios de aceptación complejos, combine múltiples condiciones:
const smallThreshold = 200;
const largeThreshold = 1000;
const maxTotalArea = 3000;
const allBlobs = msg.payload.segmentation.blobs;
const smallBlobs = allBlobs.filter(blob => blob.pixel_count < smallThreshold);
const largeBlobs = allBlobs.filter(blob => blob.pixel_count > largeThreshold);
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_c