Python3+OpenCV3+Pycharm编程:边缘保留滤波

高斯双边模糊

def bi_demo(image):
    """
    斯双边模糊:
    d:即 distance,常规为 0 ,像素的邻域直径,可有sigmaColor和sigmaSpace计算可得;
    sigmaColor:尽量取大,目的将小的差异模糊掉,噪声去掉
    sigmaSpace:尽量取小,那么“核”就小一点,主要的差异就保留下来
    """
    dst = cv.bilateralFilter(image, 0, 100, 15)
    cv.imshow("bilateralFilter", dst)

均值迁移模糊

def shift_demo(image):
    """
    均值迁移模糊:
    sp:(The spatial window radius) 定义的漂移物理空间半径大小
    sr:(The color window radius) 定义的漂移色彩空间半径大小
    """
    dst = cv.pyrMeanShiftFiltering(image, 10, 50)
    cv.imshow("pyrMeanShiftFiltering", dst)

 

代码

# -*- coding: utf-8 -*-
# By:iloveluoluo
# 2019.3.25
import cv2 as cv
import numpy as np

# EPF
# 高斯双边,均值迁移


def bi_demo(image):
    """
    斯双边模糊:
    d:即 distance,常规为 0 ,像素的邻域直径,可有sigmaColor和sigmaSpace计算可得;
    sigmaColor:尽量取大,目的将小的差异模糊掉,噪声去掉
    sigmaSpace:尽量取小,那么“核”就小一点,主要的差异就保留下来
    """
    dst = cv.bilateralFilter(image, 0, 100, 15)
    cv.imshow("bilateralFilter", dst)


def shift_demo(image):
    """
    均值迁移模糊:
    sp:(The spatial window radius) 定义的漂移物理空间半径大小
    sr:(The color window radius) 定义的漂移色彩空间半径大小
    """
    dst = cv.pyrMeanShiftFiltering(image, 10, 50)
    cv.imshow("pyrMeanShiftFiltering", dst)


src = cv.imread('E:/MyFile/Picture/date/example.png')  # 读取椒盐噪声图片
cv.imshow("src demo", src)
bi_demo(src)
shift_demo(src)

cv.waitKey(0)
cv.destroyAllWindows()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值