Pitone

Elaborazione delle immagini in Python usando Pillow

Elaborazione delle immagini in Python usando Pillow

Le immagini sono necessarie per essere utilizzate in molte applicazioni per vari scopi. Una delle parti essenziali delle applicazioni web è l'immagine. Esistono molte librerie in Python per attività di elaborazione delle immagini come PIL, Pillow, OpenCV, ecc. PIL è una popolare libreria di elaborazione delle immagini, ma non Python 3. Pillow è implementato per Python 3 per svolgere un'attività PIL simile ed è chiamato fork di PIL. Pillow supporta più formati di immagine e diversi tipi di attività di elaborazione delle immagini come ridimensionamento, rotazione, ritaglio, aggiunta di testo all'immagine, ecc., può essere fatto facilmente usando questa libreria. La libreria Pillow può essere installata e utilizzata per varie attività di elaborazione delle immagini mostrate in questo tutorial.

Installazione del modulo di elaborazione delle immagini

Il modulo di elaborazione delle immagini richiederà se si desidera creare il simulatore di lancio dei dadi con la GUI. Esegui i seguenti comandi dal terminale per aggiornare il pip e installare il modulo Pillow.

$ python3 -m pip install --upgrade pip
$ python3 -m pip install --upgrade Pillow

Esempio 1: visualizzare un'immagine

Come un'immagine può essere visualizzata usando lo script python è mostrato nel seguente script. Il modulo immagine è stato importato per utilizzare il Aperto() funzione per aprire il file immagine. Successivamente, il mostrare() la funzione viene chiamata utilizzando un oggetto immagine per visualizzare l'immagine.

# Importa il modulo immagine da PIL
da PIL import Immagine
# Apri il file immagine
img = Immagine.open('uccello1.png')
# Visualizza l'immagine
img.mostrare()

Produzione

L'immagine verrà visualizzata in una finestra di dialogo se il file immagine esiste nella posizione corrente.

Esempio 2: visualizzare l'immagine con attributi diversi

Il seguente script visualizzerà l'immagine in una finestra di dialogo e stamperà diversi tipi di attributi dell'immagine. il os il modulo è stato importato con il Immagine modulo in questo script per verificare se il file immagine esiste. Se il file esiste, il file immagine verrà aperto e visualizzato nella finestra di dialogo. Successivamente, le dimensioni e il formato dell'immagine verranno stampati utilizzando il pulsante dimensione e formato proprietà dell'oggetto immagine.

# Importa il modulo immagine da PIL
da PIL import Immagine
# Importa modulo sistema operativo
importare il sistema operativo
# Imposta il nome del file immagine
imageName = 'uccello2.png'
se os.sentiero.esiste (nomeimmagine):
# Apri il file immagine
img = Immagine.open('bird2.png')
# Visualizza l'immagine
img.mostrare()
# Stampa la larghezza e l'altezza dell'immagine in pixel
print('La dimensione dell'immagine è : '.formato (img.dimensione))
# Stampa il formato del file immagine.
print('Il formato dell'immagine è : '.formato (img.formato))
altro:
# Stampa messaggio di errore
print('Il file immagine non esiste.')

Produzione

L'immagine verrà visualizzata in una finestra di dialogo se il file immagine esiste nella posizione corrente. Il seguente output mostra la dimensione e il formato dell'immagine. La larghezza dell'immagine è di 286 pixel e l'altezza dell'immagine è di 176 pixel. Il formato dell'immagine è JPEG.

Esempio 3: creare una nuova immagine modificando le dimensioni e il formato dell'immagine

Il seguente script visualizzerà l'immagine originale e verrà creata una nuova immagine modificando le dimensioni e il formato dell'immagine originale. Lo script dell'esempio precedente è stato utilizzato per visualizzare l'immagine in una finestra di dialogo scatola. ridimensiona() viene utilizzato il metodo con i nuovi valori di larghezza e altezza per impostare la dimensione del nuovo Immagine. Salva() viene utilizzato il metodo con il nome della nuova immagine per creare la nuova immagine. Le dimensioni delle immagini originali e nuove verranno stampate in seguito.

# Importa il modulo immagine da PIL
da PIL import Immagine
# Importa modulo sistema operativo
importare il sistema operativo
# Imposta il nome del file immagine
imageName = 'uccello2.png'
# Apri un file PNG
se os.sentiero.esiste (nome immagine):
# Apri il file immagine
img = Immagine.open('bird2.png')
# Visualizza l'immagine
img.mostrare()
# Stampa la larghezza e l'altezza dell'immagine originale in pixel
print('La dimensione dell'immagine originale è: '.formato (img.dimensione))
# Ridimensiona l'immagine
ridimensionato_img = img.ridimensiona ((400, 300))
# Salva l'immagine ridimensionata con un nuovo nome
ridimensionato_img.save('newImg.jpg')
# Stampa la larghezza e l'altezza della nuova immagine in pixel
print('La dimensione della nuova immagine è: '.format(resized_img.dimensione))
altro:
# Stampa messaggio di errore
print('Il file immagine non esiste.')

Produzione

L'immagine verrà visualizzata in una finestra di dialogo se il file immagine esiste nella posizione corrente. Il seguente output mostra la dimensione sia dell'immagine originale che di quella nuova. La larghezza dell'immagine originale è di 278 pixel e l'altezza dell'immagine originale è di 182 pixel. La larghezza della nuova immagine è di 400 pixel e l'altezza della nuova immagine è di 300 pixel.

Esempio-4: creare un'immagine ritagliata di un'immagine

Il seguente script visualizzerà l'immagine ritagliata di un'immagine esistente. Ritaglia() viene utilizzato per ritagliare l'immagine in base ai valori della casella specificati given. Successivamente, il Salva() viene utilizzato il metodo per creare la nuova immagine ritagliata. La nuova immagine verrà visualizzata in una finestra di dialogo come negli esempi precedenti.

# Importa il modulo immagine da PIL
da PIL import Immagine
# Importa modulo sistema operativo
importare il sistema operativo
# Imposta il nome del file immagine
imageName = 'uccello2.png'
# Apri il file PNG
se os.sentiero.esiste (nome immagine):
# Apri il file immagine
img = Immagine.open('bird2.png')
# Ritaglia l'immagine
cropped_img = img.ritaglio((100, 150, 300, 450))
# Salva l'immagine ritagliata in un altro file
cropped_img.save('cropped_img.jpg')
# Apri l'immagine ritagliata
img2 = Immagine.open('cropped_img.jpg')
# Visualizza l'immagine ritagliata
img2.mostrare()
# Stampa la larghezza e l'altezza dell'immagine ritagliata in pixel
print('La dimensione dell'immagine ritagliata è: '.formato (img2.dimensione))
altro:
# Stampa messaggio di errore
print('Il file immagine non esiste.')

Produzione

La seguente immagine ritagliata verrà visualizzata in una finestra di dialogo se il file immagine originale esiste nella posizione corrente.

Esempio-5: creare una miniatura di un file

Il seguente script creerà una miniatura di un'immagine. Il metodo thumbnail() è stato utilizzato nello script per creare la miniatura di un'immagine. L'immagine in miniatura creata verrà visualizzata in una finestra di dialogo in seguito.

# Importa il modulo immagine da PIL
da PIL import Immagine
# Apri il file immagine
img = Immagine.open('uccello1.png')
# Imposta i valori delle miniature
img.miniatura((200, 200))
# Salva la miniatura in un file immagine
img.save('miniatura.png')
# Apri il file di anteprima
thumbnail_img = Immagine.open('miniatura.png')
# Visualizza l'immagine in miniatura
miniatura_img.mostrare()

Produzione

La seguente immagine in miniatura verrà visualizzata in una finestra di dialogo se il file dell'immagine originale esiste nella posizione corrente.

Conclusione

Il modulo immagine contiene molte funzioni per eseguire diversi tipi di operazioni relative all'immagine. Gli usi di alcune funzioni maggiormente utilizzate sono stati spiegati in questo tutorial utilizzando più esempi.

Come invertire la direzione di scorrimento del mouse e dei touchpad in Windows 10
Topo e Touchpads non solo rende l'elaborazione semplice, ma anche più efficiente e richiede meno tempo. Non possiamo immaginare una vita senza questi ...
Come modificare il puntatore del mouse e le dimensioni, il colore e lo schema del cursore su Windows 10
Il puntatore del mouse e il cursore in Windows 10 sono aspetti molto importanti del sistema operativo. Questo si può dire anche per altri sistemi oper...
Motori di gioco gratuiti e open source per lo sviluppo di giochi Linux
Questo articolo tratterà un elenco di motori di gioco gratuiti e open source che possono essere utilizzati per lo sviluppo di giochi 2D e 3D su Linux....