高斯滤波(一)
简单介绍下刚刚看的高斯滤波。
一 在学习高斯滤波前要先了解相关数学背景-----一维高斯分布、二维高斯分布。
二维正态分布在高斯滤波中用二维正态分布,并且其中心值取(0,0) 结合紧密程度的参数p取0。如图。
二 首先,高斯滤波主要是一种线性(对原有图像上进行线性运算)平滑(取平均值)滤波。高斯滤波主要是为了消除噪声,提取特征,对高斯噪声有较好的效果。
高斯噪声: 就是它的概率密度函数服从高斯分布(即正态分布)的一类噪声。
三 高斯滤波步骤:
第一步,求出高斯核(高斯模板、掩膜),就是取一个窗口利用二维高斯分布计算不同位置的值,这里由于取中心为零坐标点所以该值只与标准差有关。计算出结果后由于高斯分布的特性,相加应为1,所以要进行归一化即分别除以权重和得出结果即为高斯模板。
第二步,将输入图像像素值,乘以模板(权重),然后再把总点数相加作为输出像素值,之后求出每个像素值。
简单来说就是根据高斯分布得到高斯模板然后做卷积相加的一个过程
举例:
第一步:
假定中心点的坐标是(0,0),那么取距离它最近的8个点坐标,为了计算,需要设定σ的值。假定σ=1.5,则模糊半径为1的高斯模板就算如下
这个时候我们我们还要确保这九个点加起来为1(这个是高斯模板的特性),这9个点的权重总和等于0.4787147,因此上面9个值还要分别除以0.4787147,得到最终的高斯模板。
第二步:
有了高斯模板,那么高斯滤波的计算便顺风顺水了。假设现有9个像素点,灰度值(0-255)的高斯滤波计算如下:
将这9个值加起来,就是中心点的高斯滤波的值。对所有点重复这个过程,就得到了高斯模糊后的图像。
四 心得:为啥要用高斯分布的方法进行滤波呢?
正常滤波的方法是去周围像素的平均值,取值范围越大图像越平滑,但是不同位置的权重也不相同,一般来说越靠近该点的权重越大反之则越小,这个特征符合高斯分布,又因为图像是二维的所以选用二维高斯分布来对图像进行处理。在进行求取模板时,取中心为原点(即标准正态分布)方差决定了图像的高度,方差越大图像越高越窄,靠近中心权重越大。选取合适的方差(我也不知道怎么选),求出高斯核在进行卷积求和输出。