【图像融合】对比度增强结合多尺度边缘保持分解红外与可见光图像融合【含Matlab源码 1886期】

news2024/11/13 12:15:31

⛄一、对比度增强结合多尺度边缘保持分解红外与可见光图像融合简介

1 引言
夜视成像技术在军事与执法领域,如监控,侦查,情报搜集和安保等方面有着重要应用。不同类型的夜视成像传感器在记录同一场景时,在其提供的信息中有部分是冗余的或互补的。图像融合技术可以将可见光图像与热红外图像融合为一幅图像。融合后的新图像能够清晰地显示目标与背景,相比每个单独的源图像融合图像可以提供更多信息。因此,为了获得更适合人感知和计算机处理的夜视图像,有必要对更有效的融合算法展开研究。
近年来,国内外针对像素级图像融合算法做了大量研究,其中以多尺度融合算法居多,如拉普拉斯金字塔、平移不变离散小波变换、contourlet 变换和 ridgelet 变换等 。上述方法可以较好地保存不同源图像的细节,但在融合过程中没有充分考虑空间一致性,导致融合图像存在伪影。文献[5]提出一种基于导向滤波的加权平均融合算法,导向滤波用于解决空间一致性问题,但算法中没有考虑多尺度分解,导致丢失源图像中的细节。此外,在夜间拍摄的可见图像中细节的可视较差,若直接融合,得到的融合结果整体清晰度不理想,故在融合之前有
必要增强可见光图像对比度。常用的对比度增强算法有直方图均衡化算法、ACE 算法和多尺度 retinex算法等 ,但这些算法运算量大或产生伪影。通过动态范围压缩和对比度增强完成对可见光图像的增强,但其不能自适应地增强可见光图像中的细节。针对以上算法存在的问题,本文提出一种改进的图像融合方法。该方法首先在融合之前采用基于导向滤波的自适应增强算法提高夜间可见光图像的细节可视性;其次,利用 RGF(Rolling Guidance Filter)对源图像进行多尺度分解,提取不同尺度下的图像特征,与常规边缘保持滤波器相比,RGF 具有尺度感知特性,其能够更好地实现图像特征的尺度分离;最后,通过权重图重构融合图像。实验结果证明了算法在弱光或非均匀光照条件下有着较好的应用效果。

2 基于导向滤波的夜间可见光图像自适应增强算法
2.1 导向滤波原理

导向滤波是一种基于局部线性模型的边缘保持滤波,包括输入图像 I,导向图 G 和输出图像 O。理论上,导向滤波假设在以像素点 k 为中心的局部窗口 ωk 内,滤波输出为导向图 G 的线性变换:
在这里插入图片描述
ωk 为一个半径为 r 的正方形窗口。在ωk 内线性系数ak 和bk 为常数,其可以通过最小化下列代价函数估
计出:
在这里插入图片描述
ε 为正则化参数防止ak 过大。系数ak 和bk 可以直接通过线性回归求出:
在这里插入图片描述
ω 为ωk 内的像素点个数,I k 和Gi 分别为图像 I 和图像 G 在窗口ωk 内的平均值,σk2 为 I 在窗口ωk 内的方差。由于像素点 i 包含在若干不同的窗口ωk 中,故式(1)中滤波输出Oi 的值会随着窗口 ωk 的变化而改
变。该问题可通过平均Oi 的所有可能值来解决:
在这里插入图片描述
根据窗口的对称性可得到:
在这里插入图片描述
因此,式(1)可改写为
在这里插入图片描述
导向滤波由式(3),式(4)和式(7)构成,当输入图像 I 与导向图 G 相同时,导向滤波表现出与双边滤波相似的保边特性。

2.2 算法步骤
基于导向滤波的自适应增强算法主要包括 3 个步骤:图像分解、动态范围压缩和对比度恢复。
首先,假设源图像为 I,利用导向滤波GF( , X r, )ε 对源图像 I 进行平滑处理,得到图像在对数域
中的基础层:
在这里插入图片描述
然后获取图像的细节层:
在这里插入图片描述
式中,lg()⋅ 为自然对数算子,lg 1 ( ) x + 代替lgx 防止对数值为负。至此,源图像已通过导向滤波分解为两个尺度。提取到的基础层保留了源图像的大尺度特征,具有较高动态范围,下一步需要通过比例因子 β 对其进行动态范围压缩,再利用另一因子 γ 恢复整体对比度,以上操作可由式(10)表达:
在这里插入图片描述
从式(10)中可以看出当 β < 1 时仅基础层对比度降低,细节层并未改变,因此细节得以保存。
其他理论简介见参考文献。

⛄二、部分源代码

%% 初始化
clc
clear all
close all
warning off all;
%% 读入图像
I_r=imread(‘IR.bmp’); % 红外光图像
I_v=imread(‘VI.bmp’); % 可见光图像
%% 将彩色图像转换为灰度图像
if size(I_v,3)>1
I_r=rgb2gray(I_r);
I_r=double(I_r);
I_v=rgb2gray(I_v);
I_v=double(I_v);
else
I_r=double(I_r);
I_v=double(I_v);
end

⛄三、运行结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]朱浩然,刘云清,张文颖.基于对比度增强与多尺度边缘保持分解的红外与可见光图像融合[J].电子与信息学报. 2018,40(06)

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/99632.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

目标检测论文解读复现【NO.21】基于改进YOLOv7的小目标检测

前言 此前出了目标改进算法专栏&#xff0c;但是对于应用于什么场景&#xff0c;需要什么改进方法对应与自己的应用场景有效果&#xff0c;并且多少改进点能发什么水平的文章&#xff0c;为解决大家的困惑&#xff0c;此系列文章旨在给大家解读最新目标检测算法论文&#xff0…

Java项目:基于SSM的高校运动会管理系统的设计与实现

作者主页&#xff1a;源码空间站2022 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 该高校运动会信息管理系统是以B/S架构为设计基础并基于SSM框架开发的系统。系统采用了Java语言和MySQL数据库来实现。 系统按预定的算法完成了创…

数据结构---删去k个数字后的最小值

删去k个数字后的最小值思路贪心算法JAVA实现1JAVA实现2给出一个整数&#xff0c;从该整数中去掉k个数字&#xff0c;要求剩下的数字形成的新整数尽可能小。应该如何选取被去掉的数字&#xff1f; 其中整数的长度大于或等于k&#xff0c;给出的整数的大小可以超过long类型的数字…

计算机毕业设计 基于HTML+CSS+JavaScript 大气的甜品奶茶美食餐饮文化网页设计与实现23页面

&#x1f468;‍&#x1f393;静态网站的编写主要是用HTML DIVCSS JS等来完成页面的排版设计&#x1f469;‍&#x1f393;,常用的网页设计软件有Dreamweaver、EditPlus、HBuilderX、VScode 、Webstorm、Animate等等&#xff0c;用的最多的还是DW&#xff0c;当然不同软件写出的…

Java+SSM房屋租赁系统房屋出租房产(含源码+论文+答辩PPT等)

项目功能简介: 该项目采用的技术实现如下 后台框架&#xff1a;Spring、SpringMVC、MyBatis UI界面&#xff1a;jQuery 、JSP 数据库&#xff1a;MySQL 系统功能 系统分为前台用户界面和后台系统管理&#xff1a; 1.前台用户界面 用户注册、用户登录、用户中心、浏览房源、房源…

代码随想录训练营第54天|休息日 小结

打家劫舍系列 198. 打家劫舍对于当前的房间&#xff0c;无非就两种选择&#xff1a;偷与不偷。如果当前房间偷&#xff0c;那么前一个房间就不偷&#xff0c;即dp[i] dp[i-2] nums[i]&#xff1b;如果当前房间不偷&#xff0c;那么dp[i] dp[i-1]&#xff0c;因此递推公式为…

ch3_1_多进程的概念

1. CPU 的管理 CPU的工作原理&#xff1a; 从内存中取出程序的指令&#xff0c; 执行程序中的指令&#xff1b; 1.1 多道程序 假设A 程序运行时&#xff0c; 遇到 IO 处理时&#xff0c; 为了能够执行A 程序的后续指令&#xff0c; 正常情况下 cpu 需要等待着IO 处理完成&am…

后端快速学习VUE(一):VUE入门

个人博客地址 http://xiaohe-blog.top/ 文章目录1. 简介2. 基本使用2.1 引入Vue2.2 基本使用2.3 总结 &#xff1a;3. v-text、v-html指令的使用4. v-on : 事件绑定4.1 事件的三要素&#xff1a;4.2 v-on的基本使用4.3 v-on获取vue实例this4.4 事件绑定简化写法5. 常用指令5.1 …

useRef 源码解读

文章目录useRef 源码解读mountRefupdateRefref 的生命周期&#xff08;工作流程&#xff09;总结&#xff1a;render 阶段commit 阶段总述具体阐述safelyDetachRefcommitAttachRefuseRef 源码解读 由于 string 类型的 ref 已不推荐使用&#xff0c;所以只针对 function &#…

论文复现-1:bertscore

Bertscore是计算相似度的一种方法。 遗留问题&#xff1a;使用model layer 中的单一层 还是多个层&#xff0c;会对结果造成很大的影响吗&#xff1f; sent_encode函数是使用tokenizer将句子做encode。 tokenizer.encode( sent, add_special_tokensTrue, add_prefix_spaceTrue,…

HTML与CSS基础

2022.12.12 程序员在前端写完代码之后通过浏览器的渲染和解析成为用户看到的网页 浏览器出品的公司不同&#xff0c;内部的渲染引擎也不同。导致解析相同代码时的速度、性能、效果也不同 相同的前端网页在不同浏览器中运行的的结果也可能不同 WEB的三大标准 HTML包含页面内…

Java+MySQL基于SSM的智能办公管理系统

随着时代的发展,人们越来越来希望通过简单方便快捷的方式来进行办公,通过自能办公系统可以实现在线办公,这种办公模式脱离了传统纸质办公很多困扰,在实现现代化的同时提高了办公的效率。 本智能办公管理系统采用JAVA语言来进行开发,用小巧灵活的MySQL数据库做完后台存储解释。本…

痞子衡职场经验与感悟分享 - 索引

大家好&#xff0c;我是痞子衡&#xff0c;是正经搞技术的痞子。本系列痞子衡给大家分享的是职场经验与见闻感悟。 痞子衡在嵌入式行业也摸打滚爬了不少年&#xff0c;有一些个人经验可以给大家参考。所谓他山之石可以攻玉&#xff0c;希望痞子衡的经验对大家的职场之路有所帮…

jsp+ssm计算机毕业设计电影影评网【附源码】

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; JSPSSM mybatis Maven等等组成&#xff0c;B/S模式 Mave…

java基础的综合运用

文章目录前言一.类的设计书籍类书架类用户类二.行为的规范2.1 增加书籍2.2展示所有书籍2.3查找书籍2.4 删除书籍2.5 归还书籍2.6 借阅书籍2.7 退出系统三.测试类的方法四.项目的目录前言 在我们学习完面向对象的知识之后&#xff0c;我们就要运用相关知识去实现一个图书管理系…

十六进制转Ascii脚本(包含\x处理)

目录 1.前言 2.十六进制转换脚本(包含处理\x) 1.前言 在以前玩CTF的时候,会遇到十六进制编码,特别是带\x的那种,网上虽然也有在线解密网站,但是对于\x解码不是特别友好。 2.十六进制转换脚本(包含处理\x&#

【Flink实时数仓】数据仓库项目实战 《四》日志数据分流 【DWD】

文章目录【Flink实时数仓】数据仓库项目实战 《四》日志数据分流-流量域 【DWD】1.流量域未经加工的事务事实表1.1主要任务1.1.1数据清洗&#xff08;ETL&#xff09;1.1.2新老访客状态标记修复1.1.3新老访客状态标记修复1.2图解1.3代码1.4数据测试1.4.1 测试脏数据1.4.2 测试e…

论文写作神器,SCI 写作必备

一、论文写作建议与英文句型积累/引用 1. Academic Phrasebank 网址&#xff1a; https://www.phrasebank.manchester.ac.uk/ Academic Phrasebank&#xff1a;从引言工作到结论提出了论文写作的详细建议&#xff0c;并在每个小点给出了海量的英语表达以供参考。是 SCI 新手…

linux red hat 8.0 搭建DNS服务

DNS简介&#xff1a; 简单的来说&#xff0c;DNS就是把域名和IP地址联系在一起的服务&#xff0c;有了DNS服务器&#xff0c;你就不用输入IP地址来访问一个网站&#xff0c;可以通过输入网址访问。 可以把DNS服务理解成网易有道词典&#xff0c;你去搜索一个英语单词&#xff0…

【MindStudio训练营第一期】【昇腾AI训练营新手班学习笔记】大作业

介绍 大作业&#xff1a;使用MindStudio成功复现昇腾社区中的MindX SDK应用案例 选题&#xff1a;黑白图像上色 https://www.hiascend.com/zh/developer/mindx-sdk/case-studies/d0c56d6f-a6f9-4b77-8587-db8272f22f3b 步骤 运行 使用MindStudio打开下载到的工程文件 创建d…