Python 合并多张图片至一张图片
PDF 有多页,一次性转成JPG 图片,JAVA 报内存溢出,
现改为,每一页存成一张图片,然后再将多张图片合成一张图片。
安装库
pip3 install Image -i https://pypi.tuna.tsinghua.edu.cn/simple
cv2.imread()不支持中文路径, 如果有中文读出来会是 None
如报:Expected Ptrcv::UMat for argument 'img' 内存溢出,图片太多或太大
# coding=utf-8
from PIL import Image
import cv2
import numpy as np
def merge(img_array, direction="horizontal", gap=0):
img_array = [Image.fromarray(img) for img in img_array]
w, h = img_array[0].size
if direction == "horizontal":
result = Image.new(img_array[0].mode, ((w + gap) * len(img_array) - gap, h))
for i, img in enumerate(img_array):
result.paste(img, box=((w + gap) * i, 0))
elif direction == "vertical":
result = Image.new(img_array[0].mode, (w, (h + gap) * len(img_array) - gap))
for i, img in enumerate(img_array):
result.paste(img, box=(0, (h + gap) * i))
else:
raise ValueError("The direction parameter has only two options: horizontal and vertical")
return np.array(result)
if __name__ == '__main__':
img_list = []
for i in range(0, 10):
img = cv2.imread("D:\\Users\\Pictures\\4\\%s.PNG" % (i + 1))
img_list.append(img)
img = merge(img_list, "vertical")
cv2.imwrite("MergeImage.png", img)
源图

合并后的图

Python 合并多张图片至一张图片的更多相关文章
- python合并多个txt文件
python合并多个txt文件 #合并一个文件夹下的多个txt文件 #coding=utf-8 import os #获取目标文件夹的路径 filedir = os.getcwd()+'\\数据' # ...
- 使用CSS3中Canvas 实现两张图片合成一张图片【常用于合成二维码图片】
CSS3 Canvas 实现两张图片合成一张图片 需求 需求:在项目中遇到将一张固定图片和一张二维码图片合成一张新图片,并且用户能够将图片保存下载到本地. 思路:使用 CSS3 中的 Canvas 将 ...
- python合并多个excel
前言 1.工作中,经常需要合并多个Excel文件.如果文件数量比较多,则工作量大,易出错,此时,可以使用Python来快速的完成合并. 2.使用方法:将需要合并的多个Excel文件放到同一个文件夹下, ...
- Python合并多个Excel数据
安装模块 1.找到对应的模块 http://www.python-excel.org/ 2.用pip install 安装 pip install xlrdpip install XlsxWrite ...
- iOS把两张图片合成一张图片
0x00 步骤 先读取两张图片把创建出CGImageRef 创建上下文画布 把图片依次画在画布指定位置上 从上下文中获得合并后的图片 关闭上下文 释放内存 0x01 代码实现 - (void)comp ...
- c# 多张图片合成一张图片
using System; using System.Collections.Generic; using System.Drawing; using System.IO; using System. ...
- 利用python合并两个文件
1格式如下 在做利用zabbix的api来批量添加主机的时候,需要处理ip和hostname,在借用别人写的py程序的基础上,自己有改装了以下脚本,为自己使用.需要时ip和hostname为一个统一格 ...
- Python合并两个numpy矩阵
numpy是Python用来科学计算的一个非常重要的库,numpy主要用来处理一些矩阵对象,可以说numpy让Python有了Matlab的味道. 实际的应用中,矩阵的合并是一个经常发生的操作,如何利 ...
- python合并图片
因项目需求需要将图片合并故写了一个python脚本,在这里放个笔记 #!/usr/bin/env python #coding=utf-8 import Image import os import ...
- 用python合并N个不同字符集编码的sql文件的实践
背景:我有一项工作任务是将svn某文件夹日常更新的sql文件(归类到日期命名的文件夹中)拿到数据库中运行. 一開始,我是先把sql文件update下来,用notepad++打开,拷贝每个文本的sql语 ...
随机推荐
- 我整理了一份Flink流计算入门教程清单(转)
好久不见! 作为技术出身的我,不太会写软文广告,今天就直接来个硬广.之前与人民邮电出版社合作的<Flink原理与实践>经过一年多时间的打磨和润色,这两天终于与大家见面了,恳请各位朋友多多支 ...
- 深入理解maven构建生命周期和各种plugin插件(转)
https://blog.csdn.net/zhaojianting/article/details/80321488 本博文不会长篇大论的讨论生命周期的概念,而是从各种plugin的实际功能和应用出 ...
- 【Unity】 ScriptableObject ——生成多个ScriptableObject作为子对象,可以点击展开并显示二级菜单
官方是这么介绍ScriptabelObject的: "ScriptableObject 是一个可独立于类实例来保存大量数据的数据容器.ScriptableObject 的一个主要用例是通过避 ...
- 为什么FPGA中推荐使用独热码?
独热码只有一个比特位不同,所以在进行比较的时候: 假如我们要判断状态机是否处于某状态S1,代码如下 格雷码:assign S1 = (STATUS == 2'b01) 二进制码:assign S1 = ...
- js判断字符串数据类型
mounted() { this.isJSON('{"key":1232,"a":2},{"key":1232,"a": ...
- 用友U8+与百胜E3的数据对接:实现企业数字化业务的集成与协作
用友U8+作为中国企业最佳经营管理平台之一,在企业经营管理中广泛应用.然而,由于每个企业的内部管理方式和流程各不相同,标准软件功能难以完全适应所有企业的管理需求.同时,随着互联网和移动应用的发展,对于 ...
- 老是听到做PPT要会“内容可视化”,到底啥是内容可视化?
在PPT中,内容可视化是指将文字.数据和概念等抽象信息转化为图像.图表.图表及其他可视化元素来呈现.通过合适的颜色.形状.大小和布局等视觉设计元素来强调信息的关键点和关系, 从而提高观众对信息的理解和 ...
- 山海鲸Cesium:用更简单的方式升级视效
CesiumJS作为绝大多数人都在用的开源地球可视化引擎,视觉效果并不拔尖,这让很多giser都想着有一天升级一下视效,从众多平庸的项目中脱颖而出.然而,对于一些使用Cesium的项目来说,要想达到C ...
- IPTV SQM的项目总结
本文于2015年底完成,发布在个人博客网站上,标题为<项目总结--纪念我参与过的IPTV SQM项目>. 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来. 时 ...
- Windows下使用图形化的Havoc C2
Windows下使用图形化的Havoc C2 前言 这几天用goland去连虚拟机去coding真的心累,想着搞个wsl算了虽然测试又变麻烦了(wsl2和VMware一起开有问题,可能保存不了快照), ...