二维高斯函数:
其图像为:
设一幅图像为I=f(x,y),I表示图像的灰度值,定义运算:
表示对图像I=f(x,y)进行卷积运算,其中卷积核就是高斯函数,函数L表示通过运算符对G和f进行某种规则XXOO得到的一新函数。实际上运算后的图像L就是被高斯函数模糊过的图像。到这里别管卷积运算是神马,你只要知道符号*表示一种运算规则,只要通过这个规则(后面开始解释)就行。
学过高数的应该要看懂下面这个东西:
看不懂回去面壁思过去 -_-#
这意味着二维高斯函数在每一点(x,y)对应着一个权值,这些权值之和恰好等于1。
公式(2)的含义实际上就是在一个像素点(x,y)处,把高斯函数图像的中心点对准(x,y)点,将点(x,y)周围的所有的像素点与对应的权值相乘后进行求和,点(x,y)对应的权值为G(0,0,σ),点(x+1,y+1)对应的权值为G(1,1,σ),点(x+m,y+n)对应的权值为G(m,n,σ)。
说了半天,嘛意思?
用大白话说,就是点(x,y)最后的像素值应该是其周围每个像素点都贡献了一定的值,再将这些值进行叠加得来的,越靠近点(x,y),其贡献的值越多,当然点(x,y)自己本身贡献的值一定是最多的(因为权重是最大的)。越远离点(x,y)的像素点则贡献的值就越小(因为权重小)。
写成表达式就是这个样子,这也就是公式(2)的离散形式:
m,n为整数,对于图像来说,(x,y)当然也得为整数啦~
这个 h 的值到底取多少合适呢?不用担心,大牛们已经为我们计算好了:
h=3σ
对于半径超过3σ距离以外的点,G(m,n)这个权值几乎快要等于0了,从前面的函数图像可以看到,周围一大片几乎已经贴到坐标平面上了,只有中间突起比较显眼。这就是大家常说的3σ原则。
当你的选取的越大的时候(高斯函数图像整个变胖变矮了),图像被模糊的越厉害,直观上看就是靠近点(x,y)的像素点贡献值相对以前来说变小了,反而那些远离(x,y)点的像素点贡献值反而变大了。