# Blob

En la terminología de la visión artificial, cualquier grupo bidimensional de píxeles contiguos que forman un conjunto de forma variable y de tono de color relativamente uniforme se denomina «blob» (que es un término de origen inglés) o también «mancha (de color)». El proceso de extraer estos blobs de una imagen, encontrarlos en una región de interés y clasificarlos según criterios específicos se denomina análisis de blobs.

## ¿Qué es un análisis de blobs?

La herramienta Blob de In-Sight realiza un tipo de análisis de blobs denominado análisis de la conectividad, realizándose este paso mediante la función DetectBlobs. Tras insertar la función DetectBlobs en la hoja de cálculo y una vez configurados sus parámetros, la función comienza a realizar el análisis segmentando en primer lugar la RDI.

Durante este proceso, los píxeles en la RDI se clasifican según dos categorías, blob y fondo, en función de un valor umbral en escala de grises. Este valor umbral separa los píxeles de tal manera que los que están por debajo del valor umbral se clasifican como negros, mientras que los que están por encima del valor umbral se clasifican como blancos.

Nota: Este valor umbral puede determinarse mediante el ajuste automático del parámetro Umbral de la función DetectBlobs, un ajuste manual por prueba y error o como una referencia a los resultados calculados por la función Histograma.

Mientras se realiza este proceso, se examinan además los píxeles para determinar si están o no unidos (conectados) a los píxeles contiguos. Se dice que un píxel de un blob está conectado a píxeles vecinos si dicho píxel está en contacto con otros píxeles de valor similar en cualquiera de sus lados, ya sea en un lado lateral, en el superior, inferior, o en un punto diagonal del mismo. Se dice que un píxel de fondo está conectado a los píxeles vecinos si dicho píxel está en contacto con otro píxel de valor similar en cualquiera de sus lados, ya sea uno lateral, en el superior o en el inferior.

En la figura siguiente puede apreciarse cómo la herramienta Blob de In-Sight analiza una imagen. En este ejemplo, la segmentación de la imagen en píxeles de blob y píxeles de fondo se realizó utilizando un valor umbral de 150 en la escala de grises. Todos los píxeles con valores de gris mayores o iguales a 150 se clasificaron como píxeles blancos o de fondo, mientras que los píxeles con valores de gris inferiores a 150 se clasificaron como píxeles negros o de blob:

Una vez extraídos los blobs de la imagen, la función DetectBlobs crea automáticamente una estructura de datos Blob y una tabla de resultados que contiene los datos sobre los blobs extraídos. Esta información que proporciona la función puede ser utilizada por las funciones FindBlobs y SortBlobs para filtrar y clasificar otros blobs encontrados según sus características físicas y su ubicación, respectivamente.

Nota: Tanto FindBlobs como SortBlobs deben hacer referencia a una estructura de datos Blobs. Es una estructura de datos que puede ser creada por las funciones DetectBlobs, FindBlobs o SortBlobs.

La función FindBlobs analiza los blobs dentro de una RDI y determina si los blobs encontrados coinciden o no con los requisitos especificados; los blobs que cumplen los requisitos son devueltos como resultado por la función, clasificados en orden descendente por puntuación, indicándose con la puntuación el nivel de cumplimiento de los requisitos establecidos.

La función SortBlobs analiza los blobs dentro de una RDI y determina dónde se encuentra cada blob con respecto a un elemento posicionador; esto permite determinar la posición de un blob con respecto a otro blob, pudiéndose además utilizar una sola función DetectBlobs para encontrar a la vez varios blobs en una RDI.

## ¿Cuándo se utiliza el análisis de blobs?

Lo mejor es utilizar las herramientas Blob de In-Sight cuando se cumplen las siguientes condiciones:

- La imagen es de un objeto bidimensional.
- La imagen presenta un alto contraste entre los píxeles claros y oscuros.

Nota: La herramienta Blob de In-Sight analiza únicamente imágenes en escala de grises; los colores de las imágenes en color se convierten automáticamente a valores en la escala de grises.

## ¿Para qué se utiliza el análisis de blobs?

Cuando se cumplen las condiciones mencionadas anteriormente, el análisis de blobs puede ser extremadamente útil en las siguientes aplicaciones:

- Aplicaciones de calibrado ordinario, como la medición de diámetros o dimensiones rectangulares para determinar la anchura de una pieza en una orientación determinada.
- Aplicaciones de posicionamiento en la primera pasada, en las que se utilizan herramientas Blob para localizar y poner rápidamente un elemento posicionador para otra herramienta.
- Aplicaciones de presencia/ausencia en las que se utilizan herramientas Blob para determinar si hay o no un blob en la imagen.
- Aplicaciones de recuento, en las que se pueden configurar las herramientas Blob para contar y clasificar los blobs en función de características como área o perímetro de los mismos.

## ¿Cómo se realiza el análisis de blobs?

Con las herramientas de Blob de In-Sight, el proceso de análisis de blobs puede dividirse en tres pasos:

Paso 1 - Examinar la imagen y determinar si la imagen y el estado de la imagen cumplen los requisitos para realizar un análisis de blobs.

Paso 2 - Insertar una función DetectBlobs en la hoja de cálculo y configurar convenientemente los parámetros para localizar e identificar los blobs en la imagen.

Paso 3 - Insertar una función FindBlobs o SortBlobs en la hoja de cálculo para filtrar la lista de blobs encontrados en función de características físicas o de la ubicación de los blobs, respectivamente.