面向遥感图像的小目标检测最新方法 FFCA-YOLO

论文简介

在遥感图像中,小目标检测面临着特征表示不足和背景混淆等挑战,特别是当算法需要在有限计算资源的约束下进行实时处理时,对准确性和速度的优化要求尤为严格。为解决这些问题,本文提出了一种高效的目标检测器——特征增强、融合与上下文感知YOLO(FFCA-YOLO)。FFCA-YOLO设计包含三项创新且轻量级的模块:特征增强模块(FEM)、特征融合模块(FFM)以及空间上下文感知模块(SCAM)。这三个模块分别提升了网络在局部区域的感知能力、多尺度特征融合能力以及跨通道和空间的全局关联性,同时尽量避免增加模型复杂度。如此一来,小目标的弱特征表现得以强化,混淆的背景得到有效抑制。

为了验证FFCA-YOLO的有效性,作者采用了两个公开的遥感小目标检测数据集(VEDAI和AI-TOD)以及一个自建数据集(USOD)。实验结果显示,FFCA-YOLO在这些数据集上的平均精度(mAP50)分别达到了0.748、0.617和0.909,超越了多个基准模型及当前最优方法。此外,该方法在不同模拟退化条件下的鲁棒性也得到了验证。

为进一步降低计算资源消耗同时保持效率,基于部分卷积(PConv)重构了FFCA-YOLO的主干和颈部结构,优化出了FFCA-YOLO的轻量版本(L-FFCA-YOLO)。与原版相比,L-FFCA-YOLO速度更快、参数规模更小、计算力需求更低,而精度损失甚微,展现了良好的性能与效率平衡。

方法介绍

作者认为,遥感应用中小目标检测的主要挑战可以概括为三点:特征表示不足、背景混淆,以及在有限的硬件条件下优化速度和精度。

在这篇文章中,作者的动机是设计一个高精度同时具备潜在的实时处理能力的小目标检测器。由此,作者首先分别提出了特征增强模块(FEM)与空间上下文感知模块(SCAM)来丰富局部和全局的上下文特征信息。其中,FEM通过多分支卷积拓宽了骨干网络的感受野;SCAM通过构建全局上下文关系来确定小目标与全局特征的联系。对特征融合而言,作者又提出了特征融合模块(FFM),它可以在不增加计算复杂度的情况下利用通道信息重新加权不同的特征图,进而提升特征的融合策略。上述三个模块都被引入到YOLO模型中,形成了一个特征增强、融合与上下文感知的YOLO网络,作者称其为FFCA-YOLO。

最后,作者为了在确保精度的情况下降低模型的计算资源消耗量,又利用部分卷积重构了FFCA-YOLO的骨干网络和颈部网络,得到了一个小版本的FFCA-YOLO模型,称之为L-FFCA-YOLO。

作者在本文的主要贡献可分为以下三点:

设计了一种高效的小目标检测器(FFCA-YOLO)及其精简版L-FFCA-YOLO。与几种基准模型和最先进的(SOTA)方法相比,FFCA-YOLO在小目标检测任务中具有先进的性能,并具有未来实时应用的潜力。

提出了三个创新的和轻量级的即插即用模块:FEM、FFM和SCAM。这三个模块分别提高了局部区域感知、多尺度特征融合、全局关联跨通道和空间的网络能力。它们可以作为公共模块插入到任何检测网络中,以增强小目标的弱特征表示,并抑制可混淆的背景。

基于航空遥感图像构建了一种新的小物体数据集USOD,在低光照和阴影遮挡条件下,小物体(小于32×32像素)的比例超过99.9%。此外,USOD在不同的模拟退化条件下有多个测试集,如图像模糊、高斯噪声、条纹噪声、噪声和雾等,可以作为遥感小目标检测的基准数据集。

作者选择YOLOv5作为他们的基准框架,因为与最新的YOLOv8相比,它的参数更少,并且可以在小目标检测任务中保持一定程度的准确性。FFCA-YOLO的整体架构如下图所示。首先,FFCA-YOLO只使用4个卷积子采样操作作为特征提取的主干,这与原来的YOLOv5不同。其次,在YOLOv5的颈部增加了三个专门设计的模块:提出了一个轻量级FEM来提高网络的局部区域感知;提出了FFM来提高多尺度特征融合的能力;SCAM的设计旨在提高全局关联跨信道和空间的能力。最后,通过基于PConv重构FFCA-YOLO,精度损失较小,得到了一个称为L-FFCA-YOLO的精简版本。

图片

| 特征融合模块(FEM)

由于遥感图像的复杂性,在小目标检测任务中容易出现具有相似特征的误警。然而,骨干网的提取能力却很有限。本阶段提取的特征包含较少的语义信息和狭窄的接受域,这使得很难区分小物体和背景。因此,这里所提出的FEM考虑从两个角度增强小物体的特征。从特征丰富度增加的角度来看,采用多分支卷积结构提取多重判别语义信息。从扩大接受域的角度来看,采用空洞卷积获得更丰富的局部上下文信息。受RFB-s的启发,FEM的整体结构如下图所示。不同之处在于FEM只有两个具有空洞卷积的分支。每个分支对输入特征图进行1×1的卷积操作,初步调整后续处理的通道数。第一个分支是一个残差结构,它形成一个等价的映射来保留小物体的关键特征信息。其他三个分支执行级联标准卷积操作,其内核大小分别为1×3、3×1和3×3。在中间的两个分支上添加了额外的空洞卷积层,这样提取的特征图就可以保留更多的上下文信息。

图片

与RFB-s相比,FEM具有更轻的结构,使模型能够通过多分支空洞卷积学习更丰富的局部上下文特征,提高了小对象的特征表示能力。

| 特征融合模块(FFM)

高级和低级的特征映射包含不同的语义信息。从多尺度特征图中聚合特征可以增强小目标的语义表示。作者所提出的FFM采用了基于BiFPN的颈部结构。与BiFPN不同,FFM改进了名为CRC的重新加权策略,并调整了原始的BiFPN以容纳三个检测头。FFM的结构如下图所示。

图片

与BiFPN相比,FFM改进了涉及重加权通道的多尺度特征图的融合策略。BiFPN的融合策略是在特征图之间,这导致不同的通道具有相同的权重。为了加强多尺度特征对小目标的表示,充分利用不同通道的特征,所提出的CRC对特征图的通道进行了重新加权,如上图的下半部分所示。

作者这里设计了三种重新加权通道的策略。第一种策略使用类似于SENet或ECANet的通道注意机制来重新加权通道。该策略是可行的,但显著增加了计算成本和参数计数。第二种策略首先将特征映射连接起来,然后将相同数量的参数与标准化的可训练权值相乘。第三种策略进一步考虑了不同特征映射之间的语义差距,首先对每个特征映射中的通道进行重新加权,然后对不同的特征映射进行重新加权。

三种策略都提高了性能,但第二种和第三种策略之间的差异并不显著。因此,作者在FFM中选择了第二种策略来进行特征重加权。FFM的结构及其通道重加权策略优化了针对小目标的多尺度语义信息的融合过程,为后续的全局上下文建模提供了更有效的特征映射。

| 空间上下文感知模块(SCAM)

经过FEM和FFM之后,特征图已经考虑了局部上下文信息,并对小目标特征有很好的表示。在这个阶段,对小目标和背景之间的全局关系进行建模比对主干关系进行建模更有效。全局上下文信息可以用来表示像素交叉空间之间的关系,它抑制了无用的背景,增强了对象与背景之间的辨别能力。受GCNet和SCP的启发,SCAM由三个分支组成。第一个分支使用GAP和GMP来集成全局信息。第二个分支使用1×1卷积生成特征图的线性变换结果,在下图中命名为value。第三个分支使用1×1卷积来简化query和key的倍数。这个卷积在下图中被命名为QK。然后,将第一个分支和第三个分支分别与第二个分支进行矩阵相乘,随后所得到的两个分支分别代表了跨通道和空间的上下文信息。最后,在这两个分支上使用broadcast Hadamard product,得到了SCAM的输出。

图片

| Lite-FFCA-YOLO(L-FFCA-YOLO)

FFCA-YOLO中的CSP块通过结合FasterNet中的FasterBlock进行重建,称为CSPFasterBlock,如下图所示。FasterNet得出的结论是,直接用PConv替换标准卷积将导致准确性的严重下降。因此,作者只用FasterBlock替换CSPBlock中的bottleneck,这保证了不同层的特征信息流过所有通道,而精度损失很小。FFCA-YOLO和L-FFCA-YOLO的主干中的参数计数如下表所示,说明L-FFCA-YOLO的主干中的参数比FFCA-YOLO少30%。

图片

图片

实验结果

| 定量分析

图片

图片

图片

图片

| 定性分析

图片

图片

图片

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法

在连接数据库的时候出现了下面图面中的错误,尝试集中方法后终于解决了这个问题。 1.修改驱动程序版本 出现这种错误可能是因为你的驱动程序版本不兼容,我们可以尝试修改版本解决。而我们的驱动程序往往是以依赖的形式导入,因此可以在maven仓…

【Linux 基础】文件与目录管理

1. 文件和目录的基本概念 文件:是数据的集合,可以是文本、图像、视频等。 目录(也称为文件夹):是文件和子目录的集合,用于组织文件。 2. 目录和路径 绝对路径:从根目录(/&#x…

容器之视角构件的演示

代码&#xff1a; #include <gtk-2.0/gtk/gtk.h> #include <glib-2.0/glib.h> #include <gtk-2.0/gdk/gdkkeysyms.h> #include <stdio.h>int main(int argc, char *argv[]) {gtk_init(&argc, &argv);GtkWidget *window;window gtk_window_ne…

【算法面试】搜索插入位置:如何在排序数组中高效查找目标值的索引或插入位置

在处理有序数组时&#xff0c;我们经常会遇到这样一个问题&#xff1a;给定一个排序数组和一个目标值&#xff0c;需要找到目标值在数组中的索引。如果目标值不存在于数组中&#xff0c;则返回它将会被按顺序插入的位置。为了提高效率&#xff0c;我们需要使用时间复杂度为 O(l…

【NOI】C++程序结构入门之嵌套循环一

文章目录 前言一、嵌套循环1.概念2.语法2.1 for循环嵌套for2.2 while循环嵌套for2.3 while循环嵌套while2.4for循环嵌套while2.5 注意2.5.1内层循环之前2.5.2内层循环之后 3.按位检查 二、例题讲解问题&#xff1a;1448. 随机体能测试问题&#xff1a;1469. 数的统计问题&#…

【Python办公自动化之Word】

python办公⾃动化之-Word python-docx库 文章目录 python办公⾃动化之-Word1、安装python-docx库2、⽂档的结构说明3、基本操作语法3.1 打开⽂档3.2加⼊不同等级的标题3.3 添加⽂本3.4 设置字号插曲1&#xff1a;实战演示3.5 设置中⽂字体3.6 设置斜体3.7 设置粗体3.8⾸⾏缩进…

云原生容器技术入门:Docker、K8s技术的基本原理和用途

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《未来已来&#xff1a;云原生之旅》&#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、容器技术概述 1、什么是容器技术 2、容器技术的历史与发展 3…

华为HDC开发者大会鸿蒙进展超预期

本文首发于公众号“AntDream”&#xff0c;欢迎微信搜索“AntDream”或扫描文章底部二维码关注&#xff0c;和我一起每天进步一点点 在数字化浪潮的推动下&#xff0c;华为鸿蒙系统&#xff08;HarmonyOS&#xff09;以其革命性的创新&#xff0c;引领着全球科技的新趋势。2024…

FEP热缩透明管 耐油耐高温绝缘硅胶软管

FEP透明管&#xff1a;特氟龙管&#xff0c;F46管&#xff0c;耐腐蚀管。 主要用途&#xff1a; 1、液晶制造装置&#xff1b; 2、通体单端发光单芯光纤用管&#xff1b; 3、热交换器&#xff0c;蒸气配管&#xff1b; 4、高纯度试剂输送管&#xff1b; 5、各种腐蚀性介质&…

[保姆级教程]uniapp小程序获取右上角胶囊位置信息

文章目录 导文使用uni.getMenuButtonBoundingClientRect();方法实现完整案例 隐藏默认导航栏&#xff1a;全局隐藏当前页面隐藏 导文 uniapp小程序获取右上角胶囊位置信息 使用uni.getMenuButtonBoundingClientRect();方法实现 <script>const menuButtonInfo uni.getMe…

【C++高阶】掌握AVL树:构建与维护平衡二叉搜索树的艺术

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ ⏩收录专栏⏪&#xff1a;C “ 登神长阶 ” &#x1f921;往期回顾&#x1f921;&#xff1a;STL-> map与set &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀AVL树 &#x1f4d2;1. AVL树…

统信UOS桌面操作系统漏洞修复流程

原文链接&#xff1a;统信UOS桌面操作系统漏洞修复流程 Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇关于统信UOS桌面操作系统漏洞修复的文章。维护操作系统的安全性非常重要&#xff0c;定期修复漏洞可以防止潜在的安全威胁。本文将详细介绍如何在统信UOS桌面操作…

VMware Workstation克隆虚拟机详细步骤

克隆虚拟机 首先我们先创建一台虚拟机&#xff0c;将该虚拟机关闭后&#xff0c;然后右键该虚拟机按照图下所示点击 克隆 下一页 下一页 这里按照需求选择克隆类型&#xff0c;我选择创建完整克隆。点击下一步 设置好虚拟机名称和位置&#xff0c;点击完成 稍微等待一会 点击 …

SQL注入-sqlmap使用

sqlmap简介 一款自动化的SQL注入工具&#xff0c;其主要功能是扫描&#xff0c;发现并利用给定的URL的SQL注入漏洞&#xff0c;目前支持的数据库是MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB Sqlma…

ansible 任务块以及循环

任务块 可以通过block关键字&#xff0c;将多个任务组合到一起可以将整个block任务组&#xff0c;一起控制是否要执行 # 如果webservers组中的主机系统发行版是Rocky&#xff0c;则安装并启动nginx [rootpubserver ansible]# vim block1.yml --- - name: block tasks hosts…

全面讲解数字化采购:整体技术架构与最佳实践

在全球化和数字化浪潮的推动下&#xff0c;企业的采购流程正经历深刻变革。数字化采购通过引入先进的信息技术&#xff0c;优化供应链管理&#xff0c;提高采购效率&#xff0c;降低成本。本文将详细介绍数字化采购的整体技术架构&#xff0c;并分享最佳实践经验&#xff0c;帮…

摄影约拍管理系统

摘 要 摄影约拍管理系统是一种基于SSM框架的系统&#xff0c;旨在为摄影师和用户提供便捷的约拍服务。本文通过对系统的设计与实现&#xff0c;解决了传统约拍方式中存在的信息不对称、预约流程繁琐等问题。本文介绍了系统的研究背景与意义&#xff0c;分析了国内外发展现状&a…

联盟学习:技术原理、特点及适用场景

一、引言 随着大数据和人工智能技术的快速发展&#xff0c;数据成为了推动科技进步的重要资源。然而&#xff0c;在实际应用中&#xff0c;数据往往呈现出碎片化、分散化的特点&#xff0c;如何有效地利用这些数据成为了业界关注的焦点。联盟学习&#xff08;Federated Learni…

【算法面试】二分查找:如何在有序数组中高效搜索目标值

目录 题目描述 示例 1: 示例 2: 问题分析 解决方法 方法 1&#xff1a;标准二分查找 方法 2&#xff1a;递归二分查找 方法 3&#xff1a;非递归简化版本 方法 4&#xff1a;带调试信息的版本 详细步骤 总结 博主v&#xff1a;XiaoMing_Java 二分查找是一种常见的算…