【论文阅读02】一种基于双通道的水下图像增强卷积神经网络

news2024/11/29 2:32:41

 来源:海洋论坛▏一种基于双通道的水下图像增强卷积神经网络

       当前不会的        

一、背景:

      水下图像增强方法包含有无水下成像模型的水下图像增强方法、基于水下成像模型的水下图像恢复方法、水下成像模型与深度学习相结合的方法以及完全采用深度学习的方法。

        其中水下成像模型与深度学习相结合的方法是通过深度学习的方法来近似估计水下成像模型中的主要参数。在深度学习的方法中,数据集的多场景化和大小、网络结构、损失函数、训练策略的选择是优化的主要内容。文中主要在网络结构以及损失函数方面进行考量,建立了一种基于双通道的水下图像增强卷积神经网络。区别于其他基于深度学习网络的是,编码器模块采用双通道结构:细节特征提取通道和语义特征提取通道。试验表明:此网络显著改善了水下图像质量

编码器注释:在计算机视觉领域,编码器模块则可以将图像数据编码成一个特征向量,用于识别、分类或生成等任务。常见的编码器模块包括卷积神经网络(CNN)中的卷积层和池化层等。总的来说,编码器模块在深度学习中起着关键的作用,它能够从原始数据中提取出有用的特征信息,为后续任务的处理提供基础。)

        


二、模型介绍:

   1.主要结构:

        细节特征提取通道中的密集连接后又引入高效注意力机制,使网络自适应关注特征的权重。     细节提取模块分为两个模块:密集连接模块和高效注意力模块。高层语义提取模块就是多尺度高层语义提取模块。然后,引入了残差注意力模块和自适应融合模块优化特征,将优化后的特征送入解码器进行清晰图像的重建。解码器采用卷积激活串联结构。  

       1.1 细节特征提取通道:

        1.1.1 密集连接块

         密集连接DenseNet:为了最大化网络中所有卷积模块和相关层之间的信息流,将所有卷积模块两两之间都进行了连接,使得网络中的每个模块都接受其前面所有层的特征作为输入。

        本文提出的结构吸取了其主要思路:

  1.  各个卷积模块之间采用密集连接的方式,这样既实现了前面卷积模块提取出来特征的复用,减轻梯度消失。
  2. 每一个卷积块都会提取到图像的细节特征,这些细节特征在后向传播中,被不断地重复利用,使得每一个卷积块都可以发挥最高效的作用,可以全方面有效提取水下图像的细节特征。

        下方展示采取的密集连接块(一共包含4个提取细节特征的卷积块)

​             

    1.1.2 高效通道注意力机制模块

        注意力机制是深度学习中改善模型提取特征的一种优化方法,让网络在优化的过程中,自适应地关注密集连接网络提取的不同特征的权重,从而更好地提取水下图像的细节特征。

        本文采用2020年Wang等提出的高效通道注意力模块,该模块避免了降维,有效实现了跨通道交互。

       1.2 语义特征提取通道:

         语义特征提取通道采用多尺度结构。网络引入了残差注意力模块和自适应融合模块,既弥补了网络在前期传播过程中原始信息的丢失,又对特征进行了优化。此外,文中将像素损失、感知损失与复频域损失相结合进行网络的训练,取得了良好的效果。

        原始水下图像首先经过卷积激活操作得到64个通道的特征图,然后经过3次下采样(池化)操作得到不同尺度大小的特征图,经过下采样后的特征丢失了大量的细节信息,每个尺度的特征接着经过卷积激活操作进行特征通道数的转换,既丰富了深度语义信息的提取,又方便了上采样操作后特征的融合,最后将不同尺度的特征在通道维度拼接,得到带有高层语义特征的一组特征图。

下采样:用于减少特征图的尺寸,同时保留重要信息。这种操作有助于减少模型的参数数量,加快计算速度,并且有助于防止过拟合。

   1.2.1残差注意力模块和自适应融合模块

2.激活函数选取

        常见的激活函数主要有修正线性单元(ReLU)、带参数的修正线性单元(LeakyReLU)和Sigmoid函数。本文注意力机制中权重特征图的计算采用Sigmoid函数。

3.损失函数

        本文使用图像的复频域损失。复频域损失利用图像的快速傅里叶变换,得到图像在复频域中的特征图,然后定义了两幅图像之间的复频域损失,并结合均方差损失、感知损失来训练搭建的双通道水下自编码器图像增强网络。

图像的复频域损失:用来计算被增强后的图像I和清晰的真实图像I*分别经过快速傅里叶变换后所提取的复频域特征之间的损失。

假设通过网络后输出图像I的快速傅里叶变换后复频域矩阵为A,真实值图像I*的快速傅里叶变换后复频域矩阵为B。令A-B=C,cij表示复频域矩阵C中的元素。则图像的复频域损失定义为:

图片

其中,Lfft表示复频域损失,0≤i,jN−1,且取遍0到N−1之间所有整数,cij*表示cij的共轭复数。采用的总损失函数为:

图片

其中,λ1、λ2、λ3为平衡参数,主要是为了平衡各个损失之间的数量级大小,加速网络的收敛。


三、训练与结果分析:


1.训练过程:

        训练过程:试验中的数据集为UIEB数据集,该数据集收集了大量真实水下场景中拍摄到的图像,一共890对,选取该数据集挑战集中60张留做训练好的模型的测试集。训练网络模型参数过程中训练集和验证集的比为7∶3。

        损失函数训练过程中总体减少,说明逐步逼近真实图像,无梯度爆炸,网络结构可靠

     

2.视觉效果分析:见原文图片

3.客观指标分析:见原文表格比对

注释:常用的无水下图像真实值参考指标有:

▲图像信息熵(ENTROPY):水下图像中包含的图像信息的丰富度,越大越好。

▲水下图像颜色质量评价(UCIQE):水下图像饱和度、色彩度和对比度的加权求和。值越大,图像质量越高。

▲水下图像质量衡量(UIQM):水下图像色彩测量、清晰度测量、对比度测量的加权求和。值越大图像品质越高。

常用的有水下图像真实值参考指标有:

▲图像峰值信噪比(PSNR):信号的最大功率与噪声功率的比值,数值越大代表图像失真越少,有价值的图像信息越多。

▲图像结构相似度(SSIM):用来衡量两张图像相似程度的指标,范围在0到1之间,越接近1代表两张图像结构越相似

4.算法迁移能力分析:做法为在非训练数据集EUVP上选取图片进行测试和对比分析

5.水下目标特征点匹配测试:

水下目标特征点匹配测试注释:局部特征更完整的高质量水下图像会得到更多的匹配点数量。

5.消融试验与对比实验:

消融试验注释:

        用于评估模型或系统中各个组件的贡献和作用。在消融实验中,研究人员通过逐步剔除模型中的某些组件或改变某些条件,来分析这些组件或条件对整体系统性能的影响。

     

        另外,为了验证网络中密集连接和高效注意力模块的细节提取功能,做了对比试验,结果如图12所示,第1行至第3行分别为原始水下图像、没有细节分支时的结果和文中网络的结果。容易得出,虽然没有细节分支时,网络也去除了水下图像的一些噪声,但是得到的结果图边缘特征模糊,色彩失真严重,缺乏水下图像较好的细节信息,从而验证了文中网络中细节分支对水下图像的细节提取起到了一定的促进作用。


四、论文亮点与学习总结:

  1. 提出基于双通道的水下图像增强卷积神经网络,设计了编码器中的细节特征提取模块和多尺度语义特征提取模块,提出了复频域损失函数。   
  2. 为了弥补网络前期传输过程中原始信息的丢失,同时优化特征,融入了残差注意力模块和自适应融合模块。        弥补传输信息损失+优化——>残差注意力+自适应
  3. 消融试验表明了各个模块对于提高水下图像质量均有一定的改善。  当我们提出新的模块组合时,要进行消融实验与比对实验进行验证
  4. 算法不仅在训练数据集UIEB中取得了较好的增强效果,而且在非训练数据集EUVP中表现良好,这说明算法的可迁移性        不仅看训练数据集上的效果,也要应用到非训练数据集说明其可迁移和通用性

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

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

相关文章

数据结构与算法——22.哈希算法

这篇文章我们来讲一下哈希表中较为关键的部分——哈希算法 目录 1.哈希算法的介绍 2.hash算法的使用 2.1 Object.hashCode 2.2 String.hashCode 3.关于哈希表及哈希算法的一些思考 1.哈希算法的介绍 问题:什么是哈希算法?哈希算法有哪些&#xff…

【算法一则】做算法学数据结构 - 简化路径 - 【栈】

目录 题目栈代码题解 题目 给你一个字符串 path ,表示指向某一文件或目录的 Unix 风格 绝对路径 (以 ‘/’ 开头),请你将其转化为更加简洁的规范路径。 在 Unix 风格的文件系统中,一个点(.)表…

兔C_Java集:Java 语言简介

文章目录 1. Java简介历史简介问:Oracle 为什么收购 SUN 公司关于三个分支语言特性: 2. JDK 的安装与配置安装的官网链接配置环境变量 3. 第一个Java程序4. 第一个程序解释关于类的定义 5. CLASSPATH命令自动配置CLASSPATH 与 JVM 的关系CLASSPATH 的手动…

OM3 与 OM4:主要区别和实际应用

OM3 和 OM4 都是激光优化的多模光纤,具有 50/125μm 光纤芯,专为满足 ISO 11801 标准而开发。它们在光纤连接器和应用场景上具有相似性,这往往会导致用户之间的混淆。这些光纤主要设计用于数据中心、局域网 (LAN) 和其…

500以内的不入耳运动耳机推荐,首推五大业内顶级优品

不入耳式运动耳机因其独特的佩戴方式和设计,能够在运动过程中保持对周围环境的警觉,避免因音乐沉浸而忽视潜在的安全隐患,同时它们还能有效减少对耳道的压迫,让运动更加舒适自在,接下来,就让我为大家推荐一…

MAC系统安装PHP、Java、Python、mysql、Composer等环境无权限问题的详细操作方法说明。

本篇文章主要讲解MAC系统安装PHP、Java、Python、mysql、Composer等环境无权限问题的详细操作方法说明。通过本篇文章你可以快速掌握brew安装相对应环境的能力。 作者:任聪聪 日期:2024年4月12日 一、brew介绍及安装说明 官网地址:https://b…

分布式数据库Polardb-X架构及特点

PolarDB-X架构 计算节点(Compute Node,CN)是系统的入口,采用无状态设计的sql引擎提供分布式路由和计算,包括SQL解析器、优化器、执行器等模块。负责数据分布式路由、计算及动态调度,负责分布式事务2PC协调…

VLAN Mapping原理描述

基本原理 路由器收到带Tag的数据报文后,根据配置的VLAN Mapping方式,决定替换外层Tag中的VLAN ID或优先级;然后进入MAC地址学习阶段,根据源MAC地址映射后的VLAN ID刷新MAC地址表项;根据目的MAC映射后VLAN ID查找MAC地…

【电控笔记2.3】速度回路+系统延迟

2.3.1速度回路pi控制器设计 pi伯德图近似设计(不考虑延时理想情况下) Tl:负载转矩 PI控制器的转折频率:Ki/Kp

用海豚调度器定时调度从Kafka到HDFS的kettle任务脚本

在实际项目中,从Kafka到HDFS的数据是每天自动生成一个文件,按日期区分。而且Kafka在不断生产数据,因此看看kettle是不是需要时刻运行?能不能按照每日自动生成数据文件? 为了测试实际项目中的海豚定时调度从Kafka到HDF…

Django中的定时任务与后台任务队列的实践【第164篇—Django】

👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在Web开发中,处理定时任务和后台任务队列是很常见的需求。Django作为一个功能强…

隐私保护?还是安全漏洞?邮箱分身双重身份及创建攻略解析!

很多人只知道微信、QQ等应用分身,对于邮箱分身并不是很了解。邮箱分身和他们的不同点在于我们直接在原有邮箱的基础上创立新的虚拟邮箱地址,并且密码一致,在我们需要运营多个社交媒体账号或者管理多个项目的情况下,邮箱分身是一个…

为什么物联网安全性引发了对身份盗窃的担忧?

物联网是连接互联网的设备和传感器的统称,它代表了一个新的技术时代。这种硬件利用了连接性、硬件、小型化、云计算、数据处理、集成等方面的进步,为消费者和企业带来了好处,同样的物联网方面的威胁也是不断的在增加。 物联网是连接互联网的设…

【面试经典 150 | 链表】分隔链表

文章目录 写在前面Tag题目来源解题思路方法一:模拟 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到的数据结构等内容进行回顾…

leetcode代码记录(全排列 II

目录 1. 题目:2. 我的代码:小结: 1. 题目: 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1…

C++ | Leetcode C++题解之第32题最长有效括号

题目&#xff1a; 题解&#xff1a; class Solution { public:int longestValidParentheses(string s) {int left 0, right 0, maxlength 0;for (int i 0; i < s.length(); i) {if (s[i] () {left;} else {right;}if (left right) {maxlength max(maxlength, 2 * ri…

基于SSM的购物小程序01

4.1系统架构设计 购物系统设计的系统项目的概述设计分析&#xff0c;主要内容有学习平台的具体分析&#xff0c;进行数据库的是设计&#xff0c;数据采用mysql数据库&#xff0c;并且对于系统的设计采用比较人性化的操作设计&#xff0c;对于系统出现的错误信息可以及时做出处…

GEE APP——土壤水分资源管理器

摘要 由于土壤水分含量与地球气候和天气以及干旱、洪水或山体滑坡等现象有关,因此对许多科学和专业用户来说都非常宝贵。遥感技术为连续测量这一变量提供了独特的可能性。特别是在农业领域,对高空间分辨率绘图的需求非常强烈。然而,目前可操作的土壤水分产品只有中粗空间分…

Udio——革命性的AI音乐生成软件

Udio是一款革命性的AI音乐生成软件&#xff0c;由前谷歌DeepMind的顶尖AI研究人员和工程师共同创立&#xff0c;得到著名风险投资公司a16z的支持。它旨在为音乐爱好者和专业人士提供一个全新的音乐创作和分享平台。用户可以通过文本提示来生成音乐&#xff0c;支持广泛的音乐风…

HashMap的扩容看这一篇足够

在Java中&#xff0c;对于HashMap这样的实现&#xff0c;put方法是用来将一个键值对插入到Map中的核心方法。以下是HashMap类中put方法的大致执行流程&#xff1a; 计算Hash值&#xff1a; 首先&#xff0c;put方法会接收一个键&#xff08;Key&#xff09;和一个值&#xff0…