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

Linda Hamilton
Lepaskan: 2024-10-25 02:06:30
asal
744 orang telah melayarinya

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!