OpenCV半小時(shí)掌握基本操作之濾波器
【OpenCV】⚠️高手勿入! 半小時(shí)學(xué)會(huì)基本操作⚠️濾波器
概述
OpenCV 是一個(gè)跨平臺(tái)的計(jì)算機(jī)視覺(jué)庫(kù), 支持多語(yǔ)言, 功能強(qiáng)大. 今天小白就帶大家一起攜手走進(jìn) OpenCV 的世界. (第 9 課)

圖像平滑
圖像平滑 (image smoothing) 是一種區(qū)域增強(qiáng)算法. 可以幫助我們?nèi)コ琰c(diǎn)改善圖片質(zhì)量.
濾波器 (Filter) 可以幫助我們來(lái)降低噪聲, 均值濾波器的主要應(yīng)用是去除圖像中的不相關(guān)細(xì)節(jié).

原圖:

均值濾波器
均值濾波器會(huì)計(jì)算區(qū)域像素的平均值, 然后進(jìn)行填充.
代碼:
# 讀取圖片
img = cv2.imread("noise.jpg")
# 均值濾波器 (3 X 3)
blur = cv2.blur(img, (3, 3))
# 圖片展示
cv2.imshow("blur", blur)
cv2.waitKey(0)
cv2.destroyAllWindows()
輸出結(jié)果:

方框?yàn)V波
方框?yàn)V波器 (Box Filter) 和均值濾波器基本一樣.
格式:
cv2.boxFilter(src, ddepth, ksize, dst=None, anchor=None, normalize=None, borderType=None)
參數(shù):
- src: 需要濾波的圖片
- ddepth: 輸入圖像的深度, -1 代表使用原圖深度
- Normalize: 標(biāo)準(zhǔn)化, 默認(rèn)為 None
代碼:
# 讀取圖片
img = cv2.imread("noise.jpg")
# 方框?yàn)V波器 (3 X 3)
box = cv2.boxFilter(img, -1, (3, 3), normalize=True)
# 圖片展示
cv2.imshow("box", box)
cv2.waitKey(0)
cv2.destroyAllWindows()
輸出結(jié)果:

高斯濾波器
高斯濾波器 (Gauss Filter) 是一種線性平滑濾波, 適用于高斯噪聲.
高斯噪聲 (Gaussian Noise) 是概率密度函數(shù)服從高斯分布的一類(lèi)噪聲.

格式:
cv2.GaussianBlur(src, ksize, sigmaX, dst=None, sigmaY=None, borderType=None)
參數(shù):
src: 需要濾波的圖片
ksize: 卷積核大小
sigmaX: 高斯核函數(shù)在 X 方向的的標(biāo)準(zhǔn)偏差
sigmaY: 高斯核函數(shù)在 Y 方向的的標(biāo)準(zhǔn)偏差
代碼:
# 讀取圖片
img = cv2.imread("noise.jpg")
# 高斯濾波器 (3 X 3)
gaussian = cv2.GaussianBlur(img, (3, 3), 1)
# 圖片展示
cv2.imshow("gaussian", gaussian)
cv2.waitKey(0)
cv2.destroyAllWindows()
輸出結(jié)果:

中值濾波
中值濾波器 (Median Filter) 用中值填充.
代碼:
# 讀取圖片
img = cv2.imread("noise.jpg")
# 中值濾波器 (3 X 3)
median = cv2.medianBlur(img, 3)
# 圖片展示
cv2.imshow("median", median)
cv2.waitKey(0)
cv2.destroyAllWindows()
輸出結(jié)果:

到此這篇關(guān)于OpenCV半小時(shí)掌握基本操作之濾波器的文章就介紹到這了,更多相關(guān)OpenCV濾波器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python使用Selenium WebDriver的入門(mén)介紹及安裝教程(最新推薦)
這篇文章主要介紹了Python使用Selenium WebDriver的入門(mén)介紹及安裝教程,本文使用環(huán)境為python3.11+win10 64位+firefox瀏覽器,所以本文使用的瀏覽器驅(qū)動(dòng)是Firefox的geckodriver ,如果你使用的是其他瀏覽器,那么選擇自己對(duì)應(yīng)的瀏覽器驅(qū)動(dòng)程序即可,需要的朋友可以參考下2023-04-04
Keras使用tensorboard顯示訓(xùn)練過(guò)程的實(shí)例
今天小編就為大家分享一篇Keras使用tensorboard顯示訓(xùn)練過(guò)程的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02
python中的隨機(jī)函數(shù)random的用法示例
這篇文章主要介紹了python中的隨機(jī)函數(shù)random的用法示例,詳細(xì)的介紹了python 隨機(jī)函數(shù)random的用法和示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
ubuntu安裝jupyter并設(shè)置遠(yuǎn)程訪問(wèn)的實(shí)現(xiàn)
Jupyter?Notebook是Ipython的升級(jí)版,而Ipython可以說(shuō)是一個(gè)加強(qiáng)版的交互式Shell,本文主要介紹了ubuntu安裝jupyter并設(shè)置遠(yuǎn)程訪問(wèn)的實(shí)現(xiàn),感興趣的可以了解一下2022-03-03
Python使用Flask框架同時(shí)上傳多個(gè)文件的方法
這篇文章主要介紹了Python使用Flask框架同時(shí)上傳多個(gè)文件的方法,實(shí)例分析了Python中Flask框架操作文件實(shí)現(xiàn)上傳的技巧,需要的朋友可以參考下2015-03-03
python爬蟲(chóng) 爬取58同城上所有城市的租房信息詳解
這篇文章主要介紹了python爬蟲(chóng) 爬取58同城上所有城市的租房信息詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
使用Python中的reduce()函數(shù)求積的實(shí)例
今天小編就為大家分享一篇使用Python中的reduce()函數(shù)求積的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
Python?的矩陣傳播機(jī)制Broadcasting和矩陣運(yùn)算
這篇文章主要介紹了Python?的矩陣傳播機(jī)制Broadcasting和矩陣運(yùn)算,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-06-06
python中set()函數(shù)簡(jiǎn)介及實(shí)例解析
這篇文章主要介紹了python中set()函數(shù)簡(jiǎn)介及實(shí)例解析,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01

