【图像融合】基于RP、CVT、DTCWT、NSCT-SR+DWT-SR+拉普拉斯金字塔算法-SR等实现MRT图像融合附matlab源码

简介: 【图像融合】基于RP、CVT、DTCWT、NSCT-SR+DWT-SR+拉普拉斯金字塔算法-SR等实现MRT图像融合附matlab源码

 1 内容介绍

在图像融合文献中,多尺度变换(MST)和稀疏表示(SR)是最常用的两个

广泛使用的信号/图像表示理论。本文提出了一个通用的图像融合框架

通过结合 MST 和 SR 同时克服基于 MST 和 SR 的融合方法的固有缺陷。在我们的融合框架中,首先对每个预注册的源图像以获得它们的低通和高通系数。然后,合并低通带使用基于 SR 的融合方法,而高通带使用 coef- 的绝对值进行融合ficients 作为活动水平的测量。最后通过逆MST得到融合图像

关于合并系数。所提出的融合框架相对于单个 MST 或首先从理论的角度详细展示了基于 SR 的方法,然后通过实验通过多焦点、可见红外和医学图像融合验证。特别是六大流行的多尺度变换,包括拉普拉斯金字塔 (LP)、低通金字塔比 (RP)、离散小波变换(DWT)、双树复小波变换 (DTCWT)、曲波变换 (CVT) 和非下采样Contourlet 变换 (NSCT),测试了从 1 到 4 的不同分解级别在我们的实验中。通过对融合结果进行主观和客观的比较,我们给出了在所提出的框架下对每一类图像融合的最佳融合方法。效果还研究了滑动窗口的步长。此外,实验结果表明所提出的融合框架可以获得最先进的性能,特别是对于融合多模态图像。

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

image.gif编辑

2 仿真代码

clear all;close all;clc;addpath(genpath('sparsefusion'));addpath(genpath('dtcwt_toolbox'));addpath(genpath('fdct_wrapping_matlab'));addpath(genpath('nsct_toolbox'));load('sparsefusion/Dictionary/D_100000_256_8.mat');[imagename1 imagepath1]=uigetfile('source_images\*.jpg;*.bmp;*.png;*.tif;*.tiff;*.pgm;*.gif','Please choose the first input image');image_input1=imread(strcat(imagepath1,imagename1));    [imagename2 imagepath2]=uigetfile('source_images\*.jpg;*.bmp;*.png;*.tif;*.tiff;*.pgm;*.gif','Please choose the second input image');image_input2=imread(strcat(imagepath2,imagename2));     figure;subplot(121);imshow(image_input1);title('图1');subplot(122);imshow(image_input2);title('图2')if size(image_input1)~=size(image_input2)    error('two images are not the same size.');endimg1=double(image_input1);img2=double(image_input2);overlap = 6;                    epsilon=0.1;level=4;% To make a comparison, please use % LP-SR for medical image fusion, % DTCWT-SR for visible-infrared image fusion,% NSCT-SR for multi-focus image fusion.tic;if size(img1,3)==1    %for gray images    imgf = lp_sr_fuse(img1,img2,level,3,3,D,overlap,epsilon);      %LP-SR    imgf1 = rp_sr_fuse(img1,img2,level,3,3,D,overlap,epsilon);     %RP-SR    imgf2 = dwt_sr_fuse(img1,img2,level,D,overlap,epsilon);        %DWT-SR    imgf3 = dtcwt_sr_fuse(img1,img2,level,D,overlap,epsilon);      %DTCWT-SR    imgf4 = curvelet_sr_fuse(img1,img2,level+1,D,overlap,epsilon); %CVT-SR    imgf5 = nsct_sr_fuse(img1,img2,[2,3,3,4],D,overlap,epsilon);   %NSCT-SRelse                  %for color images    imgf=zeros(size(img1));    imgf1=zeros(size(img1));    imgf2=zeros(size(img1));    imgf3=zeros(size(img1));    imgf4=zeros(size(img1));    imgf5=zeros(size(img1));    for i=1:3        imgf(:,:,i) = lp_sr_fuse(img1(:,:,i),img2(:,:,i),level,3,3,D,overlap,epsilon);      %LP-SR        imgf1(:,:,i) = rp_sr_fuse(img1(:,:,i),img2(:,:,i),level,3,3,D,overlap,epsilon);     %RP-SR        imgf2(:,:,i) = dwt_sr_fuse(img1(:,:,i),img2(:,:,i),level,D,overlap,epsilon);        %DWT-SR        imgf3(:,:,i) = dtcwt_sr_fuse(img1(:,:,i),img2(:,:,i),level,D,overlap,epsilon);      %DTCWT-SR        imgf4(:,:,i) = curvelet_sr_fuse(img1(:,:,i),img2(:,:,i),level+1,D,overlap,epsilon); %CVT-SR        imgf5(:,:,i) = nsct_sr_fuse(img1(:,:,i),img2(:,:,i),[2,3,3,4],D,overlap,epsilon);   %NSCT-SR    endendtoc;figure;;subplot(231);imshow(uint8(imgf));title('LP-SR');subplot(232);imshow(uint8(imgf1));title('RP-SR')subplot(233);imshow(uint8(imgf2));title('DWT-SR')subplot(234);imshow(uint8(imgf3));title('DTCWT-SR')subplot(235);imshow(uint8(imgf4));title('CVT-SR')subplot(236);imshow(uint8(imgf5));title('NSCT-SR')imwrite(uint8(imgf),'Results/fused_mstsr.tif');

3 运行结果

image.gif编辑

image.gif编辑

4 参考文献

[1] A. Goshtasby, S. Nikolov, Image fusion: advances in the state of the art, Inform.

Fusion 8 (2) (2007) 114–118.

[2] P. Burt, E. Adelson, The laplacian pyramid as a compact image code, IEEE Trans.

Commun. 31 (4) (1983) 532–540.

[3] A. Toet, Image fusion by a ratio of low pass pyramid, Pattern Recogn. Lett. 9 (4)

(1989) 245–253.

[4] V. Petrovic, C. Xydeas, Gradient-based multiresolution image fusion, IEEE

Trans. Image Process. 13 (2) (2004) 228–237.

[5] H. Li, B. Manjunath, S. Mitra, Multisensor image fusion using the wavelet

transform, Graph. Models Image Process. 57 (3) (1995) 235–245.

[6] M. Beaulieu, S. Foucher, L. Gagnon, Multi-spectral image resolution refifinement

using stationary wavelet transform, in: Proceedings of 3rd IEEE International

Geoscience and Remote Sensing Symposium, 2003, pp. 4032–4034.

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

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

相关文章
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
212 0
|
2月前
|
数据采集 分布式计算 并行计算
mRMR算法实现特征选择-MATLAB
mRMR算法实现特征选择-MATLAB
163 2
|
2月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
144 8
|
2月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
158 8
|
2月前
|
机器学习/深度学习 算法 数据可视化
基于MVO多元宇宙优化的DBSCAN聚类算法matlab仿真
本程序基于MATLAB实现MVO优化的DBSCAN聚类算法,通过多元宇宙优化自动搜索最优参数Eps与MinPts,提升聚类精度。对比传统DBSCAN,MVO-DBSCAN有效克服参数依赖问题,适应复杂数据分布,增强鲁棒性,适用于非均匀密度数据集的高效聚类分析。
|
2月前
|
开发框架 算法 .NET
基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
简介:本文介绍基于ADMM的MIMO信号检测算法,结合无穷范数优化与交替方向乘子法,降低计算复杂度并提升检测性能。涵盖MATLAB 2024b实现效果图、核心代码及详细注释,并对比ML、MMSE、ZF、OCD_MMSE与LAMA等算法。重点分析LAMA基于消息传递的低复杂度优势,适用于大规模MIMO系统,为通信系统检测提供理论支持与实践方案。(238字)
|
2月前
|
机器学习/深度学习 数据采集 负载均衡
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)
139 0
|
2月前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
124 0
|
2月前
|
存储 监控 并行计算
目标跟踪中常用点迹航迹数据关联算法的MATLAB实现
通过计算测量点与预测点之间的欧氏距离,选择最近邻点进行关联,适用于单目标跟踪场景。
|
3月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
206 3

热门文章

最新文章