溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

opencv圖像濾波的作用是什么

發(fā)布時間:2020-07-09 10:17:45 來源:億速云 閱讀:1468 作者:清晨 欄目:開發(fā)技術(shù)

小編給大家分享一下opencv圖像濾波的作用是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

為什么要使用濾波

消除圖像中的噪聲成分叫作圖像的平滑化或?yàn)V波操作。信號或圖像的能量大部分集中在幅度譜的低頻和中頻段是很常見的,而在較高頻段,感興趣的信息經(jīng)常被噪聲淹沒。因此一個能降低高頻成分幅度的濾波器就能夠減弱噪聲的影響。
如下圖,左圖帶有椒鹽噪聲,右圖為使用中值濾波處理后的圖片。

opencv圖像濾波的作用是什么

圖像濾波的目的有兩個:一是抽出對象的特征作為圖像識別的特征模式;另一個是為適應(yīng)圖像處理的要求,消除圖像數(shù)字化時所混入的噪聲。

python +opencv講解

均值濾波

含義
如圖:如果我們想對紅色點(diǎn)進(jìn)行處理,則它新值等于周圍N乘N個像素點(diǎn)的平均(包括自身)

opencv圖像濾波的作用是什么

用表達(dá)式表達(dá):

opencv圖像濾波的作用是什么

擴(kuò)展到對整個圖像進(jìn)行均值濾波

opencv圖像濾波的作用是什么

實(shí)現(xiàn)方法:
處理結(jié)果=cv2.blur(原始圖像,核大小)

核大?。阂裕▽挾龋叨龋┑脑?br/>效果:使圖像變模糊啦。能處理被椒鹽攻擊過的照片。

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.blur(a,(8,8))
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

opencv圖像濾波的作用是什么

方框?yàn)V波

實(shí)現(xiàn)方法:函數(shù)boxFilter
處理結(jié)果=cv2.boxFilter(原始圖像,目標(biāo)圖像深度,核大小,normalize屬性)

目標(biāo)圖像深度: int類型的目標(biāo)圖像深度,-1表示與原始圖像一致
核大?。海▽挾?,高度)元祖
normalize:是否對目標(biāo)圖像進(jìn)行歸一化處理
normalize為true 時與均值濾波一樣,為false時表示任意一個點(diǎn)的像素為周圍像素點(diǎn)的和,容易發(fā)生溢出超過255

opencv圖像濾波的作用是什么

normalize=1,1為true

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.boxFilter(a,-1,(5,5),normalize=1)
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

結(jié)果:

opencv圖像濾波的作用是什么

normalize=0,0為false
結(jié)果中只有幾個點(diǎn)不是白色

opencv圖像濾波的作用是什么

減少核大小為(2,2)normalize=0

opencv圖像濾波的作用是什么

高斯濾波

含義:
中心點(diǎn)權(quán)重高,越遠(yuǎn)越低

opencv圖像濾波的作用是什么

實(shí)現(xiàn)方法:GaussianBlur

處理結(jié)果=cv2.GaussianBlur(原始圖像src,核函數(shù)大小ksize,sigmaX)

核函數(shù)大小ksize:(N,N)必須是奇數(shù)
sigmaX:控制x方向方差,控制權(quán)重,一般取0,它自己去計算方差。y軸方差和x一致

opencv圖像濾波的作用是什么

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.GaussianBlur(a,(3,3),0)
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

opencv圖像濾波的作用是什么

中值濾波

使用像素點(diǎn)鄰域附近的像素的中值代替該點(diǎn)的像素值。通俗點(diǎn)來說,在這個像素的左邊找五個像素點(diǎn),右邊找五個像素點(diǎn),將這些像素進(jìn)行排序,排序過后產(chǎn)生一個中值,用中間大小的值,來代替該像素的值。

中值濾波可以有效的去除斑點(diǎn)和椒鹽噪聲。但是效率低,其運(yùn)算時間 為均值濾波的五倍以上。

opencv圖像濾波的作用是什么

實(shí)現(xiàn)方法:medianBlur
目標(biāo)圖像=cv2.medianBlur(原始圖像,intksize)
intksize:核函數(shù),必須為奇數(shù).

import cv2
a=cv2.imread('lenacolor.png')#
b=cv2.medianBlur(a,5)
cv2.imshow('original',a)
cv2.imshow('result',b)
cv2.waitKey(0)
cv2.destroyAllWindows()

opencv圖像濾波的作用是什么

看完了這篇文章,相信你對opencv圖像濾波的作用是什么有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI