面向遥感图像的小目标检测最新方法:FFCA-YOLO论文代码环境配置以及复现

遥感图像目标检测研究综述 阅读详情
AI摘要

针对遥感图像中小目标检测难题,FFCA-YOLO通过引入FEM、FFM及SCAM三大模块,有效提升了检测精度。该模型基于YOLO框架改进,特别适用于小尺寸目标的检测任务。

1.简介      

        为了解决遥感小目标检测任务中特征表示不足、背景混淆等问题,本文基于YOLO框架进行改进,通过增加三个即插即用的模块:特征增强模块(FEM)、特征融合模块(FFM)和空间上下文感知模块(SCAM),显著增强了网络的局部感知能力、多尺度特征融合能力和跨通道、跨空间的全局关联能力,同时尽量避免增加复杂度。利用VEDAI和AI-TOD两个公共遥感小目标检测数据集和USOD一个自建数据集验证了FFCA-YOLO的有效性。

        本文重点在于讲述如何对该文章所提出的网络模型进行环境配置以及复现,需要复现代码的小伙伴之间看第四章即可。

2.论文地址

论文地址:FFCA-YOLO for Small Object Detection in Remote Sensing Images | IEEE Journals & Magazine | IEEE Xplore

代码地址:https://github.com/yemu1138178251/FFCA-YOLO

3.论文解读

3.1方法

        为了解决遥感小目标检测任务中特征表示不足、背景混淆等问题,本文基于YOLO框架进行改进,本文主要通过增加三个即插即用的模块:特征增强模块(FEM)、特征融合模块(FFM)和空间上下文感知模块(SCAM)来提高模型的检测精度。模型整体框架如下:

        可以看到,模型主要是根据yolov5框架进行改进,同时在其中加入了FEM(特征增强模块)、FFM(特征融合模块)以及SCAM(空间上下文感知模块)增强对于小目标的检测能力,接下来主要从设计灵感,创新点,结构以及优点等方面分别对着三个模块进行介绍。

3.2 特征增强模块(FEM)

        FEM旨在增强小目标的特征表达能力,从而解决遥感图像中小牧白哦特征表示不足的问题。FEM通过多分支卷积以及空洞卷积来增加特征的丰富度以及感受野。FEM的设计灵感主要来自于RFB-s:

  1. 从增加特征丰富度的角度出发,采用多分支卷积结构提取多个判别性语义信息。
  2. 从扩大感受野的角度出发,应用扩张卷积获得更丰富的局部上下文信息。  

        每个分支对输入特征映射进行1 × 1的卷积运算,初步调整后续处理的通道数。第一个分支是残差结构,残差结构形成等效映射,保留小目标的关键特征信息。其他三个分支执行级联标准卷积操作,其核大小分别为1 × 3、3 × 1和3 × 3。在中间两个分支上增加了额外的空洞卷积层,使提取的特征图能够保留更多的上下文信息,FEM结构如图所示:

3.3 特征融合模块(FFM)

        高尺度特征图与低级特征映射包含不同的语义信息,FFM的设计灵感主要来自于BiFPN,与BiFPN不同,FFM改进了名为CRC的重权策略,并调整了原始的BiFPN以适应三个检测头。其中,X_{2},X_{3},X_{4}输出的特征图大小分别为为160×160,80×80,40×40。

        BiFPN[29]的融合策略是特征映射之间的融合,导致不同的通道具有相同的权值。为了加强多尺度特征对小目标的表征,并充分利用不同通道的特征,本文提出的CRC对特征映射的通道进行了重新加权。

        通道重新加权策略首先将特征图进行连接,然后将与通道总数参数数相同的归一化可训练权相乘。公式如下:

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

        空间上下文感知模块利用全局上下文信息来表示像素之间的跨空间关系,抑制无用背景,增强目标和背景的区分能力,SCAM受到GCNet与SCP的启发。

        SCAM由三个分支组成,第一个分支使用GAP(全局平均池化)与GMP(全局最大池化)来整合全局信息,第二个分支使用1×1的卷积来生成特征映射的线性变换结果,第三个分支使用1×1卷积来简化键值对的倍数。最后将第一分支与第三分支分别于第二分支进行矩阵想成。得到的两个分支分别表示跨通道以及空间上的上下文信息,随后利用Hadamard乘积在这两个分支上得到了SCAM的输出。

除此之外,该文章还提出轻量化FFCA-YOLO

4. 环境配置

        由于该论文代码是基于yolov5网络结构,所以论文代码结构与yolov5大概相似,源码结构如下图所示:

  4.1 安装依赖包

        该项目所需要的依赖包文件requirements.txt文件在:wandb->run-20230728_202726-f6uagpq5->files文件下。

        1.首先需要切换至在anaconda环境中(anaconda我使用的python版本是3.8)。

        2.打开命令行终端,输入以下命令切换至requirements.txt的上级目录

cd wandb/run-20230728_202726-f6uagpq5/files

        3.运行以下代码安装代码所需要的依赖包

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt

        等待软件依赖包全部安装完成,可能需要费点时间...

4.2 下载文章所需要的数据集

        该文章最后使用文章作者自建数据集USOD进行模型训练。USOD数据集基于UNICORN2008数据集构建,总共包含3000张图像,其中包含43 378个车辆实例。训练集与测试集的比例为7:3。其中,小于16 × 16的物体所占比例为96.3%,小于32 × 32的物体所占比例为99.9%。

        USOD数据集的优点:

  1. USOD中小目标的比例(99.9%)高于其他小目标数据集,如AI-TOD(97.9%)。
  2. USOD中有许多车辆实例处于低照度和阴影遮挡条件下,可以更有效地验证模型检测小目标的性能。
  3. USOD包括一系列测试集,用于验证模型的鲁棒性,考虑图像退化因素,包括模糊,高斯噪声,条纹噪声和雾。
  4. USOD在未来有可能成为一个多模态数据集。USOD的数据源是UNICORN2008,它在可见光数据和SAR数据之间进行了配准。

        USOD数据集结构如下:

        USOD数据集下载地址: https://pan.baidu.com/s/1R5bGR8XHrzOZHDxHybHJkw 

        提取码:64q4

4.3 配置USOD.yaml文件

        修改USOD.yaml配置文件中训练集与测试集的值。

4.3 开始进行模型训练

        官方给出的模型训练代码如下所示(与yolov5相同),总结下其中每个参数的作用,大家可以根据自己的需要进行修改训练自己的模型。

  • --weights:用于指定模型所需要的预训练权重文件的位置,可以设置为'yolov5n.pt','yolov5m.pt'等,若为空,则表示模型不需要预训练权重,从头开始训练
  • --cfg:指定模型配置文件的路径
  • --data:用于指定数据集配置文件的路径,这里指定data/AITOD.yaml为数据集配置文件
  • --hyp:指定超参数配置文件的路径,治理指定data/hyps/hyp-scratch-low.yaml为超参数配置文件
  • --name:给此次训练命名,方便后续管理训练结果
  • --batch-size:指定每个训练批次包含的数据量,这里指定为32
  • --workers:指定数据加载线程的数量,一般设置为0
  • --cache:参数表示是否缓存整个数据集到磁盘上,以加快读取速度
  • --epochs:表示模型所需要迭代的次数,这里模型需要300次迭代完成模型训练
  • --save-epoch:定义保存检查点的频率,这里设置为1,则表示每训练完一个epoch就保存一次权重模型

        在了解到上述参数的作用后,即可根据自己的需要开始模型训练。我所使用的训练代码如下:

 python train.py --weights 'yolov5m.pt' --cfg models/FFCA-YOLO.yaml --data data/USOD.yaml --hyp data/hyps/hyp.scratch-low.yaml --name train
 --batch-size 8 --workers 0 --cache --epochs 300 --save-period 10

      在输入运行代码后,模型就开始训练啦!

        如果在模型配置过程中遇到各种问题,欢迎大家进行讨论,也希望大佬们能够指出该文章的不足之处,大家调通代码之后不要忘记一键三连哦,万分感谢~~~

《FFCA-YOLO》论文学习,面向遥感图像的小目标检测最新方法 FFCA-YOLO显著增强了网络的局部感知能力、多尺度特征融合能力和跨通道、跨空间的全局关联能力,同时尽量避免增加复杂度。作者利用和两个公共遥感小目标检测数据集和一个自建数据集验证了FFCA-YOLO的有效性和性能的领先。 阅读详情

相关推荐

顶刊【遥感目标检测】【TGRS】FFCA-YOLO遥感图像小目标检测

摘要——特征表征不足、背景干扰等问题使得遥感图像中的小目标检测任务极具挑战性。尤其在算法需部署于星载设备进行实时处理时,需在有限计算资源下对精度与速度进行深度优化。为此,本文提出一种名为特征增强-融合与上下文感知YOLO(FFCA-YOLO)的高效检测器。

weixin_44184852的博客 3980

FFCA-YOLO for Small Object Detectionin Remote Sensing Images

由于特征表示不足、背景混淆等问题,使得遥感小目标检测任务十分艰巨。特别是,当算法将部署到平台上进行实时处理时,这需要在有限的计算资源下对精度和速度进行广泛的优化。为了解决这些问题,本文提出了一种高效的特征增强、融合和上下文感知YOLO (FFCA-YOLO)检测器。FFCA-YOLO包括三个创新的轻量级即插即用模块:特征增强模块(FEM)、特征融合模块(FFM)和空间上下文感知模块(SCAM)。这三个模块分别提高了网络的局部感知能力多尺度特征融合能力和跨通道、跨空间的全局关联能力。

zyq199082的博客 5642

遥感图像小目标检测实战:手把手教你用FFCA-YOLO在AI-TOD数据集上复现论文结果

本文详细介绍了如何使用FFCA-YOLO模型在AI-TOD数据集上实现遥感图像小目标检测,包括环境配置、数据准备、模型修改和训练策略。FFCA-YOLO作为TGRS 2024的最新研究成果,特别针对小目标检测挑战提出了创新解决方案,显著提升了检测精度。通过实战教程,读者可以复现论文结果并应用于实际项目。

weixin_29054399的博客 442

INFFUS 2025 | 多模态融合新高度!IF-USOD 框架:Transformer与CNN协同,水下检测性能刷新SOTA

CTB则结合了CNN和Transformer的优势,通过长短距离注意力模块(LSDA)和卷积特征表示块(CFRB)等结构,有效地实现了特征的交互和增强。从定性比较结果来看,IF - USOD方法实现了卓越的准确性,几乎与真实标签完美匹配,在边缘、细节和形状保留方面表现出色,能有效处理复杂背景和细节丰富的场景。为各位推广自己的论文搭建一个平台,让更多的人了解自己的工作,同时促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。你是否有这样的苦恼:自己辛苦的论文工作,几乎没有任何的引用。

小白学视觉 511

遥感图像小目标检测实战:手把手教你用FFCA-YOLO复现TGRS 2024论文实验(附代码与环境配置)

本文详细解析了FFCA-YOLO在遥感图像小目标检测中的实战应用,从环境配置到结果复现全流程。通过特征增强模块(FEM)、特征融合模块(FFM)和空间上下文感知模块(SCAM)的创新设计,FFCA-YOLO在VEDAI、AI-TOD等遥感数据集上表现出色。文章提供了代码实现、环境配置指南和调参技巧,助力开发者快速掌握这一先进技术。

weixin_29072299的博客 297

保姆级教程:在Windows 10上用Anaconda+PyTorch 1.12复现FFCA-YOLO遥感小目标检测模型

本文提供了一份详细的Windows 10环境下使用Anaconda和PyTorch 1.12复现FFCA-YOLO遥感小目标检测模型的保姆级教程。从环境配置、代码获取到模型训练与评估,逐步指导解决常见问题,帮助开发者高效实现遥感图像中的小目标检测任务。

weixin_30952535的博客 402

从零到一:FFCA-YOLO遥感小目标检测实战复现与环境搭建指南

本文提供了FFCA-YOLO遥感小目标检测模型的完整实战复现与环境搭建指南。详细解析了其针对小目标检测的核心模块(FEM、FFM、SCAM),并逐步指导从环境配置、代码获取、USOD数据集准备到模型训练、验证与可视化的全过程,帮助读者高效复现并验证这一先进的YOLO改进模型。

m9n0o的博客 444

文末含资料链接和视频讲解!基于YOLOv5的遥感小目标检测革命性改进:FFCA-YOLO三大核心模块详解与完整复现教程

本文提出FFCA-YOLO模型,针对遥感图像小目标检测中的关键挑战进行优化。通过三个核心模块:(1)特征增强模块(FEM)采用多分支结构增强小目标特征表达;(2)特征融合模块(FFM)引入通道重加权策略优化多尺度特征融合;(3)空间上下文感知模块(SCAM)整合全局与局部信息提升检测鲁棒性。该方法在YOLOv5框架上实现,显著提升了小目标检测性能,同时保持计算效率。相关代码已开源,为遥感图像分析提供了高效解决方案。

FJN110的博客 182

保姆级教程:在Windows 10上用Anaconda3(Python 3.8)复现FFCA-YOLO遥感小目标检测模型

本文提供了一份详细的教程,指导读者在Windows 10系统上使用Anaconda3(Python 3.8)复现FFCA-YOLO遥感小目标检测模型。教程涵盖环境配置、CUDA安装、虚拟环境创建、代码获取、数据集准备、模型训练与调优等关键步骤,帮助用户高效实现遥感图像中的小目标检测任务。

weixin_33724046的博客 453

【YOLOv8改进 - 特征融合】FFCA-YOLO: 提升遥感图像中小目标检测的精度和鲁棒性

在遥感中,小物体的检测任务由于特征表示不足和背景混淆等问题而变得艰难。特别是当算法需要部署在板载系统上进行实时处理时,需在有限的计算资源下进行准确性和速度的广泛优化。为了解决这些问题,本文提出了一种高效的检测器,称为特征增强、融合和上下文感知YOLO(FFCA-YOLO)。FFCA-YOLO包含三个创新的轻量级和即插即用的模块:特征增强模块(FEM)、特征融合模块(FFM)和空间上下文感知模块(SCAM)。这三个模块分别增强了网络的局部区域感知、多尺度特征融合和全局关联跨通道与空间的能力,同时尽量避免增加复

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 2747

告别手动画图!用SUMO的netedit快速搭建高速公路交织区路网(附完整XML文件)

本文详细介绍了如何使用SUMO的netedit工具高效构建高速公路交织区路网,避免手动绘图的低效与错误。通过实战案例和XML文件示例,帮助交通工程专业学生快速掌握复杂道路结构建模技巧,特别解析了spreadType参数设置和速度单位换算等关键操作。

weixin_29085865的博客 261

FFCA-YOLO:突破小物体检测瓶颈,提升遥感应用中的精度与效率

除此之外,为进一步降低计算资源消耗同时保持效率,还提出了其精简版L-FFCA-YOLO,L-FFCA-YOLO速度更快、参数规模更小、计算力需求更低,而精度损失甚微,展现了良好的性能与效率平衡。L-FFCA-YOLO在保持较高性能的同时,显著减少了参数数量,特别是在使用CSPFasterBlock时,虽然计算复杂度相对较高,但在精度和速度的平衡上表现出色。而SCAM进一步优化了特征图,增强了小物体的检测能力,并抑制了背景干扰,进一步提升了模型的整体性能。FFM通过将这两种信息融合,提高了小物体的辨识能力。

Coovally_AI的博客 1912

路由工具之策略路由policy-based-routing、MQC三板斧流分类、流行为、流策略

PBR(Policy-Based Routing,策略路由)策略路由可理解为控制路由,因为PBR策略的优先级高于传统路由表的转发,所以它主要用于影响数据包转发的技术。

Hades_Ling的优快云博客 5583

小目标检测:FFCA-YOLO详解

FFCA-YOLO是2024年发表在上的文章,主要为了解决遥感小目标检测任务中特征表示不足、背景混淆等问题。核心的架构采用的是yolov5,提出了三个创新模块,特征增强模块(FEM)、特征融合模块(FFM)和空间上下文感知模块(SCAM)。我们这里对其模块做一个详解,以便给我们自己的改进提供思路。

m0_62919535的博客 1791

MTK Linux DRM分析(八)- KMS drm_crtc.c

CRTC 在 Linux DRM 子系统中是显示控制的核心,负责时序生成、模式设置和管线的调度。理解其工作原理和 API 对于进行底层图形开发、调试显示问题或 simply understanding how your graphics stack works 都至关重要。

iTom1900 1350

【Android Performance】Android CPU调度模式详解:从performance到schedutil的Governor调优指南

本文系统讲解Android/Linux系统中的CPU频率调节策略(Governor),涵盖六大调度模式的底层工作原理:performance(性能优先)、powersave(省电优先)、conservative(保守调频)、ondemand(按需调频)、userspace(手动控制)以及schedutil(调度器驱动)。文中深入拆解每种Governor的调频决策逻辑、上升/下降曲线的差异、适用场景与选型建议,并配以实操命令演示如何查看可用Governor列表、动态切换调度模式以及多Cluster架构下的统一

weixin_44081096的博客 436

UCSD 数据集

Ground truth annotations for UCSD dataset 说明

qq_21274223的博客 6364

ubuntu emto-cpa安装与编译

ubuntu emto-cpa安装与编译

qq_45834835的博客 1436

SOD(显著性目标检测)数据集

显著性目标检测常用十种数据集: SOD,提取码:f7uq DUT-OMRON,提取码:wqpn MSRA-B,提取码:rfrb SOC,提取码:d5b9 SED2,提取码:q4ia HKU-IS,提取码:2f1i PASCAL-S,提取码:naax DUTS,提取码:a5w7 THUR-15K,提取码:ptk9 ECSSD ...

qq_43082542的博客 4906

如何对正射影像DOM(卫星影像、无人机航拍影像)进行拼接、合并以及去黑边(附 Global Mapper Pro 24.0 安装包(中文注册版))

为什么要对正射影像DOM进行拼接?影像去黑边、影像拼接的操作和步骤。

从地图看世界的专栏 4300

prplOS amx-fxgi调试-订阅subscribe

本文分析了prplOS中amx-fxgi订阅功能(subscribe)的实现与调试过程。通过梳理订阅流程发现,默认订阅失败主要由于acl规则限制导致。文章详细介绍了订阅的两个关键步骤:建立GET长连接和POST设置订阅路径,并通过修改代码绕过acl验证成功实现订阅功能。最终验证了在同一连接下订阅多个路径及实时接收状态更新的可行性,有效降低了设备查询负载。该方案为prplOS的实时数据监控提供了优化思路。

四儿家的小祖宗的博客 332

FFCA-YOLO for small object detection in remote sensing images(遥感图像中的小物体检测FFCA-YOLO)

本文提出了一种高效的检测器,成为特征增强、融合和上下文感知YOLO(FFCA-YOLO)(feature enhancement,fusion and context aware YOLO)。FE-YOLO:在YOLO的neck中使用可变形卷积进行高低特征图的特征融合,消除自上而下的连接对物体造成的寓意空白影响。本文(SCAM):SCAM使用全局平均池化(GAP)和全局最大池化(GMP)指导像素学习空间和通道之间的关系。特征增强模块(FEM)、特征融合模块(FFM)、空间上下文感知模块(SCAM)

w_gun的博客 1788

AI颠覆市场调研:生成式智能体如何重构商业决策?

AI正在将市场调研从"成本中心"转变为"战略武器"。当企业能够用生成式智能体实时模拟百万级虚拟用户时,传统调研的样本偏差、时间滞后、成本高昂等问题将不复存在。对于开发者而言,这不仅是技术的狂欢,更是参与商业规则重构的历史机遇。行动建议立即体验Simile/Aaru的智能体平台,验证虚拟样本效果参与LLM持续性记忆架构的开源项目(如Memory Llama)关注AI调研API的标准化进程(如Hugging Face的Market Research Toolkit)

这里汇聚了前沿的技术分享与实用的开发技巧,带你探索从创意到企业的技术创业之路。 617

遥感目标检测(1)--R3Det

R3Det的概述、解决的问题、网络结构、特点与FRM算法,对比消融实验

NPU 研0 5482

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

目标检测论文解读复现之十一:基于特征融合与注意力的遥感图像小目标检测

为解决遥感图像小目标检测中目标特征信息量少、定位困难等难题,本文提出一种基于特征融合与注意力的遥感图像小目标检测算法FFAM-YOLO(Feature Fusion and Attention Mechanism YOLO)。

m0_70388905的博客 5402

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

LGA-YOLO:用于遥感图像中的车辆检测

点击蓝字关注我们关注并星标从此不迷路计算机视觉研究院公众号ID|计算机视觉研究院学习群|扫码在主页获取加入方式https://ieeexplore.ieee.org/abstract/document/10855635计算机视觉研究院专栏Column of Computer Vision Institute在遥感图像中,车辆往往呈现出极小的尺度,特征匮乏,且易被复杂的背景信息淹没。在低光照或遮挡环境下,这一问题愈发棘手,会导致漏检和误报情况的出现。PART/1 概述 为此,本文提出一种新颖的车辆

gzq0723的博客 1148

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

上一篇: ubuntu20.04安装dlib
下一篇: 【求救贴】mmrotate模型训练精度低
S_String
博客等级 码龄7年 55粉丝 6原创
评论 39
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

S_String

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值