Python Pillow 添加滤镜到图片

Python Pillow 添加滤镜到图片

ImageFilter模块包含了一系列预定义的滤镜,我们可以通过Image.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 - 内核大小,以像素为单位。

输出

如果您保存上述程序并执行,它将显示原始图像、模糊图像以及使用标准PNG显示工具的MinFilter模糊图像,如下所示 –

原始图像

Python Pillow 添加滤镜到图片

模糊图片

Python Pillow 添加滤镜到图片

使用小型滤镜模糊的图像

Python Pillow 添加滤镜到图片

滤镜

当前版本的Pillow库提供了以下预定义的图像增强滤镜。

  • BLUR

  • CONTOUR

  • DETAIL

  • EDGE_ENHANCE

  • EDGE_ENHANCE_MORE

  • EMBOSS

  • FIND_EDGES

  • SHARPEN

  • SMOOTH

  • SMOOTH_MORE

示例

以下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 添加滤镜到图片

同样地,对于image.filter()方法,您可以传递以下任何参数以获得相应的输出 –

  • CONTOUR

  • DETAIL

  • EDGE_ENHANCE

  • EDGE_ENHANCE_MORE

  • EMBOSS

  • FIND_EDGES

  • SMOOTH

  • SMOOTH_MORE

  • SHARPEN

Python img.filter(CONTOUR) 方法

以下是一个示例,应用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()

输出

如果你保存上面的程序并运行,它会显示原始图像和使用标准PNG显示实用程序过滤后的图像,如下所示:

原始图像

Python Pillow 添加滤镜到图片

过滤后的图像

Python Pillow 添加滤镜到图片

Python img.filter(DETAIL)方法

下面是一个示例,展示如何使用Python的img.filter(DETAIL)方法应用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()

输出

如果您保存上述程序并执行,它会显示原始图像和使用标准PNG显示工具过滤后的图像,如下所示−

原始图像

Python Pillow 添加滤镜到图片

过滤后的图像

Python Pillow 添加滤镜到图片

Python img.filter(EDGE_ENHANCE)方法

以下是Python示例将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()

输出

保存上述程序并执行后,将显示原始图像和使用标准PNG显示工具的滤镜图像,如下所示:

原始图像

Python Pillow 添加滤镜到图片

过滤后的图像

Python Pillow 添加滤镜到图片

Python img.filter(EDGE_ENHANCE_MORE) 方法

以下 Python 示例将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()

输出

如果你保存上面的程序并执行,它会显示原始图像和使用标准PNG显示工具的过滤后图像,如下所示−

原始图像

Python Pillow 添加滤镜到图片

过滤后的图像

Python Pillow 添加滤镜到图片

Python img.filter(EMBOSS)方法

以下Python示例将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()

输出

如果您保存上述程序并执行,它将显示原始图像和使用标准PNG显示工具进行滤镜处理后的图像,如下所示 –

原始图像

Python Pillow 添加滤镜到图片

滤镜图像

Python Pillow 添加滤镜到图片

Python img.filter(FIND_EDGES) 方法

以下是应用 FIND_EDGES 滤镜到给定图像的Python示例。

示例

#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()

输出

如果你保存上面的程序并执行,它会显示原始图像和使用标准的PNG显示实用程序过滤后的图像,如下所示:

原始图像

Python Pillow 添加滤镜到图片

过滤后的图片

Python Pillow 添加滤镜到图片

Python img.filter(SMOOTH)方法

以下Python示例将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()

输出

如果你保存上面的程序并执行它,它会显示原始图像和使用标准PNG显示工具过滤后的图像,如下所示:

原始图像

Python Pillow 添加滤镜到图片

过滤后的图像

Python Pillow 添加滤镜到图片

Python img.filter(SHARPEN) 方法

以下是应用 SHARPEN 滤镜到给定图像的 Python 示例。

示例

#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显示工具进行过滤的图像如下所示:

原始图像

Python Pillow 添加滤镜到图片

过滤后的图像

Python Pillow 添加滤镜到图片

示例

#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显示工具进行滤波处理的图像,如下所示:

原始图像

Python Pillow 添加滤镜到图片

过滤后的图像

Python Pillow 添加滤镜到图片

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程