Python Pillow教程,模糊图像可以通过在图像上应用滤波器来降低图像中的噪音水平。图像模糊化是图像处理的重要方面之一。
Pillow库中的ImageFilter类提供了几个标准的图像过滤器。通过调用Image对象的filter()方法,可以将图像滤镜应用到图像上,所需的滤镜类型在ImageFilter类中定义。
有各种技术可以用来模糊图像,我们将讨论下面提到的技术。
- 简单模糊
- 盒式模糊
- 高斯模糊法
所有这三种技术都将使用 "Image.filter() "方法来对图像进行过滤。
Python Pillow 简单模糊
它通过一个特定的内核或卷积矩阵对图像施加一个模糊效果。
Python Pillow 简单模糊 语法
filter(ImageFilter.BLUR)
Python Pillow 简单模糊 例子
#导入所需的图像库
from PIL import Image, ImageFilter
#打开现有图像
OriImage = Image.open('images/boy.jpg')
OriImage.show()
blurImage = OriImage.filter(ImageFilter.BLUR)
blurImage.show()
#Save blurImage
blurImage.save('images/simBlurImage.jpg')
执行时,上述例子会生成两个标准的PNG显示工具窗口(在本例中为窗口Photos应用)。
原始图像
模糊的图像
Python Pillow 盒式模糊
在这个过滤器中,我们使用 "半径 "作为参数。半径与模糊值成正比。
Python Pillow 盒式模糊 语法
ImageFilter.BoxBlur(radius)
其中。
- Radius – 一个方向上的盒子的大小。
- Radius 0 – 表示没有模糊,并返回相同的图像。
- RRadius 1 &minnus; 在每个方向取1个像素,即总共9个像素。
Python Pillow 盒式模糊 示例
#导入所需的图像库
from PIL import Image,
#打开现有的图像
OriImage = Image.open('images/boy.jpg')
OriImage.show()
#应用盒式模糊过滤器
boxImage = OriImage.filter(ImageFilter.BoxBlur(5))
boxImage.show()
#保存盒式模糊的图像
boxImage.save('images/boxblur.jpg')
Python Pillow 盒式模糊 输出
在执行时,上面的例子产生了两个标准的PNG显示工具窗口(在本例中是windows Photos应用程序)。
原始图像
模糊的图像
Python Pillow 高斯模糊
这个滤镜也使用参数半径,与盒式模糊做同样的工作,只是在算法上有一些变化。简而言之,改变半径值,将产生不同强度的 "高斯模糊 "图像。
Python Pillow 高斯模糊 语法
ImageFilter.GaussianBlur(radius=2)
其中。
- 半径 – 模糊半径
Python Pillow 高斯模糊 例子
#导入所需的图像库
from PIL import Image, ImageFilter
#打开现有图像
OriImage = Image.open('images/boy.jpg')
OriImage.show()
#应用高斯模糊滤波器
gaussImage = OriImage.filter(ImageFilter.GaussianBlur(5))
gaussImage.show()
#保存高斯模糊的图像
gaussImage.save('images/gaussian_blur.jpg')
Python Pillow 高斯模糊 输出
在执行时,上述例子会生成两个标准的PNG显示工具窗口(在本例中为窗口照片应用)。
原始图像
模糊的图像