PIL图像处理模块paste方法简单使用详解

yipeiwu_com5年前Python基础

python2中提供了PIL基础的图像数据出来模块,在python3中更名为了pillow模块,名字虽然发生了改变,但是提供的方法和功能都是一样的,对于日常基础的图像数据处理分析来说是足够用了的,现在正好有一个需求点就是要对给定的图像数据指定的部分进行剪切、替换处理,剪切跟替换操作的本质其实都是一样的,先要得到该区域的左下顶点和右上顶点的坐标然后才能进行相应的操作。

这篇文章中简单对剪切操作和粘贴也就是替换操作进行实践说明,具体的代码实践如下:

def specificLocationReplace(img1='a.png',img2='b.png',save_path='replace.png'):
  '''
  图片指定位置替换
  '''
  im1=Image.open(img1)
  im2=Image.open(img2)
  tmp=im1.crop((0,0,500,500))
  im2.paste(tmp,(300,300,800,800))
  im2.save(save_path)

传入两张图片的路径以及新图片的保存路径,从img1中剪切出来一块方形区域,之后粘贴在img2中指定的方形区域中,然后保存生成新的图片,使用的方法非常的简洁和简单,这就相关的参数都说明了,就不再累赘了。

下面简单的使用:

specificLocationReplace(img1='data/0.png',img2='data/1.png',
              save_path='replace.png')

其中,0.png如下:

1.png如下:

剪切和粘贴处理后的结果数据如下:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

轻松理解Python 中的 descriptor

定义 通常,一个 descriptor 是具有“绑定行为”的对象属性。所绑定行为可通过 descriptor 协议被自定义的 __get__() , __set__() 和 __dele...

Python探索之Metaclass初步了解

先以一个大牛的一段关于Python Metapgramming的著名的话来做开头: Metaclasses are deeper magic than 99% of users sho...

pytz格式化北京时间多出6分钟问题的解决方法

起步 在django框架中,用的是 pytz 库处理时区问题,所以我也尝试用这个库来处理。但发现了一个奇怪的问题: import datetime import pytz dt...

python sorted方法和列表使用解析

python sorted方法和列表使用解析

这篇文章主要介绍了python sorted方法和列表使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、基本形式列表有自己的...

python 并发编程 非阻塞IO模型原理解析

python 并发编程 非阻塞IO模型原理解析

非阻塞IO(non-blocking IO) Linux下,可以通过设置socket使其变为non-blocking。当对一个non-blocking socket执行读操作时,流程是...