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显示工具窗口(在此情况下是windows Photos 应用程序)。
原始图像
模糊的图像
盒式模糊
在这个过滤器中,我们使用 “半径 “作为参数。半径与模糊值成正比。
语法
ImageFilter.BoxBlur(radius)
其中。
- Radius- 一个方向上的盒子的大小。
-
Radius0– 意味着没有模糊并返回相同的图像。
-
RRadius 1 &minnus在每个方向取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 Photos应用程序)。
原始图像
模糊的图像
高斯模糊
这个滤镜也使用参数半径,与盒式模糊做同样的工作,只是在算法上有一些变化。简而言之,改变半径值,将产生不同强度的 “高斯模糊 “图像。
语法
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 Photos 应用程序)。
原始图像
模糊的图像