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')

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

例如:将这种图,拼接成一幅完整的图
python:图片拼接的更多相关文章
- python图片拼接
python图片拼接 这两天看到一张图片,想用python来实现类似的图片拼接 先分析图片: 很明显,这张图片是由多张图片叠加拼接而成 从最后一张开始开始叠加,之后的每张图片都往上平移了一个固定的距 ...
- python实现单张图像拼接与批量图片拼接
本文实例为大家分享了python实现图像拼接的具体代码,供大家参考,具体内容如下 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经 ...
- Python 实现auto linlink 连连看
先上知乎上大神所写: 你看过/写过哪些有意思的代码? 然后别急着看blog,玩一把游戏再说! 看知乎评论,有人说他用了一个下午时间就写出来了. wo kao!!! 我断断续续写了一周的下午才搞定,然后 ...
- python图片云
Python 小工具 把图片拼接成任意大小新图片 代码比较简单 看注释就好 # -*- coding:utf-8 -*- #图片拼接 import PIL.Image as Image import ...
- Python pillow库
由于pillow库功能很强大本文章主要介绍pillow的Image模块 关于Pillow与PIL PIL(Python Imaging Library)是Python一个强大方便的图像处理库,名气也比 ...
- 基于OpenCV全景拼接(Python)SIFT/SURF
一.实验内容: 利用sift算法,实现全景拼接算法,将给定的两幅图片拼接为一幅. 二.实验环境: 主机配置: CPU :intel core i5-7300 2.50GHZ RAM :8.0GB 运行 ...
- Python中的多进程与多线程(一)
一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python 小而美的函数
python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况 any any(iterable) ...
随机推荐
- C++ Primer 第四版阅读笔记
阅读笔记 初始化 变量定义指定了变量的类型和标识符,也可以为对象提供初始值.定义时指定了初始值的对象被称为是 已初始化的.C++ 支持两种初始化变量的形式:复制初始化和 直接初始化.复制初始化语法用等 ...
- rich-text 副文本组件 text文本组件
rich-text 副文本组件 要知道我们小程序常用的标签是view 但是我们想使用div span h1 i 标签等等,这种带特性的标签,怎么办的,我们就可以使用我们的 rich-text组件 ...
- React Native商城项目实战10 - 个人中心中间内容设置
1.新建一个MineMiddleView.js,专门用于构建中间的内容 /** * 个人中心中间内容设置 */ import React, { Component } from 'react'; im ...
- DAY 3 上午
状压DP 状态压缩dp 状态压缩是设计dp状态的一种方式. 当普通的dp状态维数很多(或者说维数与输入数据有关),但每一维总量很少时,可以将多维状态压缩为一维来记录. 这种题目最明显的特征就是:都存在 ...
- 职位-CHO:CHO
ylbtech-职位-CHO:CHO 首席人力资源官(Chief Human Resource Officer),简称CHO.是具有制定集团化经营的公司人力资源的战略规划,并监督执行,负责建立畅通的沟 ...
- MySQL-default设置
Both statements insert a value into the phone column, but the first inserts a NULL value and the sec ...
- centos输入正确的账号和密码登陆不进去
vm下启动centos,输入正确的账号和密码,依然登陆不进去,一直处于这个界面: 暂时的解决方法是:先等待一段时间.重启,然后再输入密码,然后,ctrl+c 不停地ctrl+c,然后就登陆进去了.什么 ...
- Delphi XE2 之 FireMonkey 入门(12) - 动画(上)
在 HD 窗体上添加一个 TAniIndicator, 修改其 Enabled 属性为 True, 动画完成了. 这是最简单的动画相关的控件了, 只有两个值得注意的属性: Enabled: Boole ...
- 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第4节 ArrayList集合_15-ArrayList集合存储基本数据
泛型必须是引用类型,不能是基本类型 里面的泛型用int就会报错 集合里面保存的都是地址值.基本类型的数据没有地址值,所以你想要往里面存int是不可以的 基本类型可以往ArrayList里面放,但是必须 ...
- B-/B+树 MySQL索引结构
索引 索引的简介 简单来说,索引是一种数据结构 其目的在于提高查询效率 可以简单理解为“排好序的快速查找结构” 一般来说,索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储在中磁 ...