python如何实现均值滤波?

发布时间:2022-06-01 09:42:13 人气:651 作者:多测师

  python 均值滤波:典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标像素为中心的周围8个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。

  import cv2

  import numpy as np

  def blur_demo(image):

  """

  均值模糊 : 去随机噪声有很好的去噪效果

  (1, 15)是垂直方向模糊,(15, 1)是水平方向模糊

  """

python如何实现均值滤波?

  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) 表示进行均值滤波的方框大小

  以上内容为大家介绍了python如何实现均值滤波?希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线