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.

imrotate

Sintaxis

B = imrotate(A,angle)
B = imrotate(A,angle,method)
B = imrotate(A,angle,method,bbox)
gpuarrayB = imrotate(gpuarrayA,method)

Descripción

ejemplo

B = imrotate(A,angle) gira la imagen A por angle grados en sentido antihorario alrededor de su punto central. Para girar la imagen en el sentido de las agujas del reloj, especifique un valor negativo para angle. imrotate hace que la imagen de salida B lo suficientemente grande como para contener toda la imagen rotada. imrotate utiliza la interpolación vecina más cercana, estableciendo los valores de los píxeles en B que están fuera de la imagen rotada a 0 (cero).

ejemplo

B = imrotate(A,angle,method) gira la imagen A, utilizando el método de interpolación especificado por method.

ejemplo

B = imrotate(A,angle,method,bbox) gira la imagen A, donde bbox especifica el tamaño de la imagen de salida. Si especifica 'crop', imrotate hace que la imagen de salida sea del mismo tamaño que la imagen de entrada. Si especifica 'loose', imrotate hace que la imagen de salida sea lo suficientemente grande como para incluir la totalidad de la imagen rotada.

ejemplo

gpuarrayB = imrotate(gpuarrayA,method) Realice la operación en una unidad de procesamiento de gráficos (GPU), donde gpuarrayA es un objeto gpuArray que contiene una escala de grises o una imagen binaria, y la imagen de salida es un objeto gpuArray . Esta sintaxis requiere el Parallel Computing Toolbox™.

Ejemplos

contraer todo

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

I = fitsread('solarspectra.fts'); I = rescale(I);

Mostrar la imagen original.

figure imshow(I) title('Original Image')

Gire la imagen 1 grado en sentido horario para ponerlo en una mejor alineación horizontal. El ejemplo especificó la interpolación bilineal y solicita que el resultado se recortara para tener el mismo tamaño que la imagen original.

J = imrotate(I,-1,'bilinear','crop');

Mostrar la imagen rotada.

figure imshow(J) title('Rotated Image')

Lea la imagen en un objeto gpuArray .

 X = gpuArray(imread('pout.tif')); 

Gire la imagen, realizando la operación en la unidad de procesamiento de gráficos (GPU).

Y = imrotate(X, 37, 'loose', 'bilinear'); 

Mostrar la imagen rotada.

figure; imshow(Y)

Argumentos de entrada

contraer todo

Imagen que se girará, especificada como una matriz real, no Sparsa, numérica o lógica.

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

Cantidad de rotación en grados, especificada como escalar numérico.

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

Método de interpolación, especificado como uno de los siguientes valores:

Valor

Descripción

'nearest'

Interpolación vecinal más cercana; el píxel de salida se asigna el valor del píxel en el que el punto entra. No se consideran otros píxeles.

'bilinear'

Interpolación bilineal; el valor de píxel de salida es un promedio ponderado de píxeles en el vecindario 2 por 2 más cercano

'bicubic'

Interpolación bicúbica; el valor de píxel de salida es un promedio ponderado de píxeles en el vecindario de 4 por 4 más cercano

Nota

La interpolación bicúbica puede producir valores de píxel fuera del rango original.

Tipos de datos: char | string

Cuadro delimitador que define el tamaño de la imagen de salida, especificada como cualquiera de los siguientes valores:

Valor

Descripción

'crop'

Hacer que la imagen de salida B el mismo tamaño que la imagen de entrada A, recortando la imagen rotada para que encaje

'loose'

Haga que la imagen de salida B lo suficientemente grande como para contener toda la imagen rotada. B es más grande que A.

Tipos de datos: char | string

Imagen que se debe girar, especificada como gpuArray.

Argumentos de salida

contraer todo

Imagen rotada, devuelta como una matriz real, no Sparse, numérica o lógica.

Imagen rotada, devuelta como gpuArray

Sugerencias

  • Esta función cambió en la versión 9,3 (R2015b). Las versiones anteriores del Image Processing Toolbox™ utilizan diversas convenciones espaciales. Si necesita los mismos resultados producidos por la implementación anterior, utilice la función imrotate_old.

  • En algunos casos, esta función aprovecha la optimización del hardware para los tipos de datos uint8, uint16, singley double para que se ejecuten más rápido.

Capacidades ampliadas

Introducido antes de R2006a