Traitez facilement des images en Python avec Pillow

oreiller: bibliothèque de traitement d'images. Plus léger et plus facile que scikit-image et opencv.

Installation

$ pip install -U Pillow

Obtenir une image avec wget

$ cd <workspace>
$ wget --no-check-certificate -O gorilla.jpg https://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Male_silverback_Gorilla.JPG/236px-Male_silverback_Gorilla.JPG
$ atom test_pillow.py #Voir ci-dessous

gorilla.jpg

Un script qui charge une image, la dessine et l'enregistre

test_pillow.py


from __future__ import print_function
from PIL import Image, ImageDraw, ImageFont

#Lire à partir du fichier
im = Image.open('gorilla.JPG')

#Informations sur l'image
print(im.format, im.size, im.mode)

#Conversion de code Gris
# im = im.convert("L")
#Conversion de code Alpha Channel ajoutée
# im = im.convert('RGBA')
#Conversion de code RGB2BGR
# r, g, b = im.split() 
# im = Image.merge("RGB", (b, g, r))

#Coupe de zone
# box = (50, 50, 200, 200) # left, upper, right, lower
# region = im.crop(box)
# region
# region.show()
#Pâte de zone
# im = im.paste(region, box)

#Conversion d'image
# im = im.transpose(Image.FLIP_LEFT_RIGHT)
# im = im.transpose(Image.ROTATE_90)
# im = im.rotate(45)

#filtration
# from PIL import ImageFilter
# im = im.filter(ImageFilter.BLUR)

#Dessin
# font_Recherchez dans le livre et choisissez votre police préférée@mac
fnt = ImageFont.truetype('/Library/Fonts/Arial.ttf', size=20)
d = ImageDraw.Draw(im)
d.line((0, 0) + im.size, fill=(128,0,0), width=2)
d.line((0, im.size[1], im.size[0], 0), fill=(128,0,0), width=2)
# draw rectangle
import numpy as np
thickness = 5
left, top, right, bottom = 30,20, 220, 220 #Vraiment profond_Utilisez l'apprentissage. Désigné cette fois.
text_origin = (10,10)
label_size = d.textsize("gorilla", fnt)
for i in range(thickness):
    d.rectangle([left + i, top + i, right - i, bottom - i], outline=(0,0,128))
d.rectangle([text_origin, tuple(np.array(text_origin) + label_size)], fill=(0,0,128))
d.text(text_origin, "gorilla", font=fnt, fill=(255,255,255))
del d

#Enregistrer l'image
im.save('gorilla_convert.jpg')

#Affichage de l'image
im.show()

Courir

$ python test_pillow.py

gorilla_convert.jpg

Capture d'écran

from PIL import ImageGrab

ImageGrab.grab(bbox=(0, 50, 800, 650))

Recommended Posts

Traitez facilement des images en Python avec Pillow
Traitement d'image avec Python
Traitement d'image avec Python (partie 2)
Traitement d'image avec PIL (Pillow)
Traitement d'image avec Python (partie 1)
Tweet avec image en Python
Traitement d'image avec Python (3)
Traitement d'image par python (Pillow)
[Python] Traitement d'image avec scicit-image
[Python] Traitement parallèle facile avec Joblib
Traitement d'image avec la binarisation Python 100 knocks # 3
100 traitement d'image par Python Knock # 2 Échelle de gris
traitement d'image python
Bases du traitement d'images binarisées par Python
Traitement d'image par Python 100 knock # 10 filtre médian
100 traitement d'image avec Python Knock # 8 Max Pooling
Traitement d'image avec Python et OpenCV [Tone Curve]
Traitement d'image par Python 100 knock # 12 motion filter
Dessin avec Matrix-Reinventor of Python Image Processing-
Traitement d'image avec Python 100 knocks # 7 pooling moyen
Traitement d'image léger avec Python x OpenCV
Traitement d'image par Python 100 knock # 9 Filtre Gaussien
Traitement d'image avec MyHDL
Traitement de fichiers en Python
Premier traitement d'image Python
Traitement de texte avec Python
Format d'image en Python
Traitement des requêtes en Python
Traitement d'image avec PIL
Traitement d'image à partir de zéro avec python (5) Transformation de Fourier
Traitement d'image à partir de zéro avec python (4) Extraction de contour
Traitement d'image avec la configuration de l'environnement Python pour Windows
Créer une image avec des caractères avec python (japonais)
Traitement parallèle sans signification profonde en Python
100 coups de traitement du langage avec Python 2015
Traitement de texte UTF8 avec python
Grattage au sélénium en Python
"Traitement Apple" avec OpenCV3 + Python3
[Analyse de co-occurrence] Analyse de co-occurrence facile avec Python! [Python]
Exploitez LibreOffice avec Python
Grattage avec chromedriver en python
Remarques sur le traitement d'images HDR et RAW avec Python
Édition d'image avec python OpenCV
Débogage avec pdb en Python
[Python] Obtenez les nombres dans l'image graphique avec OCR
Traitement du signal acoustique avec Python (2)
Traitement du signal acoustique avec Python
Synchronisation facile des dossiers avec Python
Tri des fichiers image avec Python (2)
Grattage avec du sélénium en Python
Traitement asynchrone (threading) en python
Grattage avec Tor en Python
Tri des fichiers image avec Python
Combiné avec ordinal en Python
Compilation facile de Python avec NUITKA-Utilities
Serveur HTTP facile avec Python
Boîte de mot de passe facile en Python
Utilisation du mode Python dans le traitement
Facile avec juste Python! Affichez les figures Graphviz au format draw.io!
[Jouons avec Python] Traitement d'image en monochrome et points