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

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

knighthood2001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值