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 相关文章推荐
python从ftp下载数据保存实例
Nov 20 Python
python实现判断数组是否包含指定元素的方法
Jul 15 Python
Python2.X/Python3.X中urllib库区别讲解
Dec 19 Python
如何通过python画loss曲线的方法
Jun 26 Python
对python中的装包与解包实例详解
Aug 24 Python
使用Python将字符串转换为格式化的日期时间字符串
Sep 01 Python
python3 mmh3安装及使用方法
Oct 09 Python
wxPython实现列表增删改查功能
Nov 19 Python
5款实用的python 工具推荐
Oct 13 Python
教你用python控制安卓手机
May 13 Python
聊一聊python常用的编程模块
May 14 Python
手把手教你实现PyTorch的MNIST数据集
Jun 28 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集成FCK的函数代码
2008/09/27 PHP
解析centos中Apache、php、mysql 默认安装路径
2013/06/25 PHP
采用memcache在web集群中实现session的同步会话
2014/07/05 PHP
php根据指定位置和长度获得子字符串的方法
2015/03/17 PHP
php获取远程文件内容的函数
2015/11/02 PHP
php实现图片上传并利用ImageMagick生成缩略图
2016/03/14 PHP
JS返回上一页实例代码通过图片和按钮分别实现
2013/08/16 Javascript
JS中实现replaceAll的方法(实例代码)
2013/11/12 Javascript
理运用命名空间让js不产生冲突避免全局变量的泛滥
2014/06/15 Javascript
JavaScript AJAX之惰性载入函数
2014/08/27 Javascript
js实现Select头像选择实时预览代码
2015/08/17 Javascript
七个不允许错过的jQuery小技巧
2015/12/21 Javascript
Bootstrap基本模板的使用和理解1
2016/12/14 Javascript
Vue常用指令V-model用法
2017/03/08 Javascript
BootStrap Table前台和后台分页对JSON格式的要求
2017/06/28 Javascript
基于ajax和jsonp的原生封装(实例)
2017/10/16 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
2018/09/14 Javascript
解决vue单页面修改样式无法覆盖问题
2019/08/05 Javascript
vue使用showdown并实现代码区域高亮的示例代码
2019/10/17 Javascript
JS实现扫码枪扫描二维码功能
2020/01/03 Javascript
如何实现iframe父子传参通信
2020/02/05 Javascript
javascript 使用sleep函数的常见方法详解
2020/04/26 Javascript
微信小程序实现弹幕墙(祝福墙)
2020/11/18 Javascript
TensorFlow平台下Python实现神经网络
2018/03/10 Python
python获取array中指定元素的示例
2019/11/26 Python
10个python爬虫入门实例(小结)
2020/11/01 Python
老海军美国官网:Old Navy
2016/09/05 全球购物
德国EGOIST网店:销售畅销的设计师品牌
2017/04/18 全球购物
英国度假别墅预订:Sykes Cottages
2017/06/12 全球购物
马云的职业生涯规划之路
2014/01/01 职场文书
会计学生自我鉴定
2014/02/06 职场文书
小学生植树节活动总结
2014/07/04 职场文书
活动总结结尾怎么写
2014/08/30 职场文书
入党后的感想
2015/08/10 职场文书
2016年大学生寒假社会实践心得体会
2015/10/09 职场文书
pytorch 如何使用amp进行混合精度训练
2021/05/24 Python