Python图像处理 PIL中convert(‘L‘)函数原理,以及resize()方法改变图片大小,将png图片转换为jpg图片

这段博客介绍了如何使用Python的PIL库对图像进行模式转换,包括将图像从'1'(二值图像)、'L'(灰度图像)和'P'(索引彩色图像)模式进行转换。此外,还展示了如何通过resize方法对图像进行缩放,以及如何将PNG图片转换为JPEG格式。这些操作在图像处理和机器学习预处理中非常常见。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

注:通过np.array(img)转换为对应数组,例如(28, 28)
在这里插入图片描述
在这里插入图片描述

from PIL import Image


def convert_1():
    image = Image.open("D:/pytorch_code/pytorch_study/fusion_datasets/1.jpg")
    image_1 = image.convert('1')
    image.show()
    image_1.show()

在这里插入图片描述
在这里插入图片描述

from PIL import Image


def convert_L():
    image = Image.open("D:/pytorch_code/pytorch_study/fusion_datasets/1.jpg")
    image_L = image.convert('L')
    image.show()
    image_L.show()

在这里插入图片描述
在这里插入图片描述

from PIL import Image


def convert_P():
    image = Image.open("D:/pytorch_code/pytorch_study/fusion_datasets/1.jpg")
    image_P = image.convert('P')
    image.show()
    image_P.show()

在这里插入图片描述

代码示例:

# 通过PIL.Image类的resize方法对图片进行缩放
def test_image():
    # 图片地址
    path = "./images/smile.png"
    # 读取图片
    img = PIL.Image.open(path, "r")
    # 打印原图片大小
    print("原来的图片大小: " + str(np.array(img).shape))# (1600, 2560, 3)
    # 对图片进行缩放:改变图片大小
    im = img.resize((64, 64)) # 重新缩放 将大小为1600*2560*3的图片转换为64*64*3的图片
    # 打印改变后的图片大小
    print("缩放后的图片大小:" + str(np.array(im).shape)) # (64, 64, 3)
    # 显示原图片
    img.show()
    # 显示缩放后的图片
    im.show()

运行效果:

原来的图片大小: (1600, 2560, 3)
缩放后的图片大小:(64, 64, 3)

将png图片转换为jpg图片:

# 通过PIL.Image将png图片转换为jpg图片 
def png_to_jpg():
    im1 = PIL.Image.open("./images/smile.png", "r")
    im1.save("./images/smile.jpg")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值