【图像融合】高斯金字塔+拉普拉斯金字塔彩色水下图像融合【含Matlab源码 1629期】

news2024/11/24 19:35:35

⛄一、区域分割图像融合简介

图像的分解
对源图像进行融合时,首先对图像进行分解,利用拉普拉斯金字塔分解,先对图像进行高斯金字塔分解,然后再进行拉普拉斯金字塔分解。

1 高斯金字塔分解
记源图像为G0,G0即为高斯金字塔最底层,将其进行高斯低通滤波,之后对其进行隔行隔列的下采样,得到的图像与源图像在较低分辨率上近似,分辨率是源图的一半(高斯金字塔的第一层G1)。重复上述操作,得到下一层高斯金字塔。反复进行上述操作,得到若干层,即构成高斯金字塔。假设高斯金字塔的第l层图像为Gl:
在这里插入图片描述
在这里插入图片描述
2 拉普拉斯金字塔分解
将上述得到的高斯金字塔利用插值法进行插值,膨胀后的图像Gl的尺寸与第l-1层图像Gl-1尺寸相同,如式(13)所示:
在这里插入图片描述

3 彩色图像融合
基于S-PCNN+局部熵(Local Entropy,LE)与拉普拉斯金字塔的融合,在一般RGB格式图像中,对每个分量进行处理时,由于三个分量的相关性很大,不易对特定因素进行处理,所以对图像进行融合时,为了得到较好的效果和有效的处理方式,先将RGB图像转换为HSI图像,得到H、S、I三个分量,再分别对三个分量进行相关的处理与融合。

对于H分量,送入S-PCNN模型,经过迭代得到振荡频图(Oscillation Frequency Graph,OFG),再对其得到的振荡频图(OFG)进行局部熵(LE)的计算,得到OFG局部熵矩阵作为H分量的特征矩阵,最后根据不同的源图像的H分量对应像素局部熵的大小,取其LE较大的像素作为最终融合所取的像素。

图像的局部熵由下式表述:
在这里插入图片描述
其中:Pk=h(k)/(m×n),m×n表示像素I(i,j)的邻域,h(k)表示邻域的直方图,pi为邻域的归一化直方图,K表示邻域像素的最大灰度值。

对于S分量和I分量,对其进行拉普拉斯金字塔分解,然后用不同的策略对经分解处理后的金字塔子层图像进行融合。在金字塔低层的图像,用局部熵来作为决策准则选取融合系数,高层金字塔图像通过S-PCNN模型来选取融合系数。本文采用的融合算法是基于简化脉冲耦合神经元的神经网络模型(S-PCNN),S-PCNN模型每次迭代后,经过判断每个像素对应的神经元是否点火,可以输出一幅二值脉冲图像,这些二值图像包含了图像的一些特征信息。在S-PCNN网络的N次迭代运算中,对每个图像I的像素I(i,j)对应的神经元N(i,j)发出脉冲进行统计后可得到一幅振荡频图(OFG),将OFG记为ION,则可用式(16)计算得到:
在这里插入图片描述
根据分析统计每个像素点的点火次数,再通过计算其局部熵(LE)来选取源图像的包含更多信息的更清晰区域,作为融合部分进行最终的图像融合。经S-PCNN模型迭代后的图可以展现图像的主要细节信息。

源图像经拉普拉斯金字塔分解,得到许多在不同空间频带上的子图像,由于在各个频带上的图像包含的特征和细节不同,所以对不同频带上的子图像进行融合时采用的融合策略也不相同。对金字塔的低层0~N,区域能量能衡量图像的质量,采用区域能量的方式选取系数。其计算公式如下:
在这里插入图片描述
图像融合后的结果如下式所示:
在这里插入图片描述
其中0≤l<N。
分别用上式计算获得金字塔的各层图像,融合后的图像LF1,LF2,LF3,…,LFN,通过式(14)可以重构出最终的融合图像。由于拉普拉斯金字塔高层图像含有源图像的细节信息及纹理和边缘信息,S-PCNN在提取图像纹理细节、区域分布等方面表现出色,所以对于高层的拉普拉斯金字塔图像则采用的S-PCNN模型来选取系数。
本文提出的彩色图像融合算法流程如图2所示。
在这里插入图片描述
图2 融合算法流程
结合算法流程,下面说明算法具体步骤:
1)将源彩色图像从RGB空间转换到HSI彩色空间,得到H、S、I三个分量。
2)将分离出的H分量送入S-PCNN模型,经过迭代后得到振荡频图(OFG);再对其进行局部熵(LE)的计算,得到OFG局部熵矩阵作为H分量的特征矩阵;最后根据不同源图像的H分量的对应像素的局部熵大小,取其LE较大的像素作为最终融合所取的像素。
3)将S、I分量进行拉普拉斯金字塔分解,对其用本文彩色图像融合部分表述的方式进行融合。
4)融合后的H、I、S分量得到HSI彩色图像,逆转换为RGB得到最终图像。

⛄二、部分源代码

clear all;
clc;

⛄三、运行结果

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

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]贺康建,金鑫,聂仁灿,周冬明,王佺,余介夫.基于简化脉冲耦合神经网络与拉普拉斯金字塔分解的彩色图像融合[J].

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

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

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

相关文章

mysqldump实战-问题1

使用mysqldump导出数据时&#xff0c;遇到了一个权限问题(之前没报过这个提示) mysqldump: Error: Access denied; you need (at least one of) the PROCESS privilege(s) for this operation when trying to dump tablespaces 查看当前用户的权限&#xff1a; 解决方法&…

ARM 指令流水线

CPU要执行某一个指令&#xff0c;第一步&#xff0c;PC给内存发送地址&#xff0c;IR接收内存返回的指令&#xff1b;第二步&#xff0c;指令译码器解析IR中的指令&#xff1b;第三步&#xff0c;寄存器执行译码结果对应的运算单元。 实际上&#xff0c;译码器在译码的时候&am…

flutter 基于百度地图的地图选址,包括移动选址,地区搜索 ,仿微信地图选址

flutter 最近有在地图上选择地址的需求&#xff0c;要求如下 1.移动地图获取根据地图中心点获取周边的poi信息 2.搜索&#xff0c;根据搜索内容提示相关地点信息&#xff0c;点击移动到相关位置&#xff0c;显示出该位置周边的poi信息 废话少说&#xff0c;先上视频 flutter…

菜鸟Linux(2):进程优先级与进程状态

"才一年,看着世界变迁,有种沧海桑田" 一、进程调度 与 进程优先级 (1)何为优先级 双击.exe(可执行程序)文件 会发生什么&#xff1f; 但是,当我们使用电脑的时候,不仅仅只会 启动一个程序&#xff01; 系统中一定会有多个 进程同时存在&#xff01; 然而,需求是无…

什么是云手机?云手机的原理是什么?

什么是云手机? 云手机(Cloud Phone)是在云上运行APP的仿真手机。云手机服务根据不同场景提供多种规格的云手机&#xff0c;稳定24小时不间断&#xff0c;全面兼容Android原生APP&#xff0c;流畅运行大型手游&#xff0c;是移动办公好助手。云手机服务为您提供高性能、安全、…

微服务Spring Boot 整合 Redis 实现好友关注 – Feed流实现推送到粉丝收件箱

文章目录⛄引言一、Redis 实现好友关注 -- Feed流实现推送到粉丝收件箱⛅Feed 流实现方案⚡推送到粉丝收件箱三、Redis 实现好友关注 -- 实现分页滚动查询 实时获取信息⛵小结⛄引言 本博文参考 黑马 程序员B站 Redis课程系列 在点评项目中&#xff0c;有这样的需求&#xff…

【正点原子I.MX6U-MINI】删除开机内核Logo和进度条界面Logo

一、编译内核 内核源码1、例程源码-》3、正点原子 Uboot 和 Linux 出厂源码-》linux-imx-4.1.15-2.1.0-g8a006db.tar.bz2。 在 Ubuntu 中新建名为“alientek_linux”的文件夹&#xff0c;然后将 linux-imx-4.1.15-2.1.0-g8a006db.tar.bz2 这个压缩包拷贝到前面新建的 aliente…

Revit中用楼板编辑创建坡道的两种方法

在绘制坡道的时候&#xff0c;有一种两侧带坡度的坡道&#xff0c;一般我们采用楼板编辑的方式来创建。 方法有两种&#xff1a; 第一种是听过添加子图元的点来创建&#xff0c;方法如下&#xff0c; 首先绘制设计所需的楼板尺寸&#xff0c;完成之后点击楼板&#xff0c;形状编…

【Flutter 组件】004-基础组件:图片及 ICON

【Flutter 组件】004-基础组件&#xff1a;图片及 ICON 文章目录【Flutter 组件】004-基础组件&#xff1a;图片及 ICON一、图片1、Image概述Image 的几个构造方法常用属性ImageProvider2、从 asset 中加载图片第一步&#xff1a;准备图片第二步&#xff1a;使用图片第三步&…

9.高性能计算 期末复习

文章目录1.提纲2.第二章 并行硬件&程序设计2.1 SIMD&MIMD2.2 可扩展性2.7 串行程序并行化&#xff08;poster四步&#xff1a;划分、通信、聚合、分配&#xff09;3.mpi2.1 点对点gemm2.2集合通信gemmsend/recv实现reducesend/recv 实现ring AllReduce2.3 加速比2.4 奇…

数据预处理的方法有哪些?

数据处理的工作时间占据了整个数据分析项目的70%以上。因此&#xff0c;数据的质量直接决定了分析模型的准确性。那么&#xff0c;数据预处理的方法有哪些呢&#xff1f;比如数据清洗、数据集成、数据规约、数据变换等&#xff0c;其中最常用到的是数据清洗与数据集成&#xff…

医学影像篇

影像组学研究的基本流程知识点 01 准备工作 研究前我们先要做好准备工作&#xff1a;&#xff08;这个准备工作呢就好像小白做菜&#xff09; 最开始&#xff0c;我们往往主动提出或者被提出了一个临床问题&#xff08;临床问题可能是老板直接安排的&#xff0c;也可能是在临…

【网管日记】Nginx基本介绍、安装与使用

Nginx基本使用 基本介绍 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件&#xff08;IMAP/POP3&#xff09;代理服务器。其特点是 占用内存少&#xff0c;并发能力强 &#xff0c;事实上nginx的并发能力在同类型的网页服务器中表现较好&#xff0c;中国大陆使用ngin…

AntV-G6:图表自动居中显示/画布自适应/fitView

需求描述 图表节点较多时&#xff0c;可能分布到屏幕可视范围之外&#xff0c;期望图表自动居中显示 调研分析 阅读官网文档&#xff1a;G6.Graph配置项&#xff0c;一下就看到了这个配置项&#xff1a; 看起来只要在初始化图表的配置里加上“fitView: true”就能万事大吉了…

解决PyCharm中opencv不自动补全的问题

解决PyCharm中opencv不自动补全的问题前言解决办法前言 今天下载opencv后&#xff0c;发现用pycharm打开并没有出现代码补全的情况&#xff0c;对于我这种新手极其不友好&#xff0c;故我去网上寻找方法。 opencv版本&#xff1a;4.6.0 寻找半天 有的说&#xff0c;要移动cv…

数据结构——二叉树的顺序存储(堆)

二叉树的顺序存储 顺序结构存储就是使用数组来存储&#xff0c;一般使用数组只适合表示完全二叉树&#xff0c;因为不是完全二叉树会有空间的浪费。而现实中使用中只有堆才会使用数组来存储&#xff0c;关于堆我们后面的章节会专门讲解。二叉树顺序存储在物理上是一个数组&…

玩转MySQL:如何在高并发大流量情况下正确分库分表海量数据

引言 本篇数据库专栏内容&#xff0c;主要会讲解不同高并发场景下的MySQL架构设计方案&#xff0c;也包括对于各类大流量/大数据该如何优雅的处理&#xff0c;也包括架构调整后带来的后患又该如何解决&#xff1f;其中内容会涵盖库内分表、主从复制、读写分离、双主热备、垂直分…

极简而高效的沟通管理法(有点长,但都是干货)

我想说的意思不是说为了体现工作的价值&#xff0c;要故意提高工作的沟通成本&#xff0c;相反&#xff0c;我们的确需要通过归纳总结梳理标准话的流程、甚至是工具化的手段来降低一个领域的沟通&#xff0c;但我们同时工作在找更复杂、更需要去沟通的场景中&#xff0c;去创造…

【PTA-训练day16】L2-028 秀恩爱分得快 + L1-064 估值一亿的AI核心代码

&#xff01;L2-028 秀恩爱分得快 - 分块大模拟 PTA | 程序设计类实验辅助教学平台 这个题还是挺考验 函数合理运用 和 数据模拟处理能力 的 思路&#xff1a; 因为可能出现-0这种输入 所以不能是int型 stoi() 将字符串转化为整数先把每张照片的人 按照片编号储存因为题目只要…

手慢无!阿里云神作被《Spring Boot进阶原理实战》成功扒下,限时

小编又来给大家分享好书了&#xff1a;郑天民老师的 《Spring Boot进阶:原理、实战与面试题分析》&#xff0c;别问网上有没有开源版本&#xff01;问就是我也不知道&#xff0c;哈哈&#xff01;小编会在文末附电子版下载方式。 郑天民是谁&#xff1f; 资深架构师和技术专家…