用matlab给图片添加泊松噪声
时间: 2023-10-25 15:06:51 浏览: 243
可以使用 `imnoise` 函数来添加泊松噪声,以下是一些示例代码:
```matlab
% 读取图像
img = imread('example.jpg');
% 设置噪声强度(噪声方差)
noise_var = 50;
% 添加泊松噪声
noisy_img = imnoise(img, 'poisson', noise_var);
% 显示原始图像和添加噪声后的图像
figure;
subplot(1,2,1);
imshow(img);
title('Original Image');
subplot(1,2,2);
imshow(noisy_img);
title('Noisy Image');
```
在上面的代码中,`imnoise` 函数的第一个参数是原始图像,第二个参数指定添加的噪声类型为“泊松噪声”,第三个参数是噪声强度(噪声方差)。最后,使用 `imshow` 函数显示原始图像和添加噪声后的图像。
相关问题
帮我用matlab给一个图片加上泊松噪声
你可以使用 Matlab 自带的 `imnoise` 函数来添加泊松噪声。以下是一个简单的示例代码:
```matlab
% 读取图片
img = imread('your_image.jpg');
% 添加泊松噪声
noisy_img = imnoise(img, 'poisson');
% 显示原始图片和添加噪声后的图片
subplot(1,2,1), imshow(img)
subplot(1,2,2), imshow(noisy_img)
```
其中,`imread` 函数用于读取图片,`imnoise` 函数用于添加噪声。在这里,第二个参数 `'poisson'` 表示添加泊松噪声。最后,`subplot` 和 `imshow` 函数用于显示原始图片和添加噪声后的图片。
matlab给图片添加噪声
以下是一些添加噪声到图像的示例代码:
高斯噪声:
```matlab
img = imread('image.jpg'); % 读入图像
sigma = 20; % 设置噪声标准差
noise = sigma * randn(size(img)); % 生成高斯噪声
noisy_img = uint8(double(img) + noise); % 添加噪声
imshow(noisy_img); % 显示带噪声的图像
```
椒盐噪声:
```matlab
img = imread('image.jpg'); % 读入图像
p = 0.05; % 设置噪声比例
noise = rand(size(img)); % 生成随机噪声
noisy_img = img; % 复制原始图像
noisy_img(noise < p/2) = 0; % 添加椒噪声
noisy_img(noise > 1-p/2) = 255; % 添加盐噪声
imshow(noisy_img); % 显示带噪声的图像
```
泊松噪声:
```matlab
img = imread('image.jpg'); % 读入图像
lambda = 10; % 设置噪声参数
noise = poissrnd(lambda, size(img)); % 生成泊松噪声
noisy_img = uint8(double(img) + noise); % 添加噪声
imshow(noisy_img); % 显示带噪声的图像
```
注:以上示例代码中,`image.jpg`是需要添加噪声的图像文件名。