在MATLAB中为图片添加噪声,可以使用`imnoise`函数。以下是一个简单的示例程序,展示如何为一张图片添加椒盐噪声,并将其保存为新的图片文件:
```matlab
% 读取原图像
I = imread('image_ori.jpg');
% 将图像转换为灰度图像(如果需要)
I_gray = rgb2gray(I);
% 添加椒盐噪声
J = imnoise(I, 'salt & pepper', 0.6);
% 显示添加噪声后的图像
imshow(J);
% 按100%的质量存储添加了噪声的图像
imwrite(J, 'image_noise.jpg', 'jpg', 'Quality', 100);
```
在这个示例中:
1. `imread('image_ori.jpg')` 读取原图像。
2. `rgb2gray(I)` 将彩色图像转换为灰度图像(如果需要)。
3. `imnoise(I, 'salt & pepper', 0.6)` 为图像添加椒盐噪声,参数0.6表示噪声的强度。
4. `imshow(J)` 显示添加噪声后的图像。
5. `imwrite(J, 'image_noise.jpg', 'jpg', 'Quality', 100)` 将添加噪声后的图像以100%的质量保存为新的图片文件。
你可以根据需要调整噪声类型和参数。`imnoise`函数还支持其他噪声类型,如高斯白噪声(`'gaussian'`)、泊松噪声(`'poisson'`)和斑点噪声(`'speckle'`),具体参数设置可以参考MATLAB帮助文件。