python学习

Python学习九十三天:Python批量处理图片

2019-05-27  本文已影响18人  暖A暖

1.Pillow库介绍

pip install pillow

2.Image类

# 获取图片的基本信息
from PIL import Image
im = Image.open('./image.jpg')

# 获取图片的格式,大小,以及模式
print(im.format, im.size, im.mode)

# 指定图片的像素
im.thumbnail((128,128))
im.save('./image_128_128.jpg')

# 旋转图片的方向
dest_im = im.rotate(90)
dest_im.save('./image_rotate.jpg')

# 给图片添加滤镜
dest_im = im.filter(ImageFilter.GaussianBlur)
dest_im.show()

# 图片反转
dest_im = im.transpose(Image.FLIP_LEFT_RIGHT)       # 左右反转
dest_im = im.transpose(Image.FLIP_TOP_BOTTOM)   # 上下反转
dest_im.show()

# 图片上写文字
image = Image.open('image.jpg')
img_draw = ImageDraw.Draw(image)
img_draw.text((770,250),'hello world',fill='green')   # 放上文字信息到图像上
image.show()

3.ImageDraw模块

4.批量将图片的大小设置为指定大小

import os
from PIL import Image

# 源目录
project_dir = os.path.dirname(os.path.abspath(__file__))
input = os.path.join(project_dir, 'src')

# 输出目录
output = os.path.join(project_dir, 'dest')
def modify():
    # 切换目录
    os.chdir(input)

    # 遍历目录下所有的文件
    for image_name in os.listdir(os.getcwd()):
        print(image_name)
        im = Image.open(os.path.join(input, image_name))
        im.thumbnail((128, 128))
        im.save(os.path.join(output, image_name))

if __name__ == '__main__':
    modify()

参考:https://www.9xkd.com/user/plan-view.html?id=1113747022

上一篇 下一篇

猜你喜欢

热点阅读