利用PIL库进行简单的图像操作---素描图,快上车!!

目录

一、前言

二、PIL库的安装

三、PIL库的几个较常用函数

1.open()打开图片,show()显示图片,save()保存新图片的路径和名称。

2.filter()滤镜

3.屏幕截图

4.图像亮度、色度、对比度、锐度处理

四、总结


一、前言

在python中,有一个优秀的图像处理框架,它就是PIL库。

PIL中主要的类包括Image、ImageFont、ImageDraw、和ImageFilter。

二、PIL库的安装

win+R,输入cmd,然后输入pip install pillow进行安装pillow包,接下来就可以调用PIL库里的Image、ImageFont、ImageDraw、和ImageFilter这四类了。

注:一定要注意字母的大小写

三、PIL库的几个较常用函数

1.open()打开图片,show()显示图片,save()保存新图片的路径和名称。

from PIL import Image
square = Image.open(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\5.jpg")
square.show()
square.save(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\51.jpg")

2.filter()滤镜

from PIL import Image from PIL import ImageFilter
square = Image.open(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\5.jpg") # 高斯模糊 square1 = square.filter(ImageFilter.GaussianBlur) # 普通模糊 square2 = square.filter(ImageFilter.BLUR) # 边缘增强 square3 = square.filter(ImageFilter.EDGE_ENHANCE) # 找到边缘 square4 = square.filter(ImageFilter.FIND_EDGES) # 浮雕 square5 = square.filter(ImageFilter.EMBOSS) # 轮廓 square6 = square.filter(ImageFilter.CONTOUR) # 锐化 square7 = square.filter(ImageFilter.SHARPEN) # 平滑 square8 = square.filter(ImageFilter.SMOOTH) # 细节 square9 = square.filter(ImageFilter.DETAIL) # 保存示例 # square9.save(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\5222.jpg")
from PIL import Image from PIL import ImageFilter
square = Image.open(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\3.jpg")
square1 = square.filter(ImageFilter.CONTOUR)
square1.save(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\31.jpg")

结果显示如下:

编辑编辑 编辑编辑

3.屏幕截图

from PIL import ImageGrab
im = ImageGrab.grab() # 不加参数表示截全屏 im1 = ImageGrab.grab((0, 0, 200, 200)) # 保存示例 im1.save(r"C:\Users\knighthood\OneDrive\桌面\截图.jpg")

4.图像亮度、色度、对比度、锐度处理

from PIL import Image from PIL import ImageEnhance # 原始图像 square = Image.open(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\5.jpg") # 例1亮度增加 enh_bri = ImageEnhance.Brightness(square)
brightness = 1.25 square_brightened = enh_bri.enhance(brightness) # 显示图像 square_brightened.show() # 保存示例 square_brightened.save(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\5221.jpg") # 例2色度增强 enh_col = ImageEnhance.Color(square)
color = 1.5 square_colored = enh_col.enhance(color) # 例3对比度增强 enh_con = ImageEnhance.Contrast(square)
contrast = 1.5 square_contrasted = enh_con.enhance(contrast) # 例4锐度增加 enh_sha = ImageEnhance.Sharpness(square)
sharpness = 3.0 square_sharped = enh_sha.enhance(sharpness)

以例1为例,全过程可以写成如下的形式:

from PIL import Image from PIL import ImageEnhance

square = Image.open(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\5.jpg")
square1 = ImageEnhance.Brightness(square)
square1.enhance(1.25).save(r"E:\Python社区版\王者荣耀皮肤图片\百里玄策\5211.jpg")

结果如下:

编辑编辑

四、总结

以上只是PIL库的一部分知识,它还能进行图像的旋转、图像格式的转换、图像色彩模式的转化等操作。通过它我们能进行一些图像的简单操作,它也能生成那些带有随机字符串的随机颜色的图片(比如令人头疼的图片验证码 ),大家来试试看吧!!


#Python#
全部评论
已经正在试着用了,感谢分享
点赞 回复 分享
发布于 2022-08-14 11:17

相关推荐

03-29 14:19
门头沟学院 Java
你背过凌晨4点的八股文么:加油同学,人生的容错率很高,只是一个暑期罢了,后面还有很多机会!
点赞 评论 收藏
分享
FieldMatching:看成了猪头顾问,不好意思
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务