Saltar al contenido principal

DOCUMENTACIÓN CON IA

¿Qué desea saber?

Segmentación: una etiqueta para cada píxel

Un segmentador examina una región recortada y responde a una pregunta más rica: no solo qué hay aquí, sino dónde y cuánto. ¿Dónde está exactamente el rayón? ¿Qué tan grande es la mancha? ¿Cuántas pastillas hay en la bandeja? Sacrifica la velocidad del clasificador a cambio de una máscara píxel por píxel, el detalle espacial que necesitas para medir, contar o localizar defectos.

La configuración se basa en la misma jerarquía que un clasificador: los Tipos contienen Clases, y los Tipos se estampan sobre las imágenes como ROIs.

Piénsalo como un kit de pintar por números. El Tipo de Inspección es el kit (paleta más contornos de formas). Las Clases son los colores de pintura entre los que eliges. Los ROIs son los lienzos sobre los que pintas cada captura, y cada píxel pintado termina asignado a exactamente una clase, incluyendo el background implícito.

Las recetas del OV80i pueden mezclar segmentadores y clasificadores

El OV80i es la única cámara de la línea que admite recetas multimodelo. Combina un segmentador (para máscaras, conteos y mediciones) con un clasificador (para veredictos sobre categorías conocidas) dentro de una sola inspección. Consulte Understanding Classifier para la otra mitad.

Los tres conceptos

Antes de poder entrenar un modelo de AI, la cámara necesita saber dónde mirar, cuáles son los posibles resultados y cómo debe evaluarse cada recorte. Esas tres preguntas se asignan a tres conceptos, y se anidan de una manera muy específica.

01 / Concept

Inspection Type

A named bucket. Holds one shared dataset, one shared list of classes, and one trained AI model.

02 / Concept

Classes

The vocabulary of possible outcomes for this inspection. Defined once on the type.

03 / Concept

Region of Interest (ROI)

A rectangle drawn on the image. Many ROIs can share one type and, therefore, one dataset and one model.

El modelo mental: un tipo es dueño de las clases y los ROIs

Un Tipo de Inspección es un contenedor. Contiene un conjunto de datos compartido, una lista compartida de clases y un modelo de AI entrenado. Luego estampas ese contenedor sobre la imagen en varios lugares; esos sellos son los ROIs. Cada ROI del mismo tipo hereda las mismas clases y es evaluado por el mismo modelo.

INSPECTION TYPEone bucket1 dataset · 1 model · N ROIsCLASSES · DEFINED ONCEclass_aclass_bclass_c+ addAdd or edit classes here andevery ROI on this type updates.Single source of truth.ROIs · PLACED ON IMAGEroi_1roi_2roi_3roi_4roi_5+ add ROIEach ROI is a tight crop at a specificlocation, evaluated by the same model.All share one dataset.classes applied to ROIs
  • El Tipo de Inspección es el contenedor.
  • Las Clases son el vocabulario de resultados.
  • El ROI es una ubicación en la imagen.

Para un segmentador: una etiqueta para cada píxel, pintada, no seleccionada

Un segmentador toma cada recorte de ROI y hace algo más rico que elegir una clase: etiqueta cada píxel. En lugar de elegir una respuesta de un menú desplegable, pintas los defectos sobre las imágenes de entrenamiento, y el modelo aprende la forma de cada clase. La salida por ROI es una máscara, un mapa píxel por píxel que puedes medir, localizar y contar.

Ejemplo en vivo: detección de defectos superficiales

Imagina una superficie metálica cepillada con dos rayones, una abolladura y una mancha. Lo configurarías así:

Surface_Top · segmentbrush · scratch
  • Tipo: Surface Quality (1 ROI, segmentador)
  • Clases: background (implícito), scratch, dent, stain
  • ROI: Surface_Top (cubre el área inspeccionable)

En lugar de elegir una sola etiqueta para toda la región, pintas cada defecto con el color de su clase. La salida del modelo es una máscara, desglosada por clase:

ClaseCobertura
background93.5%
scratch3.1%
dent1.4%
stain2.0%

Tres cosas que internalizar de este ejemplo:

  1. Pinta, no elijas. En lugar de elegir una sola etiqueta para todo el ROI, pintas cada píxel de defecto. El modelo aprende la forma de cada clase, no solo si está presente.
  2. El ROI es territorio de píxeles. El segmentador examina dentro del ROI y etiqueta cada píxel. Más superficie = más píxeles que evaluar. Aun así, respeta la regla de 512 × 512; usa una cuadrícula si el área es enorme.
  3. Las clases son tipos de defectos. No es aprobado/rechazado; cada clase es algo distinto que quieres localizar: scratch, dent, stain. Más un background implícito.

Análisis profundo: cómo se comportan las clases

Cada clase es un color en la paleta

En un segmentador, las clases no son etiquetas que eliges de un menú desplegable, son pintura que aplicas. Selecciona una clase, y tu pincel comenzará a escribir píxeles del color de esa clase. Cada píxel del ROI termina asignado a exactamente una clase, incluyendo el background por defecto.

CLASS PALETTEbackgroundscratchdentstain+ add classpick a class →brush loads its colorPAINT IN THE ROIeverything unpainted = background
  1. Defínela una sola vez en el tipo. Agrega una clase (por ejemplo, burn_mark) y dale un color. Cada ROI de este tipo ahora tiene ese color disponible en su paleta.
  2. El background es gratis. No pintas los píxeles que están "sin problemas". Cualquier píxel sin pintar es automáticamente background.
  3. Una clase por píxel. Pintar con dent sobre un scratch reemplaza la etiqueta; las clases no se pueden apilar en un solo píxel.
  4. Empieza simple. Dos o tres clases de defectos suelen superar a seis vagas. Fusiona defectos similares hasta que al modelo le cueste distinguirlos, y luego sepáralos.

Análisis profundo: cómo se comportan los ROIs

La Regla de Oro de los ROIs

Las regiones más pequeñas ganan. Haz cada ROI lo suficientemente grande para contener la característica. ROIs más pequeños significan menos datos de entrenamiento, iteración más rápida y decisiones de AI más precisas; la característica domina el recorte en lugar de perderse en el fondo, y nada se reduce a escala.

Aún pequeños, aún específicos, incluso para segmentadores

Es tentador dibujar un ROI gigante sobre toda una superficie, pero la Regla de Oro sigue aplicando. El ROI de un segmentador se reduce a escala para ajustarse a la entrada del modelo igual que el de un clasificador, y un defecto que solo tiene 20 píxeles de ancho desaparece cuando reduces un ROI de 2000 píxeles de ancho a 512.

GOOD · TIGHT ROIfull resolution preservedHUGE SURFACE · GRID TILEeach tile stays full-resPER-ROI OUTPUTMASK · Surface_Topbackground93.5%scratch3.1%dent1.4%stain2.0%largest regionscratch · 280 × 38 pxdefect count3
  1. Mantén cada ROI por debajo de 512 × 512 px. Más allá de eso, el detalle se pierde permanentemente debido a la reducción de escala. Los defectos pequeños se vuelven invisibles.
  2. Recortes ajustados significan máscaras ajustadas. Un ROI pequeño mantiene cada píxel a resolución completa, por lo que la máscara se alinea con los límites reales del defecto.
  3. ¿Superficie grande? Divídela en una cuadrícula. No estires un solo ROI a través de un panel completo. Coloca una cuadrícula de ROIs más pequeños para que cada mosaico se mantenga a resolución completa y el modelo pueda ver defectos finos.
  4. Las máscaras persisten por captura. Cada imagen de entrenamiento almacena su propia máscara pintada para el ROI; el modelo aprende de todas ellas.
  5. Salidas ricas. Por cada ROI obtienes conteos de píxeles por clase, cuadros delimitadores para cada región de defecto y áreas medibles, suficiente para reglas de aprobado/rechazado basadas en tamaño.

Flujo de datos: cada ROI regresa con una máscara, no una etiqueta

En tiempo de ejecución, la cámara recorta el ROI de la imagen completa, lo alimenta al segmentador entrenado y obtiene una predicción por píxel, una máscara del mismo tamaño donde cada píxel lleva una clase. A partir de esa máscara, la cámara deriva conteos de píxeles, regiones de defectos y cuadros delimitadores.

1 · CAPTUREFull frame + ROI2 · CROP≤ 512 × 512 px crop3 · SEGMENTER MODELSurface Quality · trainedencode → bottleneck → decodepredicts a class per pixel4 · MASK OUTPUTscratch3.1%dent1.4%stain2.0%total defect6.5%ruleFAIL > 2%
  1. Captura el cuadro completo con el ROI marcado.
  2. Recorta el ROI a una sola imagen, manteniéndola en o por debajo de 512 × 512 px.
  3. El modelo segmentador predice una clase para cada píxel utilizando una arquitectura codificador-decodificador.
  4. La salida de máscara es un mapa de píxeles coloreado más conteos de píxeles por clase, más cuadros delimitadores para cada región conectada. Las reglas de aprobado/rechazado se ejecutan sobre esos números en el Bloque IO.

Sé creativo: una máscara es un objeto geométrico

Una vez que el segmentador devuelve una máscara, no estás limitado a aprobado/rechazado. Tienes la forma y ubicación exactas de cada clase, lo que significa que puedes derivar mediciones, conteos, distancias y relaciones espaciales. Eso desbloquea toda una categoría de inspecciones que no se parecen en nada a "encontrar el rayón", y el mismo segmentador puede atenderlas todas.

AREA4.8 mm²
01 / Measure

Area & coverage

Pixel counts become mm² on a calibrated camera. Set pass/fail in real-world units, "reject if stain > 3 mm²", instead of fuzzy percentages.

1234COUNT · scratch4
02 / Count

Distinct blobs

Four small pits tell a different story than one big one. Count connected regions per class to flag defect frequency, not just total coverage.

L = 52 mmWL × W52 × 4 mm
03 / Measure

Dimensions & shape

Length, width, aspect ratio, orientation, all fall out of the mask. Flag long scratches, ignore micro ones. Or flag round dents and ignore elongated ones.

24.6 mmDIST · blob → blob24.6 mm
04 / Relate

Blob-to-blob distance

Euclidean gap between two painted regions, centroid-to-centroid or nearest-edge. Useful for component spacing, pin pitch, weld-to-weld gaps, or detecting defect clusters.

edge8.2 mmDIST · defect → edge8.2 mm
05 / Relate

Distance to a reference

Paint a second class for your reference (edge, fiducial, adjacent component) then measure how far the defect sits from it. A defect 8 mm inside might be fine; 0.5 mm from the edge might be a reject.

COUNT · pills12
06 / Expand

Not just defects

Paint whatever you want to find: pills in a blister, screws in a tray, weld beads, gaps, fiducials, cells on a slide. Segmentation is a general-purpose scalpel, not a defect-only tool.

Resumen de configuración

Una lista de verificación rápida antes de entrenar. Si cada uno de estos puntos es verdadero, tu segmentador tendrá una base sólida.

  • Un Tipo de Inspección por superficie. ¿Inspeccionando dos materiales diferentes o familias de defectos? Dale a cada uno su propio tipo para que tengan sus propias clases, conjunto de datos y modelo.
  • Las clases representan tipos de defectos, no severidad. scratch, dent, stain, cada uno una cosa visual distinta. La severidad y el aprobado/rechazado provienen de los conteos de píxeles de la máscara más adelante.
  • El background es implícito. Nunca pintas ni etiquetas píxeles "buenos". Cualquier cosa sin pintar pertenece a background.
  • ROIs dimensionados con cuidado. Cubre el área de interés, pero mantente por debajo de 512 × 512 px por ROI. Usa una cuadrícula si la superficie es más grande.
  • Pinta cada defecto visible. Defectos omitidos en los datos de entrenamiento le enseñan al modelo que son background, la peor lección posible para una verificación de calidad.
  • Comienza con 10 a 15 imágenes por clase. Entrena, ejecuta vista previa en vivo, agrega imágenes específicas donde la máscara esté mal, reentrena. Dos a cuatro iteraciones es lo típico.

Qué sigue