Main Content

Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

bwareaopen

Eliminar objetos pequeños de la imagen binaria

Descripción

ejemplo

BW2 = bwareaopen(BW,P) elimina todos los componentes conectados (objetos) que tienen menos de píxeles de la imagen binaria, produciendo otra imagen binaria, .PBWBW2 Esta operación se conoce como un archivo .apertura del área

BW2 = bwareaopen(BW,P,conn) elimina todos los componentes conectados, donde especifica la conectividad deseada.conn

Ejemplos

contraer todo

Leer imagen binaria.

BW = imread('text.png');

Elimine los objetos que contengan menos de 50 píxeles mediante la función.bwareaopen

BW2 = bwareaopen(BW, 50);

Mostrar la imagen original junto a la imagen morfológicamente abierta.

imshowpair(BW,BW2,'montage')

Argumentos de entrada

contraer todo

Imagen binaria, especificada como una matriz lógica o numérica de cualquier dimensión.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Número máximo de píxeles en objetos, especificado como un entero no negativo.

Ejemplo: 50

Tipos de datos: double

Conectividad de píxeles, especificada como uno de los valores de esta tabla. La conectividad predeterminada es para imágenes 2D y para imágenes 3D.826

Valor

Significado

Conectividades bidimensionales

4 conectados

Los píxeles están conectados si sus bordes se tocan. Dos píxeles adyacentes forman parte del mismo objeto si están encendidos y están conectados a lo largo de la dirección horizontal o vertical.

8 conectados

Los píxeles están conectados si sus bordes o esquinas se tocan. Dos píxeles adyacentes forman parte del mismo objeto si están encendidos y están conectados a lo largo de la dirección horizontal, vertical o diagonal.

Conectividades tridimensionales

6 conectados

Los píxeles están conectados si sus caras se tocan. Dos píxeles adyacentes forman parte del mismo objeto si ambos están encendidos y están conectados en:

  • Una de estas direcciones: entrada, salida, izquierda, derecha, arriba y abajo

18 conectados

Los píxeles están conectados si sus caras o aristas se tocan. Dos píxeles adyacentes forman parte del mismo objeto si ambos están encendidos y están conectados en

  • Una de estas direcciones: entrada, salida, izquierda, derecha, arriba y abajo

  • Una combinación de dos direcciones, como el derecho hacia abajo o hacia arriba

26 conectados

Los píxeles están conectados si sus caras, aristas o esquinas se tocan. Dos píxeles adyacentes forman parte del mismo objeto si ambos están encendidos y están conectados en

  • Una de estas direcciones: entrada, salida, izquierda, derecha, arriba y abajo

  • Una combinación de dos direcciones, como el derecho hacia abajo o hacia arriba

  • Una combinación de tres direcciones, como en-derecha-arriba o en-izquierda-abajo

Para dimensiones más altas, utiliza el valor predeterminadobwareaopen conndef(ndims(BW),'maximal').

La conectividad también se puede definir de una manera más general para cualquier dimensión especificando una matriz de 3 por 3 por ... por 3 de s y s.01 Los elementos -valued definen ubicaciones de vecindad relativas al elemento central de .1conn Tenga en cuenta que debe ser simétrico sobre su elemento central.conn Consulte para obtener más información.Especificación de conectividades personalizadas

Tipos de datos: double | logical

Argumentos de salida

contraer todo

Imagen abierta por el área, devuelta como una matriz lógica del mismo tamaño que .BW

Algoritmos

Los pasos básicos son

  1. Determine los componentes conectados:

    CC = bwconncomp(BW, conn);
  2. Calcular el área de cada componente:

    S = regionprops(CC, 'Area');
  3. Eliminar objetos pequeños:

    L = labelmatrix(CC); BW2 = ismember(L, find([S.Area] >= P)); 

Capacidades ampliadas

Consulte también

|

Introducido antes de R2006a