红外和可见光图像融合算法研究
基于MATLAB的红外和可见光图像融合系统[带评价指标]
一、课题介绍
红外技术作为人类认识自然、探索自然的一种新的现代工具,已经被各国普遍的应用于生物、医学、地学等科学领域以及军事侦察方面。红外图像直接反映了物体表面温度分布情况,但由于目标的红外辐射十分复杂,而且影响目标红外辐射的因素很多,红外热图像的清晰度远不如可视图像。可见光图像能够很好的描绘场景中各个物体的外形结构,具有较好的轮廓表现力,所以将红外和可见光图像融为一体有非常好的效果。而通过图像融合是实现这一效果的有效方法,融合后的图像可信度更高,模糊较少,可理解性更好,更适合人的视觉及对源图像的进一步分析、理解以及目标检测、识别或跟踪。图像融合充分利用了多个被融合图像中包含的冗余信息和互补信息,同时又不同于一般意义上的图像增强,它是计算机视觉、图像理解领域的一项新技术。
本文针对红外和可见光图像融合算法进行了研究。通过使用计算机图像处理方法,对同一场景的红外图像和可见光图像进行融合处理,得到一副单一的融合图像,它成功包含了两副源图像的信息。本文主要研究了利用MATLAB软件实现对红外和可见光图像的处理和融合,采用对应像素取大值、取小值、平均值,区域能量、区域对比度比较的融合方法,并且对融合结果图像使用信息熵、标准
差、平均梯度、空间频率的评价指标进行了分析比较。结果表明,融合结果图像
既保留了可见光图像的清晰的轮廓信息,同时也显示了目标物体的表面温度分布情况。
二、图像融合的概念
图像融合(Image Fusion)是指将多源信道所采集到的关于同一目标的图像数据经过图像处理和计算机技术等,最大限度的提取各自信道中的有利信息,最后综合成高质量的图像,以提高图像信息的利用率、改善计算机解译精度和可靠性、提升原始图像的空间分辨率和光谱分辨率,利于监测。图像融合示意图如图 1-4。待融合图像已配准好且像素位宽一致,综合和提取两个或多个多源图像信
冗余信息
互补信息
图 1- 4 图像融合示意图
息。两幅(多幅)已配准好且像素位宽一致的待融合源图像,如果配准不好且像素位宽不一致,其融合效果不好。图像融合的主要目的是通过对多幅图像间的冗余数据的处理来提高图像的可靠性,通过对多幅图像间互补信息的处理来提高图像的清晰度。
图像融合的主要目的包括:
- 增加图像中有用信息的含量,改善图像的清晰度,增强在单一传感器图
像中无法看见或看清的某些特性;
(2) 改善图像的空间分辨率,增加光谱信息的含量,为改善检测、分类、理解、识别性能获取补充的图像信息;
(3) 通过不同时刻的图像序列融合来检测场景或目标的变化情况;
(4) 通过融合多个二维图像产生具有立体视觉的三维图像,可用于三维重建或立体投影、测量等;
(5) 利用来自其他传感器的图像来替代或弥补某一传感器图像中的丢失或故障信息。
三、仿真结果及源码
Matlab是图像处理的一项重要工具,其封装了一系列算法函数,提高了图像处理速度和效率。因此,本文图像处理过程中,使用Matlab工具箱进行进行图像融合。
本文共使用一组可见光与红外图像,分别通过对应像素取大值和取小值、对应像素取平均值和加权平均值、基于区域的能量和对比度融合方法实现图像融合,其实验结果如下,并且根据上一节的评价方法对融合图像进行了客观的融合质量评价,详见表5-1。
1.对应像素取最大值和取小值
1)对应像素取大值:
MATLAB仿真程序:
clear all;
A=imread('p.jpg'); %读取灰度图像
B=imread('q.jpg'); %读取红外图像
A1=double(A);B2=double(B); %将图像转换为double类型
[x,y]=size(A);
for i=1:xfor j=1:yif A(i,j)>B(i,j)C(i,j)=A(i,j);else C(i,j)=B(i,j);endend
end
subplot(2,2,1);imshow(A);
xlabel('a)可见光图像')
subplot(2,2,2);imshow(B);
xlabel('b)红外图像')
subplot(2,2,3);imshow(C,[])
xlabel('c)对应像素取大值融合后图像')
![](/assets/blank.gif)
融合结果:
图 5- 对应像素取最大值融合后的图像
2)对应像素取小值:
clear all;
A=imread('p.jpg'); %读取灰度图像
B=imread('q.jpg'); %读取红外图像
A1=double(A);B2=double(B); %将图像转换为double类型
[x,y]=size(A);
for i=1:xfor j=1:yif A1(i,j)>B2(i,j)C(i,j)=B(i,j);else C(i,j)=A(i,j);endend
end
subplot(2,2,1);imshow(A);
xlabel('a)可见光图像')
subplot(2,2,2);imshow(B);
xlabel('b)红外图像')
subplot(2,2,3);imshow(C,[])
xlabel('c)对应像素取小值融合后图像')
融合结果:
![](/assets/blank.gif)
图 5- 对应像素取最小值融合后的图像
2.对应像素取平均值
MATLAB仿真程序:
clear all;
A=imread('p.jpg');
B=imread('q.jpg');
K=imadd(A,B,'double'); %将两幅图像转换为double型,再相加
C1=imdivide(K,2);
subplot(2,2,1);imshow(A);
xlabel('a)可见光图像')
subplot(2,2,2);imshow(B);
xlabel('b)红外图像')
subplot(2,2,3);imshow(C,[]);
xlabel('c)对应像素取平均值融合后图像')
融合结果:
![](/assets/blank.gif)
图 5- 对应像素取平均值融合后的图像
3.对应像素取加权平均值
MATLAB仿真程序:
clear all;
P1=imread('p.jpg'); %读取灰度图像
P2=imread('q.jpg'); %读取红外图像
L1=double(P1);L2=double(P2); %将图像转换为double类型
A=immultiply(L1,0.3);
subplot(2,2,1);imshow(P1);
xlabel('a)可见光图像')
subplot(2,2,2);imshow(P2);
xlabel('b)红外图像')
subplot(2,2,3);imshow(C,[])
xlabel('c)对应像素加权平均融合后图像')
融合图像结果:
![](/assets/blank.gif)
图 5- 对应像素加权平均融合后的图像
4.基于区域能量比较的融合
1)区域能量取大的融合:
MATLAB仿真程序:
clear all;
P1=imread('p.jpg'); %读取灰度图像
P2=imread('q.jpg'); %读取红外图像
L1=double(P1);L2=double(P2); %将图像转换为double类型
A=L1.^2;B=L2.^2;
[x,y]=size(P1);
for m=2:x-1for n=2:y-1a=m-1;b=m+1;c=n-1;d=n+1;if sum(sum(A([a:b],[c:d])))>sum(sum(B([a:b],[c:d]))); C(m,n)=P1(m,n);else C(m,n)=P2(m,n);endend
end
subplot(2,2,1);imshow(P1);
xlabel('a)可见光图像')
subplot(2,2,2);imshow(P2);
xlabel('b)红外图像')
subplot(2,2,3);imshow(C,[])
xlabel('c)基于区域能量取大融合后图像')
融合结果:
![](/assets/blank.gif)
图 5- 基于区域能量取大融合后的图像
- 区域能量取小的融合:
MATLAB仿真程序:
clear all;
P1=imread('p.jpg'); %读取灰度图像
P2=imread('q.jpg'); %读取红外图像
L1=double(P1);L2=double(P2); %将图像转换为double类型
A=L1.^2;B=L2.^2;
[x,y]=size(P1);
C=P1;
for m=2:x-1for n=2:y-1a=m-1;b=m+1if sum(sum(A([a:b],[c:d])))<sum(sum(B([a:b],[c:d]))); C(m,n)=P1(m,n);else C(m,n)=P2(m,n);endend
end
subplot(2,2,1);imshow(P1);
xlabel('a)可见光图像')
subplot(2,2,2);imshow(P2);
xlabel('b)红外图像')
subplot(2,2,3);imshow(C,[])
xlabel('c)基于区域能量取小融合后图像')
![](/assets/blank.gif)
图 5- 基于区域能量取小融合后的图像
5.基于区域对比度比较的融合
MATLAB仿真程序:
clear all;
P1=imread('p.jpg'); %读取灰度图像
P2=imread('q.jpg'); %读取红外图像
A=double(P1);B=double(P2); %将图像转换为double类型
[x,y]=size(P1);
C1=A;C2=B;
D1=minus(A,C1);D2=minus(B,C2); %A-C1
E1=rdivide(D1,C1);E2=rdivide(D2,C2);
F=A;
for m1=2:x-1for n1=2:y-1a=m1-1;b=m1+1;c=n1-1;d=n1+1;if mean(mean(E1([a:b],[c:d])))>mean(mean(E2([a:b],[c:d])))F(m1,n1)=P1(m1,n1);else F(m1,n1)=P2(m1,n1);endend
end
subplot(2,2,1);imshow(P1);
xlabel('a)可见光图像')
subplot(2,2,2);imshow(P2);
xlabel('b)红外图像')
subplot(2,2,3);imshow(F,[])
xlabel('c)基于区域对比度取大融合后图像')
融合结果:
![](/assets/blank.gif)
图 5- 基于区域对比度融合后的图像
- 下表列出了不同融合方法所得到的图像的评价结果
表 5- 融合结果图像评价
图像融合方法 | 评价标准 | |||
信息熵E | 标准差std | 平均梯度 | 空间频率 | |
对应像素取最大值 | 6.6948 | 29.5083 | 4.2927 | 9.1607 |
对应像素取最小值 | 6.5223 | 23.8603 | 4.3085 | 8.4296 |
图像融合方法 | 评价标准 | |||
信息熵E | 标准差std | 平均梯度 | 空间频率 | |
对应像素取平均值 | 6.2178 | 22.2666 | 3.2953 | 6.4550 |
对应像素加权平均 | 6.2819 | 21.4988 | 3.3771 | 6.6744 |
基于区域能量取大 | 6.7375 | 29.9311 | 4.6958 | 11.4168 |
基于区域能量取小 | 6.5445 | 24.3389 | 4.5668 | 9.5732 |
基于区域对比度 | 1.8530e-04 | 33.9577 | 16.2664 | 36.5167 |
由融合结果图像和上表可以看出基于区域能量的融合方法优于对应像素的融合方法。基于区域能量取大的融合方法所得到的图像质量最好,信息熵、标准差、平均梯度、空间频率的值最大,融合图像所含的信息丰富,图像清晰。
对应像素融合的方法中,对应像素取平均值的方法融合的结果图像质量最差,包含的信息不够丰富,图像模糊。对应像素取加权平均值的方法标准差最小,色调单一均匀,看不出太多的信息。像素值取大和像素值取小法所得到的融合图像,它们对图像的整体把握不好,要么图像整体暗淡,要么整体就偏亮,且边缘信息比较模糊,对比度较低。
基于区域对比度的融合方法所得到的图像模糊,信息熵小,分析编写程序和算法可能是在计算过程中灰度值超出了0~255的范围,也可能是计算的高频分量值过小,对比度值异常过大,接近于无穷大,导致了图像局部偏亮或者局部暗淡,融合图像质量不够好。
将以上实验结果中的融合图像与原可见光图像和红外图像作对比,不难看出,融合结果图像既有可见光图像中的边缘特征,同时也反映了红外图像中目标物体或者场景的温度分布信息,实现了可将光图像特点与红外图像特征的有效结合,能更全面并且准确地表达目标物体或者场景所包含的信息,能够很好地实现目标识别和监测等实际应用。
红外和可见光图像融合算法研究相关推荐
- 代码 马佳义_【图像融合学习笔记002】图像融合论文及代码网址整理总结(2)——红外与可见光图像融合...
写在前面的话: 本篇博文主要整理汇总一下现有的红外与可见光图像融合算法(文章和代码).适当地,也会整理出作者的学术主页.整理这些的初衷,是为了方便自己,顺便也给同领域的研究者在找代码等方面提供些许便利 ...
- 红外和可见光图像融合论文及代码整理
红外和可见光图像融合论文及代码整理 News [2022-07-29] 我们的综述论文<基于深度学习的图像融合方法综述>被<中国图象图形学报>正式接收![论文下载] 本篇博文在 ...
- 小波变换图像融合_【第11期 图像处理与仿真】 基于改进谱残差显著性图的红外与可见光图像融合...
往期推荐 [第11期 系统与设计] 一种提高FPGA片间通信稳定性的校验协议研究 [第11期 系统与设计] 光学被动热补偿方式实现红外与可见光图像融合物镜设计 [第11期 系统与设计]基于CPLD的增 ...
- 【图像融合】基于matlab对比度增强结合多尺度边缘保持分解红外与可见光图像融合【含Matlab源码 1886期】
⛄一.对比度增强结合多尺度边缘保持分解红外与可见光图像融合简介 1 引言 夜视成像技术在军事与执法领域,如监控,侦查,情报搜集和安保等方面有着重要应用.不同类型的夜视成像传感器在记录同一场景时,在其提 ...
- FusionGAN:一种生成式红外与可见光图像融合对抗网络
FusionGAN:一种生成式红外与可见光图像融合对抗网络 FusionGAN:一种生成式红外与可见光图像融合对抗网络 简要介绍 损失函数 网络架构 训练细节 实验 应用于融合不同分辨率的图像(低分辨 ...
- 基于深度学习的红外和可见光图像融合论文及代码整理
基于深度学习的红外和可见光图像融合论文及代码整理 首先附上近期整理基于深度学习的图像融合论文的思维导图 本篇博客主要整理基于深度学习的红外和可见光图像融合的论文和代码 图像融合系列博客还有: 图像融合 ...
- matlab resampc函数,基于contourlet变换的红外与可见光图像融合matlab源码
基于contourlet变换的红外与可见光图像融合matlab源码 matlab 2020-12-1 下载地址 https://www.codedown123.com/53619.html 基于con ...
- 【TarDAL红外与可见光图像融合论文笔记】
Target-aware Dual Adversarial Learning and a Multi-scenario Multi-Modality Benchmark to Fuse Infrare ...
- Gradient Transfer Optimization Model:基于梯度转移优化模型的红外与可见光图像融合
目录
最新文章
- MFC控件的颜色设置
- mysql2005错误_sql-server-2005 – SQL Server 2005错误701 – 内存不足
- C++ Primer 5th笔记(6)chapter6 函数: 参数
- 页面缓存导致数据错误
- rip协议的V1和V2的更新机制
- python读取xls文件详解_python3解析excel文件
- 消融实验——Ablation experiment
- java 监听者模式有啥用,监听者模式在系统中的应用 —— 事件总线
- html 价格计算,HTML打折计算价格实现原理与脚本代码
- CYQ.Data 轻量数据层之路 华丽升级 V1.3出世(五)
- view函数_python测试开发django63.基于函数的视图(@api_view())
- BAT机器学习面试1000题系列
- iPhone屏幕适配 新增iPhone XS iPhone XR iPhone XS Max
- excel 无法找到入口 enumcalendarInfoExEx 于动态库链接库KERNEL32.DLL
- 网易2017实习生招聘面试经历
- android studio 模拟器 for mac,mac下androidStudio 运行模拟器出现:
- 详解Yarn中三种资源调度器(FIFO Scheduler、Capacity Scheduler、Fair Scheduler)和配置自定义队列实现任务提交不同队列
- 统计学上数据的处理和图标的展示原则
- 7-6 jmu-Java-01入门-开根号
- 服务器操作系统密码忘记,服务器操作系统密码忘记了
热门文章
- 蚪侠模板站群-V25版[泛域名+泛目录+泛内页]-[代码+汉字]干扰-字体繁简切换-蜘蛛欺骗-主动推送-全局锚文本锁定-自动新闻采集-自动模板采集
- web前端知识——iframe标签、CSS
- epub电子书如何用Windows电脑打开?
- IE窗口关闭事件(转)
- SDUT ACM 多项式求和(基于C语言)
- DELL电脑无法感应到插入耳机
- android 蓝牙cs8510,【华为ROM大赛】华为G610-u00移植联想超级VIBEROM你值得拥有(兼容10月机)cs85d2d9a...
- 前端开发者的专业度自查 100 条
- 【网络】inux流量控制器TC(Traffic Control)
- linux 流量控制 1