Python图像处理库PIL | 您所在的位置:网站首页 › pil库安装不了 › Python图像处理库PIL |
在神经网络的训练与测试中,不同的网络需要的图像大小不一样。 所以,在将图像送入网络之前,我们需要将图像缩放到符合网络维度的大小。 本文基于这个需求,使用python中的图像处理库PIL来实现图像的缩放。 resize()函数讲解 1.单张图片的缩放函数img.resize((width, height),Image.ANTIALIAS) 第二个参数: Image.NEAREST :低质量 Image.BILINEAR:双线性 Image.BICUBIC :三次样条插值 Image.ANTIALIAS:高质量 #function: 更改图片尺寸大小 from PIL import Image ''' filein: 输入图片 fileout: 输出图片 width: 输出图片宽度 height:输出图片高度 type:输出图片类型(png, gif, jpeg...) ''' def ResizeImage(filein, fileout, width, height, type): img = Image.open(filein) out = img.resize((width, height),Image.ANTIALIAS) #resize image with high-quality out.save(fileout, type) if __name__ == "__main__": filein = r'0.jpg' fileout = r'testout.png' width = 6000 height = 6000 type = 'png' ResizeImage(filein, fileout, width, height, type) 2.多张图片的缩放涉及到的一个重要函数glob.glob() 例如:返回当前工程文件夹下所有的jpg路径可以编写如下代码 glob.glob('./*.jpg')配合该函数,完整代码如下: from PIL import Image import os.path import glob def convertjpg(jpgfile,outdir,width=1280,height=720): img=Image.open(jpgfile) new_img=img.resize((width,height),Image.BILINEAR) new_img.save(os.path.join(outdir,os.path.basename(jpgfile))) for jpgfile in glob.glob("./source/*.jpg"): # 来源文件夹 convertjpg(jpgfile,"./target/") # 目标文件夹 |
CopyRight 2018-2019 实验室设备网 版权所有 |