首頁  >  文章  >  後端開發  >  以下是一些基於問題的標題,它們抓住了文章的精髓: **一般的:** * **如何在 Python 中水平組合圖片:逐步指南** * **在 Pytho 中連接影像

以下是一些基於問題的標題,它們抓住了文章的精髓: **一般的:** * **如何在 Python 中水平組合圖片:逐步指南** * **在 Pytho 中連接影像

DDD
DDD原創
2024-10-26 00:24:02404瀏覽

Here are a few question-based titles that capture the essence of your article:

**General:**

* **How to Combine Images Horizontally in Python: A Step-by-Step Guide**
* **Concatenating Images in Python: A Comparative Analysis of Methods**
* **Seamless Ima

使用Python水平組合影像

Python提供了強大的影像處理能力,包括水平組合多個影像的選項。本文解決了嘗試連接三個 JPEG 影像時面臨的挑戰,確保正確對齊和無縫過渡。

問題概述

目標是水平連接三個影像,每個尺寸為 148 x 95 像素。所需的輸出是一個影像,其中三個子影像無縫合併。

初始嘗試

初始方法使用 for 循環中的嵌套循環,並且Image.paste() 方法將每個圖像貼到新建立的畫布中。然而,這導致部分影像在輸出中可見。

實作修訂後的解決方案

為了修正這個問題,開發了更有效的方法,利用圖片.open() 和Image.size()方法取得影像尺寸並動態調整新影像大小。程式碼如下:

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

結果

修改後的解決方案成功水平組合影像,產生預期的輸出:

Test1.jpg                        Test2.jpg                        Test3.jpg
──────▄▄██▀▀▀▀▄──────────▄▄██▀▀▀▀▄──────────▄▄██▀▀▀▀▄
─────█▒▒░██▄▒▒▒█───────█▒▒░█████▒█───────█▒▒░█████▒█
───▄████▒▒████▒▒██▄──▄████▒▒████▒▒██▄──▄████▒▒████▒▒██▄
───██▒▒▒█▒▒▒█▒▒▒█▒▒██─██▒▒▒█▒▒▒█▒▒▒█▒▒██─██▒▒▒█▒▒▒█▒▒▒█▒▒██
──██▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒██─██▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒██─██▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒██
─██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒█─
██▒▒▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒▒██
██▒▒▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒▒██
─██▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒████▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒████▒▒▒▒▒▒▒█▒▒▒▒▒█▒▒▒▒▒▒█─
───██▒▒▒█▒▒▒█▒▒▒█▒▒█████▒▒▒█▒▒▒█▒▒▒█▒▒█████▒▒▒█▒▒▒█▒▒▒█▒▒▒█▒▒▒█▒▒▒█───
───▄████▒▒▒█▒▒▒█▒▒▒█████▒▒█████▒▒▒█▒▒▒█████▒▒█████▒▒▒█▒▒▒█▒▒▒█▒▒████▄───
─────█▒▒▒████▒█▒▒▒▒▒▒████▒▒▒████▒▒█▒▒▒▒▒▒████▒▒▒████▒▒████▒▒▒▒▒█▒▒▒█─────
─────────▐▒▒▒█▒▒▒▒▒▒▒▒▒▒▒▒█▒▒▒▒▒▒▒█▒▒▒▒▒▒▒▒▒▒▒▒▒█▒▒▒▒▒▒▒█▒▒▒▒▒▒▒█──────────
──────────▀▒▒█▒▒▒▒▒▒▒▒▒▒▒▒▒█▒▒▒▒▒▒▒█▒▒▒▒▒▒▒▒▒▒▒▒▒█▒▒▒▒▒▒▒█▒▒▒▒▒▒▒█───────────

這種改進的解決方案有效地連接了三張影像,避免了額外顯示部分影像的問題。它提供了一種動態且可自訂的方式來水平合併多個影像,使其適合通用影像處理任務。

以上是以下是一些基於問題的標題,它們抓住了文章的精髓: **一般的:** * **如何在 Python 中水平組合圖片:逐步指南** * **在 Pytho 中連接影像的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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