Python将大量图片拼接成心形图片入门(一)

开始打算试试用python将大量的图片拼接成心形的功能,但是没接触过python用于处理图片的内容,因此在这里先做一个简单的入门。

这一篇博客写的是将大量图片拼接成正方形的合成图片,如果想改变策略,可根据自己的需要修改少量代码即可。

  1. 首先新建目录结构,不一定为如下所示,可在代码中修改对应目录即可
    在这里插入图片描述
    model:存放用于拼接的大量图片
    1:将原大量图片重设大小后的的图片保存的目录
    2:最后拼接的图片所在的目录
    white.jpeg:用于填充空白位置的白色图片(下一篇拼接心形图片时会用到)

  2. 代码如下:

from PIL import Image
import os
import math
import random

# 所有需处理图片及生成图片的根目录
dir = "/Users/wleng/Downloads/图片1/"
# 要处理的图片所在的目录
sourDir = 'model'
# 重设大小后的图片保存的目录
transferDir = '1'
# 最终拼接的图片保存的目录
resultDir = '2'
# 统一图片的高度
HEIGHT_PER_PIC = 100
# 统一图片的宽度
WIDTH_PER_PIC = 100

# 获取指定路径下的所有图片
def getImagesName(dir):
    allPicPath = []  # 所有图片
    for root, dirs, 
  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
Python可以通过使用PILPython Imaging Library)库来对大量图片进行拼接,从而生千面图。 首先,我们需要导入PIL库。可以使用以下命令导入PIL库: ```python from PIL import Image ``` 接下来,我们需要读取大量图片并进行拼接。假设我们有一组图片存储在一个文件夹中,并且这些图片都具有相同的大小。我们可以使用以下代码来读取图片并进行拼接: ```python import os def join_images(folder_path): images = [] for filename in os.listdir(folder_path): if filename.endswith(".jpg") or filename.endswith(".png"): image_path = os.path.join(folder_path, filename) image = Image.open(image_path) images.append(image) width = images[0].width height = images[0].height * len(images) result_image = Image.new("RGB", (width, height)) for i, image in enumerate(images): result_image.paste(image, (0, i * height)) result_image.save("result_image.jpg") ``` 在上述代码中,我们首先遍历文件夹中的每个文件,将`.jpg`和`.png`格式的图片读取并添加到`images`列表中。然后,我们计算拼接图片的宽度和高度,并创建一个新的`result_image`对象。接下来,我们使用循环将每个图片依次粘贴到`result_image`中,并指定粘贴的坐标。最后,我们保存拼接后的结果图片为`result_image.jpg`。 通过以上步骤,我们可以使用Python大量图片进行拼接,生千面图。以上代码仅供参考,具体的实现方式可以根据需求进行调整。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值