首頁  >  文章  >  後端開發  >  如何使用 Pillow 在 Python 中水平連接多個映像?

如何使用 Pillow 在 Python 中水平連接多個映像?

Linda Hamilton
Linda Hamilton原創
2024-10-25 02:06:30728瀏覽

How to Concatenate Multiple Images Horizontally in Python Using Pillow?

使用 Python 水平連接影像

水平組合多個影像是影像處理中常見的任務。 Python 提供了強大的工具來使用 Pillow 函式庫來實現此目的。

問題描述

考慮三個尺寸為 148 x 95 的方形 JPEG 影像。目標是水平連接這些影像影像,同時避免結果輸出中出現任何部分影像。

建議的解決方案

以下程式碼片段解決了問題:

<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>

此程式碼迭代輸入影像,確定它們的尺寸。它創建一個具有所有圖像的總寬度和最大高度的新圖像。每個輸入影像都是水平貼上的,它們的位置也會相應更新。

其他注意事項

  • 程式碼透過動態計算影像尺寸來避免硬編碼影像尺寸。
  • 透過在一行中指定尺寸,可以輕鬆調整它們。
  • 提供的範例連接三個影像,但程式碼可用於任意數量的影像。

以上是如何使用 Pillow 在 Python 中水平連接多個映像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn