PIL ImageFilter增强滤镜如何工作?

时间:2010-07-27 19:06:12

标签: python python-imaging-library imagefilter

在哪里可以找到有关PIL ImageFilter功能使用的算法的信息?就像edge_enhance如何工作一样?我正在寻求实现高斯滤波器的差异,但如果PIL有一个类似的滤波器我将使用它。

1 个答案:

答案 0 :(得分:2)

ImageFilter方法都使用与图像卷积的内核来产生滤镜效果。 Here是内核卷积的好基础。如果您加载ImageFilter模块,您可以通过查看

找出用于每种操作的内核
>>> help(ImageFilter)

例如,对于EDGE_ENHANCE_MORE帮助提供

  

filterargs =((3,3),1,0,( - 1,-1,-1,-1,9,-1,-1,-1,-1))

这意味着EDGE_ENHANCE_MORE内核的大小为3x3,比例因子为1,偏移量为0,除了中心值(即9)之外还包含-1个值。从我读过的内容看来,您似乎可以创建自定义通过向内核对象提供适当的参数来过滤(包括高斯内核的差异):

Kernel(size, kernel, scale=None, offset=0)