在Python中使用PIL模块对图片进行高斯模糊处理的教程

 更新时间:2015年05月05日 17:05:21   投稿:goldensun  
这篇文章主要介绍了在Python中使用PIL模块对图片进行高斯模糊处理的教程,这个无图形界面的脚本代码非常简单,需要的朋友可以参考下

从一篇文章中看到,PIL 1.1.5 已经内置了高斯模糊,但是并没有在文档中提及,而且PIL的高斯模糊中 radius 是硬编码, 虽然构造方法中有传入 radius 参数,但压根就没有用到 (看这里),所以需要自己进行改造,当然,知道了原因, 修改起来自然非常简单了。

结合帖子中的需求,对局部进行高斯模糊,所以还需要结合使用 crop paste 方法实现局部使用滤镜。

代码如下:

#-*- coding: utf-8 -*-

from PIL import Image, ImageFilter

class MyGaussianBlur(ImageFilter.Filter):
  name = "GaussianBlur"

  def __init__(self, radius=2, bounds=None):
    self.radius = radius
    self.bounds = bounds

  def filter(self, image):
    if self.bounds:
      clips = image.crop(self.bounds).gaussian_blur(self.radius)
      image.paste(clips, self.bounds)
      return image
    else:
      return image.gaussian_blur(self.radius)

bounds = (150, 130, 280, 230)
image = Image.open('source.jpg')
image = image.filter(MyGaussianBlur(radius=29, bounds=bounds))
image.show()

可以看下效果:

201555170400852.jpg (500×667)

201555170538214.jpg (500×667)

相关文章

  • Python中*args和**kwargs的区别详解

    Python中*args和**kwargs的区别详解

    这篇文章主要介绍了Python中*args和**kwargs的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • Python3获取cookie常用三种方案

    Python3获取cookie常用三种方案

    这篇文章主要介绍了Python3获取cookie常用三种方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • Python简单实现enum功能的方法

    Python简单实现enum功能的方法

    这篇文章主要介绍了Python简单实现enum功能的方法,简单分析了Python实现enum功能的相关技巧,需要的朋友可以参考下
    2016-04-04
  • python FTP编程基础入门

    python FTP编程基础入门

    这篇文章主要介绍了python FTP编程基础入门的的相关资料,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-02-02
  • pytorch中fuse_modules源码解读

    pytorch中fuse_modules源码解读

    这篇文章主要介绍了pytorch中fuse_modules,fuse_known_modules将给定的模块列表mod_list中的一些常见模块进行融合,返回融合后的模块列表,本文通过实例代码详细讲解,需要的朋友可以参考下
    2023-05-05
  • python基础之集合

    python基础之集合

    这篇文章主要介绍了python集合,实例分析了Python中返回一个返回值与多个返回值的方法,需要的朋友可以参考下
    2021-10-10
  • Python使用pptx实现复制页面到其他PPT中

    Python使用pptx实现复制页面到其他PPT中

    这篇文章主要为大家详细介绍了python如何使用pptx库实现从一个ppt复制页面到另一个ppt里面,文中的示例代码讲解详细,感兴趣的可以尝试一下
    2023-02-02
  • wxPython的安装图文教程(Windows)

    wxPython的安装图文教程(Windows)

    下面小编就为大家分享一篇wxPython的安装图文教程(Windows),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • import sklearn报错正确安装sklearn的解决方法

    import sklearn报错正确安装sklearn的解决方法

    这篇文章主要介绍了import sklearn报错正确安装sklearn的解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Python函数中闭包和延迟绑定详情

    Python函数中闭包和延迟绑定详情

    这篇文章主要介绍了Python函数中闭包和延迟绑定详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05

最新评论