matlab高斯滤波代码
时间: 2023-09-18 15:05:45 浏览: 114
以下是 MATLAB 中高斯滤波的代码:
```matlab
% 读入原图像
img = imread('image.jpg');
% 定义高斯滤波器的大小和标准差
hsize = 5; % 滤波器大小
sigma = 2; % 标准差
% 建立高斯滤波器
h = fspecial('gaussian', hsize, sigma);
% 对图像进行高斯滤波
img_filtered = imfilter(img, h);
% 显示原图像和滤波后的图像
subplot(1,2,1), imshow(img);
title('Original Image');
subplot(1,2,2), imshow(img_filtered);
title('Filtered Image');
```
在代码中,我们首先读入原图像,然后定义了高斯滤波器的大小和标准差。接着,我们使用 `fspecial` 函数来建立高斯滤波器。最后,我们使用 `imfilter` 函数对图像进行高斯滤波,并将滤波后的图像显示出来。
相关问题
MATLAB高斯滤波的代码
以下是MATLAB高斯滤波的代码:
```matlab
img = imread('image.jpg'); % 读取图像
img = im2double(img); % 将图像转换为double类型
sigma = 2; % 高斯滤波器的标准差
hsize = 5; % 高斯滤波器的大小
h = fspecial('gaussian', hsize, sigma); % 生成高斯滤波器
img_filtered = imfilter(img, h); % 对图像进行高斯滤波
imshow(img_filtered); % 显示滤波后的图像
```
希望对你有所帮助!
matlab高斯滤波
高斯滤波是一种常用的图像平滑处理方法,用于去除噪声和图像中的细节信息。在MATLAB中,可以使用`imgaussfilt`函数进行高斯滤波。
具体用法如下:
```matlab
B = imgaussfilt(A, sigma)
```
其中,A为待处理的图像,sigma为高斯核的标准差。通常情况下,sigma的值越大,平滑效果越明显,但同时也会丢失更多的细节信息。
例如,对一张名为`lena.png`的图像进行高斯滤波,可以使用以下代码:
```matlab
A = imread('lena.png');
B = imgaussfilt(A, 2); % 使用标准差为2的高斯核进行滤波
imshow(B);
```
这样就可以在窗口中显示处理后的图像了。
阅读全文
相关推荐














