ImageFilter:Python中的图像滤波,主要对图像进行平滑、锐化、边界增强等滤波处理。
图像滤波:在尽量保留图像细节特征的条件下对目标图像的噪声进行抑制,是图像预处理中不可缺少的操作,其处理效果的好坏将直接影响到后续图像处理和分析的有效性和可靠性。
存在目的:由于成像系统、传输介质和记录设备等的不完善,数字图像在其形成、传输记录过程中往往会受到多种噪声的污染。另外,在图像处理的某些环节当输入的像对象并不如预想时也会在结果图像中引入噪声。要构造一种有效抑制噪声的滤波器必须考虑两个基本问题:能有效地去除目标和背景中的噪声;同时,能很好地保护图像目标的形状、大小及特定的几何和拓扑结构特征。
滤波器主要包括如下种类:
BLUR、CONTOUR、DETAIL、EDGE_ENHANCE、EDGE_ENHANCE_MORE、EMBOSS、FIND_EDGES、SMOOTH、SMOOTH_MORE、SHARPEN(GaussianBlur、UnsharpMask、Kernel、RankFilter、MedianFilter、MinFilter、MaxFilter、ModeFilter)
上原图作为参照:
1.BLUR:模糊滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") bluF = im.filter(ImageFilter.BLUR) bluF.show()
效果图:
2.CONTOUR:轮廓滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") conF = im.filter(ImageFilter.CONTOUR) conF.show()
效果图:
3.DETAIL:细节滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") detF = im.filter(ImageFilter.DETAIL) detF.show()
效果图:
4.EDGE_ENHANCE:边界增强滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") eeF = im.filter(ImageFilter.EDGE_ENHANCE) eeF.show()
效果图:
5.EDGE_ENHANCE_MORE:深度边缘增强滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") eemF = im.filter(ImageFilter.EDGE_ENHANCE_MORE) eemF.show()
效果图:
6.EMBOSS:浮雕滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") embF = im.filter(ImageFilter.EMBOSS) embF.show()
效果图:
7.FIND_EDGES:寻找边界滤波(找寻图像的边界信息)
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") fdeF = im.filter(ImageFilter.FIND_EDGES) fdeF.show()
效果图:
8.SMOOTH:平滑滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") smoF = im.filter(ImageFilter.SMOOTH) smoF.show()
效果图:
9.SMOOTH_MORE:深度平滑滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") smomF = im.filter(ImageFilter.SMOOTH_MORE) smomF.show()
效果图:
10.SHARPEN:锐化滤波
from PIL import Image, ImageFilter im = Image.open(r"linuxidc.com.png") shaF = im.filter(ImageFilter.SHARPEN) shaF.show()
效果图:
11.GaussianBlur:高斯模糊