python实现批量处理将图片粘贴到另一张图片上并保存

yipeiwu_com6年前Python基础

pillow真的是一个很强大的图像处理库!!!!

本人利用pillow库实现了将文件夹下的批量照片随机粘贴到另一张图片上,并批量保存到指定文件夹!!!

直接上代码:

from PIL import Image
import os
import random
 
 
def handle_img(imgdir,imgFlodName):
 imgs = os.listdir(imgdir+imgFlodName)
 imgNum = len(imgs)
 print(imgNum)
 
 for i in range(imgNum):
  img1 = Image.open(imgdir + imgFlodName + "/" + imgs[i])
  img = img1.resize((102,102)) #将图片调整到合适大小 
 
  oriImg = Image.open("F:/Download/111.jpg") #打开图片
  image = oriImg.size # 获取图片大小尺寸
  # oriImg.paste(img, (image[0]-102, image[1]-102))
 
  if image[0]<image[1]: # 判断宽高大小 因为若是不作处理的话,在粘贴到随机位置时可能会沾到图片外的位置。
   oriImg.paste(img,(random.randint(0,image[0]-102),random.randint(0,image[0]-102)))
  else:
   oriImg.paste(img, (random.randint(0, image[1]-102), random.randint(0, image[1]-102)))
  oriImg.show()
  oriImg1 = oriImg.convert('RGB')
  oriImg1.save("F:/Download/sign_data"+"/"+str(i)+".jpg")
 
 
imgdir = "F:/Download/" 
imgFlodName = "v2.0sign_picture" 
handle_img(imgdir,imgFlodName)

接下来,实现将文件夹下一组图片随机粘贴到另一个文件夹下的一组图片上,并保存!!!其实就是再加一个for循环就可以了!!!

直接上代码:

from PIL import Image
import os
import random
 
 
def handle_img(imgdir,imgFlodName,img_path):
 imgs = os.listdir(imgdir+imgFlodName)
 imgNum = len(imgs)
 print(imgNum)
 image_ori = os.listdir(img_path)
 image_Num = len(image_ori)
 print(image_Num)
 
 for i in range(imgNum):
  img1 = Image.open(imgdir + imgFlodName + "/" + imgs[i])
  img = img1.resize((102,102))
 
  for j in range(image_Num):
 
   oriImg = Image.open(img_path + "/" + image_ori[j])
   image = oriImg.size
   # oriImg.paste(img, (image[0]-102, image[1]-102))
 
   if image[0]<image[1]:
    oriImg.paste(img,(random.randint(0,image[0]-102),random.randint(0,image[0]-102)))
   else:
    oriImg.paste(img, (random.randint(0, image[1]-102), random.randint(0, image[1]-102)))
   oriImg.show()
   oriImg1 = oriImg.convert('RGB')
   oriImg1.save("F:/Download/sign2_data"+"/"+str(i)+".jpg")
 
 
imgdir = "F:/Download/"
imgFlodName = "v2.0sign_picture"
image_path = "F:/Download/image"
handle_img(imgdir,imgFlodName,image_path)

以上这篇python实现批量处理将图片粘贴到另一张图片上并保存就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现简单日期工具类

本文实例为大家分享了python实现简单日期工具类的具体代码,供大家参考,具体内容如下 import datetime import time DATETIME_FORMAT =...

通过shell+python实现企业微信预警

通过shell+python实现企业微信预警

一 注册企业微信 本文所有内容是基于2018年12月26日时的企业微信版本所做的教程。后面可能由于企业微信界面规则更改导致部分流程不一致。(大家看文章时请注意这一点) 注册企业微信必备条...

python通过apply使用元祖和列表调用函数实例

本文实例讲述了python通过apply使用元祖和列表调用函数的方法。分享给大家供大家参考。具体实现方法如下: def my_fuc(a, b): print a, b atup...

python机器学习之贝叶斯分类

python机器学习之贝叶斯分类

一、贝叶斯分类介绍 贝叶斯分类器是一个统计分类器。它们能够预测类别所属的概率,如:一个数据对象属于某个类别的概率。贝叶斯分类器是基于贝叶斯定理而构造出来的。对分类方法进行比较的有关研究结...

Python根据文件名批量转移图片的方法

Python根据文件名批量转移图片的方法

下面是在深度学习数据集处理过程中可能会用到的一个小程序,帮助我们根据图片文件的名字来分开图片: import os import shutil path_img='读取图片的路径'...