Python Pillow - Voltear y rotar imágenes

Mientras trabaja en imágenes utilizando la biblioteca de procesamiento de imágenes de Python, hay casos en los que necesita voltear una imagen existente para obtener más información, para mejorar su visibilidad o debido a sus requisitos.

El módulo de imagen de la biblioteca de almohadas nos permite voltear una imagen con mucha facilidad. Vamos a utilizar la función de transposición (método) del módulo Imagen para voltear las imágenes. Algunos de los métodos más comúnmente utilizados compatibles con 'transpose ()' son:

  • Image.FLIP_LEFT_RIGHT - Para voltear la imagen horizontalmente

  • Image.FLIP_TOP_BOTTOM - Para voltear la imagen verticalmente

  • Image.ROTATE_90 - Para rotar la imagen especificando grados

Ejemplo 1: imagen volteada horizontalmente

El siguiente ejemplo de Python lee una imagen, la voltea horizontalmente y muestra la imagen original y volteada usando la utilidad de visualización PNG estándar -

# import required image module
from PIL import Image

# Open an already existing image
imageObject = Image.open("images/spiderman.jpg")

# Do a flip of left and right
hori_flippedImage = imageObject.transpose(Image.FLIP_LEFT_RIGHT)

# Show the original image
imageObject.show()

# Show the horizontal flipped image
hori_flippedImage.show()

Salida

Original image

Flipped image

Ejemplo 2: imagen volteada verticalmente

El siguiente ejemplo de Python lee una imagen, la voltea verticalmente y muestra la imagen original y volteada usando la utilidad de visualización PNG estándar -

# import required image module
from PIL import Image

# Open an already existing image
imageObject = Image.open("images/spiderman.jpg")

# Do a flip of left and right
hori_flippedImage = imageObject.transpose(Image.FLIP_LEFT_RIGHT)

# Show the original image
imageObject.show()

# Show vertically flipped image
Vert_flippedImage = imageObject.transpose(Image.FLIP_TOP_BOTTOM)
Vert_flippedImage.show()

Salida

Original Image

Flipped Image

Ejemplo 3: girar la imagen a un grado específico

El siguiente ejemplo de Python lee una imagen, gira a un grado específico y muestra la imagen original y rotada usando la utilidad de visualización PNG estándar -

# import required image module
from PIL import Image

# Open an already existing image
imageObject = Image.open("images/spiderman.jpg")

# Do a flip of left and right
hori_flippedImage = imageObject.transpose(Image.FLIP_LEFT_RIGHT)

# Show the original image
imageObject.show()

#show 90 degree flipped image
degree_flippedImage = imageObject.transpose(Image.ROTATE_90)
degree_flippedImage.show()

Salida

Original Image

Rotated Image