Python Pillow 模糊图像

Python Pillow 模糊图像

通过对图像应用滤波器来减少图像中的噪声,可以实现图像的模糊效果。图像模糊是图像处理的重要方面之一。

Pillow库中的 ImageFilter类 提供了几种标准图像滤波器。可以通过调用 Image对象filter()方法 并使用ImageFilter类中定义的所需滤波器类型来将滤波器应用于图像。

有多种技术用于图像模糊,我们将讨论下面提到的技术。

  • 简单模糊

  • 盒状模糊

  • 高斯模糊

这三种技术都将使用’Image.filter()’方法来应用滤波器到图像上。

简单模糊

根据特定的内核或卷积矩阵,对图像应用模糊效果。

语法

filter(ImageFilter.BLUR)

示例

#Import required Image library
from PIL import Image, ImageFilter

#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()

blurImage = OriImage.filter(ImageFilter.BLUR)
blurImage.show()
#Save blurImage
blurImage.save('images/simBlurImage.jpg')

运行上述示例时,会生成两个标准的PNG显示工具窗口(在这种情况下是 照片 应用程序)。

原始图片

Python Pillow 模糊图像

模糊图像

Python Pillow 模糊图像

盒式模糊

在这种滤镜中,我们使用‘radius’作为参数。半径与模糊值成正比。

语法

ImageFilter.BoxBlur(radius)

其中,

  • 半径 − 在一个方向上框的大小。

  • 半径 0 − 表示没有模糊和返回相同的图像。

  • 半径 1 − 在每个方向上减去1个像素,即总共9个像素。

示例

#Import required Image library
from PIL import Image,

#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()

#Applying BoxBlur filter
boxImage = OriImage.filter(ImageFilter.BoxBlur(5))
boxImage.show()

#Save Boxblur image
boxImage.save('images/boxblur.jpg')

输出

在执行时,上述示例将生成两个标准的PNG显示实用程序窗口(在此示例中为Windows照片应用程序)。

原始图像

Python Pillow 模糊图像

模糊图像

Python Pillow 模糊图像

高斯模糊

该滤镜也使用半径参数,并通过一些算法的变化来完成与盒模糊相同的工作。简而言之,改变半径值将生成不同强度的“高斯模糊”图像。

语法

ImageFilter.GaussianBlur(radius=2)

在这里,

  • Radius – 模糊半径

示例

#Import required Image library
from PIL import Image, ImageFilter

#Open existing image
OriImage = Image.open('images/boy.jpg')
OriImage.show()

#Applying GaussianBlur filter
gaussImage = OriImage.filter(ImageFilter.GaussianBlur(5))
gaussImage.show()

#Save Gaussian Blur Image
gaussImage.save('images/gaussian_blur.jpg')

输出

执行上述示例后,将生成两个标准的PNG显示实用程序窗口(在这种情况下为Windows 照片 应用程序)。

原始图像

Python Pillow 模糊图像

模糊的图片

Python Pillow 模糊图像

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程