写一个加入噪声运用卷积滤波、中值滤波、自适应滤波、拉普拉斯算子锐化滤波的matlab代码
时间: 2023-09-20 07:09:16 浏览: 133
以下是一个示例的MATLAB代码,展示了如何使用卷积滤波、中值滤波、自适应滤波和拉普斯算子锐化滤波来添加噪声。
```matlab
% 读取图像
img = imread('input_image.jpg');
% 添加噪声
noisy_img = imnoise(img, 'salt & pepper', 0.05);
% 卷积滤波
h = fspecial('average', [3, 3]); % 平均滤波器
filtered_img1 = imfilter(noisy_img, h);
% 中值滤波
filtered_img2 = medfilt2(noisy_img, [3, 3]);
% 自适应滤波
filtered_img3 = wiener2(noisy_img, [3, 3]);
% 拉普拉斯算子锐化滤波
laplacian_filter = [0 -1 0; -1 5 -1; 0 -1 0]; % 拉普拉斯算子
filtered_img4 = imfilter(noisy_img, laplacian_filter);
% 显示结果
subplot(2, 3, 1), imshow(img), title('原始图像');
subplot(2, 3, 2), imshow(noisy_img), title('添加噪声');
subplot(2, 3, 3), imshow(filtered_img1), title('卷积滤波');
subplot(2, 3, 4), imshow(filtered_img2), title('中值滤波');
subplot(2, 3, 5), imshow(filtered_img3), title('自适应滤波');
subplot(2, 3, 6), imshow(filtered_img4), title('拉普拉斯算子锐化滤波');
```
请注意,这只是一个示例代码,具体的实现可能会根据你的需求而有所不同。
阅读全文