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.

imrotate

Descripción

J = imrotate(I,angle) rota la imagen Iangle grados en dirección contraria a las agujas del reloj con respecto a 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 J sea lo suficientemente grande como para contener toda la imagen rotada. De forma predeterminada, imrotate utiliza la interpolación del vecino más cercano y establece en 0 los valores de los píxeles de J que están fuera de la imagen rotada para imágenes numéricas y lógicas y en missing para imágenes categóricas.

ejemplo

J = imrotate(I,angle,method) gira la imagen I utilizando el método de interpolación que especifica method.

ejemplo

J = imrotate(I,angle,method,bbox) también utiliza el argumento bbox para definir el tamaño de la imagen de salida. Puede recortar la salida al mismo tamaño que la imagen de entrada o devolver la imagen rotada completa.

ejemplo

Ejemplos

contraer todo

Lea una imagen en el espacio de trabajo y conviértala en una imagen en escala de grises.

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

Muestre la imagen original.

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

Gire la imagen 1 grado en el sentido de las agujas del reloj para que esté mejor alineada horizontalmente. En el ejemplo se especifica la interpolación bilineal y se pide que el resultado se recorte para que tenga el mismo tamaño que la imagen original.

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

Muestre la imagen rotada.

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

Argumentos de entrada

contraer todo

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

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

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 del vecino más cercano. Al píxel de salida se le asigna el valor del píxel en el que cae el punto. No se tienen en cuenta otros píxeles.

La interpolación del vecino más cercano es el único método compatible con las imágenes categóricas.

"bilinear"

Interpolación bilineal. El valor del píxel de salida es una media ponderada de los píxeles del entorno más cercano de 2 por 2.

"bicubic"

Interpolación bicúbica. El valor del píxel de salida es una media ponderada de los píxeles del entorno más cercano de 4 por 4.

Nota

La interpolación bicúbica puede producir valores de píxeles que se sitúan fuera del intervalo original.

Tipos de datos: char | string

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

Valor

Descripción

"crop"

Hace que la imagen de salida J tenga el mismo tamaño que la imagen de entrada I recortando la imagen girada para que encaje.

"loose"

Hace que la imagen de salida J sea lo suficientemente grande como para contener toda la imagen rotada. J es mayor que I.

Tipos de datos: char | string

Argumentos de salida

contraer todo

Imagen rotada, devuelta como arreglo numérico, lógico o categórico del mismo tipo de datos que la imagen de entrada, I.

Sugerencias

  • Esta función cambió en la versión 9.3 (R2015b). Las versiones anteriores de Image Processing Toolbox™ utilizan convenciones espaciales diferentes. Si necesita los mismos resultados que producía la versió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, single y double para ejecutarse más rápidamente.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a

expandir todo