python PIL图片拼接

        w_num = 5
        h_num = int(len(imgs)/w_num) + 1
        UNIT_SIZE = 200 # 一张图的大小是200*200
        target_shape = (w_num * (UNIT_SIZE + 10), h_num * (UNIT_SIZE + 10)) # shape[0]表示横坐标,shape[1]表示纵坐标
        target = Image.new('RGB', target_shape)
        width = 0
        print(target_shape)
        for img in imgs:
            x, y = int(width%target_shape[0]), int(width/target_shape[0])*(UNIT_SIZE+10) # 左上角坐标,从左到右递增
            target.paste(Image.open(osp.join(task, img)).resize((UNIT_SIZE, UNIT_SIZE)), (x, y, x+UNIT_SIZE, y+UNIT_SIZE))
            width += (UNIT_SIZE+10)
        target.save(osp.join('of_vis', task.split('/')[-1]+'.jpg'))

以上是从一个小项目摘下来的python PIL图片拼接代码,实现的功能是将若干张图片拼接到一张大图,该图固定5列,图片之间加了10个像素点的间隔。

PIL Image的shape中第一个坐标表示宽度,第二个坐标表示高度。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值