给我一个matlab的图像融合算法的函数
时间: 2023-06-15 20:04:49 浏览: 79
matlab-基于小波变换的图像融合算法matlab仿真,带GUI界面,支持灰度图融合和彩色图融合两种模式-源码
下面是一个简单的图像融合算法的 Matlab 函数:
```matlab
function fused_image = image_fusion(image1, image2, alpha)
% 图像融合函数
% image1: 第一张图像
% image2: 第二张图像
% alpha: 融合系数
% 将图像转换为 double 类型
image1 = im2double(image1);
image2 = im2double(image2);
% 对图像进行高斯滤波
image1 = imgaussfilt(image1, 2);
image2 = imgaussfilt(image2, 2);
% 计算融合后的图像
fused_image = alpha*image1 + (1-alpha)*image2;
% 显示融合后的图像
imshow(fused_image);
end
```
这个函数的作用是将两张输入的图像按照一定的融合系数进行融合,并返回融合后的图像。在这个函数中,我们使用了 `imgaussfilt` 函数对图像进行了高斯滤波,这一步操作可以有效的减少图像中的噪声和干扰。在计算融合后的图像时,我们使用了简单的加权求和方式,其中 `alpha` 表示了第一张图像在融合中的权重。最后,我们使用 `imshow` 函数将融合后的图像显示出来。
需要注意的是,这个函数只是一个简单的示例,实际的图像融合算法可能会更加复杂和高级。
阅读全文