【图像融合】小波变换可见光与红外光图像融合(带面板)【含GUI Matlab源码 701期】

这篇具有很好参考价值的文章主要介绍了【图像融合】小波变换可见光与红外光图像融合(带面板)【含GUI Matlab源码 701期】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式
⛳️座右铭:行百里者,半于九十。

更多Matlab仿真内容点击👇
Matlab图像处理(进阶版)
路径规划(Matlab)
神经网络预测与分类(Matlab)
优化求解(Matlab)
语音处理(Matlab)
信号处理(Matlab)
车间调度(Matlab)

⛄一、小波变换彩色图像融合简介

0 引言
目前在各种图像采集与分析系统中已大量使用彩色CCD数码相机, 但是由于其视野有限, 常常获得的只是局部图像, 如果要保证一定的分辨率的前提下采集整体彩色图像, 只能先拍摄具有重叠部分的局部彩色图像, 随后对其进行手工或自动拼接的方法来达到目的。该技术在机器视觉、遥感、虚拟现实、医学图像处理等领域有着广泛的应用。

图像融合包括图像配准和彩色图像融合。目前图像处理软件中比如Photoshop等提供了丰富的处理功能, 以交互方式通过剪切、模糊等操作进行图像拼接, 但由于完全是手工操作, 效率较低且精度不高。然而融合过程完全由计算机自动处理也会遇到难点, 比如进行图像配准的几何变换参数需根据控制点来计算, 所以控制点的准确性对最终配准的精确度会有很大的影响。在人工交互方式下, 控制点是由操作人员仔细观察两幅图像重叠区域的特征而选取出来的, 可信度高, 保证了图像配准的精度, 因此人工交互与计算机自动处理是相辅相成的。图像配准后, 由于当空间三维场景被投影为二维图像时, 场影中的诸多变化因素, 如光照条件、景物遮挡、噪声干扰、景物几何形变和畸变、表面物理特性以及照相机特性等, 都被综合到图像色彩值中, 因此对应同一场景的重叠图像必然存在一定差异。彩色图像融合后, 过渡区的自然平滑是关键。

一种基于小波变换的彩色图像融合算法, 基本步骤是:交互式地在局部图像的重叠部份选取足够多的控制点[1] ―→指定几何变形的类型―→将两幅局部图像变换到同一坐标空间―→色彩空间转换―→小波变换―→对色彩的各分量进行融合―→小波逆变换―→色彩空间转换―→融合图像。考虑到Matlab具有强大、便捷的计算功能, 特别是其丰富的工具箱函数[1], 能极大地提高开发效率, 本文使用Matlab自带的工具箱函数对算法进行了仿真, 由实验可以看出在Matlab这个平台上通过少量编程即可实现复杂算法。

2 基于小波变换的图像融合方法
图像配准之后, 由于局部图像重叠区域之间差异的存在, 如果将图像像素简单叠加, 拼接处就会出现明显的拼接缝。传统的融合方法多是在空间域处理, 没有考虑相应频率域的变化。小波分析具有优良的时频局部性能, 它对信号用一组尺度不同的带通滤波器进行滤波[2], 将信号分解为不同频带进行处理, 能把信号进行多分辨分析, 表达了图像在不同分辨率下的特征, 很适合于图像融合。

设二维尺度函数Φ (x, y) 是可分离的, 相应的尺度函数为Φ (x) , 小波函数为ψ (x) , 即:
Φ (x, y) =Φ (x) Φ (y) (7)
则可构造3个二维基本小函数:
ψ1 (x, y) =Φ (x) ψ (y) (8)
ψ2 (x, y) =ψ (x) Φ (y) (9)
ψ3 (x, y) =ψ (x) ψ (y) (10)
二维小波基可以通过以下伸缩平移实现:

Ψjj,m,n=2-jΨi (2-jx-m, 2-jy-n) (11)
其中j, m, n∈Z, i=1, 2, 3。这样二维图像信号f (x, y) 在尺度2j下的平滑分量 (低频分量) 可用二维序列Dj (m, n) 表示为
Dj (m, n) =<f (x, y) , ϕj, m, n (x, y) > (12)
细节成分表示为:
C1j (m, n) =<f (x, y) , Ψ1j,m,n (x, y) > (13)
C2j (m, n) =<f (x, y) , Ψ2j,m,n (x, y) > (14)
C3j (m, n) =<f (x, y) , Ψ3j,m,n (x, y) > (15)
局部图像的重叠区域经过一层二维Mallat算法将得到各自的四个子带图像:LL、LH、HL、HH。图2为基于小波变换的图像融合框图, 首先对重叠区某一色彩分量进行三层小波分解, 然后对色彩不同分量采用不同的融合算法得融合后的系数, 经小波逆变换得融合图像的某一色彩分量。matlab对小波分析提供了全面的支持, 允许用户以图形界面或者命令行形式直接调用小波工具箱函数。例如:idwt2 (dwt2 (image, ‘db2’) , ‘db2’) , 这一行程序先调用dwt2函数对图像image以db2小波进行一层小波变换, 再调用idwt2函数进行小波逆变换, 结果又得到了图像image, matlab的快捷方便可见一斑。
【图像融合】小波变换可见光与红外光图像融合(带面板)【含GUI Matlab源码 701期】,Matlab图像处理(进阶版),matlab
图2 基于小波变换的图像融合框图

⛄二、部分源代码

function varargout = main(varargin)
% MAIN MATLAB code for main.fig
% MAIN, by itself, creates a new MAIN or raises the existing
% singleton*.
%
% H = MAIN returns the handle to a new MAIN or the handle to
% the existing singleton*.
%
% MAIN(‘CALLBACK’,hObject,eventData,handles,…) calls the local
% function named CALLBACK in MAIN.M with the given input arguments.
%
% MAIN(‘Property’,‘Value’,…) creates a new MAIN or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before main_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to main_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE’s Tools menu. Choose “GUI allows only one
% instance to run (singleton)”.
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help main

% Last Modified by GUIDE v2.5 14-Dec-2017 19:28:26

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct(‘gui_Name’, mfilename, …
‘gui_Singleton’, gui_Singleton, …
‘gui_OpeningFcn’, @main_OpeningFcn, …
‘gui_OutputFcn’, @main_OutputFcn, …
‘gui_LayoutFcn’, [] , …
‘gui_Callback’, []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% — Executes just before main is made visible.
function main_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to main (see VARARGIN)

% Choose default command line output for main
handles.output = hObject;
handles.imfusion1=[];
handles.imfusion2=[];
axis(handles.axes1,‘off’);
axis(handles.axes2,‘off’);
axis(handles.axes3,‘off’)
movegui(handles.figure1,‘center’);
% Update handles structure
guidata(hObject, handles);
uiwait(handles.figure1);

% UIWAIT makes main wait for user response (see UIRESUME)
% uiwait(handles.figure1);

% — Outputs from this function are returned to the command line.
function varargout = main_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;

% — Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
img =handles.imfusion1;
% img = rgb2gray(img);
% img = img(20:160,140:280);
nn=10;
img=imresize(img,[58nn 77nn]);

img2 =handles.imfusion2;
% img2 = rgb2gray(img2);
% img2 = img2(20:160,140:280);
img2=imresize(img2,[58nn 77nn]);
[RcA1,RcH1,RcV1,RcD1] = dwt2(img,‘sym4’);%LL1,HL1,LH1,HH1
[VcA1,VcH1,VcV1,VcD1] = dwt2(img2,‘sym4’);%LL1,HL1,LH1,HH1
[RcA2,RcH2,RcV2,RcD2] = dwt2(RcA1,‘sym4’);%LL1,HL1,LH1,HH1
[VcA2,VcH2,VcV2,VcD2] = dwt2(VcA1,‘sym4’);%LL1,HL1,LH1,HH1
%%%%%% 2级小波融合
%%%%%% 策略1: 低频平均;高频模值较大者
[M1,N1,P1] = size(RcA1);
[M2,N2,P2] = size(RcA2);
%%%%%%1级
cA10 = (RcA1 + VcA1)*0.5;
for i=1:M1
for j=1:N1
for k=1:3
if abs(RcH1(i,j,k)) > abs(VcH1(i,j,k))
cH10(i,j,k) = RcH1(i,j,k);
else
cH10(i,j,k) = VcH1(i,j,k);
end
if abs(RcV1(i,j,k)) > abs(VcV1(i,j,k))
cV10(i,j,k) = RcV1(i,j,k);
else
cV10(i,j,k) = VcV1(i,j,k);
end
if abs(RcD1(i,j,k)) > abs(VcD1(i,j,k))
cD10(i,j,k) = RcD1(i,j,k);
else
cD10(i,j,k) = VcD1(i,j,k);
end
end
end
end
%%%%%%%2级
cA20 = (RcA2 + VcA2)*0.5;
for i=1:M2
for j=1:N2
for k=1:3
if abs(RcH2(i,j,k)) > abs(VcH2(i,j,k))
cH20(i,j,k) = RcH2(i,j,k);
else
cH20(i,j,k) = VcH2(i,j,k);
end
if abs(RcV2(i,j,k)) > abs(VcV2(i,j,k))
cV20(i,j,k) = RcV2(i,j,k);

          cD20(i,j,k) = RcD2(i,j,k);      
    else
          cD20(i,j,k) = VcD2(i,j,k); 
    end        
    end
end

end
%%%%%%反变换
img_fuse2 = idwt2(cA20,cH20,cV20,cD20,‘sym4’);%LL1,HL1,LH1,HH1
img_fuse2 = img_fuse2(1:M1,1:N1,1:3);
img_fuse0 = idwt2(img_fuse2,cH10,cV10,cD10,‘sym4’);
for k=1:3
% a=max(max(img_fuse0(:,:,k)));
% b=min(min(img_fuse0(:,:,k)));
% img_fuse0(:,:,k)=1/(b-a)*img_fuse0(:,:,k)-(1/(b-a)*a);

imshow(img_fuse0);
guidata(hObject, handles);

% — Executes on button press in pushbutton2.
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
[FileName, FilePath]=uigetfile(‘.tif;.jpg;.png;.img;.gif;.bmp;’,‘请选择图像数据’);
str=[FilePath FileName];
image_1=imread(str);
handles.imfusion1=image_1;
axes(handles.axes1);
imshow(image_1);
[FileName, FilePath]=uigetfile(‘.tif;.jpg;.png;.img;.gif;.bmp;’,‘请选择图像数据’);
str=[FilePath FileName];
image_1=imread(str);
handles.imfusion2=image_1;
axes(handles.axes2);
imshow(image_1);
guidata(hObject, handles);

⛄三、运行结果

【图像融合】小波变换可见光与红外光图像融合(带面板)【含GUI Matlab源码 701期】,Matlab图像处理(进阶版),matlab

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]]汪强,尹峰,刘钢钦.基于小波的彩色图像融合技术[M].计算机仿真. 2005,(11)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合文章来源地址https://www.toymoban.com/news/detail-827873.html

到了这里,关于【图像融合】小波变换可见光与红外光图像融合(带面板)【含GUI Matlab源码 701期】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 利用红外-可见光图像数据集OTCBVS打通图像融合、目标检测和目标跟踪

    本文记录在云服务器autodl上选择安装cuda、cudnn开始,部署相同视角、相同时间、相同地点拍摄的红外和可见光图像数据集OTCBVS在Github目前开源的图像融合PIAFusion、目标检测Yolo-v4、目标跟踪DeepSort算法上实现单数据集贯通。 本文只做到以下几点: 1、列举常见红外-可见光图像数

    2024年02月04日
    浏览(45)
  • 图像融合论文阅读:CS2Fusion: 通过估计特征补偿图谱实现自监督红外和可见光图像融合的对比学习

    @article{wang2024cs2fusion, title={CS2Fusion: Contrastive learning for Self-Supervised infrared and visible image fusion by estimating feature compensation map}, author={Wang, Xue and Guan, Zheng and Qian, Wenhua and Cao, Jinde and Liang, Shu and Yan, Jin}, journal={Information Fusion}, volume={102}, pages={102039}, year={2024}, publisher={Elsevier} } 论文级

    2024年01月22日
    浏览(52)
  • 红外图像和可见光图像异源图像配准问题研究

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 图像配准方法有很多,可分为基于灰度的图像配准方法和基于特征的图像配准方法,其中基于特征的图像配准方法是目前图像配准算法中常用方法,如尺度不变特征变换(Scale Invariant Feature Transform, SIF

    2023年04月11日
    浏览(37)
  • 多模态(红外,可见光)目标检测

    【github】https://github.com/DocF/multispectral-object-detection 基本依赖和yolov5基本相同,当然也可以配置在虚拟环境中 1.2.1 找不到sppf 【参考文章】找不到SPPF错误 在models/common.py下找到ssp,将下面这段添加到ssp之前 1.2.2 【参考】报错解决方法 将下面这段替换utils/loss.py中build_targets函数

    2024年02月02日
    浏览(40)
  • 基于LED或红外激光的可见光音频系统

      1 前言         可见光通信技术 , 简称为 VLC ,这种技术手段在无线通信领域中最新成型,便能得以快速发展壮大。在接下来的一段时间之内,无论是在哪个领域,该项技术肯定会有很大的发展,跟现有的无线通信技术形成强有力的竞争,对人类文明的进步产生巨大的影响

    2024年02月11日
    浏览(40)
  • 热红外相机图片与可见光图片配准教程

    图像配准是一种图像处理技术,用于将多个场景对齐到单个集成图像中。在这篇文章中,我将讨论如何在可见光及其相应的热图像上应用图像配准。在继续该过程之前,让我们看看什么是热图像及其属性。 热图像本质上通常是灰度图像:黑色物体是冷的,白色物体是热的,灰

    2024年02月07日
    浏览(36)
  • ADAS-可见光相机之Cmos Image Sensor

    “ 可见光相机在日常生活、工业生产、智能制造等应用有着重要的作用。在ADAS中更是扮演着重要的角色,如tesla model系列全车身10多个相机,不断感知周围世界。本文着重讲解下可见光相机中的CIS(CMOS Image Sensor)。” 光是一种电磁波,自然界的光是由各种波长的电磁波组成,

    2024年02月09日
    浏览(40)
  • 基于小波变换的图像融合(附加视频融合)代码

    小波分析是一个比较难的分支,用户采用小波变换,可以实现图像压缩,振动信号的分解与重构等,因此在实际工程上应用较广泛。小波分析与Fourier变换相比,小波变换是空间域和频率域的局部变换,因而能有效地从信号中提取信息。小波变换通过伸缩和平移等基本运算,实

    2023年04月21日
    浏览(49)
  • 图像处理01 小波变换

    连续小波分解,通过改变分析窗口大小,在时域上移动窗口和基信号相乘,最后在全时域上整合。通过离散化连续小波分解可以得到 伪离散小波分解, 这种离散化带有大量冗余信息且计算成本较高。 小波变换的公式如下: ​ ​​ ​​ ​ ​ 更直观的可以用下面的图片来表

    2024年02月05日
    浏览(36)
  • 【图像融合】Dif-Fusion:基于扩散模型的红外/可见图像融合方法

    颜色在人类的视觉感知中起着重要的作用,反映了物体的光谱。然而, 现有的红外和可见光图像融合方法很少探索如何直接处理多光谱/通道数据,并实现较高的彩色保真度 。本文提出了一种 利用扩散模型diffusion来生成多通道输入数据的分布 ,提高了多源信息聚合的能力和

    2024年02月09日
    浏览(80)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包