OpenCV半小時掌握基本操作之濾波器
【OpenCV】⚠️高手勿入! 半小時學(xué)會基本操作⚠️濾波器
概述
OpenCV 是一個跨平臺的計(jì)算機(jī)視覺庫, 支持多語言, 功能強(qiáng)大. 今天小白就帶大家一起攜手走進(jìn) OpenCV 的世界. (第 9 課)
圖像平滑
圖像平滑 (image smoothing) 是一種區(qū)域增強(qiáng)算法. 可以幫助我們?nèi)コ琰c(diǎn)改善圖片質(zhì)量.
濾波器 (Filter) 可以幫助我們來降低噪聲, 均值濾波器的主要應(yīng)用是去除圖像中的不相關(guān)細(xì)節(jié).
原圖:
均值濾波器
均值濾波器會計(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ù)服從高斯分布的一類噪聲.
格式:
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半小時掌握基本操作之濾波器的文章就介紹到這了,更多相關(guān)OpenCV濾波器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python使用Selenium WebDriver的入門介紹及安裝教程(最新推薦)
這篇文章主要介紹了Python使用Selenium WebDriver的入門介紹及安裝教程,本文使用環(huán)境為python3.11+win10 64位+firefox瀏覽器,所以本文使用的瀏覽器驅(qū)動是Firefox的geckodriver ,如果你使用的是其他瀏覽器,那么選擇自己對應(yīng)的瀏覽器驅(qū)動程序即可,需要的朋友可以參考下2023-04-04Keras使用tensorboard顯示訓(xùn)練過程的實(shí)例
今天小編就為大家分享一篇Keras使用tensorboard顯示訓(xùn)練過程的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02python中的隨機(jī)函數(shù)random的用法示例
這篇文章主要介紹了python中的隨機(jī)函數(shù)random的用法示例,詳細(xì)的介紹了python 隨機(jī)函數(shù)random的用法和示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01ubuntu安裝jupyter并設(shè)置遠(yuǎn)程訪問的實(shí)現(xiàn)
Jupyter?Notebook是Ipython的升級版,而Ipython可以說是一個加強(qiáng)版的交互式Shell,本文主要介紹了ubuntu安裝jupyter并設(shè)置遠(yuǎn)程訪問的實(shí)現(xiàn),感興趣的可以了解一下2022-03-03使用Python中的reduce()函數(shù)求積的實(shí)例
今天小編就為大家分享一篇使用Python中的reduce()函數(shù)求積的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06Python?的矩陣傳播機(jī)制Broadcasting和矩陣運(yùn)算
這篇文章主要介紹了Python?的矩陣傳播機(jī)制Broadcasting和矩陣運(yùn)算,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-06-06python中set()函數(shù)簡介及實(shí)例解析
這篇文章主要介紹了python中set()函數(shù)簡介及實(shí)例解析,具有一定借鑒價值,需要的朋友可以參考下2018-01-01