python实现20张图片拼接成一张大图
时间: 2023-11-15 11:05:15 浏览: 189
以下是Python代码,可以将20张图片拼接成一张大图:
```python
from PIL import Image
# 设置每行每列显示图片的数量
row = 4
column = 5
# 打开所有图片并获取宽度和高度
imgs = []
widths = []
heights = []
for i in range(row * column):
img = Image.open(f"{i+1}.jpg")
imgs.append(img)
widths.append(img.width)
heights.append(img.height)
# 计算生成的大图的宽度和高度
total_width = sum(widths)
max_height = max(heights) * row
# 生成空白图片
result = Image.new("RGB", (total_width, max_height))
# 拼接图片
x_offset = 0
y_offset = 0
for i in range(row * column):
result.paste(imgs[i], (x_offset, y_offset))
x_offset += widths[i]
if x_offset == total_width:
x_offset = 0
y_offset += max(heights)
# 保存拼接后的图片
result.save("result.jpg")
```
需要将所有图片命名为1.jpg、2.jpg、3.jpg等,放在同一目录下,然后执行以上代码即可生成一张拼接后的大图result.jpg。可以根据需要调整每行每列显示图片的数量。
阅读全文