matlab加入椒盐噪声(密度为0.01)
时间: 2024-11-03 12:13:22 浏览: 19
在MATLAB中,添加椒盐噪声(Salt and Pepper Noise)通常涉及生成随机二进制矩阵并将其与输入图像相结合。椒盐噪声会在图像中的随机位置替换为纯白色(255)或纯黑色(0),其密度(噪声的比例)决定了噪声的数量。
以下是一个简单的步骤来在MATLAB中加入椒盐噪声,假设密度为0.01:
```matlab
% 假设 input_image 是你要添加噪声的图像
density = 0.01; % 椒盐噪声的密度
[row, col] = size(input_image); % 获取图像尺寸
% 生成同样大小的二进制随机矩阵,1s 表示噪点,0s 表示原图像区域
noisy_matrix = rand(row, col) < density;
% 将原图像中的随机像素替换为噪声
noisy_image = input_image .* (1 - noisy_matrix) + 255 * noisy_matrix; % 白色噪声
or
noisy_image = input_image .* (1 - noisy_matrix) + 0 * noisy_matrix; % 黑色噪声
% 如果你想将噪声像素保持为它们原来的值(0或255),可以用 logical_not(noisy_matrix) 替换 noisy_matrix
noisy_image = input_image .* logical_not(noisy_matrix);
% 显示原图和添加噪声后的图像
figure;
subplot(1,2,1), imshow(input_image);
title('Original Image');
subplot(1,2,2), imshow(noisy_image);
title(['Noisy Image with Density ' num2str(density)]);
```
阅读全文