Python Pillow教程,ImageFilter模块包含了一组预先定义好的过滤器的定义,我们用Image.filter()方法来使用。这些过滤器被用来改变图像的外观和感觉。
Python Pillow img.filter 示例
下面的例子是过滤一个图像
from PIL import Image, ImageFilter
im = Image.open('jungleSaf2.jpg')
im1 = im.filter(ImageFilter.BLUR)
im1.show()
im2 = im.filter(ImageFilter.MinFilter(3))
im2.show()
im3 = im.filter(ImageFilter.MinFilter) # same as MinFilter(3)
im3.show()
在上面的程序中,我们使用了MinFilter()方法,该方法用于创建一个最小的过滤器。它在一个给定大小的窗口中挑选最低像素值。
ImageFilter.MinFilter(size=3)
其中。
size - 核心尺寸,单位是像素。
Python Pillow img.filter 输出
如果你保存上述程序并执行,它将使用标准的PNG显示工具显示原始图像、模糊的图像和带有MinFilter的模糊图像,如下所示
原始图像
模糊的图像
用MinFilter模糊的图像
Python Pillow img.filter 滤波器
当前版本的Pillow库提供了下面提到的一组预定义的图像增强过滤器。
- 模糊
- 对比度
- 细节
- 边缘增强(EDGE_ENHANCE
- 边缘增强_更多
- 纹理
- 找出凹痕
- 锐化
- 磨光
- 抛光_更多
Python Pillow img.filter 滤波器 示例
下面的python例子在图像上应用模糊滤镜,并使用标准的PNG显示工具来显示它。
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(BLUR)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python Pillow img.filter 滤波器 输出
以同样的方式,对于image.filter()方法,你可以传递以下任何一个参数来获得各自的输出 -
- 颜色
- 详细情况
- 边缘增强(EDGE_ENHANCE
- 边缘增强_更多
- 纹理
- 查找凹痕
- 粗糙
- 抛光_更多
- 锐化
Python img.filter(CONTOUR)方法
下面的python例子将CONTOUR滤镜应用于给定的图像。
Python img.filter(CONTOUR) 示例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(CONTOUR)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(CONTOUR) 输出
如果你保存上述程序并执行,它会显示原始图像和使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
Python img.filter(DETAIL)方法
下面的python例子将DETAIL过滤器应用于给定的图像。
Python img.filter(DETAIL) 例子
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(DETAIL)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(DETAIL) 输出
如果你保存上述程序并执行,它会显示原始图像,以及使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
Python img.filter(EDGE_ENHANCE)方法
下面的python例子将EDGE_ENHANCE过滤器应用于给定的图像----。
Python img.filter(EDGE_ENHANCE) 示例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EDGE_ENHANCE)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(EDGE_ENHANCE) 输出
如果你保存上述程序并执行,它会显示原始图像,以及使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
Python img.filter(EDGE_ENHANCE_MORE) 方法
下面的python例子将EDGE_ENHANCE_MORE过滤器应用于给定的图像。
Python img.filter(EDGE_ENHANCE_MORE) 示例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EDGE_ENHANCE_MORE)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(EDGE_ENHANCE_MORE) 输出
如果你保存上述程序并执行,它会显示原始图像,以及使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
Python img.filter(EMBOSS)方法
下面的python例子将EMBOSS过滤器应用于给定的图像。
Python img.filter(EMBOSS) 示例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(EMBOSS)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(EMBOSS) 输出
如果你保存上述程序并执行,它会显示原始图像和使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
Python img.filter(FIND_EDGES) 方法
下面的python例子将FIND_EDGES过滤器应用于给定的图像。
Python img.filter(FIND_EDGES) 示例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(FIND_EDGES)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(FIND_EDGES) 输出
如果你保存上述程序并执行,它会显示原始图像和使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
Python img.filter(SMOOTH)方法
下面的python例子将SMOOTH过滤器应用于给定的图像。
Python img.filter(SMOOTH) 示例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SMOOTH)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(SMOOTH) 输出
如果你保存上述程序并执行,它会显示原始图像和使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
Python img.filter(SHARPEN)方法
下面的python例子将SHARPEN过滤器应用于给定的图像。
Python img.filter(SHARPEN) 示例
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SHARPEN)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
Python img.filter(SHARPEN) 输出
如果你保存上述程序并执行,它会显示原始图像和使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像
下面的python例子将SHARPEN过滤器应用于给定的图像。
例子
#Import required image modules
from PIL import Image, ImageFilter
#Import all the enhancement filter from pillow
from PIL.ImageFilter import (
BLUR, CONTOUR, DETAIL, EDGE_ENHANCE, EDGE_ENHANCE_MORE,
EMBOSS, FIND_EDGES, SMOOTH, SMOOTH_MORE, SHARPEN
)
#Create image object
img = Image.open('images/cat.jpg')
#Applying the blur filter
img1 = img.filter(SHARPEN)
img1.save('images/ImageFilter_blur.jpg')
img1.show()
输出
如果你保存上述程序并执行,它会显示原始图像和使用标准PNG显示工具的过滤后的图像,如下所示
原始图像
过滤后的图像