由于pillow库功能很强大本文章主要介绍pillow的Image模块
关于Pillow与PIL
PIL(Python Imaging Library)是Python一个强大方便的图像处理库,名气也比较大。不过只支持到Python 2.7。
PIL官方网站:http://www.pythonware.com/products/pil/
Pillow是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力的图像处理库。
1、图片 jpg格式转png格式
from PIL import Image imagel=Image.open('image.jpg') imagel.save('image2.png')
2、png转jpg
由于jpg是有损压缩格式,png是无损压缩格式,所以由png转jpg会有像素丢失!特提供两种转换方法:
方法一:
from PIL import Image #像素丢失 i= Image.open('images.png') i.save('imag.jpg')
from PIL import Image im = Image.open("ok.png") bg=Image.new('RGB',im.size,(255,255,255)) bg.paste(im) #quality 代表图片质量,值越低越模糊 bg.save('tttt.jpg',quality=95)
3、GIF转png帧
欢迎查看往期文章:Python将GIF图片转换成png图片帧
4、获取图片大小
from PIL import Image imagel=Image.open('image.jpg') width , height = imagel.size print(width,height)
5、打开并显示图片
from PIL import Image imagel=Image.open('image.jpg') imagel.show()
6、图片剪切
from PIL import Image imagel=Image.open('image.jpg') width,height=imagel.size area=(0,0,width/2,height/2) imagel=imagel.crop(area) imagel.save('cut.jpg')
7、图片拼接
from PIL import Image img = Image.open("image.jpg") img2 = Image.open("cut.jpg") img.paste(img2, (50, 50)) img.save("plus.jpg")
8、高斯模糊
from PIL import Image,ImageFilter mord=3 #值越大越模糊 imagel=Image.open('image.jpg') imagel.filter(ImageFilter.GaussianBlur(mord)).save('Gauss.jpg')
9、图片滤镜
'''模式L为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数 字表示不同的灰度。在PIL中,从模式“RGB”转换为“L”模式是按照下面的公式转换的: L = R * 0.299 + G * 0.587+ B * 0.114 ''' from PIL import Image imagel=Image.open('image.jpg') imagel.convert(mode='L').save('color.jpg')