1.1 PIL:Python图像处理类库

# 1.1 PIL:Python图像处理类库
from PIL import Image
import os


# 批量处理图像类型的转换 ↓
def get_imlist(path):
    """返回目录中所有jpg图像的文件名列表"""
    return [os.path.join(path, f) for f in os.listdir(path) if f.endswith(".jpg")]


filelist = get_imlist('C:/Users/Lenovo/Desktop/picture')

for infile in filelist:
    outfile = os.path.splitext(infile)[0] + ".png"
    if infile != outfile:
        try:
            Image.open(infile).save(outfile)
        except IOError:
            print("cannot convert", infile)
# ↑

# 创建缩略图
pil_im = Image.open(filelist[3])
pil_im = pil_im.convert('L')
# 实现图像颜色的转换,上式转为灰度图像 pil_im = Image.open(filelist[3]).convert('L')
pil_im.show()
pil_im.thumbnail((128, 30))  # 创建最长边为128像素的缩略图
#  thumbnail()方法接受一个元组参数(该参数指定生成缩略图的大小)
#  将图像转换为符合元组参数指定大小的缩略图,返回缩略图

# 复制和粘贴图像区域
# PIL中指定坐标系的左上角坐标为(0,0)
box = (100, 100, 400, 400)  # 四元组指定区域:(左,上,右,下)
region = pil_im.crop(box)  # crop()方法可以从一幅图像中裁剪指定区域
region = region.transpose(Image.ROTATE_180)  # 旋转获取的区域
pil_im.paste(region, box)
# paste()方法将该区域放回去

# 调整尺寸和旋转
out = pil_im.resize((128, 128))
out.show()
# resize()方法 参数为一个元组 指定新图像的大小
out = pil_im.rotate(45)
# rotate()方法 逆时针方式旋转角度
pil_im.show()

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值