Python Pillow - Unione di immagini

Il pacchetto Pillow ti permette di incollare un'immagine su un'altra. La funzione merge () accetta una modalità e una tupla di immagini come parametri e le combina in un'unica immagine.

Sintassi

Image.merge(mode, bands)

Dove,

  • mode - La modalità da utilizzare per l'immagine di output.

  • bands - Una sequenza contenente un'immagine a banda singola per ciascuna banda nell'immagine di output. Tutte le bande devono avere la stessa dimensione.

  • Return value - Un'immagine oggetti.

Usando la funzione merge (), puoi unire le bande RGB di un'immagine come -

from PIL import Image
image = Image.open("beach1.jpg")
r, g, b = image.split()
image.show()
image = Image.merge("RGB", (b, g, r))
image.show()

Eseguendo la parte di codice sopra, puoi vedere l'immagine originale e l'immagine con unire le bande RGB come mostrato di seguito -

Input image

Output image

Unione di due immagini

Allo stesso modo, per unire due immagini diverse, è necessario:

  • Crea un oggetto immagine per le immagini richieste utilizzando la funzione open ().

  • Durante l'unione di due immagini, è necessario assicurarsi che entrambe le immagini abbiano le stesse dimensioni. Pertanto, ottieni ciascuna dimensione di entrambe le immagini e, se necessario, ridimensionale di conseguenza.

  • Crea un'immagine vuota utilizzando la funzione Image.new ().

  • Incolla le immagini utilizzando la funzione paste ().

  • Salvare e visualizzare l'immagine risultante utilizzando le funzioni save () e show ().

Esempio

L'esempio seguente mostra l'unione di due immagini usando il cuscino in pitone:

from PIL import Image
#Read the two images
image1 = Image.open('images/elephant.jpg')
image1.show()
image2 = Image.open('images/ladakh.jpg')
image2.show()
#resize, first image
image1 = image1.resize((426, 240))
image1_size = image1.size
image2_size = image2.size
new_image = Image.new('RGB',(2*image1_size[0], image1_size[1]), (250,250,250))
new_image.paste(image1,(0,0))
new_image.paste(image2,(image1_size[0],0))
new_image.save("images/merged_image.jpg","JPEG")
new_image.show()

Produzione

Se salvi il programma sopra come Example.py ed esegui, mostra le due immagini di input e l'immagine unita utilizzando l'utilità di visualizzazione PNG standard, come segue:

Input image1

Input image2

Merged image