Usando el Segmenter
Este tutorial le guiará para crear una inspección de segmentación completa utilizando las capacidades de segmentación impulsadas por IA del OV80i. Aprenderá a detectar y analizar características específicas como marcas de lápiz, rayones u otros defectos enseñando a la cámara a identificar y medir estas características píxel por píxel.
Qué aprenderá:
- Cómo configurar una receta de segmentación desde el inicio hasta el final
- Cómo entrenar un modelo de IA para reconocer características específicas
- Cómo configurar la lógica de aprobación/reprobación basada en los resultados de segmentación
- Cómo optimizar el rendimiento de segmentación para uso en producción
Aplicación en el mundo real: Este tutorial usa la detección de marcas de lápiz como ejemplo, pero los mismos principios se aplican a la detección de rayones, grietas, contaminación u otras características que se puedan distinguir visualmente.
Prerrequisitos
- Sistema de cámara OV80i configurado y conectado
- Piezas de muestra con las características que desea detectar (p. ej., láminas con marcas de lápiz)
- Comprensión básica de conceptos de entrenamiento de IA
- Acceso al Editor de Recetas y a la funcionalidad de Node-RED
Descripción General del Tutorial
Lo que construiremos: Un modelo de segmentación que pueda detectar marcas de lápiz en hojas de papel y determinar la aprobación o la reprobación en función de la cantidad de marcas detectadas.
Tiempo requerido: 45-60 minutos (incluido el tiempo de entrenamiento)
Habilidades adquiridas: Entrenamiento de modelos de IA, anotación de segmentación, configuración de la lógica de aprobación/fallo
Paso 1: Crear una Nueva Receta de Segmentación
1.1 Iniciar una Nueva Receta
- Desde la página Todas las Recetas, haga clic en "+ New Recipe" en la esquina superior derecha
- Aparecerá el modal Add A New Recipe
- Ingrese un nombre descriptivo para su receta (p. ej., "Pencil_Mark_Detection")
- Seleccione "Segmentation" desde el menú desplegable de Tipo de Receta
- Haga clic en "OK" para crear la nueva receta
¿Por qué Segmentación? A diferencia de la clasificación, que identifica objetos enteros, la segmentación encuentra y mide características específicas dentro de una imagen, lo que la hace perfecta para la detección de defectos, análisis de contaminación o medición de áreas de cobertura.
1.2 Activa tu Receta
- Su nueva receta aparecerá en la página Todas las Recetas marcada como "Inactive"
- Seleccione "Actions > Activate" a la derecha de la receta
- Haga clic en "Activate" para confirmar
- El estado de la receta cambiará a "Active"
1.3 Ingrese al Editor de Recetas
- Haga clic en "Edit" junto a su receta activa
- Haga clic en "Open Editor" para confirmar
- Ahora estará en el Editor de Recetas con su receta de segmentación
Punto de control: Debería ver la interfaz del Editor de Recetas con el nombre de su receta de segmentación en el menú de migas de pan.
Paso 2: Configurar la Imagen de la Cámara
2.1 Acceder a la Configuración de Imagen
- En el Editor de Recetas, haga clic en "Configure Imaging" en la esquina inferior izquierda
- Esto abre la página de configuración de imagen donde optimizará los ajustes de la cámara
2.2 Optimizar Configuración de Enfoque
- Coloque una hoja de muestra con marcas de lápiz en el campo de visión de la cámara
- Utilice el Focus slider para lograr un enfoque nítido en las marcas de lápiz
- También puede ingresar manualmente el valor de enfoque para mayor precisión
- Utilice la Focus View (si está disponible) para ver el realce de bordes y la puntuación de enfoque
Consejos de Enfoque:
- Enfóquese en la superficie donde aparecerán defectos
- Asegúrese de que las marcas de lápiz aparezcan nítidas y bien definidas
- Una puntuación de enfoque más alta indica una mejor calidad de enfoque
2.3 Configurar Ajustes de Exposición
- Ajuste el Exposure slider para lograr un brillo adecuado
- Las marcas de lápiz deben ser claramente visibles sin sobreexponer el papel
- Comience con la configuración automática y afine según sea necesario
- Vigile la vista previa en vivo para ver los cambios en tiempo real
Directrices de Exposición:
- Las marcas de lápiz deben tener un buen contraste contra el papel
- Evite la sobreexposición que haga desaparecer las marcas sutiles
- Asegure una iluminación constante en toda el área de inspección
2.4 Configurar Iluminación LED
- Seleccione el apropiado LED Light Pattern para su aplicación
- Para marcas de lápiz, la iluminación uniforme suele funcionar mejor
- Ajuste la LED Light Intensity para minimizar sombras y deslumbramiento
- Pruebe diferentes patrones si las reflexiones son un problema
2.5 Ajustar Gamma y Contraste
- Afinar Gamma para mejorar el contraste entre marcas y fondo
- Un gamma más alto puede hacer que las marcas de lápiz sutiles sean más visibles
- Un gamma más bajo puede reducir el ruido en áreas limpias
- Equilibre gamma para optimizar tanto la visibilidad de defectos como la claridad del fondo
2.6 Guardar Configuración de Imagen
- Una vez que todas las configuraciones estén optimizadas, haga clic en "Save Imaging Settings"
- La configuración de su cámara ya está guardada para esta receta
- La vista previa en vivo debe mostrar imágenes claras y con un buen alto contraste
Punto de Verificación: Su cámara debe producir imágenes claras donde las marcas de lápiz sean fácilmente distinguibles del fondo del papel.
Step 3: Configurar Plantilla y Alineación
3.1 Navegar a Template Image and Alignment
- Haga clic en el Recipe Name en el menú de migas para volver al Recipe Editor
- Seleccione "Template Image and Alignment" del menú
3.2 Omitir Aligner para Este Tutorial
- Dado que estamos detectando características en toda la lámina, haga clic en "Skip Aligner"
- Esto desactiva la alineación basada en la posición y utiliza la imagen completa
- Haga clic en "Save" para aplicar los cambios
Cuándo usar el Aligner: Habilite el aligner cuando necesite detectar características en ubicaciones específicas en piezas que puedan moverse o girar. Para inspección de hoja completa, como las marcas de lápiz, omitir el aligner suele ser adecuado.
Step 4: Configurar Región de Inspección
4.1 Navegar a Configuración de Inspección
- Regrese al Recipe Editor y seleccione "Inspection Setup"
- Aquí definirá qué área de la imagen analizar
4.2 Configurar Región de Interés (ROI)
- Verá una vista previa del campo de visión de su cámara
- Drag the corners de la ROI para ajustar su tamaño y posición
- Para la detección de marcas de lápiz, normalmente cubra toda el área de la hoja
- Asegúrese de que la ROI abarque todas las áreas donde podrían aparecer marcas de lápiz
Mejores Prácticas de ROI:
- Incluya todas las áreas donde podrían ocurrir defectos
- Excluya áreas como bordes o fondos que no deben analizarse
- Asegúrese de que la ROI sea lo suficientemente grande para capturar variaciones en el posicionamiento de la pieza
- Evite incluir texto, logos u otras marcas esperadas
4.3 Guardar Configuración de ROI
- Una vez que su ROI esté correctamente posicionado, haga clic en "Save"
- El área de inspección ya está definida para su modelo de segmentación
Paso 5: Etiquetar y Entrenar Tu Modelo
5.1 Ir a Label and Train
- Regrese al Recipe Editor y seleccione "Label and Train"
- Aquí es donde enseñará a la IA cómo se ven las marcas de lápiz
5.2 Configurar Clase de Inspección
- Bajo Inspection Types, haga clic en "Edit"
- Cambie el nombre de la clase a "Pencil Mark" (o su tipo de defecto específico)
- Elija un color distintivo para visualizar las marcas detectadas
- Haga clic en "Save" para aplicar los cambios
5.3 Capturar Imágenes de Entrenamiento
- Tome al menos 10 imágenes de hojas con diferentes marcas de lápiz
- Varíe los ejemplos de entrenamiento:
- Diferentes tamaños y formas de marcas de lápiz
- Marcas claras y oscuras
- Varias posiciones en la hoja
- Diferentes densidades de marcas
Consejos de imágenes de entrenamiento:
- Incluya marcas sutiles y obvias
- Capture diversas condiciones de iluminación que encontrará
- Incluya áreas limpias sin marcas en cada imagen
- Asegúrese de que las imágenes representen condiciones de producción
5.4 Anotar Imágenes de Entrenamiento
- Para cada imagen de entrenamiento, use la Brush tool para trazar sobre las marcas de lápiz
- Pinte solo las marcas de lápiz - evite marcar el papel u otras características
- Sea preciso pero exhaustivo en sus anotaciones
- Haga clic en "Save Annotations" después de completar cada imagen
Buenas prácticas de anotación:
- Sea consistente en lo que etiqueta como "pencil marks"
- Incluya marcas completas, no solo partes de ellas
- No etiquete marcas esperadas como texto o logotipos
- Use trazos de pincel firmes y cuidadosos para límites precisos
5.5 Revisión de Sus Anotaciones
- Verifique todas las imágenes etiquetadas para garantizar precisión
- Busque marcas omitidas o áreas etiquetadas incorrectamente
- Vuelva a anotar cualquier imagen que necesite corrección
- Anotaciones de calidad conducen a un mejor rendimiento del modelo
Paso 6: Entrenar el Modelo de Segmentación
6.1 Iniciar Proceso de Entrenamiento
- Una vez que haya etiquetado al menos 10 imágenes, haga clic en "Return to Live"
- Haga clic en "Train Segmentation Model"
- Ingrese el Number of Iterations para el entrenamiento
Directrices de Iteración:
- Comience con 100-200 iteraciones para el entrenamiento inicial
- Más iteraciones en general mejoran la precisión pero tardan más
- Monitoree el progreso del entrenamiento y ajuste según sea necesario
- Equilibre los requisitos de precisión con el tiempo de entrenamiento
6.2 Monitorear Progreso de Entrenamiento
- Haga clic en "Start Training" para comenzar el proceso
- Aparecerá un modal de progreso de entrenamiento que mostrará:
- Número de iteración actual
- Porcentaje de precisión de entrenamiento
- Tiempo estimado restante
6.3 Opciones de Control de Entrenamiento
Durante el entrenamiento, puede:
- Abort Training - Detener si necesita realizar cambios
- Finish Training Early - Detener cuando la precisión sea suficiente
- Monitor Progress - Observar cómo la precisión mejora a lo largo de las iteraciones
Consejos de Entrenamiento:
- El entrenamiento se completará automáticamente cuando se alcance la precisión objetivo
- Un mayor porcentaje de precisión indica un mejor rendimiento del modelo
- Si la precisión se estanca, puede necesitar más datos de entrenamiento
6.4 Evaluación de Resultados de Entrenamiento
- Cuando finalice el entrenamiento, revise la precisión final
- Haga clic en "Vista previa en tiempo real" para ver los resultados de segmentación en tiempo real
- Pruebe con muestras nuevas para verificar el rendimiento del modelo
Indicadores de Éxito:
- Las marcas de lápiz se destacan en el color que eligió
- Las áreas limpias permanecen sin marcar
- La detección es consistente entre diferentes tipos de marcas
- El modelo responde bien a muestras nuevas y no vistas
Paso 7: Configurar Lógica de Aprobación/Rechazo
7.1 Navegar a IO Block
- Vuelva al Editor de Recetas y seleccione "IO Block"
- Asegúrese de que todos los AI Blocks se muestren como "trained (green)" antes de continuar
- Haga clic en "Configure I/O" para entrar al editor de Node-RED
7.2 Configurar Flujo de Node-RED
- Elimine la lógica existente del nodo All Block Outputs (si no está presente)
- Desde la paleta de la izquierda, arrastre:
- nodo All Block Outputs (si no está presente)
- nodo Function
- nodo Final Pass/Fail
- Conecte los nodos: All Block Outputs → Function → Final Pass/Fail
7.3 Configurar Lógica de Aprobación/Rechazo
Haga doble clic en el nodo Function y elija uno de estos ejemplos de lógica:
Opción 1: Aprobación si no se detectan defectos
// Pass if no pencil marks are found
const allBlobs = msg.payload.segmentation.blobs;
const results = allBlobs.length <1;
msg.payload = results;
return msg;
Opción 2: Aprobación si todas las marcas son pequeñas
// Pass if all marks are smaller than threshold
const threshold = 500; // pixels
const allBlobs = msg.payload.segmentation.blobs;
const allUnderThreshold = allBlobs.every(blob => blob.pixel_count < threshold);
msg.payload = allUnderThreshold;
return msg;
Opción 3: Aprobación si la cobertura total es baja
// Pass if total marked area is below threshold
const threshold = 5000; // total pixels
const allBlobs = msg.payload.segmentation.blobs;
const totalArea = allBlobs.reduce((sum, blob) => sum + blob.pixel_count, 0);
msg.payload = totalArea < threshold;
return msg;
7.4 Desplegar y Probar la Lógica
- Haga clic en "Hecho" para guardar la función
- Haga clic en "Desplegar" para activar la lógica
- Navegue a HMI para probar su lógica de aprobación/rechazo
Pruebas de su lógica:
- Pruebe con hojas limpias (debería aprobar)
- Pruebe con hojas ligeramente marcadas (debería aprobar/reprobar según sus criterios)
- Pruebe con hojas fuertemente marcadas (debería reprobar)
- Verifique que los resultados coincidan con sus expectativas
Paso 8: Optimizar y Validar
8.1 Probar con Muestras de Producción
- Ejecute múltiples muestras de prueba a través de su inspección
- Verifique que la precisión de detección cumpla con sus requisitos
- Verifique que la lógica de aprobación/rechazo funcione correctamente
- Documente cualquier problema o caso límite
8.2 Ajuste fino del rendimiento del modelo
Si la detección es inconsistente:
- Agregue más imágenes de entrenamiento con ejemplos variados
- Mejore la calidad y consistencia de las anotaciones
- Ajuste la configuración de imagen para un mejor contraste
- Reentrene con iteraciones adicionales
Si es necesario ajustar la lógica de aprobación/rechazo:
- Modifique los valores de umbral en su función de Node-RED
- Pruebe diferentes enfoques de lógica
- Considere múltiples criterios para decisiones complejas
- Valide con los requisitos de producción
8.3 Validación de Producción
- Pruebe con piezas de producción reales en condiciones reales
- Validar con el equipo de calidad para asegurar que los criterios coincidan con los requisitos
- Documente métricas de rendimiento como precisión de detección y tasas de falsos positivos
- Configure monitoreo para rastrear el rendimiento a lo largo del tiempo
Paso 9: Comprensión de los Resultados de Segmentación
9.1 Estructura de Datos de Segmentación
Sus resultados de segmentación incluyen:
- Blobs: características detectadas individuales (marcas de lápiz)
-
- Pixel Count: tamaño de cada característica detectada
- Location Data: dónde se encontraron las características
-
- Confidence Scores: cuán confiado está el modelo acerca de cada detección
9.2 Usando Datos de Segmentación
Puede crear lógica sofisticada de pass/fail basada en:
- Number of defects detectados
- Size of individual defects (pixel count)
- Total defect area (suma de todos los conteos de píxeles)
- Defect location (donde aparecen los defectos)
- Defect shape characteristics (si es necesario para aplicaciones avanzadas)
¡Éxito! Tu modelo de Segmentación está completo
La inspección de segmentación OV80i ya puede:
✅ Automatically detect pencil marks (o tus características específicas) en imágenes
✅ Measure the size and quantity de las características detectadas
✅ Make pass/fail decisions basadas en sus criterios específicos
✅ Provide detailed information sobre cada característica detectada
✅ Adapt to variations en el tamaño, la forma y la posición de las marcas
Puntos Clave
Segmentation vs. Classification:
- Segmentation encuentra y mide características específicas dentro de las imágenes
- Classification identifica objetos enteros o condiciones generales
- Use Segmentación para detección de defectos, análisis de contaminación o medición de cobertura
Mejores Prácticas de Entrenamiento:
- Las anotaciones de calidad son más importantes que la cantidad
- Incluir ejemplos diversos en su conjunto de entrenamiento
- Probar exhaustivamente con muestras de producción
- Monitorear y reentrenar según sea necesario
Lógica de Aprobación/Rechazo:
- Comience con criterios simples y agregue complejidad según sea necesario
- Probar la lógica con casos límite y muestras de borde
- Documentar sus criterios para mantener la consistencia
- Considerar múltiples factores para decisiones robustas
Próximos Pasos
Ahora que ha completado su primer modelo de segmentación:
- Aplicar a otros casos de uso - Intente detectar diferentes tipos de defectos o características
- Integrar con sistemas de producción - Conectarse a PLCs o sistemas de gestión de calidad
- Configurar recopilación de datos - Registrar métricas de rendimiento y estadísticas de detección
- Capacitar a los operadores - Asegúrese de que el equipo entienda cómo monitorear y mantener el sistema
- Planificar el mantenimiento - Programar actualizaciones periódicas del modelo y revisiones de rendimiento