Pitón

Procesamiento de imágenes en Python usando Pillow

Procesamiento de imágenes en Python usando Pillow

Las imágenes son necesarias para su uso en muchas aplicaciones para diversos fines. Una de las partes esenciales de las aplicaciones web es la imagen. Existen muchas bibliotecas en Python para tareas de procesamiento de imágenes como PIL, Pillow, OpenCV, etc. PIL es una biblioteca de procesamiento de imágenes popular, pero no Python 3. Pillow está implementado para Python 3 para hacer una tarea de PIL similar y se llama la bifurcación de PIL. Pillow admite múltiples formatos de imagen y diferentes tipos de tareas de procesamiento de imágenes como cambiar el tamaño, rotar, recortar, agregar texto de imagen, etc., se puede hacer fácilmente usando esta biblioteca. La biblioteca Pillow se puede instalar y utilizar para varias tareas de procesamiento de imágenes que se muestran en este tutorial.

Instalación del módulo de procesamiento de imágenes

El módulo de procesamiento de imágenes requerirá si desea crear el simulador de lanzamiento de dados con GUI. Ejecute los siguientes comandos desde el terminal para actualizar el pip e instalar el módulo Pillow.

$ python3 -m pip install - actualizar pip
$ python3 -m pip install --upgrade Pillow

Ejemplo 1: mostrar una imagen

En la siguiente secuencia de comandos se muestra cómo se puede mostrar una imagen usando la secuencia de comandos de Python. El módulo de imagen se ha importado para usar el abierto() función para abrir el archivo de imagen. A continuación, el show() La función se llama mediante el uso de un objeto de imagen para mostrar la imagen.

# Importar módulo de imagen de PIL
de la imagen de importación PIL
# Abre el archivo de imagen
img = Imagen.abierto ('pájaro1.png ')
# Mostrar la imagen
img.show()

Producción

La imagen se mostrará en un cuadro de diálogo si el archivo de imagen existe en la ubicación actual.

Ejemplo 2: mostrar la imagen con diferentes atributos

El siguiente script mostrará la imagen en un cuadro de diálogo e imprimirá diferentes tipos de atributos de imagen. la os El módulo se ha importado con el Imagen módulo en este script para verificar si el archivo de imagen existe. Si el archivo existe, el archivo de imagen se abrirá y se mostrará en el cuadro de diálogo. A continuación, el tamaño de la imagen y el formato de la imagen se imprimirán utilizando el Talla y formato propiedades del objeto de imagen.

# Importar módulo de imagen de PIL
de la imagen de importación PIL
# Importar módulo de sistema operativo
importar sistema operativo
# Establecer el nombre del archivo de imagen
imageName = 'pájaro2.png '
si os.camino.existe (imageName):
# Abre el archivo de imagen
img = Imagen.abierto ('pájaro2.png ')
# Mostrar la imagen
img.show()
# Imprime el ancho y alto de la imagen en píxeles
print ('El tamaño de la imagen es: '.formato (img.Talla))
# Imprime el formato del archivo de imagen.
print ('El formato de la imagen es: '.formato (img.formato))
demás:
# Imprimir mensaje de error
print ('El archivo de imagen no existe.')

Producción

La imagen se mostrará en un cuadro de diálogo si el archivo de imagen existe en la ubicación actual. La siguiente salida muestra el tamaño y formato de la imagen. El ancho de la imagen es de 286 píxeles y la altura de la imagen es de 176 píxeles. El formato de la imagen es JPEG.

Ejemplo-3: Cree una nueva imagen cambiando el tamaño y formato de la imagen

El siguiente script mostrará la imagen original y se creará una nueva imagen cambiando el tamaño y el formato de la imagen original. El script del ejemplo anterior se ha utilizado para mostrar la imagen en un diálogo caja. redimensionar () El método se utiliza con los nuevos valores de ancho y alto para establecer el tamaño del nuevo imagen. ahorrar() El método se usa con el nombre de la nueva imagen para crear la nueva imagen. El tamaño de las imágenes originales y nuevas se imprimirá más tarde.

# Importar módulo de imagen de PIL
de la imagen de importación PIL
# Importar módulo de sistema operativo
importar sistema operativo
# Establecer el nombre del archivo de imagen
imageName = 'pájaro2.png '
# Abrir un archivo PNG
si os.camino.existe (imageName):
# Abre el archivo de imagen
img = Imagen.abierto ('pájaro2.png ')
# Mostrar la imagen
img.show()
# Imprime el ancho y alto de la imagen original en píxeles
print ('El tamaño de la imagen original es: '.formato (img.Talla))
# Cambiar el tamaño de la imagen
resized_img = img.redimensionar ((400, 300))
# Guarde la imagen redimensionada con un nuevo nombre
resized_img.guardar ('newImg.jpg ')
# Imprime el ancho y alto de la nueva imagen en píxeles
print ('El tamaño de la nueva imagen es: '.formato (resized_img.Talla))
demás:
# Imprimir mensaje de error
print ('El archivo de imagen no existe.')

Producción

La imagen se mostrará en un cuadro de diálogo si el archivo de imagen existe en la ubicación actual. La siguiente salida muestra el tamaño de las imágenes originales y nuevas. El ancho de la imagen original es de 278 píxeles y la altura de la imagen original es de 182 píxeles. El ancho de la nueva imagen es de 400 píxeles y la altura de la nueva imagen es de 300 píxeles.

Ejemplo 4: crear una imagen recortada de una imagen

El siguiente script mostrará la imagen recortada de una imagen existente. cultivo() El método se utiliza para recortar la imagen en función de los valores de cuadro dados. A continuación, el ahorrar() El método se utiliza para crear la nueva imagen recortada. La nueva imagen se mostrará en un cuadro de diálogo como los ejemplos anteriores.

# Importar módulo de imagen de PIL
de la imagen de importación PIL
# Importar módulo de sistema operativo
importar sistema operativo
# Establecer el nombre del archivo de imagen
imageName = 'pájaro2.png '
# Abra el archivo PNG
si os.camino.existe (imageName):
# Abre el archivo de imagen
img = Imagen.abierto ('pájaro2.png ')
# Recorta la imagen
cropped_img = img.cultivo ((100, 150, 300, 450))
# Guarde la imagen recortada en otro archivo
cropped_img.guardar ('cropped_img.jpg ')
# Abre la imagen recortada
img2 = Imagen.open ('cropped_img.jpg ')
# Mostrar la imagen recortada
img2.show()
# Imprime el ancho y alto de la imagen recortada en píxeles
print ('El tamaño de la imagen recortada es: '.formato (img2.Talla))
demás:
# Imprimir mensaje de error
print ('El archivo de imagen no existe.')

Producción

La siguiente imagen recortada se mostrará en un cuadro de diálogo si el archivo de imagen original existe en la ubicación actual.

Ejemplo 5: crear una miniatura de un archivo

El siguiente script creará una miniatura de una imagen. El método thumbnail () se ha utilizado en el script para crear la miniatura de una imagen. La imagen en miniatura creada se mostrará en un cuadro de diálogo más adelante.

# Importar módulo de imagen de PIL
de la imagen de importación PIL
# Abre el archivo de imagen
img = Imagen.abierto ('pájaro1.png ')
# Establecer los valores de las miniaturas
img.miniatura ((200, 200))
# Guarde la miniatura en un archivo de imagen
img.Guarda la miniatura.png ')
# Abra el archivo de miniatura
thumbnail_img = Imagen.open ('miniatura.png ')
# Mostrar la imagen en miniatura
thumbnail_img.show()

Producción

La siguiente imagen en miniatura se mostrará en un cuadro de diálogo si el archivo de imagen original existe en la ubicación actual.

Conclusión

El módulo de imagen contiene muchas funciones para realizar diferentes tipos de operaciones relacionadas con la imagen. Los usos de algunas de las funciones más utilizadas se han explicado en este tutorial utilizando varios ejemplos.

Cómo instalar League Of Legends en Ubuntu 14.04
Si eres fanático de League of Legends, esta es una oportunidad para que pruebes League of Legends. Tenga en cuenta que LOL es compatible con PlayOnLin...
Instale el último juego de estrategia de OpenRA en Ubuntu Linux
OpenRA es un motor de juego de estrategia en tiempo real libre / gratuito que recrea los primeros juegos de Westwood como el clásico Command & Conquer...
Instale el último emulador de Dolphin para Gamecube y Wii en Linux
Dolphin Emulator te permite jugar los juegos de Gamecube y Wii que elijas en computadoras personales con Linux (PC). Al ser un emulador de juegos de ...