1 / 7
文档名称:

双边滤波算法的原理.doc

格式:doc   大小:20KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

双边滤波算法的原理.doc

上传人:wz_198614 2017/11/19 文件大小:20 KB

下载得到文件列表

双边滤波算法的原理.doc

文档介绍

文档介绍:双边滤波算法的原理
2013-11-07 15:17 1969人阅读评论
(1) 收藏
举报
MATALB图像处理双边滤波
一、引言
双边滤波在图像处理领域中有着广泛的应用,比如去噪、去马赛克、光流估计等等,最近,比较流行的Non-Local算法也可以看成是双边滤波的一种扩展。自从Tomasi et al等人提出该算法那一天起,如何快速的实现他,一直是人们讨论和研究的焦点之一,在2011年及2012年Kunal N. Chaudhury等人发表的相关论文中,提出了基于三角函数关系的值域核算法,能有效而又准确的实现高效双边算法。本文主要对此论文提出的方法加以阐述。
双边滤波的边缘保持特性主要是通过在卷积的过程中组合空域函数和值域核函数来实现的,典型的核函数为高斯分布函数,如下所示:
(1)
其中:
(2)
为归一化的作用。
σs为空域高斯函数的标准差,σr为值域高斯函数的标准差,Ω表示卷积的定义域。可见,在图像的平坦区域,f(y)-f(x)的值变化很小,对应的
值域权重接近于1,此时空域权重起主要作用,相当于直接对此区域进行高斯模糊,在边缘区域,f(y)-f(x)会有较大的差异,此时值域系数会下降,从而导致此处整个核函数的分布的下降,而保持了边缘的细节信息。
直接的编码实现上述过程是相当耗时的,其时间复杂度为O(σs) ,因此严重的限制住了该算法的推广和实际使用。不断有学者提出了解决的办法,其中Porikli基于一些假定对此过程进行了优化,比如我就实现过其中一种:空域函数为均值函数,值域为任何其他函数,此时可以用直方图技术进行处理,可减少计算量,但我的实践表明该算法那速度还是慢,并且效果也不好。在2011的论文《Fast O(1) bilateral ?ltering using trigonometric range kernels》中,作者提出了用Raised cosines函数来逼近高斯值域函数,并利用一些特性把值域函数分解为一些列函数的叠加,从而实现函数的加速。下面我们重点描述下该过程。 2
二、推导
1、一些基础理论和常识。
(1) Cos函数在[-Pi/2,Pi/2]之间为非负、对称、在半周期内单调递增以及且有峰值的函数;
(2) 欧拉公式: exp(ix)=cos(x)+isin(x); (3)
分配律:
exp(a+b)=exp(a)*exp(b);
(4) 图像的动态范围:[0,T],比如对于灰度图像即为[0,255];
2、一些有用的论证
(1) 对于式子:
(3)
其中s是自变量,取值范围[-T,T],令γ= Pi / 2T,则γs的值在[-Pi/2,Pi/2]内。此时,可以证明:
(4)
(2) 当N足够大时,有下式成立:
(5)
如果令ρ=γσ,则上式就变为:
(6)
同样,上面成立的条件也必须有:
即可,此时要求; 当γs的值在[-Pi/2,Pi/2]时,因此只需要
式6中,最右侧部分即为高斯函数,此时说明,可以用 Raised cosines函数来近似的模拟高斯函数,我们用一段matlab函数来验证该结果:
clc;
T=255;
Delta =80;
Gamma = pi/(2