首页 > 编程语言 >python 多张图片合并

python 多张图片合并

时间:2024-08-27 16:54:31浏览次数:10  
标签:python Image IMAGE 合并 names IMAGES 图片 image SIZE

有一堆雷达图,想放到一张图上展示

#!usr/bin/env python
# -*- coding:utf-8 -*-
"""
@author: Suyue
@file: piccon.py
@time: 2024/08/27
@desc:
"""
import os

import PIL.Image as Image

IMAGES_PATH = r'F:/picture//'  # 图片集地址
IMAGES_FORMAT = ['.png']  # 图片格式
IMAGE_SIZE = 256  # 每张小图片的大小
IMAGE_ROW = 2  # 图片间隔,也就是合并成一张图后,一共有几行
IMAGE_COLUMN = 5  # 图片间隔,也就是合并成一张图后,一共有几列
IMAGE_SAVE_PATH = r'F:/picture/final.jpg'  # 图片转换后的地址

# 获取图片集地址下的所有图片名称
image_names = [name for name in os.listdir(IMAGES_PATH) for item in IMAGES_FORMAT if
               os.path.splitext(name)[1] == item]

print("image_names", image_names)
# 简单的对于参数的设定和实际图片集的大小进行数量判断
if len(image_names) != IMAGE_ROW * IMAGE_COLUMN:
    raise ValueError("合成图片的参数和要求的数量不能匹配!")


# 定义图像拼接函数
def image_compose():
    to_image = Image.new('RGB', (IMAGE_COLUMN * IMAGE_SIZE, IMAGE_ROW * IMAGE_SIZE))  # 创建一个新图
    # 循环遍历,把每张图片按顺序粘贴到对应位置上
    for y in range(1, IMAGE_ROW + 1):
        for x in range(1, IMAGE_COLUMN + 1):
            from_image = Image.open(IMAGES_PATH + image_names[IMAGE_COLUMN * (y - 1) + x - 1]).resize(
                (IMAGE_SIZE, IMAGE_SIZE), Image.LANCZOS)
            to_image.paste(from_image, ((x - 1) * IMAGE_SIZE, (y - 1) * IMAGE_SIZE))
    return to_image.save(IMAGE_SAVE_PATH)  # 保存新图


image_compose()  # 调用函数

 

标签:python,Image,IMAGE,合并,names,IMAGES,图片,image,SIZE
From: https://www.cnblogs.com/shirleysu90/p/18383049

相关文章

  • 基于python的保险业务数据可视化分析系统【python-爬虫-大数据定制】
    精彩专栏推荐订阅:在下方专栏......
  • 用Python实现时间序列模型实战——Day1:时间序列的基本概念
    一、学习内容1.时间序列数据的定义与特点定义:时间序列数据是一组按时间顺序排列的观测值。时间序列的每个观测值都与特定时间点相关联。例如,气温每天的记录、股票每日的收盘价等。特点:时间依赖性:时间序列数据的一个基本特点是当前数据点可能依赖于之前的一个或多个数据点......
  • 将Python脚本打包为exe
    将Python脚本打包为exe一、背景想要在没有Python环境的PC上面跑Python脚本,想要在没有pycharm环境下将Python打包为exe文件。二、步骤1、安装pyinstallerpipinstallpyinstaller注:可能需要魔法。2、打包命令pyinstaller-F-wxxx.py注:参数定义-h该模块的help信......
  • quill-editor 富文本 组件封装并实现自定义上传图片
    基于quill-editor封装一个富文本组件,并实现自定义上传图片以及视频1.下载quill-editor npminstallvue-quill-editor--save2.对插件进行自定义改造(自定义字体大小选择,自定义标题,以及自定义工具栏功能) <template><divclass="edtior-box"><quill-editor......
  • [开题]flask框架信息安全知识学习微信小程序10fhc(程序+论文+python)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在数字化时代,信息安全已成为社会经济发展的重要基石。随着移动互联网的普及,微信小程序作为一种轻量级的应用形态,迅速渗透到人们的日常生活......
  • [开题]flask框架医院挂号系统8n66p9(程序+论文+python)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着医疗需求的日益增长,医院挂号系统作为患者就医的第一道门槛,其效率与便捷性直接影响到患者的就医体验和医院的运营效率。传统的人工挂号......
  • [开题]flask框架医院门诊预约挂号系统aj4p09(程序+论文+python)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着医疗需求的持续增长和患者就医意识的提升,传统的医院门诊挂号方式已难以满足患者高效、便捷的就医需求。患者往往需要提前到医院排队等......
  • [开题]flask框架医院设备管理系统1704r9(程序+论文+python)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着医疗技术的飞速发展,医院设备日益增多且种类繁杂,传统的设备管理方式已难以满足现代医院高效运营的需求。设备管理涉及设备采购、领用、......
  • 【Python安全】demo1:模拟木马传播行为(谨慎使用)
    原创蓝胖子之家代码主要功能是将自身复制到系统目录,并将其写入注册表以实现开机启动。它还设置了一个定时器,用于定期执行一些操作。该程序还监听设备的插拔事件,并在可移动驱动器插入时将自身复制到驱动器上。具体来说,代码中的kill_process函数用于终止指定名称的进程。wnd_pr......
  • python如何进行sha1withrsa
    呜呜被坑了。`importbase64fromCrypto.HashimportSHA1fromCrypto.PublicKeyimportRSAfromCrypto.SignatureimportPKCS1_v1_5defget_sign():private_key='''MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBALt0f8OlkIYt8R3BjGzQ5z+lNAPvdog/......