水下目标检测(低光照目标检测)方法-发表在Patter Recognition,代码已开源

本文主要是介绍水下目标检测(低光照目标检测)方法-发表在Patter Recognition,代码已开源,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这里写自定义目录标题

  • 前言
  • 动机
  • 贡献
  • Overview
  • 一些实验结果
    • 数据集
    • 主要实验结果
    • 实验结果展示
  • 总结

前言

Hi,各位读者,好久不见!现在我已经从北大博士毕业,成为一名小青椒啦!工作还是需要宣传的。今天想分享我在水下目标检测的工作:《A gated cross-domain collaborative network for underwater object detection》,发表在中科院一区期刊《Pattern Recognition》,代码已经开源:Github
欢迎大家引用我的工作,也欢迎学术合作👏

动机

水下目标检测(Underwater Object Detection,UOD)与通用目标检测(Generic Object Detection,GOD)之间最大的区别在于不同的检测环境。水下图像不可避免地受到能见度差、光线折射、吸收和散射等影响。尽管有研究通过水下图像增强(Underwater Image Enhancement, UIE)技术改善图像质量以提高目标检测性能,但也有研究显示,仅依赖图像增强可能不足以提升检测效果,有时甚至会导致性能的显著下降。这主要是因为图像增强技术虽然能在视觉上改善图像,但机器对场景的理解与人眼存在本质差异,仅通过调整颜色、亮度和对比度并不能充分提供目标检测所需的信息。而且,图像增强的过程不可避免地移除或改变图像中的关键细节,引入噪声或伪影。针对这一问题,有研究者探索了结合水下视觉增强和目标检测的策略,这些策略主要分为预处理方式和多任务学习方式。如图(a)所示,在预处理方式中,水下图像增强方法作为预处理步骤来生成增强图像,然后在生成的增强图像上进行目标检测。然而,由于水下图像增强方法可能引入噪声或伪影,检测算法的性能无法显著提高。而在多任务学习策略中,视觉恢复和目标检测被视为一个联合优化的多任务学习问题,以引导图像增强朝着检测有利的方向进行,如图(b)所示。然而,这些研究方法需要匹配的模糊和清晰图像对进行训练,这在实际应用中难以获得。(辛辛苦苦画的图,如有需要,务必引用!!!)
辛辛苦苦画的图,如有需要,务必引用
与先前的方法不同,本文提出了一种基于门控跨域协作网络的水下目标检测方法(A gated cross-domain collaborative network for underwater object detection,GCC-Net),将来自水下图像增强模型生成的增强图像领域和原始图像领域的特征进行交互和融合,如图(c)所示。受水下图像增强模型工作的启发,增强图像可以提高可见性质量。本文工作受到以下问题的启发:为什么这些视觉上更清晰的增强图像会降低水下目标检测的性能?这可能是因为图像增强过程丢失了一些用于目标检测的有用的原始信息。因此,本文提出的方法尝试整合来自原始域和增强域的特征。由于增强图像可以提高水下图像的视觉质量,提供更清晰、更可辨识的对象边界,这有助于解决水下目标检测中遇到的低对比度和弱光照问题。另一方面,原始图像保留了场景的自然特征,并提供了关于对象的清晰纹理信息。增强图像域和原始图像域都为水下目标检测提供独特而有价值的信息,因此探索原始图像和增强图像之间的交互和融合对于准确识别水下对象将是有益的。

贡献

本文工作的主要贡献可以总结如下:
(1)提出一种实时的水下图像增强方法:该方法用于生成增强图像,可以改善低光区域的水下对象的可见性,同时从原始图像和增强图像域中学习特征有助于在弱光条件下识别水下对象。
(2)提出一种跨域特征交互模块:它通过同时处理原始图像和增强图像,在一个统一的框架中实现两个域信息的相互作用和融合,旨在解决水下环境中的低可见性和对比度问题。
(3)提出一种门控特征融合机制:用于自适应地控制跨域信息的融合比率,以此减少由水下增强模型产生的不可靠结果带来的负面影响。
(辛辛苦苦画的图,如有需要,务必引用!!!)
在这里插入图片描述

Overview

本文提出的弱光照目标检测方法整体框架如图2所示,该方法主要由四个组件组成:(1)使用在线图像增强模型water-MSR生成清晰的增强图像;(2)跨域特征交互(Cross-domain Feature Interaction,CFI)模块以促进增强图像和原始图像之间的特征交互并探索互补信息;(3)门控特征融合(Gated Feature Fusion,GFF)模块以控制跨域信息的融合比率;(4)使用检测头输出结果。

方法细节请看我的论文原文。

一些实验结果

数据集

本方法在公认的四个水下目标检测数据集DUO、Brackish、TrashCan和 WPBB上进行实验,以验证弱光照目标检测方法的性能。

主要实验结果

在这里插入图片描述

实验结果展示

在这里插入图片描述

总结

本文提出了一种端到端的门控跨域协作网络(GCC-Net),旨在解决目标检测任务在弱光照环境下遇到的低对比度和可见性差等挑战。通过将图像增强技术与目标检测框架相结合,本方法在原始图像域与清晰图像域之间建立了一种交互和融合的机制。该机制包含三大核心模块:在线图像增强模型(waterMSR)、跨域特征交互(CFI)模块以及门控特征融合(GFF)模块。通过提出的CFI模块,模型不仅能利用增强图像中的显著目标信息,还能够捕捉原始图像所特有的自然场景属性和细节纹理。CFI模块在提高图像视觉质量的同时,维持了真实场景的属性,在弱光照环境中能更精确地检测和定位目标。本章还引入了门控特征融合(GFF)模块,优化了增强特征与原始特征间的信息交流,确保了两类特征的有效融合,避免了任何一方特征对最终结果的过度影响。

欢迎引用!!!也欢迎和我交流弱光照目标检测的工作

这篇关于水下目标检测(低光照目标检测)方法-发表在Patter Recognition,代码已开源的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1117358

相关文章

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

Spring Boot 3.4.3 基于 Spring WebFlux 实现 SSE 功能(代码示例)

《SpringBoot3.4.3基于SpringWebFlux实现SSE功能(代码示例)》SpringBoot3.4.3结合SpringWebFlux实现SSE功能,为实时数据推送提供... 目录1. SSE 简介1.1 什么是 SSE?1.2 SSE 的优点1.3 适用场景2. Spring WebFlu

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

java之Objects.nonNull用法代码解读

《java之Objects.nonNull用法代码解读》:本文主要介绍java之Objects.nonNull用法代码,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录Java之Objects.nonwww.chinasem.cnNull用法代码Objects.nonN

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

SpringBoot实现MD5加盐算法的示例代码

《SpringBoot实现MD5加盐算法的示例代码》加盐算法是一种用于增强密码安全性的技术,本文主要介绍了SpringBoot实现MD5加盐算法的示例代码,文中通过示例代码介绍的非常详细,对大家的学习... 目录一、什么是加盐算法二、如何实现加盐算法2.1 加盐算法代码实现2.2 注册页面中进行密码加盐2.

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤