Hello Mat

 找回密码
 立即注册
查看: 3510|回复: 0

巴特沃斯低通滤波器

[复制链接]

1294

主题

1520

帖子

110

金钱

管理员

Rank: 9Rank: 9Rank: 9

积分
22633
发表于 2017-3-7 21:59:06 | 显示全部楼层 |阅读模式
  1. function im5 = freqfilter_btw_lp(im,D0,n)
  2.     if ~isa(im,'double')
  3.         im1 = double(im)/255;
  4.     end
  5. im2 = fft2(im1);      % 傅里叶变换
  6. im3 = fftshift(im2);  % 中心化

  7. [N1, N2] = size(im3);
  8. n1 = fix(N1 / 2);
  9. n2 = fix(N2 / 2);
  10. for i = 1:N1
  11.     for j = 2:N2
  12.         d = sqrt((i-n1)^2+(j-n2)^2);
  13.         h = 1/(1 + 0.414 * (d / D0)^(2*n));  % 巴特沃斯低通滤波器
  14.         result(i,j) = h * im3(i,j);
  15.     end
  16. end
  17. result = ifftshift(result);    % 反中心化
  18. im4 = ifft2(result);           % 反变换
  19. im5 = im2uint8(real(im4));     % 滤波图像

  20. end
复制代码


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
算法QQ  3283892722
群智能算法链接http://halcom.cn/forum.php?mod=forumdisplay&fid=73
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Python|Opencv|MATLAB|Halcom.cn ( 蜀ICP备16027072号 )

GMT+8, 2024-4-28 06:28 , Processed in 0.216780 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表