Python

Maîtriser la manipulation d’images avec Python et Pillow

×

Recommandés

CSV en Python — du téléchargement au...
Le CSV paraît simple, jusqu’au...
En savoir plus
Python : pandas.to_csv — Exporter propre, fiable...
DataFrame.to_csv devient un contrat d’échange :...
En savoir plus
Python : pandas.read_csv — Guide pratique enrichi
Pourquoi read_csv reste incontournable Parce qu’il...
En savoir plus
Pratique de l’apprentissage automatique avec scikit-learn et...
Cet article vous guide, pas à...
En savoir plus
Python & finance PME — un kit...
Pour une PME, la finance est...
En savoir plus
Python pour la finance — les fonctions...
Python est devenu l’outil “couteau suisse”...
En savoir plus

Manipuler des images en Python peut être réalisé efficacement grâce à diverses bibliothèques, mais l’une des plus populaires et des plus puissantes est certainement Pillow, qui fournit un large éventail de fonctionnalités pour ouvrir, modifier et sauvegarder des images. Dans ce guide, je vais vous montrer comment manipuler des images en utilisant Pillow, ainsi que quelques opérations courantes telles que le redimensionnement, la conversion de formats et l’application de filtres.

Prérequis

  • Python installé sur votre système. Vous pouvez le télécharger depuis python.org.
  • Installation de la bibliothèque Pillow. Vous pouvez l’installer via pip en exécutant pip install pillow.
1. Ouvrir une image
from PIL import Image

# Ouvrir une image
image = Image.open("chemin_vers_votre_image.jpg")
2. Afficher une image
image.show()
3. Obtenir les dimensions d’une image
largeur, hauteur = image.size
print("Largeur:", largeur)
print("Hauteur:", hauteur)
4. Redimensionner une image
# Redimensionner en conservant le rapport hauteur/largeur
nouvelle_image = image.resize((nouvelle_largeur, nouvelle_hauteur))

# Redimensionner en forçant une taille spécifique
nouvelle_image = image.resize((nouvelle_largeur, nouvelle_hauteur), Image.ANTIALIAS)
5. Enregistrer une image dans un nouveau format
nouveau_nom = "nouvelle_image.png"
nouvelle_image.save(nouveau_nom)
6. Convertir le format d’une image
image.convert("L")  # Convertir en niveaux de gris
7. Appliquer un filtre
from PIL import ImageFilter

image_filtree = image.filter(ImageFilter.BLUR)
8. Appliquer des transformations
from PIL import ImageEnhance

# Augmenter la netteté de l'image
enhancer = ImageEnhance.Sharpness(image)
image_net = enhancer.enhance(2.0)
9. Ajouter du texte à une image
from PIL import ImageDraw, ImageFont

draw = ImageDraw.Draw(image)
font = ImageFont.truetype("arial.ttf", 36)
draw.text((x, y), "Votre texte", fill=(255, 255, 255), font=font)
10. Superposer des images
image_fond.paste(image_superposee, (x, y), image_superposee)

Guide complet de manipulation d’images en Python avec Pillow

Bien sûr ! Voici comment les cas pratiques pourraient être réécrits avec des exemples de code :

1. Créer des miniatures
from PIL import Image

# Ouvrir une image
image = Image.open("image.jpg")

# Redimensionner pour créer une miniature
thumbnail_size = (100, 100)
thumbnail_image = image.copy()
thumbnail_image.thumbnail(thumbnail_size)

# Enregistrer la miniature
thumbnail_image.save("miniature.jpg")
2. Appliquer des filtres pour l’édition d’images
from PIL import ImageFilter

# Appliquer un filtre de flou
blurred_image = image.filter(ImageFilter.BLUR)
blurred_image.save("image_floue.jpg")
3. Créer un programme de traitement par lot
import os

input_folder = "input_images"
output_folder = "output_images"

# Parcourir les fichiers d'entrée
for filename in os.listdir(input_folder):
    # Ouvrir chaque image
    image = Image.open(os.path.join(input_folder, filename))

    # Appliquer des transformations
    # ...

    # Enregistrer les images transformées dans un dossier de sortie
    output_filename = os.path.join(output_folder, filename)
    image.save(output_filename)
4. Reconnaissance et modification de contenu
# Utiliser d'autres bibliothèques comme OpenCV ou TensorFlow pour la reconnaissance d'objets, la segmentation, etc.
# Ensuite, utiliser Pillow pour modifier les images en fonction des résultats de l'analyse.
5. Créer des mèmes automatiquement
from PIL import ImageDraw, ImageFont

# Ouvrir une image de base
base_image = Image.open("base_image.jpg")

# Ajouter du texte
draw = ImageDraw.Draw(base_image)
font = ImageFont.truetype("arial.ttf", 20)
draw.text((10, 10), "Texte du mème", fill=(255, 255, 255), font=font)

# Enregistrer l'image avec le texte ajouté
base_image.save("meme.jpg")
6. Analyse de données visuelles
# Utiliser Pillow pour extraire des données visuelles comme la palette de couleurs, les histogrammes, etc.
# par exemple :
colors = image.getcolors(maxcolors=256)
print(colors)
7. Création de diaporamas
# Utiliser d'autres bibliothèques pour créer les transitions et assembler les images en un diaporama.
# Ensuite, utiliser Pillow pour enregistrer le diaporama final.
8. Correction automatique de photos
# Utiliser Pillow pour corriger automatiquement des problèmes courants dans les photos.
# Par exemple, pour corriger les yeux rouges :
from PIL import ImageEnhance

enhancer = ImageEnhance.Color(image)
corrected_image = enhancer.enhance(1.5)
corrected_image.save("image_corrigee.jpg")

Ces exemples illustrent comment chaque cas pratique peut être réalisé en utilisant la bibliothèque Pillow en combinaison avec d’autres bibliothèques ou techniques de traitement d’images en Python.

Conclusion

Ce guide couvre les bases de la manipulation d’images en Python en utilisant la bibliothèque Pillow. Avec ces connaissances, vous pouvez créer des scripts pour effectuer une grande variété de tâches liées aux images, telles que le traitement d’images, la création de miniatures, l’édition d’images, etc. Explorez davantage la documentation de Pillow pour découvrir d’autres fonctionnalités avancées et approfondies.

Recommandés

CSV en Python — du téléchargement au...
Le CSV paraît simple, jusqu’au...
En savoir plus
Python : pandas.to_csv — Exporter propre, fiable...
DataFrame.to_csv devient un contrat d’échange :...
En savoir plus
Python : pandas.read_csv — Guide pratique enrichi
Pourquoi read_csv reste incontournable Parce qu’il...
En savoir plus
Pratique de l’apprentissage automatique avec scikit-learn et...
Cet article vous guide, pas à...
En savoir plus
Python & finance PME — un kit...
Pour une PME, la finance est...
En savoir plus
Python pour la finance — les fonctions...
Python est devenu l’outil “couteau suisse”...
En savoir plus
AZ

Recent Posts

Outils interactifs : Cartographie des processus et grille d’audit interne ISO 9001

Deux outils concrets pour piloter la qualité sans alourdir vos équipes Cette page met à…

14 heures ago

Exemple de fiche de préparation de chantier

Un chantier se gagne souvent avant même l’arrivée des équipes. Quand tout est clair dès…

2 jours ago

Texte argumentatif sur le mariage forcé

Le mariage a du sens quand il repose sur une décision libre, mûrie et partagée.…

2 jours ago

Étude de cas en droit : Modèle Word à suivre

Une étude de cas réussie commence par une structure sûre. Ce modèle Word vous guide…

4 jours ago

Soft skills : la liste A à Z interactive pour trier, comparer et choisir vos compétences clés

Les soft skills se repèrent vite sur une fiche, mais elles ne pèsent vraiment que…

5 jours ago

Comparateur de verres progressifs

Outil de comparaison et repérage des offres étudiantes Choisir des verres progressifs ressemble rarement à…

6 jours ago

This website uses cookies.