python 使用最少的行数将图像大小调整50% [duplicate]

kokeuurv  于 2022-11-27  发布在  Python
关注(0)|答案(1)|浏览(115)

此问题在此处已有答案

Image size (Python, OpenCV)(8个答案)
3小时前关门。
下面的代码通过硬编码的数字调整图像大小
我想使用以下公式调整大小-image_size / 2

f = r'C:\Users\elazar\bucket\PHOTO'
for file in os.listdir(f):
    f_img = f+"/"+file
    img = Image.open(f_img).resize((540,540)).save(f_img)

有没有可能将此代码缩短到更少的行,而不是使用像540,540这样的代码,以便能够将原始大小(除以)减少2
我试着遵循一些其他的公式,但我不能完全理解。

pwuypxnk

pwuypxnk1#

“.size”以元组的形式给出图片的宽度和高度。您可以用第4行代码替换下面的代码。

Image.open(f_img).resize((int(Image.open(f_img).size[0] / 2), int(Image.open(f_img).size[1] / 2))).save(f_img)

然而,这一行代码比下面的代码效率要低得多。它打开图像3次,而不是一次。

image = Image.open(f_img)
image.resize((int(image.size[0] / 2), int(image.size[1] / 2))).save(f_img)

相关问题