前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >空域噪声滤波器

空域噪声滤波器

作者头像
裴来凡
发布2022-05-29 09:33:29
3660
发布2022-05-29 09:33:29
举报
文章被收录于专栏:图像处理与模式识别研究所
代码语言:javascript
复制
import os
import numpy as np
import cv2
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
def put(path):
    img=cv2.imread(path,1)
    img=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
    rows,cols=img.shape[:2]
    #添加噪声
    img_noise=img.copy()
    for i in range(5000):
        x=np.random.randint(0,rows)
        y=np.random.randint(0,cols)
        img_noise[x,y]=img[x,y]+np.random.randint(50,100)
    #均值滤波
    res1=cv2.blur(img_noise,(9,9))
    #统计排序滤波器
    #中值滤波
    res2=cv2.medianBlur(img_noise,5)
    plt.subplot(2,2,1),plt.axis('off'),plt.imshow(img,plt.cm.gray),plt.title('原始图像')
    plt.subplot(2,2,2),plt.axis('off'),plt.imshow(img_noise,plt.cm.gray),plt.title('加入噪声后图像')
    plt.subplot(2,2,3),plt.axis('off'),plt.imshow(res1,plt.cm.gray),plt.title('均值滤波器')
    plt.subplot(2,2,4),plt.axis('off'),plt.imshow(res2,plt.cm.gray),plt.title('中值滤波器')
    plt.savefig('C:/Users/xpp/Desktop/result.png')
    plt.show()
put(r'C:/Users/xpp/Desktop/Lena.png')

算法:空域噪声滤波器是在待处理的图像中逐点地移动模板,滤波器在该点的响应通过事先定义的滤波器系数与滤波模板扫过区域的相应像素值的关系来计算。

空域噪声滤波器可以按照以下关系进行分类:

  • 从数学形态上,空域噪声滤波器分为线性滤波器和非线性滤波器
  • 从处理效果上,空域噪声滤波器分为平滑空间滤波器和锐化空间滤波器
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 图像处理与模式识别研究所 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档