Python 把图片横向/纵向拼接

本文详细介绍了使用Python的NumPy库和PIL库进行图片拼接的方法,包括两张图片的纵向和横向拼接,以及多张图片的拼接技巧。通过实例代码展示了如何将多张图片按指定方向进行合并。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

两张图片拼接

import numpy as np
from PIL import Image


img = Image.open('test.jpg') # 打开图片
im = np.array(img) # 转化为ndarray对象

im1 = np.concatenate((im, im), axis = 0) # 纵向拼接
im2 = np.concatenate((im, im), axis = 1) # 横向拼接

# 生成图片
img1 = Image.fromarray(im1)
img2 = Image.fromarray(im2)

# 保存图片
img1.save('test1.jpg')
img2.save('test2.jpg')

多张图片拼接

import numpy as np

from PIL import Image

paths = ['./1.jpg', './2.jpg', './3.jpg', './4.jpg']
img_array = ''
img = ''
for i, v in enumerate(paths):
    if i == 0:
        img = Image.open(v)  # 打开图片
        img_array = np.array(img)  # 转化为np array对象
    if i > 0:
        img_array2 = np.array(Image.open(v))
        img_array = np.concatenate((img_array, img_array2), axis=1)  # 横向拼接
        # img_array = np.concatenate((img_array, img_array2), axis=0)  # 纵向拼接
        img = Image.fromarray(img_array)



# 保存图片
img.save('test.jpg')

OK.

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值