2020-12-18

本文介绍基于平均滤波的红外和可见光图像融合方法。用平均滤波将原始图像分解为基层和细节层,基层含大尺度变化,细节层含小尺度细节。融合规则为低频平均融合、高频绝对值最大融合,最后将两层相加得到完整融合图像。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基于平均滤波的红外和可见光图像融合
使用平均滤波将原始图像分解为两尺度表示。基层得到如下:
Bn= un∗ Z, n = 1,2
其中un(n = 1,2)为原始图像,Z为平均滤波,其大小为30×30。在基础层的基础上,可以很容易地得到细节层:
Dn= un− Bn, n = 1,2
两尺度分解的目的是将每幅源图像分割为一个基层和一个细节层。基础层包含图像中的大尺度变化,细节层包含小尺度细节。两尺度分解将源图像分成两个尺度,每个尺度包含不同的信息。这使得后期的融合信息更加全面和具体,使得融合规则更具针对性。
融合规则:
低频使用平均融合规则;
高频使用绝对值最大融合规则;
Two尺度图像重建:
通过以上步骤,我们可以得到融合的基层和细节层。最后,将源图像的两层相加,得到完整的融合图像:
u = B + D

clear
clc
tic;%计时 
%%%%%%%%%%%% 局部能量最大法
A=imread('E:\shearlet_toolbox_1 - 0927\liuch\pictures\IR7.bmp');
C=imread('E:\shearlet_toolbox_1 - 0927\liuch\pictures\VIS7.bmp');
x1=double(A);
x2=double(C);
PSF=fspecial('average',30);
%算术均值滤波(低频)
B1=imfilter(x1,PSF);
B2=imfilter(x2,PSF);
%高频 
D1=x1-B1;
D2=x2-B2;
%低频融合规则
B=B1+B2;     %计算平均值 
B=0.5*B; 
%%%%%%%高频融合
% sizes1=size(D1);
% for j=1:sizes1
    D=jueduizuida(D1,D2);
% end
xx=B+D;
%图像显示
figure; 
imshow(A),title('红外图像');
figure; 
imshow(C),title('可见光图像');
figure; 
imshow(uint8(xx)),title('融合后的');    
axis square
[entropy,AveGrad,StD,Q,Sf]=myparameter(xx,A,C);
canshu=[entropy,AveGrad,StD,Q,Sf];
toc; %计时结束 
function y3=jueduizuida(y1,y2)
[r,c]=size(y1);            %根据低频融合算法进行图像融合
for i=1:r            %首先取两幅源图像相应的小波分解系数绝对值最大者的值作为融合图像的分解系数
    for j=1:c
        if( abs(y1(i,j)) >= abs(y2(i,j)) )
            y3(i,j)=y1(i,j);
        elseif( abs(y1(i,j)) < abs(y2(i,j)) )
            y3(i,j)=y2(i,j);
        end
    end
end
end

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
参考论文: Multi-focus image fusion based on fractional-order derivative and intuitionistic fuzzy sets

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值