Python PIL Kernel()方法
PIL是Python成像库,它为Python解释器提供了图像编辑功能。ImageFilter模块包含了一组预定义的过滤器的定义,可以用Image.filter()方法来使用。
PIL.ImageFilter.Kernel()创建一个卷积核。当前版本只支持3×3和5×5的整数和浮点内核。
语法: PIL.ImageFilter.Kernel(size, kernel, scale=None, offset=0)
参数 :
size – 内核尺寸,以(宽度,高度)的形式给出。在当前版本中,这必须是(3,3)或(5,5)。
kernel – 一个包含内核权重的序列。
scale – 比例因子。如果给定,每个像素的结果都要除以这个值。默认是内核权重之和。
offset – 偏移。如果给定,这个值将被添加到结果中,在它被比例因子除以后。
返回类型 :一个图像。
使用的图片:
# Importing Image and ImageFilter module from PIL package
from PIL import Image, ImageFilter
# creating a image object
im1 = Image.open(r"C:\Users\System-Pc\Desktop\leave.JPG")
# applying the Kernel filter
im2 = im1.filter(ImageFilter.Kernel((3, 3),
(-1, -1, -1, -1, 9, -1, -1, -1, -1), 1, 0))
im2 = im2.show()
输出:
另一个例子:这里改变内核值以获得输出,我们也可以改变其他参数。
# Importing Image and ImageFilter module from PIL package
from PIL import Image, ImageFilter
# Importing Image and ImageFilter module from PIL package
from PIL import Image, ImageFilter
# creating a image object
im1 = Image.open(r"C:\Users\System-Pc\Desktop\leave.JPG")
# applying the Kernel filter
im2 = im1.filter(ImageFilter.Kernel((3, 3),
(-1, -1, -1, -1, 11, -2, -2, -2, -2), 1, 0))
im2 = im2.show()
输出: