Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menggabungkan Pelbagai Imej Secara Mendatar dalam Python Menggunakan Bantal?

Bagaimana untuk Menggabungkan Pelbagai Imej Secara Mendatar dalam Python Menggunakan Bantal?

Linda Hamilton
Linda Hamiltonasal
2024-10-25 02:06:30728semak imbas

How to Concatenate Multiple Images Horizontally in Python Using Pillow?

Menggabungkan Imej Secara Mendatar dengan Python

Menggabungkan berbilang imej secara mendatar ialah tugas biasa dalam pemprosesan imej. Python menawarkan alatan berkuasa untuk mencapai ini menggunakan perpustakaan Bantal.

Penerangan Masalah

Pertimbangkan tiga imej JPEG segi empat sama berdimensi 148 x 95. Matlamatnya adalah untuk menggabungkan ini secara mendatar imej sambil mengelakkan sebarang imej separa dalam output yang terhasil.

Penyelesaian Cadangan

Coretan kod berikut menangani masalah:

<code class="python">import sys
from PIL import Image

# Get the images
images = [Image.open(x) for x in ['Test1.jpg', 'Test2.jpg', 'Test3.jpg']]

# Determine the total width and height
widths, heights = zip(*(i.size for i in images))
total_width = sum(widths)
max_height = max(heights)

# Create a new, empty image
new_im = Image.new('RGB', (total_width, max_height))

# Paste the images horizontally
x_offset = 0
for im in images:
    new_im.paste(im, (x_offset, 0))
    x_offset += im.size[0]

# Save the output image
new_im.save('test.jpg')</code>

Kod ini berulang ke atas imej input, menentukan dimensinya. Ia mencipta imej baharu dengan jumlah lebar dan ketinggian maksimum semua imej. Setiap imej input ditampal secara mendatar dan kedudukannya dikemas kini dengan sewajarnya.

Pertimbangan Tambahan

  • Kod mengelakkan dimensi imej pengekodan keras dengan mengiranya secara dinamik.
  • Dengan menyatakan dimensi dalam satu baris, ia boleh dilaraskan dengan mudah.
  • Contoh yang disediakan menggabungkan tiga imej, tetapi kod itu boleh digunakan untuk sebarang bilangan imej.

Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Pelbagai Imej Secara Mendatar dalam Python Menggunakan Bantal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn