官方文档
https://pillow.readthedocs.io/en/stable/
安装
pip install pillow
图片基本信息
from PIL import Image
image = Image.open('xiada.jpg')
print(image.filename)
print(image.format)
print(image.mode)
print(image.size)
print(image.info)
xiada.jpg
JPEG
RGB
(700, 888)
{'jfif': 257, 'jfif_version': (1, 1), 'dpi': (72, 72), 'jfif_unit': 1, 'jfif_density': (72, 72)}
常用方法
#获取某一点的jpg
print(image.getpixel((12,5)))
图像转化
#1位像素图
image.convert("1").save("zx1.png",quality)
#8位灰度图
image.convert("L").save("zx2.png",quality)
#8位彩图
image.convert("P").save("zx3.png",quality)
其他更多模式看官方文档的modes
图像裁剪
from PIL import Image
image = Image.open('zx.jpg')
#图片剪切:开始点x1,开始点y1,结束点x2,结束点y2
image.crop((240,20,300,240)).save("zx2.png")
图片旋转
from PIL import Image
image = Image.open('zx.jpg')
#旋转不改变原图大小,会裁剪
image.roate(30).save('zx1.png')
image.roate(-30).save('zx2.png')
#旋转不会裁剪,会变原图大小
image.roate(30,Image.NEAREST,True).save('zx3.png')
改变图像大小
from PIL import Image
image = Image.open('zx.jpg')
#指定大小
zx = image.resize((200,200),Image.NEAREST).save("zx1.png")
#宽高比例
wl = image.resize((int(image.width/2,image.height/2)),Image.NEAREST).save("zx2.png")