我是靠谱客的博主 笨笨溪流,这篇文章主要介绍MATLAB图像处理学习——高通滤波(频域滤波(二)),现在分享给大家,希望可以做个参考。

目录

1.概论

高通滤波原理

作用

2.理想高通滤波

3.巴特沃斯高通滤波器

代码(巴特沃斯高通滤波器)

4.高斯高通滤波器


1.概论

高通滤波原理:

衰减或抑制低频分量,让高频分量通过

作用:

使图像得到锐化处理,突出图像的边界。

(注意:一般来说,高通滤波对噪声没有任何抑制作用,若简单的使用高通滤波,图像质量可能由于噪声严重而难以达到满意的改善效果,为了既加强图像的细节又抑制噪声,可采用高频加强滤波,这种滤波其实是由一个高通滤波器和一个全通滤波器构成的,这样便能在高通滤波的基础之上保留低频信息)

2.理想高通滤波

产生公式:

 (其中D0为理想高通滤波器的截止频率)

 

3.巴特沃斯高通滤波器

产生公式:

 (其中D0为巴特沃斯高通滤波器的截止频率,n为巴特沃斯滤波器的阶数,用来控制滤波器的陡峭程度)

代码(巴特沃斯高通滤波器):

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
clear all;clc; I = imread('D:resource_photo1(1).png'); figure(1); subplot(221),imshow(I); title('原始图像'); k=fft2(im2double(I)); s=fftshift(fft2(im2double(I))); subplot(222),imshow(k); title('二维傅里叶变换后图像'); subplot(223),imshow(log(abs(s))); title('中心频谱图像') [a,b]=size(s); a0=round(a/2); b0=round(b/2); d0=50; % 将理想高通滤波器的截止频率D0设置为50 for i=1:a %双重for循环计算频率点(i,j)与频域中心的距离D(i,j)=sqrt((i-round(a/2)^2+(j-round(b/2)^2)) for j=1:b distance=sqrt((i-a0)^2+(j-b0)^2); if distance<=d0 % 根据理想高通滤波器产生公式,当D(i,j)<=D0,置为0 h=0; else h=1; % 根据理想高通滤波器产生公式,当D(i,j)>D0,置为1 end s(i,j)=h*s(i,j);% 频域图像乘以滤波器的系数 end end % real函数取元素的实部 s=real(ifft2(ifftshift(s)));% 最后进行二维傅里叶反变换转换为时域图像 subplot(224),imshow(s,[]); title('理想高通滤波所得图像');

 运行结果:

 

4.高斯高通滤波器

产生公式:

 (其中D0为高斯高通滤波器的截止频率)

 

 

最后

以上就是笨笨溪流最近收集整理的关于MATLAB图像处理学习——高通滤波(频域滤波(二))的全部内容,更多相关MATLAB图像处理学习——高通滤波(频域滤波(二))内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(88)

评论列表共有 0 条评论

立即
投稿
返回
顶部