📅  最后修改于: 2020-11-07 07:47:21             🧑  作者: Mango
可以通过对图像应用滤镜来降低图像中的噪声级别来模糊图像。图像模糊是图像处理的重要方面之一。
枕头库中的ImageFilter类提供了几种标准的图像滤镜。通过使用ImageFilter类中定义的所需过滤器类型调用Image对象的filter()方法,可以将图像过滤器应用于图像。
有多种用于模糊图像的技术,我们将讨论以下提到的技术。
简单的模糊
方块模糊
高斯模糊
所有这三种技术都将使用“ 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)
哪里,
半径-框在一个方向上的大小。
半径0-表示无模糊并返回相同图像。
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)
哪里,
半径–模糊半径
#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应用程序)。
原始图片
影像模糊