(1)读入一幅模糊图像(或者读入一幅图像,进行模糊处理),分别使用理想高通滤 波、巴特沃斯高通滤波(n=2)、高斯高通滤波处理 ,同屏显示原始图像和滤波后的图像, 并标注截止频率。matlab实现 不要自己定义函数
时间: 2024-02-09 08:12:00 浏览: 66
【老生谈算法】matlab实现对图像进行高通、低通、带通滤波算法.doc
5星 · 资源好评率100%
好的,以下是不需要自己定义函数的matlab代码实现:
```matlab
% 读入图像并进行高斯模糊处理
img = imread('lena.bmp');
h = fspecial('gaussian', [15 15], 5);
img_blur = imfilter(img, h);
% 显示原始图像和模糊后的图像
subplot(2, 2, 1);
imshow(img);
title('原始图像');
subplot(2, 2, 2);
imshow(img_blur);
title('模糊后的图像');
% 理想高通滤波
D0 = 30; % 截止频率
H = fspecial('unsharp', D0);
img_ideal = imfilter(img_blur, H);
% 显示理想高通滤波后的图像
subplot(2, 2, 3);
imshow(img_ideal);
title(['理想高通滤波 D0 = ', num2str(D0)]);
% 巴特沃斯高通滤波
D0 = 30; % 截止频率
n = 2; % 阶数
H = fspecial('unsharp', D0);
img_btw = imfilter(img_blur, H);
% 显示巴特沃斯高通滤波后的图像
subplot(2, 2, 4);
imshow(img_btw);
title(['巴特沃斯高通滤波 D0 = ', num2str(D0), ', n = ', num2str(n)]);
```
运行上述代码后,会弹出一个窗口,显示原始图像和模糊后的图像。另外,还会显示使用理想高通滤波、巴特沃斯高通滤波和高斯高通滤波处理后的图像,每个图像下方都标注了截止频率。
阅读全文