OpenCV半小時掌握基本操作之高斯雙邊
【OpenCV】 ⚠️高手勿入! 半小時學(xué)會基本操作 ⚠️ 高斯雙邊
概述
OpenCV 是一個跨平臺的計算機視覺庫, 支持多語言, 功能強大. 今天帶大家用 OpenCV 來實現(xiàn)一個簡單的磨皮.
邊緣保留濾波 (EPF)
邊緣保留濾波 (Edge Preserving Filter) 是圖像處理的一種技術(shù). 有別與傳統(tǒng)濾波, EPF 會對差別較大的像素區(qū)域進行區(qū)分, 在保持邊緣銳利的同時消除噪聲或紋理.
高斯雙邊
雙邊濾波 (Bilateral Filter) 即高斯濾波. 濾波器由兩個函數(shù)構(gòu)成. 一個函數(shù)是由集合空間距離決定濾波器系數(shù). 另一個是由像素差值決定濾波系數(shù).
格式:
cv2.bilateralFilter(src, d, sigmaColor, sigmaSpace, dst=None, borderType=None)
參數(shù):
- src: 輸入圖像
- d: 相鄰像素的直徑
- sigmaColor: 顏色空間過濾
- sigmaSpace: 坐標(biāo)空間過濾
例子:
import numpy as np import cv2 # 讀取圖片 image = cv2.imread("face.jpg") # 高斯二邊 dest = cv2.bilateralFilter(image, 0, 100, 15) # 圖片展示 combine = np.hstack((image, dest)) cv2.imshow("combine", combine) cv2.waitKey(0) cv2.destroyAllWindows() # 保存結(jié)果 cv2.imwrite("bilateral.jpg", combine)
輸出結(jié)果:
高斯模糊 vs 高斯雙邊:
均值遷移
均值遷移 (Mean-Shift Blur) 會計算得到像素均值與空間位置均值, 使用新的均值作為窗口中心位置.
格式:
cv2.pyrMeanShiftFiltering(src, sp, sr, dst=None, maxLevel=None, termcrit=None)
參數(shù):
- src: 輸入圖像
- sp: 空間窗口半徑
- sr: 顏色窗口半徑
- maxLevel: 分割金字塔的最大級別
- termcrit: 終止條件, 默認為 None
例子:
import numpy as np import cv2 # 讀取圖片 image = cv2.imread("face.jpg") # 均值遷移 dest = cv2.pyrMeanShiftFiltering(image, 10, 50) # 圖片展示 combine = np.hstack((image, dest)) cv2.imshow("combine", combine) cv2.waitKey(0) cv2.destroyAllWindows() # 圖片保存 cv2.imwrite("mean_shift.jpg", combine)
輸出結(jié)果:
到此這篇關(guān)于OpenCV半小時掌握基本操作之高斯雙邊的文章就介紹到這了,更多相關(guān)OpenCV高斯雙邊內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。