经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » 编程经验 » 查看文章
图像平滑去噪之高斯滤波器
来源:cnblogs  作者:KenSporger  时间:2019/10/8 9:15:26  对本文有异议

  高斯滤波器是根据高斯函数来选择权值的线性平滑滤波器,对随机分布和服从正态分布的噪声有很好地滤除效果。它可以辅助大部分的边缘检测算法,

对图像的边缘进行扩展(边缘厚度变大),使噪声点的灰度降低,从而减少边缘检测中噪声的数量。

  二维的高斯函数公式如下:            

  

  其中σ为正态分布的标准偏差,其值决定了高斯函数的变化幅度,对应就是滤波器的权值。高斯函数分布与二维滤波器常见模板如下:

           

  模板的生成,就是将矩阵中心作为(0,0)点然后分别代入公式中,求得一个类型为小数的矩阵,将矩阵左上角的元素乘以它的倒数K,使其值为1,

矩阵其他位置的元素也都乘以K,再将矩阵化为整数形式。由此便可以得到一个模板,模板是行列长度为奇数的方阵,取值由σ决定。σ越大,矩阵从里

到外的梯度更大。一般地,按照上面公式所计算的3*3模板的σ=0.85,5*5模板的σ=1.4,7*7模板的σ=1.72。一般根据具体图像情况,选择合适的模板大

小(模糊半径)与标准差(权值),例如目标边缘相距较近时应选用小模板,如果滤波程度不够,σ值可以稍微取大;如果目标呈块状分布,噪点面

积大时可以选用大模板,但整体图像就会变得较模糊。

  高斯模板卷积图像:高斯模板的卷积是可分离的(矩阵秩=1),因此大小为n*n去卷积m*m大小的图像时,复杂度可以从n2*m2降至2n*m2。这意味

着在相同实时性要求下,可以使用更大的模糊半径。所谓可分离,指将n*n的矩阵拆分成两个大小为n的行向量与列向量,与图像做两次卷积,而卷积结果

与一次卷积相同。

  下面展示了高斯模糊的一个实例:

  

  

  以下是matlab实现高斯滤波器的代码:

  

  1. %高斯滤波器模板生成
  2. function template=gaussiantemplate(sigma,size)
  3. %sigma=0.85 size=3;
  4. %sigma=1.4 size=5;
  5. %sigma=1.72 size=7
  6. syms x y;
  7. gaussian=(1/(2*pi*sigma^2))*exp((-(x^2+y^2)/(2*sigma^2)));
  8. template=zeros(size,size);%奇数个
  9. for i=1:size
  10. for j=1:size
  11. template(i,j)=double(subs(gaussian,[x,y],[i-(size+1)/2,j-(size+1)/2]));
  12. end
  13. end
  14. k=1/template(1,1);
  15. for i=1:size
  16. for j=1:size
  17. template(i,j)=uint8(template(i,j)*k);
  18. end
  19. end
  20. end  
  1. %高斯滤波
  2. function gaussian=gaussianfilter(grayimg,sigma,size)
  3. operator=gaussiantemplate(sigma,size);
  4. gaussian = filter2(operator,grayimg);
  5. gaussian = uint8(gaussian./sum(sum(operator)));
  6. end

 

 

 

                               

  

 

原文链接:http://www.cnblogs.com/kensporger/p/11628050.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号