python:图片拼接

一:尺寸相同的图片拼接

import os
from PIL import Image

width_i = 200
height_i = 200

row_max = 3
line_max = 3

all_path = list()
num = 0
pic_max = line_max * row_max

dir_name = r"C:\Users\Administrator\Desktop\demopic"

# root文件夹的路径  dirs 路径下的文件夹列表  files路径下的文件列表
for root, dirs, files in os.walk(dir_name):
    for file in files:
        if "jpg" in file:  # 子串在母串里面不
            all_path.append(os.path.join(root,file))

# all_path获取每张图片的绝对路径

toImage = Image.new('RGBA',(width_i*line_max,height_i*row_max))


for i in range(row_max):
    for j in range(line_max):
        # 每次打开图片绝对路路径列表的第一张图片
        pic_fole_head = Image.open(all_path[num])
        # 获取图片的尺寸
        wihth,height = pic_fole_head.size
        # 按照指定的尺寸,给图片重新赋值,<PIL.Image.Image image mode=RGB size=200x200 at 0x127B7978>
        tmppic = pic_fole_head.resize((width_i, height_i))
        # 计算每个图片的左上角的坐标点(0, 0),(0, 200),(0, 400),(200, 0),(200, 200)。。。。(400, 400)
        loc = (int(i % line_max * width_i), int(j % line_max * height_i))
        print("第{}张图的存放位置".format(num),loc)
        toImage.paste(tmppic, loc)
        num = num + 1

        if num >= len(all_path):
            print("breadk")
            break
    if num >= pic_max:
        break

print(toImage.size)
toImage.save('merged.png')
 
    

 二:尺寸不相同的图片进行拼接

例如:将这种图,拼接成一幅完整的图

 

posted on 2019-09-28 21:38  张京墨 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/meloncodezhang/p/11604764.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值