Convierte PNG a JPG usando Python

Los formatos PNG y JPG se utilizan para ilustraciones de imágenes. Ambos formatos se utilizan para proporcionar una buena compatibilidad con ciertos tipos de imágenes, como PNG funciona mejor con dibujos lineales y gráficos de iconos, mientras que JPG funciona bien con fotografías. Sin embargo, ambos son interconvertibles entre sí para uso y almacenamiento de medios e imágenes. Python proporciona varias opciones para llevar a cabo la conversión de imágenes. 

Método 1: Biblioteca de imágenes de Python (PIL) 

Python proporciona soporte para el procesamiento de imágenes utilizando el paquete PIL (Biblioteca de imágenes de Python). Esta biblioteca proporciona una amplia compatibilidad con formatos de archivo, es decir, se puede utilizar para convertir las imágenes de un formato a otro. Este paquete se puede instalar en el entorno mediante el siguiente comando: 

pip install Pillow

Este paquete proporciona un módulo denominado Imagen que se utiliza para crear y cargar nuevas imágenes en el entorno. También permite trabajar con formatos de imagen y sus orientaciones asociadas. Se utiliza para representar una imagen PIL. La sintaxis asociada es: 

from PIL import Image

Las siguientes funciones del módulo Imagen se utilizan para convertir una imagen de PNG a JPG. 

Image.open(): Abre e identifica un archivo de imagen. No carga el archivo, a menos que se realice explícitamente la operación load(). Simplemente abre la imagen sin analizar realmente el contenido de la imagen. 

PIL.Image.open(fp, mode='r', formats=None)

Argumentos: 

fp — Nombre de archivo, objeto pathlib.Path o un objeto de archivo.

modo — Siempre abierto en modo de lectura. 

formatos — Una lista de formatos para realizar la operación de apertura de un archivo. 

Tipo de retorno: 

Un objeto de imagen.

Image.save(): Guarda la imagen con el nombre de archivo especificado. En caso de que no se especifique ninguna extensión, la extensión se analiza a partir del nombre de archivo especificado. 

Image.save(fp, format=None, **params)

Argumentos:

fp — Nombre de archivo, objeto pathlib.Path o un objeto de archivo.

formato: formato opcional. 

params — Parámetros adicionales para el escritor de imágenes.

Tipo de retorno: 

No devuelve nada. 

El siguiente código de muestra de Python se usa para convertir una imagen de PNG a JPG: 

Python3

#importing the required package
from PIL import Image
  
#open image in png format
img_png = Image.open('C:\gfg\img.png')
  
#The image object is used to save the image in jpg format
img_png.save('C:\gfg\modified_img.jpg')

Producción:

El siguiente era el archivo original en C: 

El siguiente es el contenido de la misma carpeta después de la ejecución del programa: 

Método 2: Usar OpenCV

La biblioteca OpenCV (Open Source Computer Vision) es una biblioteca de procesamiento de imágenes que realiza operaciones numéricas utilizando la sintaxis de MATLAB. Se puede incorporar a nuestro entorno mediante el siguiente comando: 

pip install opencv-python

Después de la descarga, la biblioteca se puede importar al programa python usando el comando 

import cv2

Nos proporciona varias funciones para manipular imágenes, por ejemplo, la función imread() que toma como argumento el nombre de la imagen de la máquina local. La función imwrite() se utiliza para realizar la manipulación y modificación de imágenes. El método tiene la siguiente firma:

imwrite ( path, image)

Argumentos:

ruta: una string que representa el nombre del archivo que debe incluir el formato de imagen de la extensión, como .jpg, .png, etc.

image — La imagen que se va a guardar.

Tipo de retorno: 

Devuelve verdadero si la imagen se guarda correctamente.

Python3

#importing required packages and library
import cv2
  
# Loading .png image
png_img = cv2.imread('img.png')
  
# converting to jpg file
#saving the jpg file
cv2.imwrite('modified_img.jpg', png_img, [int(cv2.IMWRITE_JPEG_QUALITY), 100])

Producción:

El siguiente directorio almacena una imagen con el nombre “img.png”:

El siguiente resultado se obtiene después de la ejecución del programa:

Publicación traducida automáticamente

Artículo escrito por yippeee25 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 *