pillow

Posted zx125

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pillow相关的知识,希望对你有一定的参考价值。

官方文档

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")

参考链接

https://gitee.com/komavideo/LearnPillow

以上是关于pillow的主要内容,如果未能解决你的问题,请参考以下文章

《Buildozer打包实战指南》实战打包pillow

AI常用框架和工具丨4. 图像处理库Pillow

AI常用框架和工具丨4. 图像处理库Pillow

如何使用 Pillow 显示图像?

Python图像处理库Pillow常用使用方法

Pillow 中重复使用crop 方法的问题(Python 的PIL fork)