Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

bwpropfilt

Extraer objetos de una imagen binaria usando propiedades

Descripción

ejemplo

BW2 = bwpropfilt(BW,prop,range) extrae todos los componentes conectados (objetos) de una imagen binaria BW cuyo valor de la propiedad prop está en el range especificado. bwpropfilt devuelve una imagen binaria BW2 que contiene solo los objetos que cumplen los criterios.

ejemplo

BW2 = bwpropfilt(BW,prop,n) ordena los objetos en función del valor de la propiedad especificada, prop, y devuelve una imagen binaria que contiene solo los n objetos más grandes. En caso de empate para el n-ésimo puesto, bwpropfilt conserva solo los primeros n objetos de BW2.

BW2 = bwpropfilt(BW,prop,n,keep) especifica si se conservan los n objetos más grandes o los n más pequeños cuando se ordenan por la propiedad prop.

BW2 = bwpropfilt(BW,I,prop,___) ordena los objetos en función de los valores de intensidad de la imagen en escala de grises I y de la propiedad prop.

BW2 = bwpropfilt(___,conn) especifica la conectividad de los píxeles conn.

Ejemplos

contraer todo

Lea una imagen y muéstrela.

BW = imread('text.png');
figure
imshow(BW)
title('Original Image')

Figure contains an axes object. The axes object with title Original Image contains an object of type image.

Utilice el filtrado para crear una segunda imagen que contenga solo las regiones de la imagen original que no tengan huecos. En estas regiones, la propiedad del número de Euler es igual a 1. Muestre la imagen filtrada.

BW2 = bwpropfilt(BW,'EulerNumber',[1 1]);
figure
imshow(BW2)
title('Regions with Euler Number == 1')

Figure contains an axes object. The axes object with title Regions with Euler Number == 1 contains an object of type image.

Lea una imagen.

BW = imread('text.png');

Encuentre los diez objetos de la imagen que tienen los perímetros más grandes y muestre la imagen filtrada.

BW2 = bwpropfilt(BW,'perimeter',10);
figure;
imshow(BW2)
title('Objects with the Largest Perimeters')

Figure contains an axes object. The axes object with title Objects with the Largest Perimeters contains an object of type image.

Argumentos de entrada

contraer todo

Imagen que se desea filtrar, especificada como imagen binaria.

Tipos de datos: logical

Nombre de la propiedad por la que filtrar, especificado como uno de estos valores.

Mediciones del valor de los píxeles

Nombre de la propiedadDescripción
"Area"Número de píxeles de la región.
"ConvexArea"Número de píxeles de la envolvente convexa. La envolvente convexa es el polígono convexo más pequeño que puede contener la región. Para obtener más información sobre la clasificación de los píxeles en el límite de la envolvente, consulte Classify Pixels That Are Partially Enclosed by ROI.
"Eccentricity"Excentricidad de la elipse que tiene los mismos segundos momentos que la región. La excentricidad es la relación entre la distancia entre los focos de la elipse y la longitud de su eje mayor. Los valores son números en el intervalo [0, 1]. (0 y 1 son casos degenerados. Una elipse cuya excentricidad es 0 es en realidad un círculo, mientras que una elipse cuya excentricidad es 1 es un segmento de recta)
"EquivDiameter"Diámetro (en píxeles) de un círculo con la misma área que la región, calculado como sqrt(4*Area/pi).
"EulerNumber"Número de Euler (también conocido como la característica de Euler), calculado como 1 menos el número de huecos de la región.
"Extent"Relación entre los píxeles de la región y los píxeles del cuadro delimitador total, calculada como Area dividida por el área del cuadro delimitador.
"FilledArea"Número de píxeles de la región después de llenar todos los huecos que hay en ella.
"MajorAxisLength"Longitud (en píxeles) del eje mayor de la elipse que tiene los mismos segundos momentos centrales normalizados que la región.
"MinorAxisLength"Longitud (en píxeles) del eje menor de la elipse que tiene los mismos segundos momentos centrales normalizados que la región.
"Orientation"

Ángulo (en grados) entre el eje x y el eje mayor de la elipse que tiene los mismos segundos momentos que la región. El valor está en el intervalo (–90, 90].

Esta figura ilustra los ejes y la orientación de la elipse. La parte izquierda de la figura muestra una región de la imagen y su correspondiente elipse. El lado derecho muestra la misma elipse con las líneas azules sólidas que representan los ejes. Los puntos rojos son los focos. La orientación es el ángulo entre la línea de puntos horizontal y el eje mayor.

Axes and orientation of ellipse surrounding an image region

"Perimeter"

Distancia (en píxeles) alrededor del límite de la región, calculada sumando la distancia entre cada par de píxeles contiguos alrededor del borde de la región. Esta figura ilustra los píxeles incluidos en el cálculo del perímetro para una región de muestra.

Perimeter pixels of a region

"Solidity"Proporción de los píxeles de la envolvente convexa que también están en la región, calculada como Area/ConvexArea.

Puede especificar una propiedad de medición de los valores de píxeles de esta tabla cuando incluya una imagen de marcador, I, como un argumento de entrada para la función.

Mediciones del valor de los píxeles

Nombre de la propiedad Descripción
"MaxIntensity"Valor del píxel con la mayor intensidad de la región.
"MeanIntensity"Media de todos los valores de intensidad de la región.
"MinIntensity"Valor del píxel con la menor intensidad de la región.

Tipos de datos: char | string

Valores mínimo y máximo de la propiedad, especificados como un vector numérico de 2 elementos con forma [low high]. Los valores deben ser no decrecientes.

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

Número de objetos que devolver, especificado como número entero positivo.

Tipos de datos: double

Objetos que conservar, especificados como "largest" o "smallest".

Tipos de datos: char | string

Imagen de marcador, especificada como imagen en escala de grises del mismo tamaño que la imagen binaria de entrada. Los valores de intensidad de la imagen en escala de grises definen regiones en la imagen binaria de entrada.

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

Conectividad de píxeles, especificada como uno de estos valores.

Valor

Significado

Conectividades bidimensionales

4

Los píxeles se consideran conectados si comparten bordes. Dos píxeles contiguos forman parte del mismo objeto si ambos se encuentran y están conectados a lo largo de la dirección horizontal o vertical.

Center pixel connected to four pixels

El píxel actual se muestra en gris.

8

Los píxeles se consideran conectados si comparten bordes o vértices. Dos píxeles contiguos forman parte del mismo objeto si ambos se encuentran y están conectados a lo largo de la dirección horizontal, vertical o diagonal.

Center pixel connected to eight pixels

El píxel actual se muestra en gris.

La conectividad puede definirse de una forma más general especificando una matriz de 3 por 3 de valores 0 y 1. Los elementos con el valor 1 definen los entornos relativos al elemento central de conn. La matriz debe ser simétrica respecto de su elemento central.

Tipos de datos: double | logical

Argumentos de salida

contraer todo

Imagen filtrada, devuelta como imagen binaria del mismo tamaño que BW.

Sugerencias

  • bwpropfilt encuentra los componentes conectados utilizando la función bwconncomp. A continuación, bwpropfilt calcula las propiedades de esos componentes conectados mediante la función regionprops.

Capacidades ampliadas

Historial de versiones

Introducido en R2014b

expandir todo