【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
在谈高斯滤波之前,我们不妨回顾一下之前谈到的均值滤波和中值滤波。均值滤波,就是对像素点以及周围的8个点计算平均值,然后赋值给新像素点。而中值滤波,则是对像素点及周围的8个点进行排序,选择最中间的那个点赋值给新像素点。那什么是高斯滤波呢?可以观察下均值滤波中,当时是对9个点进行平均操作,这样求解下来的就是平均值。试想一下,如果每一个像素点的权重不一样呢?
高斯滤波正是根据这个道理提出来的。它的基本原理就是,越靠近当前像素点,权重越高,而越远离像素点,则权重越低。这样,权重不再是[1,1,1;1,1,1;1,1,1],而是[1,2,1;2,4,2;1,2,1],求得的像素之和也不再是除以9,而是变成了除以16,因为1+2+1+2+4+2+1+2+1=16。
接下来,可以看下高斯滤波的效果如何,还是以lena作为范例进行介绍,
1、借助于opencv的api实现高斯滤波
opencv本身也提供了高斯滤波的处理方法。使用起来比较简单,直接调用即可,关键是需要知道api对应参数的意义即可,