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.

impyramid

Reducción y ampliación de pirámide de una imagen

Descripción

ejemplo

B = impyramid(A,direction) calcula una reducción o ampliación de pirámide gaussiana de A en un nivel. direction determina si impyramid realiza una reducción o una ampliación.

Ejemplos

contraer todo

Lea una imagen en el espacio de trabajo.

I = imread('cameraman.tif');

Realice una serie de reducciones. La primera llamada reduce la imagen original. Las otras llamadas a impyramid utilizan la imagen reducida anteriormente.

I1 = impyramid(I, 'reduce');
I2 = impyramid(I1, 'reduce');
I3 = impyramid(I2, 'reduce');

Visualice la imagen original y las versiones reducidas.

figure, imshow(I)

Figure contains an axes object. The axes object contains an object of type image.

figure, imshow(I1)

Figure contains an axes object. The axes object contains an object of type image.

figure, imshow(I2)

Figure contains an axes object. The axes object contains an object of type image.

figure, imshow(I3)

Figure contains an axes object. The axes object contains an object of type image.

Argumentos de entrada

contraer todo

Imagen que se desea reducir o ampliar, especificada como arreglo numérico o lógico.

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

Reducción o ampliación, especificada como uno de los siguientes valores:

ValorDescripción
"reduce"Devuelve una imagen más pequeña que la imagen original.
"expand"Devuelve una imagen más grande que la imagen original.

Tipos de datos: char | string

Argumentos de salida

contraer todo

Imagen reducida o ampliada, devuelta como arreglo numérico o lógico, de la misma clase que A.

Algoritmos

Si A es m por n y direction es "reduce", el tamaño de B es ceil(M/2) por ceil(N/2). Si direction es "expand", el tamaño de B es (2*M-1) por (2*N-1).

La reducción y la ampliación solo tienen lugar en las primeras dos dimensiones. Por ejemplo, si A es 100 por 100 por 3 y direction es "reduce", B es 50 por 50 por 3.

impyramid utiliza el núcleo especificado en la página 533 del artículo de Burt y Adelson:

w=[14a2,14,a,14,14a2], donde a = 0.375. El parámetro a se establece en 0.375 para que la función de ponderación equivalente se acerque a una forma gaussiana. Además, las ponderaciones se pueden aplicar fácilmente utilizando aritmética de punto fijo.

Referencias

[1] Burt and Adelson, "The Laplacian Pyramid as a Compact Image Code," IEEE Transactions on Communications, Vol. COM-31, no. 4, April 1983, pp. 532-540.

[2] Burt, "Fast Filter Transforms for Image Processing," Computer Graphics and Image Processing, Vol. 16, 1981, pp. 20-51

Capacidades ampliadas

Historial de versiones

Introducido en R2007b

expandir todo

Consulte también