¿Cómo rotar una imagen en un ángulo usando PyTorch en Python?

En este artículo, vamos a ver cómo rotar una imagen un ángulo en PyTorch. Para lograr esto, podemos usar el método RandomRotation(). La transformación RandomRotation() acepta tanto PIL como imágenes de tensor. Una imagen de tensor es un tensor con forma (C, H, W), C es para el número de canales, H y W son para la altura y el ancho de la imagen, respectivamente.

Sintaxis: torchvision.transforms.RandomRotation(Grados, expandir=Falso, centrar=Ninguno, llenar=0, remuestrear=Ninguno)

Parámetros:

  • Grados – El Rango de grados en el que queremos rotar nuestra imagen. 
  • expandir: este es un parámetro opcional. Si es verdadero, expande la salida para que sea lo suficientemente grande como para contener toda la imagen girada y si es falso u omitido, entonces haga que la imagen de salida tenga el mismo tamaño que la imagen de entrada. Tenga en cuenta que la bandera de expansión asume la rotación alrededor del centro y no la traslación.
  • centro: este también es un parámetro opcional. su centro de rotación, (x, y). El origen es la esquina superior izquierda y el valor predeterminado es el centro de la imagen.
  • relleno: valor de relleno de píxeles para el área fuera de la imagen girada. El valor predeterminado es 0. Si se proporciona un número, el valor se utiliza para todas las bandas respectivamente.
  • resample : este también es un parámetro opcional.

Esta imagen se utiliza como imagen de entrada en los siguientes ejemplos.

 

Ejemplo 1:

El siguiente programa es para rotar la imagen desde el rango de 60 a 90 grados. 

Python3

# import required libraries
import torch
import torchvision.transforms as T
from PIL import Image
 
# read the image
img = Image.open('GFG.jpg')
 
# define a transform to rotate the image
transform = T.RandomRotation(degrees=(60, 90))
 
# use above transform to rotate the image
img = transform(img)
 
# display result
img.show()

Producción:

 

 Ejemplo 2:

El siguiente programa es para rotar la imagen desde el rango de 30 a 45 grados. 

Python3

# import required libraries
import torch
import torchvision.transforms as T
from PIL import Image
 
# read image
img = Image.open('a.jpg')
 
# define a transform
transform = T.RandomRotation(degrees=(30, 45))
 
# use above transform to rotate the image
img = transform(img)
 
# display result
img.show()

Producción:

 

Publicación traducida automáticamente

Artículo escrito por mukulsomukesh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *