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.

imdilate

Descripción

ejemplo

J = imdilate(I,SE) Diena la imagen binaria en escala de grises, binaria o empaquetada, devolviendo la imagen dilatada,. es un objeto de elemento de estructuración o matriz de objetos de elemento de estructuración, devueltos por las funciones o.IJSEstreloffsetstrel

Opcionalmente, puede realizar la dilatación usando una GPU (requiere).Parallel Computing Toolbox™ Para obtener más información, consulte.Procesamiento de imágenes en una GPU

J = imdilate(I,nhood) Diena la imagen, donde es una matriz de 0s y 1S que especifica la vecindad del elemento de estructuración. determina el elemento central de la vecindad por.Inhoodimdilatefloor((size(nhood)+1)/2)

Esta sintaxis equivale a imdilate(I,strel(nhood)).

J = imdilate(___,packopt) Especifica si se trata de una imagen binaria empaquetada.I

Esta sintaxis no se admite en una GPU.

ejemplo

J = imdilate(___,shape) especifica el tamaño de la imagen de salida.

Ejemplos

contraer todo

Leer una imagen binaria en el espacio de trabajo.

BW = imread('text.png');

Cree un elemento estructurante vertical en forma de línea.

se = strel('line',11,90);

Dilate la imagen con un elemento de estructuración de línea vertical y compara los resultados.

BW2 = imdilate(BW,se); imshow(BW), title('Original')

figure, imshow(BW2), title('Dilated')

Lea una imagen en escala de grises en el espacio de trabajo.

originalI = imread('cameraman.tif');

Crear un elemento de estructuración en forma de bola no plana.

se = offsetstrel('ball',5,5);

Dilatar la imagen.

dilatedI = imdilate(originalI,se);

Visualice la imagen original y la imagen dilatada.

imshowpair(originalI,dilatedI,'montage')

Crea dos elementos de estructuración planos, en forma de línea, uno a 0 grados y el otro a 90 grados.

se1 = strel('line',3,0)
se1 =  strel is a line shaped structuring element with properties:        Neighborhood: [1 1 1]     Dimensionality: 2  
se2 = strel('line',3,90)
se2 =  strel is a line shaped structuring element with properties:        Neighborhood: [3x1 logical]     Dimensionality: 2  

Dilate el valor escalar 1 con ambos elementos de estructuración en secuencia, usando la opción.'full'

composition = imdilate(1,[se1 se2],'full')
composition = 3×3

     1     1     1
     1     1     1
     1     1     1

Cree un volumen 3D lógico con dos puntos.

BW = false(100,100,100); BW(25,25,25) = true; BW(75,75,75) = true;

Dilatar el volumen 3D utilizando un elemento de estructuración esférica.

se = strel('sphere',25); dilatedBW = imdilate(BW,se);

Visualice el volumen de la imagen dilatada.

figure isosurface(dilatedBW, 0.5)

Argumentos de entrada

contraer todo

Imagen de entrada, especificada como una imagen en escala de grises, una imagen binaria o una imagen binaria empaquetada de cualquier dimensión.

Para realizar la dilatación mediante una GPU, especifique como un que contiene una imagen de tipo o.IgpuArrayuint8logical

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

Elemento de estructuración, especificado como un objeto escalar o un objeto. también puede ser una matriz de objeto u objetos, en cuyo caso realiza múltiples dilaciones de la imagen de entrada, utilizando cada elemento de estructuración sucesivamente.streloffsetstrelSEstreloffsetstrelimdilate

realiza la dilatación en escala de grises para todas las imágenes excepto las imágenes de tipo de datos.imdilatelogical En este caso, el elemento de estructuración debe ser plano y realiza la dilatación binaria.imdilate

Si realiza la dilatación con una GPU, debe ser plana y bidimensional.SE

Vecindad del elemento de estructuración, especificada como matriz de 0s y 1S.

Ejemplo: [0 1 0; 1 1 1; 0 1 0]

Indicador de la imagen binaria empaquetada, especificada como una de las siguientes.

Valor

Descripción

'notpacked'

se trata como una matriz normal.I

'ispacked'

se trata como una imagen binaria empaquetada producida por. debe ser un array 2-D y debe ser un elemento estructurante plano 2-D.IbwpackIuint32SE El valor de debe ser.shape'same'

Nota

El argumento no se admite en una GPU.packopt

Tipos de datos: char | string

Tamaño de la imagen de salida, especificada como una de las siguientes.

Valor

Descripción

'same'

La imagen de salida tiene el mismo tamaño que la imagen de entrada. Si el valor de es, entonces debe ser.packopt'ispacked'shape'same'

'full'

Calcule la dilatación completa.

Tipos de datos: char | string

Argumentos de salida

contraer todo

Imagen dilatada, devuelta como imagen en escala de grises, imagen binaria o imagen binaria empaquetada. Si la imagen de entrada es binaria empaquetada, también es binaria empaquetada. tiene la misma clase que.IJJI

Si la dilatación se realiza mediante una GPU, se devuelve como una que contiene una imagen en escala de grises o binaria de la misma clase que.JgpuArrayI

Más acerca de

contraer todo

Dilatación binaria

El de por, denotado ⨁, se define como la operación del conjunto:binary dilationABAB

AB={z|(B^)zA},

Dónde B^ es el reflejo del elemento estructurante.B En otras palabras, es el conjunto de ubicaciones de píxel, donde el elemento de estructuración reflejado se solapa con los píxeles en primer plano cuando se traduce a.zAz Tenga en cuenta que algunas aplicaciones utilizan una definición de dilatación en la que el elemento de estructuración no se refleja.

Para obtener más información sobre la dilatación binaria, consulte.1

Dilatación en escala de grises

En la forma general de, el elemento de estructuración tiene una altura.grayscale dilation La dilatación en escala de grises de (,) por (,) se define como:AxyBxy

(AB)(x,y)=max{A(xx,yy)+B(x,y)|(x,y)DB},

Dónde DB es el dominio del elemento de estructuración yB A(x, y) se asume que es – ∞ fuera del dominio de la imagen. Para crear un elemento de estructuración con valores de altura distintos de cero, utilice la sintaxis, donde se proporcionan los valores de altura y corresponde al dominio del elemento de estructuración,strel(nhood,height)heightnhood DB.

Normalmente, la dilatación en escala de grises se realiza con un elemento de estructuración plano (B(x,y) = 0). La dilatación en escala de grises utilizando un elemento de estructuración de este tipo equivale a un operador local-máximo:

(AB)(x,y)=max{A(xx,yy)|(x,y)DB}.

Todas las sintaxis excepto para, y producir elementos de estructuración plana.strelstrel(nhood,height)strel('arbitrary',nhood,height)strel('ball', ...)

Algoritmos

aprovecha automáticamente la descomposición de un objeto de elemento de estructuración (si existe).imdilate Además, al realizar la dilatación binaria con un objeto de elemento de estructuración que tiene una descomposición, utiliza automáticamente el empaquetado de imágenes binarias para acelerar la dilatación.imdilate

La dilatación utilizando el empaquetado de bits se describe en.[3]

Referencias

[1] Gonzalez, R. C., R. E. Woods, and S. L. Eddins, Digital Image Processing Using MATLAB, Gatesmark Publishing, 2009.

[2] Haralick, R. M., and L. G. Shapiro, Computer and Robot Vision, Vol. I, Addison-Wesley, 1992, pp. 158-205.

[3] van den Boomgard, R, and R. van Balen, "Methods for Fast Morphological Image Transforms Using Bitmapped Images," Computer Vision, Graphics, and Image Processing: Graphical Models and Image Processing, Vol. 54, Number 3, pp. 254-258, May 1992.

Capacidades ampliadas

Consulte también

Funciones

Objetos

Introducido antes de R2006a