Python est connu pour sa polyvalence. Vous pouvez créer des outils utilitaires réels en Python qui peuvent simplifier et automatiser certaines tâches.

Apprenez à créer un convertisseur de type d'image avec seulement quelques lignes simples de code Python. Qu'il s'agisse d'un seul fichier image ou de tous les fichiers d'un répertoire, vous pouvez facilement convertir entre différents formats.

Installation des bibliothèques requises

Vous devez installer le Oreiller Bibliothèque Python pour construire un convertisseur de type d'image en Python. Cette bibliothèque améliore les capacités de traitement d'image de votre interpréteur Python. Vous pouvez créer un outil général de traitement d'image en utilisant plusieurs modules de cette bibliothèque. Certains des plus utiles sont les Image, Fichier d'image, Filtre d'image, et ImageStat modules.

Exécutez la commande suivante dans le terminal pour installer la bibliothèque Pillow Python :

pépin installer oreiller

Une fois que Pillow est installé sur votre système, vous êtes prêt à travailler avec des images.

instagram viewer

Chargement et affichage des propriétés d'une image

Vous devez d'abord importer le Image module de la DIP bibliothèque pour configurer le code. Ensuite, vous devez utiliser le Image.open() méthode pour charger l'image et l'affecter à une variable. Une fois l'image chargée, vous pouvez l'afficher à l'aide de la montrer() méthode.

Le code du convertisseur de format d'image est disponible dans un Référentiel GitHub et est libre d'utilisation sous la licence MIT.

depuis DIP importer Image
image = Image.open('exemple-image.jpg')
image.montrer()

L'image que vous avez passée en paramètre au ouvrir() La méthode s'ouvrira après l'exécution du code. Il s'agit d'une bonne première étape, en tant que contrôle d'intégrité, pour vous assurer que vous avez installé avec succès la bibliothèque sur votre système.

Le module Image fournit plusieurs autres propriétés que vous pouvez utiliser pour obtenir plus d'informations sur l'image.

# Importation de bibliothèque
depuis DIP importer Image

# Chargement de l'image
image = Image.open('exemple-image.jpg')

# Imprime le nom du fichier
imprimer("Nom de fichier: ", image.nomfichier)

# Imprime le format du fichier
# Par exemple - PNG, JPG, GIF, etc.
imprimer("Format: ", format d'image)

# Imprime le mode du fichier
# Par exemple- RVB, RFBA, CMJN, etc.
imprimer("Mode: ", image.mode)

# Imprime la taille sous la forme d'un tuple de largeur et de hauteur (en pixels)
imprimer("Taille: ", taille de l'image)

# Imprime la largeur de l'image (en pixels)
imprimer("Largeur: ", Largeur de l'image)

# Imprime la hauteur de l'image (en pixels)
imprimer("Hauteur: ", hauteur de l'image)

# Fermeture de l'image
image.fermer()

Vous devriez voir des données significatives sans erreur :

Comment convertir le format d'image à l'aide de Python

Vous pouvez simplement convertir le format de fichier d'une image en utilisant le sauvegarder() méthode. Il vous suffit de passer le nouveau nom de fichier et l'extension comme paramètre de la sauvegarder() méthode. Le sauvegarder() identifiera automatiquement l'extension que vous avez transmise, puis enregistrera l'image dans le format identifié. Mais avant d'utiliser le sauvegarder(), vous devrez peut-être spécifier le mode de l'image (RVB, RVBA, CMJN, HSV, etc.).

Selon la documentation officielle des oreillers, le mode d'une image est une chaîne qui définit le type et la profondeur d'un pixel dans l'image. La bibliothèque d'oreillers prend en charge 11 modes, dont les modes standard suivants :

RVB (pixels 3x8 bits, couleurs vraies)

RVBA (pixels 4x8 bits, couleurs vraies avec masque de transparence)

CMJN (pixels 4x8 bits, séparation des couleurs)

HSV (pixels 3x8 bits, teinte, saturation, espace colorimétrique de la valeur)

Comment convertir une image PNG en JPG et JPG en PNG

Vous devez passer la chaîne nomfichier.jpg comme paramètre de la sauvegarder() méthode pour convertir des fichiers image dans n'importe quel format (PNG, GIF, BMP, TIFF, etc.) au format JPG. En outre, vous devez fournir le mode de l'image. Le code suivant convertit une image de Format PNG vers format JPG:

# Importation de la bibliothèque
depuis DIP importer Image

# Chargement de l'image
image = Image.open('exemple-png-image.png')

# Spécification du mode RVB à l'image
image = image.convert('RVB')

# Conversion d'une image du format PNG au format JPG
image.save("converti-jpg-image.jpg")
imprimer("Image convertie avec succès !"

Vous perdrez toute transparence dans une image si vous la convertissez au format JPG. Si vous essayez de préserver la transparence à l'aide de la RVBA mode, Python renverra une erreur.

Vous pouvez convertir une image dans n'importe quel format au format PNG en utilisant le sauvegarder() méthode. Il suffit de passer l'image PNG en paramètre au sauvegarder() méthode. Le code suivant convertit une image du format JPG au format PNG :

# Importation de la bibliothèque
depuis DIP importer Image

# Chargement de l'image
image = Image.open('exemple-jpg-image.jpg')

# Conversion d'une image du format JPG au format PNG
image.save("image-png-convertie.png")
imprimer("Image convertie avec succès !")

La conversion d'une image en PNG préserve toute transparence. Par exemple, si vous convertissez une image GIF transparente en image PNG, le résultat sera toujours une image transparente.

Comment convertir une image en n'importe quel autre format à l'aide de Python

Semblable aux étapes ci-dessus, vous pouvez convertir une image dans n'importe quel format vers n'importe quel autre format en utilisant le sauvegarder() méthode. Il vous suffit de fournir la bonne extension d'image (.webp, .png, .bmp, etc.) au sauvegarder() méthode. Par exemple, le code suivant convertit une image du format PNG au format WebP :

# Importation de la bibliothèque
depuis DIP importer Image

# Chargement de l'image
image = Image.open('exemple-transparent-png-image.png')

# Conversion d'une image du format PNG au format WEBP
image.save("image-webp-convertie.webp")
imprimer("Image convertie avec succès !")

Gestion des erreurs pour les fichiers image manquants

Si le code n'est pas en mesure de trouver l'image d'entrée, il générera une erreur. Vous pouvez gérer cela en utilisant le FileNotFoundErrorException Python.

# Importation de la bibliothèque
depuis DIP importer Image

essayer:
# Chargement de l'image
image = Image.open('nom_fichier_erroné.jpg')

# Conversion d'une image du format JPG au format PNG
image.save("image-png-convertie.png")
imprimer("Image convertie avec succès !")

sauf FileNotFoundError :
imprimer("Impossible't trouver l'image fournie")

Conversion de toutes les images d'un répertoire dans un format différent

S'il y a plusieurs fichiers image dans un répertoire que vous souhaitez convertir dans un format différent, vous pouvez facilement le faire avec seulement quelques lignes de code en Python. Vous devez importer le global bibliothèque pour parcourir les fichiers du répertoire courant ou d'un dossier donné. Le code suivant convertit toutes les images JPG du répertoire courant au format PNG :

depuis DIP importer Image
importer global

pour le fichier dans glob.glob("*.jpg"):
image = Image.open (fichier)
image.save (fichier.replace("jpg", "png"))

Si vous souhaitez convertir un autre ensemble de fichiers, modifiez le paramètre de chaîne que vous transmettez au glob() méthode.

Construire une interface graphique en utilisant Python

Les bibliothèques Python comme Pillow facilitent le développement d'outils pour traiter les images en Python. Vous pouvez effectuer des tâches rapidement avec une interface de ligne de commande, mais une interface graphique est essentielle pour créer une expérience conviviale. Vous pouvez créer des applications GUI plus spécialisées à l'aide de frameworks Python tels que Tkinter et wxPython.