opencv学习笔记 边缘滤波保留(EPF) 高斯双边 均值迁移

双边滤波函数bilateralFilter():定义:bilateralFilter(src, d, sigmaColor, sigmaSpace, dst=None, borderType=None) 

src: 图像矩阵

d:邻域直径

sigmaColor:颜色标准差

sigmaSpace:空间标准差

可以看出对图像的边缘处理的很好,左下角的图标没有模糊掉(图像边缘是指图像属性区域和另一个属性区域的交接处,是区域属性发生突变的地方,是图像不确定性最大的地方,也是图像信息最集中的地方,图像的边缘包含着丰富的信息)

# coding=GBK
import cv2 as cv
import numpy as np

		
 
    
image1=cv.imread("D://bil.png")
cv.imshow("yuantu",image1)
dst=cv.bilateralFilter(image1,0,100,15)
cv.imshow("hanshu_gaussian",dst)
cv.waitKey(0)
cv.destroyAllWindows()

另一个EPF的经典实现是均值迁移

 

比起高斯双边,均值迁移有时候过度模糊

扫描二维码关注公众号,回复: 3188906 查看本文章

原型:

void pyrMeanShiftFiltering( InputArray src, OutputArray dst,
                                         double sp, double sr, int maxLevel=1,
                                         TermCriteria termcrit=TermCriteria(
                                            TermCriteria::MAX_ITER+TermCriteria::EPS,5,1) );

 src 是图像

sp:定义漂移物理空间半径大小

sr:    定义漂移色彩空间半径大小

# coding=GBK
import cv2 as cv
import numpy as np

		
 
    
image1=cv.imread("D://bil.png")
cv.imshow("yuantu",image1)
dst=cv.pyrMeanShiftFiltering(image1,10,50)
cv.imshow("hanshu_gaussian",dst)
cv.waitKey(0)
cv.destroyAllWindows()

猜你喜欢

转载自blog.csdn.net/qq_41603898/article/details/81835302