Trabajar con imágenes en Python con Pillow

En esta entrada veremos cómo trabajar con imágenes utilizando Python y el módulo Pillow. Este módulo nos permite procesar imágenes.

Instalar el módulo Pillow

La versión disponible de Pillow al momento de escribir esta entrada es la 8 y será la versión que utilizaremos en los ejemplos. La instalación la haremos con pip desde una terminal.

pip install Pillow

Para verificar que el módulo se instaló sin problemas, abramos un interprete en modo interactivo e importemos el módulo.

import PIL

Si quieres darte una vuelta por la documentación oficial, aquí te dejo el enlace.

Abrir una imagen con Pillow

La imagen que utilizaremos en los ejercicios se llama «ProyectosconPython.png» y es la siguiente:

Proyectos con Python - Trabajar con imágenes en Python con Pillow

La función open() de la clase Image nos permite cargar la imagen seleccionada. Para utilizar esta función, es necesario importar la clase desde el módulo Pillow.

from PIL import Image
imagen = Image.open("ProyectosconPython.png")

Obtener características de la imagen

Podemos conocer el tamaño de la imagen con el atributo size. También es posible ver el ancho y alto por separado con los atributos width y height.

imagen.size
imagen.width  # ancho
imagen.height  # alto

>>> imagen.size
(500, 500)
>>> imagen.width
500
>>> imagen.height
500

Otro atributo es format que nos indicará el formato que tiene la imagen. Y en caso de que requieras verificar el nombre de la imagen esta disponible el atributo filename.

imagen.format
imagen.filename

>>> imagen.format
‘PNG’
>>> imagen.filename
‘ProyectosconPython.png’

Modificar una imagen con Pillow

El módulo Pillow tiene muchas opciones disponibles para editar la imagen. En esta ocasión veremos un par de opciones y en próximas entradas veremos mas de ellas. Vamos a rotar la imagen con rotate() y cambiaremos el tamaño de la imagen con resize().

imagen.resize((600, 100))
imagen.rotate(30)

>>> imagen.resize((600, 100))
<PIL.Image.Image image mode=RGB size=600×100 at 0x2FEDB68>
>>> imagen.rotate(30)
<PIL.Image.Image image mode=RGB size=818×126 at 0x2FEDAC0>

Mostrar una imagen con Pillow

Podemos utilizar el método show() para ver la imagen. Se abrirá una herramienta disponible en tu computadora para visualizar la imagen.

imagen.show()

Notarás que se abre la imagen original sin ninguna modificación. Cada vez que hacemos un cambio en la imagen se crea una versión nueva. Guardemos la rotación de la imagen para poder ver el cambio y mostremos la nueva versión.

giro = imagen.rotate(30)
giro.show()

Guardar una imagen con Pillow

Usaremos el método save() para guardar las imágenes. Debemos colocar el nombre con el que queremos guardar la imagen con la extensión.

giro.save(“giro.jpg”)

Este método creará la imagen giro.jpg en la ubicación en que nos encontrábamos al abrir el intérprete en modo interactivo.

Hasta aquí dejaremos esta entrada sobre cómo trabajar con imágenes en Python y el módulo Pillow. Próximamente tendremos un tutorial para probar las opciones de edición del módulo. Déjame en los comentarios, ¿qué te ha parecido esta entrada? ¿Qué otros módulos de edición de imágenes utilizas?

¡No olvides suscribirte a nuestro boletín!

¡No enviamos spam! Lee más en nuestra política de privacidad