LOFTER-网易轻博

双边滤波与均值漂移
团子 2019-05-05

双边滤波

双边滤波是低通滤波处理的一种。

双边滤波器的好处是可以做边缘保存,即在过滤掉图像噪声的同时保留图像的边缘细节;但由于保存了过多的高频信息,对于彩色图像里的高频噪声,双边滤波器不能够干净的滤掉,只能够对于低频的信息进行较好的滤波

高斯滤波在低通滤波算法中有不错的表现,但是其却有另外一个问题,那就是只考虑了像素间的空间位置上的关系,因此滤波的结果会丢失边缘的信息。这里的边缘主要是指图像中主要的不同颜色区域(比如蓝色的天空,黑色的头发等),而Bilateral就是在Gaussian blur中加入了另外的一个权重分部来解决这一问题。


均值漂移

meanShfit均值漂移算法是一种通用的聚类算法,它的基本原理为,对于给定的一定样本,任选其中一个样本,以该样本为中心点划定一个圆形区域,求取该圆形区域内的样本的质心,即密度最大处的点,再以该点为中心继续执行上述迭代过程,直至收敛

均值漂移本质上是一种聚类算法,可用于图像分割、平滑、跟踪等场景

python+opencv代码演示

import cv2 as cv

import numpy as np


defbi_demo(image):   #双边滤波

    dst = cv.bilateralFilter(image, 0, 100, 15)

    cv.namedWindow("bi_demo", cv.WINDOW_NORMAL)

    cv.imshow("bi_demo", dst)


defshift_demo(image):   #均值迁移

    dst = cv.pyrMeanShiftFiltering(image, 10, 50)

    cv.namedWindow("shift_demo", cv.WINDOW_NORMAL)

    cv.imshow("shift_demo", dst)


src = cv.imread('E:/imageload/cat.jpg')

cv.namedWindow('input_image', cv.WINDOW_NORMAL)

cv.imshow('input_image', src)


bi_demo(src)

shift_demo(src)


cv.waitKey(0)

cv.destroyAllWindows()


参考文献:

通俗理解Meanshift均值漂移算法:https://www.cnblogs.com/lowbi/p/10733733.html

meanShfit均值漂移算法:https://www.jianshu.com/p/bd831a122735

图像处理之双边滤波介绍与源码实现:https://www.cnblogs.com/qiqibaby/p/5296681.html

Python+OpenCV图像处理(七)—— 滤波与模糊操作:https://www.cnblogs.com/FHC1994/p/9097231.html


推荐文章
评论(0)
联系我们|招贤纳士|移动客户端|风格模板|官方博客
网易公司版权所有 ©1997-2019 浙公网安备 33010802010186号浙ICP备16011220号-11增值电信业务经营许可证:浙B2-20160599
网络文化经营许可证: 浙网文[2019]3904-370号自营经营者信息
分享到
转载我的主页