在Python中使用PIL模塊對圖片進(jìn)行高斯模糊處理的教程
從一篇文章中看到,PIL 1.1.5 已經(jīng)內(nèi)置了高斯模糊,但是并沒有在文檔中提及,而且PIL的高斯模糊中 radius 是硬編碼, 雖然構(gòu)造方法中有傳入 radius 參數(shù),但壓根就沒有用到 (看這里),所以需要自己進(jìn)行改造,當(dāng)然,知道了原因, 修改起來自然非常簡單了。
結(jié)合帖子中的需求,對局部進(jìn)行高斯模糊,所以還需要結(jié)合使用 crop 和 paste 方法實(shí)現(xiàn)局部使用濾鏡。
代碼如下:
#-*- 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()
可以看下效果:
相關(guān)文章
IDEA創(chuàng)建python項(xiàng)目詳細(xì)圖文教程
在開始編寫Python代碼之前,需要在IDEA中配置Python環(huán)境,下面這篇文章主要給大家介紹了關(guān)于IDEA創(chuàng)建python項(xiàng)目的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10Python?pycharm讀取文件相對路徑與絕對路徑的方法
這篇文章主要給大家介紹了關(guān)于Python?pycharm讀取文件相對路徑與絕對路徑的方法,絕對路徑就是文件的真正存在的路徑,是指從硬盤的根目錄(盤符)開始,進(jìn)行一級級目錄指向文件,相對路徑就是以當(dāng)前文件為基準(zhǔn)進(jìn)行一級級目錄指向被引用的資源文件,需要的朋友可以參考下2023-12-12Python進(jìn)程間通信multiprocess代碼實(shí)例
這篇文章主要介紹了Python進(jìn)程間通信multiprocess代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03