python实现图像拼接功能


Posted in Python onMarch 23, 2020

利用Python将Market1501的分割图片和原图两张图片进行拼接成一左一右一张图片,并将图片的像素值调整成256*128.
所有文件夹:

python实现图像拼接功能

文件夹下的所有原图: 

python实现图像拼接功能

文件夹下的所有的分割图片:

python实现图像拼接功能

代码如下:

import PIL.Image as Image
import os
 
IMAGES_PATH = 'E:/gyx/Learning/Practice/4/data/market1501_seg_1/test/ori_img/' # 原图片集地址
IMAGES_PATH_1 = 'E:/gyx/Learning/Practice/4/data/market1501_seg_1/test/seg_img/' #分割图片集地址
IMAGE_SAVE_PATH = 'E:/gyx/Learning/Practice/4/data/market1501_seg_1/test/new/' #保存新图片地址
IMAGES_FORMAT = ['.jpg', '.JPG'] # 图片格式
list_n = []
w = 256 # 每张小图片的大小
h = 128
 
# 获取图片集地址下的所有图片名称
image_names = [name for name in os.listdir(IMAGES_PATH) for item in IMAGES_FORMAT if
 os.path.splitext(name)[1] == item]
 
image_names_1 = [name for name in os.listdir(IMAGES_PATH_1) for item in IMAGES_FORMAT if
 os.path.splitext(name)[1] == item]
 
# 定义图像拼接函数
def image_compose(imag,imag_1):
 src = os.path.join(os.path.abspath(IMAGE_SAVE_PATH), img)
 to_image = Image.new('RGB', (2 * h, 1 * w)) # 创建一个新图
 # 把两张图片按顺序粘贴到对应位置上
 rom_image = Image.open(IMAGES_PATH + imag).resize((h,w), Image.ANTIALIAS)
 rom_image_1 = Image.open(IMAGES_PATH_1 + imag_1).resize((h, w), Image.ANTIALIAS)
 to_image.paste(rom_image,(0,0))
 to_image.paste(rom_image_1,(h,0))
 to_image.save(src) # 保存新图,还是原来的名称
 
#文件名相同就调用拼接函数
for img in image_names:
 for img_1 in image_names_1:
 if img == img_1:
 image_compose(img,img_1)

单独图片的拼接效果:

python实现图像拼接功能

新文件夹new下图片的效果:

python实现图像拼接功能

本文已被收录到专题《python图片处理操作》 ,欢迎大家点击学习更多精彩内容。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Perl中著名的Schwartzian转换问题解决实现
Jun 02 Python
Python语言的面相对象编程方式初步学习
Mar 12 Python
Python+微信接口实现运维报警
Aug 27 Python
使用Python的turtle模块画图的方法
Nov 15 Python
PyCharm代码格式调整方法
May 23 Python
Python中的单行、多行、中文注释方法
Jul 19 Python
Python使用Pandas库实现MySQL数据库的读写
Jul 06 Python
Python:二维列表下标互换方式(矩阵转置)
Dec 02 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
Mar 11 Python
10个python3常用排序算法详细说明与实例(快速排序,冒泡排序,桶排序,基数排序,堆排序,希尔排序,归并排序,计数排序)
Mar 17 Python
Python用摘要算法生成token及检验token的示例代码
Dec 01 Python
pytorch中的model=model.to(device)使用说明
May 24 Python
Python猴子补丁Monkey Patch用法实例解析
Mar 23 #Python
Python面向对象程序设计之静态方法、类方法、属性方法原理与用法分析
Mar 23 #Python
Python3 pickle对象串行化代码实例解析
Mar 23 #Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
Mar 23 #Python
Python3 shelve对象持久存储原理详解
Mar 23 #Python
python新式类和经典类的区别实例分析
Mar 23 #Python
Python count函数使用方法实例解析
Mar 23 #Python
You might like
PHP 身份验证方面的函数
2009/10/11 PHP
php将12小时制转换成24小时制的方法
2015/03/31 PHP
php递归删除指定文件夹的方法小结
2015/04/20 PHP
php格式文件打开的四种方法
2018/02/24 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
2018/06/13 PHP
在php的yii2框架中整合hbase库的方法
2018/09/20 PHP
按钮JS复制文本框和表格的代码
2011/04/01 Javascript
nodejs入门详解(多篇文章结合)
2012/03/07 NodeJs
JQuery实现点击div以外的位置隐藏该div窗口
2013/09/13 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
原生js制作简单的数字键盘
2015/04/24 Javascript
jQuery事件_动力节点Java学院整理
2017/07/05 jQuery
微信小程序使用audio组件播放音乐功能示例【附源码下载】
2017/12/08 Javascript
Webpack之tree-starking 解析
2018/09/11 Javascript
Python CSV模块使用实例
2015/04/09 Python
分分钟入门python语言
2018/03/20 Python
对Python多线程读写文件加锁的实例详解
2019/01/14 Python
Python基础之循环语句用法示例【for、while循环】
2019/03/23 Python
Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
2019/08/05 Python
python爬虫之遍历单个域名
2019/11/20 Python
python错误调试及单元文档测试过程解析
2019/12/19 Python
django 扩展user用户字段inlines方式
2020/03/30 Python
解决pycharm中的run和debug失效无法点击运行
2020/06/09 Python
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
HTML5新增加标签和功能概述
2016/09/05 HTML / CSS
捷克建筑材料网上商店:DEK.cz
2021/03/06 全球购物
幼儿园教师师德师风演讲稿:我自豪我是一名幼师
2014/09/10 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
工作疏忽检讨书500字
2014/10/26 职场文书
伏羲庙导游词
2015/02/09 职场文书
教师个人总结范文
2015/02/11 职场文书
商场圣诞节活动总结
2015/05/06 职场文书
欠条样本
2015/07/03 职场文书
关于Javascript闭包与应用的详解
2021/04/22 Javascript
如何使用PostgreSQL进行中文全文检索
2021/05/27 PostgreSQL
Python中的np.argmin()和np.argmax()函数用法
2021/06/02 Python