欢迎来到天天文库
浏览记录
ID:56378679
大小:665.64 KB
页数:13页
时间:2020-06-22
《双边滤波算法的原理.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、双边滤波算法的原理、流程、实现及效果2013-11-0715:17 1969人阅读 评论(1) 收藏 举报MATALB图像处理双边滤波一、引言 双边滤波在图像处理领域中有着广泛的应用,比如去噪、去马赛克、光流估计等等,最近,比较流行的Non-Local算法也可以看成是双边滤波的一种扩展。自从Tomasietal等人提出该算法那一天起,如何快速的实现他,一直是人们讨论和研究的焦点之一,在2011年及2012年KunalN.Chaudhury等人发表的相关论文中,提出了基于三角函数关系的值域核算法,能有效而
2、又准确的实现高效双边算法。本文主要对此论文提出的方法加以阐述。 双边滤波的边缘保持特性主要是通过在卷积的过程中组合空域函数和值域核函数来实现的,典型的核函数为高斯分布函数,如下所示: (1) 其中: (2) 为归一化的作用。 σs为空域高斯函数的标准差,σr为值域高斯函数的标准差,Ω表示卷积的定义域。可见,在图像的平坦区域,f(y)-f(x)的值变化很小,对应的值域权重接近于1,此时空域权
3、重起主要作用,相当于直接对此区域进行高斯模糊,在边缘区域,f(y)-f(x)会有较大的差异,此时值域系数会下降,从而导致此处整个核函数的分布的下降,而保持了边缘的细节信息。 直接的编码实现上述过程是相当耗时的,其时间复杂度为O(σs2) ,因此严重的限制住了该算法的推广和实际使用。不断有学者提出了解决的办法,其中Porikli基于一些假定对此过程进行了优化,比如我就实现过其中一种:空域函数为均值函数,值域为任何其他函数,此时可以用直方图技术进行处理,可减少计算量,但我的实践表明该算法那速度还是慢,并且效果也不好
4、。 在2011的论文《FastO(1)bilateralfilteringusingtrigonometricrangekernels》中,作者提出了用Raisedcosines函数来逼近高斯值域函数,并利用一些特性把值域函数分解为一些列函数的叠加,从而实现函数的加速。下面我们重点描述下该过程。二、推导 1、一些基础理论和常识。 (1)Cos函数在[-Pi/2,Pi/2]之间为非负、对称、在半周期内单调递增以及且有峰值的函数; (2)欧拉公式: exp(ix)=cos(x)+isin(x);
5、 (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]内。此时,可以证明:
6、 (4) (2)当N足够大时,有下式成立: (5) 如果令ρ=γσ,则上式就变为: (6) 同样,上面成立的条件也必须有: 当γs的值在[-Pi/2,Pi/2]时,因此只需要 即可,此时要求 ; 式6中,最右侧部分即为高斯函数,此时说明,可以用 Raisedcosines函数来近似的模拟高斯函数,我们用一段matlab函数来验证该结果:
7、clc;T=255;Delta=80;Gamma=pi/(2*T);Rho=Gamma*Delta;Color=['b','g','r','c','m','y','k'];x=-T:T;y1=exp(-x.^2/(2*Delta*Delta));plot(x,y1,'--b','LineWidth',2);holdon;fork=2:7y2=cos(Gamma.*x/(Rho*sqrt(k))).^(k);plot(x,y2,Color(k));end 从左图的曲线分布可见,N=2(绿色),N=3
8、(红色)两条曲线明显不符合我们的定义域的要 求,分别出现了非单调递增和负值得情况。之后随着N的不断增大,曲线越来越接近高斯分布曲线(蓝色曲线)。 这从实际的角度证明了公式6的正确性。 3、推导 将公式(4)带入公式(6)中,得到: (7) 将公式(7)带入原始的双边滤波的公式(1)中,有: (
此文档下载收益归作者所有