第三章 灰度变换与空间滤波(2)

滤波一词借助于频域处理。低通滤波器的最终效果是模糊(平滑)图像,也可以使用空间滤波器(也成为空格键掩模、核、模板和窗口)直接作用于图像本身而完成类似的平滑。

  1. 空间滤波机理
    空间滤波器由一个领域(典型的是一个较小矩形),对该领域包围的图像像素执行的预定义操作组成。滤波产生一个新像素,该像素的坐标等于领域中心的坐标,像素的值是滤波操作的结果。滤波器的中心访问输入图像中的每个像素,就生成了处理后的图像。如果在图像上执行的是线性操作,则该滤波器称为线性空间滤波器。否则为非线性空间滤波器。
    在这里插入图片描述
    在这里插入图片描述
import numpy as np
import cv2
import matplotlib.pyplot as plt

def MyCopyMakrBorder(str, kernelSize):
    size = kernelSize // 2
    dir = np.zeros((str.shape[0] + size * 2, str.shape[1] + size * 2))
    dir[size:dir.shape[0]-size, size:dir.shape[1]-size] = str
    return dir

def MeanKernel(size=3):
    return np.ones((size, size)) / (size * size)

#kernel size为N*N
def MenaFilter(path, kernel):
    pic = cv2.imread(path, 0)
    n = kernel.shape[0]
    #m = kernel.shape[1]

    border = MyCopyMakrBorder(pic, n)
    #kernel = MyCopyMakrBorder(3)

    out_pic = pic

    for i in range(pic.shape[0]):
        for j in range(pic.shape[1]):
            temp = border[i:i+n, j:j+n]
            out_pic[i, j] = np.sum(temp * kernel)

    return out_pic

def opencv_use(path):
    pic = cv2.imread(path, 0)
    out_pic = cv2.blur(pic, (3, 3))
    return out_pic

show = MenaFilter('picture/histogram.png', MeanKernel(3))
plt.subplot(2, 1, 1)
plt.imshow(show, cmap = "gray")
opencv_show = opencv_use('picture/histogram.png')
plt.subplot(2, 1, 2)
plt.imshow(opencv_show, cmap = "gray")

plt.show()
  1. 空间相关与卷积
    相关是滤波模板移过图像并计算每个位置乘积之和的处理。
    卷积的机理类似,但滤波器首先需要旋转180°。

3.空间平滑滤波器
平滑滤波器用于模糊处理和降低噪声。模糊处理经常用于预处理任务,例如在目标提取之前去除图像中的一些琐碎细节,以及桥接直线或曲线的缝隙。通过线性滤波和非线性滤波模糊处理,可以降低噪声。
均值滤波、加权均值滤波、中值滤波

4.锐化空间滤波器
锐化处理的主要目的是突出灰度的过度部分。均值处理与里分类似,锐化处理可由空间微分来实现。基本上,微分算子的相应强度与图像在用算子操作的这一点的突变程度成正比,这样,图像微分增强边缘和其他突变(如噪声),而削弱灰度变化幻魔的区域。

一阶微分:
在这里插入图片描述
二阶微分:
在这里插入图片描述
二阶微分-拉普拉斯算子:
在这里插入图片描述
在这里插入图片描述
拉普拉斯增强方法:
在这里插入图片描述
5. 非锐化掩码和高提升滤波
在印刷和出版界使用多年的图像锐化处理过程是从原图中减去一幅非锐化(平滑过的)版本。步骤如下:
①模糊图像
在这里插入图片描述
②从原图像中减去模糊图像(产生的差值图像称为模板)
在这里插入图片描述
③将模板加到原图像上
在这里插入图片描述
k>=0,当k>1时,该处理为高提升滤波。k<1时不强调非锐化模板的贡献。
在这里插入图片描述
6.使用一阶微分对图像锐化–梯度
图像处理中的一阶微分是用梯度来实现。
在这里插入图片描述
在这里插入图片描述
在实际应用中使用绝对值近似平方和平方根跟适合计算。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值