知行编程网知行编程网  2022-10-31 09:30 知行编程网 隐藏边栏  52 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python如何实现均值滤波?的相关知识,希望可以帮到处于编程学习途中的小伙伴

python如何实现均值过滤?

均值滤波:一种典型的线性滤波算法,是指给图像上的目标像素一个模板,该模板包括其周围的相邻像素(以目标像素为中心的8个像素为​​中心形成一个滤波模板,即去除目标像素本身),然后将原始像素值替换为模板中所有像素的平均值。

import cv2
import numpy as np


def blur_demo(image):            
	"""
	均值模糊 : 去随机噪声有很好的去噪效果
	(1, 15)是垂直方向模糊,(15, 1)是水平方向模糊
	"""
    dst = cv2.blur(image, (1, 15))    
    cv2.imshow("avg_blur_demo", dst)

def median_blur_demo(image):    # 中值模糊  对椒盐噪声有很好的去燥效果
    dst = cv2.medianBlur(image, 5)
    cv2.imshow("median_blur_demo", dst)

def custom_blur_demo(image):
	"""
	用户自定义模糊
	下面除以25是防止数值溢出
	"""
    kernel = np.ones([5, 5], np.float32)/25   
    dst = cv2.filter2D(image, -1, kernel)
    cv2.imshow("custom_blur_demo", dst)

src = cv2.imread("./fapiao.png")
img = cv2.resize(src,None,fx=0.8,fy=0.8,interpolation=cv2.INTER_CUBIC)
cv2.imshow('input_image', img)

blur_demo(img)
median_blur_demo(img)
custom_blur_demo(img)

cv2.waitKey(0)
cv2.destroyAllWindows()

cv2.blur(img, (1, 15)) 进行均值滤波

参数说明:img代表输入图像,(3, 3)代表均值滤波的框大小

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享