引导滤波GuidedFilter

何恺明读博士提出基于暗通道采用引导滤波去雾算法获CVPR2009最佳论文,现在应用面很广、很广;能够克服双边滤波的梯度翻转现象,在滤波后图像的细节上更优,主要美颜算法差不多都用这个。
先贴伪代码:
在这里插入图片描述
实现的话可以采用积分图加速。

线性滤波器

在这里插入图片描述
其中I是引导图像,P是输入的待滤波图像,W是根据引导图I确定的权重值,Q是滤波后的输出图像。

1、如果权重W与引导图无关,那便是一个常量,比如高斯滤波那种,这种我们相对就特别好理解。
2、如果权重与引导图相关,我们的图像就会受到引导图影响,比如双边滤波中,我们采用和中心像素差值作为引导,但这严格上还算不上引导图。只能只能时有影响,有引导。

权重确定:
在这里插入图片描述
μ k μ_k μk是窗口内像素点的均值, I i I_i Ii指位于窗口中心的像素值, I j I_j Ij指窗口内j位置的像素点的值, σ k 2 σ_k^2 σk2代表窗口内像素点的方差,ε是一个惩罚值。

( I i − μ k ) ( I j − μ k ) (I_i-μ_k)(I_j-μ_k) (Iiμk)(Ijμk)这一项表明,如果中心像素值 I i I_i Ii小于均值时, I j I_j Ij如果约大于均值,该项值就是负值,权重1+(-0.几)就会越小

ε惩罚项的值越大,则分母越大,引导图对图像的影响就越小,极端情况(比如正无穷), W i j W_{ij} Wij就将退化为 1 / w 2 1/w^2 1/w2,这个 w w w呢,实际上就是窗口边长,也就是说极端情况下会退化为均值滤波器

但是,实际上我们不用搞得太复杂,我们直接假设该点输出值和该点引导图的值是线性关系:
在这里插入图片描述
然后我们采用最小二乘去估计出 a k 、 b k a_k、b_k akbk两个系数即可:
在这里插入图片描述
在这里插入图片描述
a的分子为I和P的协方差,分母部分为I的方差加上截断值ε,b的值为P的均值减去a乘以I的均值。可以看出当a值很小时,b约等于窗口内像素点的均值pk,近似于均值滤波。而当a值很大时,输出则主要取决于a*▽I的大小,梯度信息能够得到保留。

更多详细参考:【拜小白opencv】33-平滑处理6——引导滤波/导向滤波(Guided Filter)

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值