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

yipeiwu_com7年前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使用Shelve保存对象方法总结

Shelve是一个功能强大的Python模块,用于对象持久性。搁置对象时,必须指定一个用于识别对象值的键。通过这种方式,搁置文件成为存储值的数据库,其中任何一个都可以随时访问。 Pyth...

把django中admin后台界面的英文修改为中文显示的方法

创建一个django工程,我使用的django 1.8.2,创建工程后,settings.py中设置中文显示支持定义 LANGUAGE_CODE = 'en-us'#改为zh-Han...

Python2.7编程中SQLite3基本操作方法示例

本文实例讲述了Python2.7中SQLite3基本操作方法。分享给大家供大家参考,具体如下: 1、基本操作 # -*- coding: utf-8 -*- #!/usr/bin/e...

用Python展示动态规则法用以解决重叠子问题的示例

用Python展示动态规则法用以解决重叠子问题的示例

动态规划是一种用来解决定义了一个状态空间的问题的算法策略。这些问题可分解为新的子问题,子问题有自己的参数。为了解决它们,我们必须搜索这个状态空间并且在每一步作决策时进行求值。得益于这类问...

python统计文本文件内单词数量的方法

本文实例讲述了python统计文本文件内单词数量的方法。分享给大家供大家参考。具体实现方法如下: # count lines, sentences, and words of a t...