python图像处理pillow工具作业:合并拼接图片!

pillow简介

Python Imaging Library给Python解释器增加了图像处理能力。

该库提供了广泛的文件格式支持,高效的内部展现,以及十分强大的图像处理能力。

核心图像库专为以几种存储为基本像素格式数据的快速访问而设计。它为通用图像处理工具提供了坚实的基础。

我们来看看这个库的用途。

  • 图像存储

PIL适合图像归档和图像批量处理,你可以使用它建立缩略图,转换格式,打印图片等。

现在的版本可以识别和读取大量的图片格式,写入常用的转换和表示格式。

  • 图像显示

当前版本包含了Tk PhotoImage 和 BitmapImage 接口, 以及 Windows DIB interface ,可以在PythonWin和其他基于Windows的工具包中使用。许多其他GUI工具包带有某种类型的PIL支持。

为了方便调试还提供了show()方法,可以保存图像到磁盘并调用外显示。它将图像保存到磁盘,并调用外部显示工具。

  • 图像处理

这个库包含了基本的图像处理功能,包括点操作,使用内置卷积内核过滤,色彩空间转换。

这个库还支持更改图像大小、旋转、任意仿射变换。

直方图方法允许你统计图像,这可以用于对比度增强和全局统计分析。

更多内容参见: python库介绍-图像处理工具pillow中文文档-手册(2018 5.*)

python图像处理pillow工具作业:合并拼接图片

图片实例:

python图像处理pillow工具作业:合并拼接图片!

图片.png

现在有多个分辨率和大小相同的图片,要求能拼接2,3...张图片,每行2张。展示效果如下:

2张:

python图像处理pillow工具作业:合并拼接图片!

图片.png

3张

python图像处理pillow工具作业:合并拼接图片!

图片.png

11张

python图像处理pillow工具作业:合并拼接图片!

图片.png

以此类推..

参考资料

  • 本文最新版本地址
  • 本文涉及的python测试开发库 谢谢点赞!
  • 本文相关海量书籍下载
  • python库介绍-图像处理工具pillow中文文档-手册(2018 5.*)
  • 代码地址: https://github.com/china-testing/python-api-tesing/blob/master/practices/pil_merge.py

代码

进群:960410445  即可获取数十套PDF的获取方式哦!

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# 技术支持:https://www.jianshu.com/u/69f40328d4f0 
# 技术支持 https://china-testing.github.io/
# https://github.com/china-testing/python-api-tesing/blob/master/practices/pil_merge.py
# 项目实战讨论QQ群548377875 
# CreateDate: 2018-11-22
import math
from PIL import Image
column = 2
width = 802
height = 286
size = (802, 286)
list_im = [r'd:code.jpg', r'd:code.jpg', r'd:code.jpg', r'd:code.jpg', 
 r'd:code.jpg', r'd:code.jpg', r'd:code.jpg', r'd:code.jpg',
 r'd:code.jpg', r'd:code.jpg', r'd:code.jpg']
list_im = list_im*11
imgs = [Image.open(i) for i in list_im]
row_num = math.ceil(len(imgs)/column)
target = Image.new('RGB', (width*column, height*row_num))
for i in range(len(list_im)):
 if i % column == 0:
 end = len(list_im) if i + column > len(list_im) else i + column 
 for col, image in enumerate(imgs[i:i+column]):
 target.paste(image, (width*col, height*(i//column), 
 width*(col + 1), height*(i//column + 1))) 
target.show()
target.save('d:code2.jpg')

猜你喜欢

转载自blog.csdn.net/qq_42156420/article/details/84998823
今日推荐