【Python】pillow库学习笔记2-ImageFilter类和ImageEnhance类

PIL库的ImageFilter类和ImageEnhance类提供了过滤图像和增强图像的方法。

3.ImageFilter类

ImageFilter类共提供10种预定义图像过滤方法:

方法表示描述
ImageFilter.BLUR图像的模糊效果
ImageFilter.CONTOUR图像的轮廓效果
ImageFilter.DETAIL图像的细节效果
ImageFilter.EDGE_ENHANCE图像的边界加强效果
ImageFilter.EDGE_ENHANCE_MORE图像的阈值边界加强效果
ImageFilter.EMBOSS图像的浮雕效果
ImageFilter.SMOOTHL图像的平滑效果
ImageFilter.FIND_EDGES图像的边界效果
ImageFilter.SMOOTH_MORE图像的阈值平滑效果
ImageFilter.SHARPEN图像的锐化效果

利用Image类的filter()方法可以使用ImageFilter类,使用方式如下:

Image.filter(ImageFilter.fuction)

例1:模糊效果

from PIL import Image
from PIL import ImageFilter
im = Image.open('村庄2.jfif')
om = im.filter(ImageFilter.BLUR)
om.save('aBLUR.jpg')

前面是生成图片,后面是原图,下同。
在这里插入图片描述

例2:轮廓效果

from PIL import Image
from PIL import ImageFilter
im = Image.open('村庄2.jfif')
om = im.filter(ImageFilter.CONTOUR)
om.save('aContour.jpg')

在这里插入图片描述

例3:细节效果

from PIL import Image
from PIL import ImageFilter
im = Image.open('村庄2.jfif')
om = im.filter(ImageFilter.DETAIL)
om.save('aDETAIL.jpg')

在这里插入图片描述
效果不明显

例4:边界加强效果

from PIL import Image
from PIL import ImageFilter
im = Image.open('村庄2.jfif')
om = im.filter(ImageFilter.EDGE_ENHANCE)
om.save('aEDGEENHANCE.jpg')

在这里插入图片描述
其他效果:

from PIL import Image
from PIL import ImageFilter
im = Image.open('村庄2.jfif')
om = im.filter(ImageFilter.EDGE_ENHANCE_MORE)#阈值边界加强效果
om.save('p//aEDGE_ENHANCE_MORE.jpg')

om2 = im.filter(ImageFilter.EMBOSS)#浮雕效果
om2.save('p//aEMBOSS.jpg')

om3 = im.filter(ImageFilter.FIND_EDGES)#边界效果
om3.save('p//aFIND_EDGES.jpg')

om4 = im.filter(ImageFilter.SMOOTH)#平滑效果
om4.save('p//aSMOOTH.jpg')

om5 = im.filter(ImageFilter.SMOOTH_MORE)#阈值平滑效果
om5.save('p//aSMOOTH_MORE.jpg')

om6 = im.filter(ImageFilter.SHARPEN)#锐化效果
om6.save('p//aSHARPEN.jpg')

阈值边界加强效果和浮雕效果
在这里插入图片描述
边界效果和锐化效果
在这里插入图片描述
平滑效果和阈值平滑效果:
在这里插入图片描述

4.ImageEnhance类

ImageEnhance类提供了更高级的图像增强功能,如调整色彩度、亮度、对比度、锐化等。

方法描述
ImageEnhance.enhance(factor)对选择属性的数值增强factor倍
ImageEnhance.Color(im)调整图像的颜色平衡
ImageEnhance.Contrast(im)调整图像的对比度
ImageEnhance.Brightness(im)调整图像的亮度
ImageEnhance.Sharpness(im)调整图像的锐度

例:增强图像对比度

from PIL import Image
from PIL import ImageEnhance
im = Image.open('村庄2.jfif')
om = ImageEnhance.Contrast(im)
om.enhance(20).save('aEnContrast.jpg')

:

from PIL import Image
from PIL import ImageEnhance
im = Image.open('村庄2.jfif')
om2 = ImageEnhance.Brightness(im)#调整亮度
om2.enhance(2).save('ImageEnhance//aBrightness.jpg')

亮度增强2倍
在这里插入图片描述

from PIL import Image
from PIL import ImageEnhance
im = Image.open('村庄2.jfif')
om3 = ImageEnhance.Color(im)#调整颜色平衡
om3.enhance(2).save('ImageEnhance//aColor.jpg')

om4 = ImageEnhance.Sharpness(im)#调整锐度
om4.enhance(2).save('ImageEnhance//aSharpness.jpg')

颜色增强2倍和锐化增强2倍
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值