Python

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

×

Recommandés

Python pour la finance — les fonctions...
Python est devenu l’outil “couteau suisse”...
En savoir plus
Tkinter Entry get value : Manipulation, Astuces...
Les widgets Entry de Tkinter sont...
En savoir plus
Comment remplacer un caractère par un autre...
Dans cet article, nous explorerons...
En savoir plus
Pair impair Python : exercices corrigés et...
Python est un langage de programmation...
En savoir plus
La fonction int en Python - Guide...
Dans ce tutoriel, nous allons découvrir...
En savoir plus
Comment calculer un pourcentage/python calcul du pourcentage
L'objectif de cette page est de...
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

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 transforme...
En savoir plus
Comment lire un fichier CSV en Python...
Les fichiers CSV en Python (Comma...
En savoir plus
Tutoriel : Traitement d'images avec Python et...
Pillow est une bibliothèque Python très...
En savoir plus
Créer une Interface Graphique en Python avec...
Les interfaces graphiques (GUI) jouent un...
En savoir plus
Exercices corrigés sur les fichiers en Python
Les fichiers en Python sont des...
En savoir plus
AZ

Recent Posts

Classification des Documents : Organiser et Automatiser la Gestion Documentaire

Dans toute organisation moderne — entreprise, association, service administratif ou bureau de projet — la…

2 jours ago

Modèle de Bilan Actif Passif sur Excel : Concevoir un tableau comptable clair et automatisé

Dans la pratique comptable, le bilan constitue l’un des documents les plus fondamentaux pour comprendre…

2 jours ago

Fiche Méthode analyse linéaire + guide complet pour la réussir

L’analyse linéaire impressionne souvent plus qu’elle ne le devrait. Au moment d’aborder l’oral du bac…

3 jours ago

Analyse linéaire au bac français : méthode complète, exemples et conseils pour réussir l’oral

L’analyse linéaire occupe une place centrale à l’oral du bac français. C’est l’exercice qui permet…

3 jours ago

Créer une fiche de suivi en ligne : générateur personnalisable à imprimer

Créer une fiche de suivi claire et adaptée à son activité prend souvent plus de…

3 jours ago

Préparation physique football avec ballon : Fiche Word utile

Comment améliorer sa condition physique tout en travaillant la technique Quand on parle de préparation…

3 jours ago

This website uses cookies.