PIL:Python图像处理类库的基本用法

from PIL import Image
import os

# 读取图像
img_path = './img/test.jpg'
img = Image.open(img_path) # 返回一个PIL图像对象
print(img)
# >>> 

# 转换为灰度图
gray_img = img.convert('L')
gray_img.save('./img/gray_img.jpg')

# 保存与转换格式
save_path = os.path.splitext(img_path)[0] + '.png' #jpg转png
img.save(save_path)

# 返回文件夹中所有以jpg结尾的文件
def get_jpg(dir, postfix):
    '''
    :param dir: 要查看的文件夹
    :param postfix: 筛选的文件后缀
    :return: dir中所有以postfix结尾的文件
    '''
    return [os.path.join(dir, f) for f in os.listdir(dir) if f.endswith(postfix)]

print(get_jpg('./img', '.jpg'))
# >>> ['./img/test.jpg']

# crop()方法从图像中裁剪指定区域
box = (50, 50, 150, 150) #左、上、右、下
region = img.crop(box)

# transpose()方法做旋转
region = region.transpose(Image.ROTATE_180) #旋转180度,可选90 270
region.save('./img/rotate_180.jpg')

# 图像粘贴的方法,将region粘贴到img上
img.paste(region, box)
img.save('./img/paste.jpg')

# 调整尺寸 resize
img.resize((128,128))
img.save('./img/resize.jpg')

#旋转
img.rotate(45) # 逆时针旋转45度
img.save('./img/rotated.jpg')

你可能感兴趣的:(Python基础,PIL,PIL.Image,python图像处理,Image.open)