PIL的resize函数警告有效解决方案

在进行图片批量缩放时遇到的警告,mark一下解决方案

在运行以下代码时会弹出警告

from PIL import Image

im = Image.open(r'D:\Pycharm\tiler\tiler\tiles\circles\gen_circle_100\circle_100_0.0_0.0_0.0_r0.png')
(x,y) = im.size #读取图片尺寸(像素)
print((x,y))
x_s = int(0.4 * im.size[0]) #定义缩小后的标准宽度
y_s = int(0.4 * im.size[1]) #基于标准宽度计算缩小后的高度
# out = im.resize((x_s,y_s),Image.Resampling.LANCZOS) #改变尺寸,保持图片高品质
out = im.resize((x_s,y_s),Image.LANCZOS)
out.save('test.png')

警告内容:

DeprecationWarning: LANCZOS is deprecated and will be removed in 	Pillow 10 (2023-07-01). Use Resampling.LANCZOS instead

截图展示:
在这里插入图片描述
在博客里面没有看到好的解决方案,反倒是在评论区看到一个方案很好用,mark一下

有效解决方案:

把Image.LANCZOS换成Image.Resampling.LANCZOS

更换后代码:

from PIL import Image

im = Image.open(r'D:\Pycharm\tiler\tiler\tiles\circles\gen_circle_100\circle_100_0.0_0.0_0.0_r0.png')
(x,y) = im.size #读取图片尺寸(像素)
print((x,y))
x_s = int(0.4 * im.size[0]) #定义缩小后的标准宽度
y_s = int(0.4 * im.size[1]) #基于标准宽度计算缩小后的高度
out = im.resize((x_s,y_s),Image.Resampling.LANCZOS) #改变尺寸,保持图片高品
out.save('test.png')

运行截图:

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值