ImageFilter Module

The ImageFilter module contains definitions for a pre-defined set offilters, which can be be used with the Image.filter() method.

Example: Filter an image

  1. from PIL import ImageFilter
  2.  
  3. im1 = im.filter(ImageFilter.BLUR)
  4.  
  5. im2 = im.filter(ImageFilter.MinFilter(3))
  6. im3 = im.filter(ImageFilter.MinFilter) # same as MinFilter(3)

Filters

The current version of the library provides the following set of predefinedimage enhancement filters:

  • BLUR
  • CONTOUR
  • DETAIL
  • EDGE_ENHANCE
  • EDGE_ENHANCE_MORE
  • EMBOSS
  • FIND_EDGES
  • SMOOTH
  • SMOOTH_MORE
  • SHARPEN
  • class PIL.ImageFilter.GaussianBlur(radius=2)[源代码]
  • Gaussian blur filter.

参数:radius – Blur radius.

  • class PIL.ImageFilter.UnsharpMask(radius=2, percent=150, threshold=3)[源代码]
  • Unsharp mask filter.

See Wikipedia’s entry on digital unsharp masking for an explanation ofthe parameters.

参数:

  • radius – Blur Radius
  • percent – Unsharp strength, in percent
  • threshold – Threshold controls the minimum brightness change thatwill be sharpened
  • class PIL.ImageFilter.Kernel(size, kernel, scale=None, offset=0)[源代码]
  • Create a convolution kernel. The current version onlysupports 3x3 and 5x5 integer and floating point kernels.

In the current version, kernels can only be applied to“L” and “RGB” images.

参数:

  • size – Kernel size, given as (width, height). In the currentversion, this must be (3,3) or (5,5).
  • kernel – A sequence containing kernel weights.
  • scale – Scale factor. If given, the result for each pixel isdivided by this value. the default is the sum of thekernel weights.
  • offset – Offset. If given, this value is added to the result,after it has been divided by the scale factor.
  • class PIL.ImageFilter.RankFilter(size, rank)[源代码]
  • Create a rank filter. The rank filter sorts all pixels ina window of the given size, and returns the rank‘th value.

参数:

  • size – The kernel size, in pixels.
  • rank – What pixel value to pick. Use 0 for a min filter,size size / 2 for a median filter, size size - 1for a max filter, etc.
  • class PIL.ImageFilter.MedianFilter(size=3)[源代码]
  • Create a median filter. Picks the median pixel value in a window with thegiven size.

参数:size – The kernel size, in pixels.

  • class PIL.ImageFilter.MinFilter(size=3)[源代码]
  • Create a min filter. Picks the lowest pixel value in a window with thegiven size.

参数:size – The kernel size, in pixels.

  • class PIL.ImageFilter.MaxFilter(size=3)[源代码]
  • Create a max filter. Picks the largest pixel value in a window with thegiven size.

参数:size – The kernel size, in pixels.

  • class PIL.ImageFilter.ModeFilter(size=3)[源代码]
  • Create a mode filter. Picks the most frequent pixel value in a box with thegiven size. Pixel values that occur only once or twice are ignored; if nopixel value occurs more than twice, the original pixel value is preserved.

参数:size – The kernel size, in pixels.