如何在Python中水平組合影像而不需要部分分割?

Barbara Streisand
發布: 2024-10-25 16:32:42
原創
944 人瀏覽過

How to Combine Images Horizontally in Python Without Partial Segments?

在Python 中水平組合影像

為了水平組合多個JPEG 影像,您可能會遇到一些挑戰,例如輸出中出現額外的部分圖像。這是解決此問題的解決方案。

問題:

您有三個 148 x 95 像素圖像,並且您希望水平組合它們,而不需要任何不需要的額外片段。

解:

  1. 計算尺寸:

    • 計算尺寸:
    取得寬度和高度使用zip 函數將所有圖像作為元組列表。
  2. 透過對寬度求和來決定總寬度,透過尋找最大高度來確定最大高度。

    • 建立新影像:
  3. 使用 Image.new 方法使用步驟 1 中計算的尺寸建立新影像。

    • 貼上影像:
    • 將 x 座標偏移初始化為 0。
    迭代原始列表中的每個影像。
將目前影像貼到新影像的偏移處,並將偏移量設定為目前影像的寬度。

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

images = [Image.open(x) for x in ['Test1.jpg', 'Test2.jpg', 'Test3.jpg']]
widths, heights = zip(*(i.size for i in images))

total_width = sum(widths)
max_height = max(heights)

new_im = Image.new('RGB', (total_width, max_height))

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

new_im.save('test.jpg')</code>
登入後複製

使用此修改後的程式碼:將產生所需的水平組合影像,沒有任何部分片段。

以上是如何在Python中水平組合影像而不需要部分分割?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!