您的位置:首页 > 运维架构

用OpenCV的GaussianBlur函数做高斯滤波

2017-10-25 11:28 411 查看
本文转载自 http://opencv66.net/thread-29-1-1.html

高斯滤波器是一类根据高斯函数的形状来选择权值的线性平滑滤波器,听说高斯滤波器对于服从正太分布(高斯分布)的噪声非常有效,然而实际来看,貌似效果也不怎么样啊,具体的大家可以看本篇帖子代码的运行结果,是笔者哪里没操作对么?

GaussianBlur函数原型如下:

C++: void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double sigmaY=0, int borderType=BORDER_DEFAULT )

参数意义如下:
src:输入图像。
dst:输出图像。
ksize:核算子大小(核算子的概念见帖子 http://opencv66.net/thread-26-1-1.html)。 sigmaX:高斯核在X方向上的标准差,如果写为0,则由ksize.width计算出一个sigmaX。
sigmaY:高斯核在X方向上的标准差,如果写为0,则和sigmaX一样;如果sigmaX也为0,则由ksize.height计算出一个sigmaY。
borderType:这个参数的意义详见帖了http://opencv66.net/thread-26-1-1.html
示例代码如下:
代码请访问原帖  http://opencv66.net/thread-29-1-1.html 查看

代码请访问原帖  http://opencv66.net/thread-29-1-1.html 查看

代码请访问原帖  http://opencv66.net/thread-29-1-1.html 查看

运行结果截图如下:



从截图中可以看出高斯滤波对高斯噪声的效果好么?我是没看出来....

本文转载自 http://opencv66.net/thread-29-1-1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息