利用Python批量生成任意尺寸的图片

yipeiwu_com5年前Python基础

实现效果

通过源图片,在当前工作目录的/img目录下生成1000张,分别从1*1到1000*1000像素的图片。

效果如下:


目录结构

实现示例

# -*- coding: utf-8 -*-
import threading

from PIL import Image

image_size = range(1, 1001)


def start():
  for size in image_size:
    t = threading.Thread(target=create_image, args=(size,))
    t.start()


def create_image(size):
  pri_image = Image.open("origin.png")
  pri_image.resize((size, size), Image.ANTIALIAS).save("img/png_%d.png" % size)


if __name__ == "__main__":
  start()

注意:该项目需要引用PIL库。

在这里,我们使用resize函数。

与大多数脚本库一样,resize函数也支持链式调用。先通过resize((size, size), Image.ANTIALIAS)指定大小与质量,其中对于参数二:

参数值  含义
Image.NEAREST 低质量
Image.BILINEAR 双线性
Image.BICUBIC  三次样条插值
Image.ANTIALIAS 高质量

最终调用save("img/png_%d.png" % size)方法,以指定格式写入指定位置。

另外,考虑到是大量的线性密集型运算,因此使用了多线程并发。

结束语

以上就是利用Python批量生成任意尺寸图片的全部内容了,希望对大家学习和使用Python能有所帮助。

相关文章

Python OpenCV图像指定区域裁剪的实现

在工作中。在做数据集时,需要对图片进行处理,照相的图片我们只需要特定的部分,所以就想到裁剪一种所需的部分。当然若是图片有规律可循则使用opencv对其进行膨胀腐蚀等操作。这样更精准一些。...

Flask框架学习笔记(一)安装篇(windows安装与centos安装)

Flask 依赖于两个外部库: Werkzeug  和  Jinja2  。 Werkzeug 是一个 WSGI (在 web 应用和多种服务器之间开发和部...

python3.6+django2.0开发一套学员管理系统

1.在pycharm中新建project demo1 添加app01 点击create按钮完成新建 2.在demo项目目录下新建目录static,并在settings.py中追加代码:...

Python实现获取某天是某个月中的第几周

找了半天竟然没找到,如何在Python的datetime处理上,获取某年某月某日,是属于这个月的第几周。 无奈之下求助同学,同学给写了一个模块。【如果你知道Python有这个原生的库,请...

python生成ppt的方法

python生成ppt的方法

本文主要介绍如何通过python生成ppt文件,以及借助ppt模板来生成ppt 环境 python 3 python-pptx 安装 pip3 install python-p...