【图像融合】基于稀疏表示多光谱图像融合含Matlab源码(图像融合matlab代码)

网友投稿 343 2022-09-05


【图像融合】基于稀疏表示多光谱图像融合含Matlab源码(图像融合matlab代码)

1 简介

高分辨率的多光谱图像应用广泛,比如变化监测,目标识别,场景解译.通常,商用光学卫星能够同时提供高空间分辨率的全色图像和低分辨率的多光谱图像.物理条件的限制使得单一传感器无法获得高质量的多光谱图像.于是,利用全色图像的细节来提高多光谱图像的空间分辨率这一思路受到了广大学者的关注.全色和多光谱图像融合的目标在于同时提高空间分辨率和减小光谱失真.实际上,由于全色图像的加入,融合图像的空间分辨率可以得到显著提高,但是,光谱畸变也会随之产生. 稀疏表示理论,作为一种新的信号表示方法,已经应用在许多图像处理领域.采用过完备字典的稀疏表示能够使分解系数更稀疏,更能反映信号的本质特征和内在结构.针对全色和多光谱图像融合这一难题,本文提出了基于稀疏表示的融合方法.

2 部分代码

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%close all;clear all;setup;Verbose='on';generate=1;subMeth='PCA';FusMeth='Sparse';scale=1;SNR_R=inf;seed=1;%% Generate the data[name_image,band_remove,band_set,nr,nc,N_band,nb_sub,X_real,XH,XHd,XHd_int,XM,VXH,VXM,psfY,psfZ_unk,... sigma2y_real,sigma2z_real,SNR_HS,SNR_MS,miu_x_real,s2_real,P_inc,P_dec,eig_val]=Para_Set(seed,scale,subMeth,SNR_R);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Sparse fusion consists three parts%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Step 1: Learn the rough estimationlearn_dic=1;train_support=1;Para_Prior_Initial;X_source=RoughEst(XM,XH,XHd,psfY,nb_sub,P_dec);%% Step 2: Learn the dictionary[time_LD,Dic,supp]=Dic_Para(X_source,P_inc,learn_dic,train_support,X_real,0);%% Step 3: Alternating optimization[HSFusion.(FusMeth),Costime,diff_X,RMSE_sub,RMSE_org,tau_d_set,VXd_dec]=AlterOpti(X_source,XH,XM,psfY,... psfZ_unk,sigma2y_real,sigma2z_real,P_dec,P_inc,FusMeth,X_real,Dic,supp);%% Evaluate the fusion results: Quantitative[err_max.(FusMeth),err_l1.(FusMeth),err_l2.(FusMeth),SNR.(FusMeth),Q.(FusMeth),SAM_m.(FusMeth),RMSE_fusion.(FusMeth),... ERGAS.(FusMeth),DD.(FusMeth)] = metrics(X_real,HSFusion.(FusMeth),psfY.ds_r);fprintf('%s Performance:\n SNR: %f\n RMSE: %f\n UIQI: %f\n SAM: %f\n ERGAS: %f\n DD: %f\n Time: %f\n',... FusMeth,SNR.(FusMeth),RMSE_fusion.(FusMeth),Q.(FusMeth),SAM_m.(FusMeth),ERGAS.(FusMeth),DD.(FusMeth),Costime.(FusMeth));%% Display the fusion results: QualitivenormColor = @(R)max(min((R-mean(R(:)))/std(R(:)),2),-2)/3+0.5;temp_show=X_real(:,:,band_set);temp_show=normColor(temp_show);figure(113);imshow(temp_show);title('Groundtruth')temp_show=XHd_int(:,:,band_set);temp_show=normColor(temp_show);figure(114);imshow(temp_show);title('HS image')temp_show=mean(XM,3);temp_show=normColor(temp_show);figure(115);imshow(temp_show);title('MS image')temp_show=HSFusion.(FusMeth)(:,:,band_set);temp_show=normColor(temp_show);figure(116);imshow(temp_show);title(['Fused image-' FusMeth])name=[mat2str(clock) FusMeth '.mat'];save(name);

3 仿真结果

4 参考文献

[1]肖新耀. "基于稀疏表示的全色和多光谱图像融合方法的研究." 电子所博硕士学位论文 (2015).

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:# yyds干货盘点 #盘点一个列表处理基础问题(四种方法),最后两种最惊艳!
下一篇:【SVM分类】基于自适应蚁狮算法优化SVM分类器实现胃肠道病变附matlab代码
相关文章

 发表评论

暂时没有评论,来抢沙发吧~