pillow 圖像降噪處理

2022-08-29 15:39 更新

由于成像設(shè)備、傳輸媒介等因素的影響,圖像總會(huì)或多或少的存在一些不必要的干擾信息,我們將這些干擾信息統(tǒng)稱為“噪聲”,比如數(shù)字圖像中常見(jiàn)的“椒鹽噪聲”,指的是圖像會(huì)隨機(jī)出現(xiàn)的一些白、黑色的像素點(diǎn)。圖像噪聲既影響了圖像的質(zhì)量,又妨礙人們的視覺(jué)觀賞。因此,噪聲處理是圖像處理過(guò)程中必不可少的環(huán)節(jié)之一,我們把處理圖像噪聲的過(guò)程稱為“圖像降噪”。

隨著數(shù)字圖像技術(shù)的不斷發(fā)展,圖像降噪方法也日趨成熟,通過(guò)某些算法來(lái)構(gòu)造濾波器是圖像降噪的主要方式。濾波器能夠有效抑制噪聲的產(chǎn)生,并且不影響被處理圖像的形狀、大小以及原有的拓?fù)浣Y(jié)構(gòu)。


Pillow 通過(guò) ImageFilter 類(lèi)達(dá)到圖像降噪的目的,該類(lèi)中集成了不同種類(lèi)的濾波器,通過(guò)調(diào)用它們從而實(shí)現(xiàn)圖像的平滑、銳化、邊界增強(qiáng)等圖像降噪操作。常見(jiàn)的降噪濾波器如下表所示:

圖像降噪濾波器
名稱 說(shuō)明
ImageFilter.BLUR 模糊濾波,即均值濾波
ImageFilter.CONTOUR 輪廓濾波,尋找圖像輪廓信息
ImageFilter.DETAIL 細(xì)節(jié)濾波,使得圖像顯示更加精細(xì)
ImageFilter.FIND_EDGES 尋找邊界濾波(找尋圖像的邊界信息)
ImageFilter.EMBOSS 浮雕濾波,以浮雕圖的形式顯示圖像
ImageFilter.EDGE_ENHANCE 邊界增強(qiáng)濾波
ImageFilter.EDGE_ENHANCE_MORE 深度邊緣增強(qiáng)濾波
ImageFilter.SMOOTH 平滑濾波
ImageFilter.SMOOTH_MORE 深度平滑濾波
ImageFilter.SHARPEN 銳化濾波
ImageFilter.GaussianBlur() 高斯模糊
ImageFilter.UnsharpMask() 反銳化掩碼濾波
ImageFilter.Kernel() 卷積核濾波
ImageFilter.MinFilter(size) 最小值濾波器,從 size 參數(shù)指定的區(qū)域中選擇最小像素值,然后將其存儲(chǔ)至輸出圖像中。
ImageFilter.MedianFilter(size) 中值濾波器,從 size 參數(shù)指定的區(qū)域中選擇中值像素值,然后將其存儲(chǔ)至輸出圖像中。
ImageFilter.MaxFilter(size) 最大值濾波器
ImageFilter.ModeFilter() 模式濾波

從上述表格中選取幾個(gè)方法進(jìn)行示例演示,下面是等待處理的原始圖像:

pillow圖像處理

圖1:pilow圖像處理


模糊處理

# 導(dǎo)入Image類(lèi)和ImageFilter類(lèi)
from PIL import Image,ImageFilter
im = Image.open("../國(guó)寶.jpg")
#圖像模糊處理
im_blur=im.filter(ImageFilter.BLUR)
im_blur.show()
im_blur.save("../模糊.png")

輸出圖像如下:

pillow圖像處理

圖2:圖像模糊


輪廓圖

from PIL import Image,ImageFilter
im = Image.open("../國(guó)寶.jpg")
#生成輪廓圖
im2=im.filter(ImageFilter.CONTOUR)
im2.show()
im2.save("../輪廓圖.png")

輸出圖像,顯示如下:

pillow圖像處理

圖3:圖像輪廓圖


邊緣檢測(cè) 

from PIL import Image,ImageFilter
im = Image.open("../國(guó)寶.jpg")
#邊緣檢測(cè)
im3=im.filter(ImageFilter.FIND_EDGES)
im3.show()
im3.save("../邊緣檢測(cè).png")

輸出圖像結(jié)果:

pillow圖像處理

圖4:圖像邊緣檢測(cè)


浮雕圖

from PIL import Image,ImageFilter
im = Image.open("../國(guó)寶.jpg")
#浮雕圖
im4=im.filter(ImageFilter.EMBOSS)
im4.show()
im4.save("../浮雕圖.png")

輸出圖像如下:

pillow圖像處理

圖5:浮雕圖


平滑圖像

#生成平滑圖像
from PIL import Image,ImageFilter
im = Image.open("../國(guó)寶.jpg")
#平滑圖smooth
im5=im.filter(ImageFilter.SMOOTH)
im5.show()
im5.save("../平滑圖.png")

輸出圖像如下:

pillow圖像處理

圖6:平滑圖

如果您使用過(guò) PhotoShop(簡(jiǎn)稱 Ps,一款專業(yè)的圖像處理軟件)、Fireworks(簡(jiǎn)稱 Fw,一款專業(yè)的圖像處理軟件) 或者手機(jī)美圖軟件的話,其實(shí)不難發(fā)現(xiàn),上述操作就是給圖片添加一個(gè)“濾鏡”,通過(guò)添加濾鏡來(lái)改變圖片的外觀,從而影響了我們對(duì)于圖片的感官體驗(yàn)。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)