opencv3.0学习笔记【10/14】各种滤波函数

线性滤波


方框滤波

[cpp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. void boxFilter(InputArray src, OutputArray, dst,  int ddepth, Size ksize, Point Anchor = Point(-1, -1), bool normalize = trueint borderType = BORDER_DEFAULT)  

第一个参数 输入

第二个参数 输出

第三个参数 输出图像深度,为负时(-1)时表示和源图像一致

第四个参数 内核大小

后面的参数用默认即可

第五个参数 锚点坐标,如果都为负(Point(-1,-1)),即取内核中点为锚点

第六个参数  归一化

第七个参数 边界类型,取BORDER_DEFAULT即可


均值滤波

[cpp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. void blur(InputArray src, OutputArray,  Size ksize, Point Anchor = Point(-1, -1), int borderType = BORDER_DEFAULT)  

第一个参数 输入

第二个参数 输出

第三个参数 内核大小

后面的参数用默认即可

第四个参数 锚点坐标,如果都为负(Point(-1,-1)),即取内核中点为锚点

第五个参数 边界类型,取BORDER_DEFAULT即可


blur是特殊的boxFilter, ddepth取-1, normalize取true


高斯滤波

[cpp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. void GaussianBlurr(InputArray src, OutputArray,  Size ksize, double sigmaX, double sigmaY = 0, int borderType = BORDER_DEFAULT)  

第一个参数 输入

第二个参数 输出

第三个参数 内核大小

第四个参数 核函数X方向上的偏差(???),

第五个参数 核函数Y方向上的偏差(???),默认为0,

当这个值为0,前一个参数sigmaX不为0时,自动把这个值设为和sigmaX一样的值,

如果sigmaX和sigmaY均为0时,会自动通过ksize.width和ksize.height计算sigmaX和sigmaY

后面的参数用默认即可

第六个参数 边界类型,取BORDER_DEFAULT即可



非线性滤波

中值滤波

[cpp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. medianBlur(InputArray src, OutputArray dst, int ksize)  

第一个参数 输入

第二个参数 输出

第三个参数 孔径大小

中值滤波就是将每一个点的灰度值设为在它周围一个区域内的所有点灰度值的中间值

首先是排序它和它周围点的灰度值,然后找到中间值,最后修改,所以一般孔径大小取奇数,方便取值,为偶数时区中间两个的平均值


双边滤波

[cpp]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. void bilateralFilter(InputArray src, OutputArray dst, int d, double sigmaColor, double sigmaSpace, int borderType = BORDER_DEFAULT)  
第一个参数 输入

第二个参数 输出

第三个参数 孔径大小   当d<=0时,会自动通过第五个参数sigmaSpace来计算d值,此时与sigmaSpace成正比

第四个参数 不同颜色混合程度,这个值越大,越宽广的颜色会被混到一起

第五个参数 像素之间的影响程度,这个值越大,距离越远的像素的会相互影响


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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值