matlab图像加高斯噪声代码
时间: 2023-09-18 16:12:39 浏览: 63
可以使用以下代码将高斯噪声添加到Matlab图像中:
```matlab
I = imread('image.jpg'); % 读取图像
I = im2double(I); % 转换为双精度浮点数
sigma = 0.1; % 噪声标准差
J = imnoise(I, 'gaussian', 0, sigma^2); % 添加高斯噪声
imshow(J); % 显示图像
```
其中,`imread`函数用于读取图像,`im2double`函数用于将图像转换为双精度浮点数,`sigma`代表噪声的标准差,`imnoise`函数用于添加高斯噪声,`imshow`函数用于显示图像。你可以根据自己的需求修改代码。
相关问题
加高斯噪声的matlab代码
以下是添加高斯噪声到图像的Matlab代码:
```
% 读取图像
img = imread('image.jpg');
% 将图像转换为灰度图像
if size(img,3)==3
img = rgb2gray(img);
end
% 添加高斯噪声
noise = randn(size(img)).*30; % 噪声强度可以根据需要调整
noisy_img = img + uint8(noise);
% 显示原始图像和加噪声后的图像
subplot(1,2,1), imshow(img), title('Original Image');
subplot(1,2,2), imshow(noisy_img), title('Noisy Image');
```
这个代码会读取名为“image.jpg”的图像,将其转换为灰度图像,然后添加高斯噪声。添加的噪声强度可以通过修改“noise = randn(size(img)).*30;”这一行中的数字来调整。最后,原始图像和加噪声后的图像将在两个子图中显示出来。
matlab去除高斯噪声代码
下面是一份Matlab代码,可以用来去除高斯噪声:
```matlab
% 读入图像
img = imread('noisy_image.png');
% 添加高斯噪声
noisy_img = imnoise(img, 'gaussian', 0, 0.01);
% 使用高斯滤波器去除噪声
filtered_img = imgaussfilt(noisy_img, 1);
% 显示原始图像、加噪图像和去噪图像
figure;
subplot(1,3,1); imshow(img); title('原始图像');
subplot(1,3,2); imshow(noisy_img); title('加噪图像');
subplot(1,3,3); imshow(filtered_img); title('去噪图像');
```
在这个例子中,我们首先读入一张图像,然后使用`imnoise`函数添加高斯噪声。接下来,我们使用`imgaussfilt`函数应用高斯滤波器去除噪声。最后,我们将原始图像、加噪图像和去噪图像显示在一个图像窗口中。