终于看到一个不在 Backbone上研究 ReNet的了!直接优化小目标检测性能,不卷ImageNet-1K数据集!

news2025/1/10 2:07:38

终于看到一个不在 Backbone上研究 ResNet的了!直接优化小目标检测性能,不卷ImageNet-1K数据集!

前言 传统的基于深度学习的目标检测网络在数据预处理阶段常通过调整图像大小以达到特征图中的统一尺寸和尺度。调整大小的目的是为了便于模型传播和全连接分类。然而,调整大小不可避免地导致图像中目标的变形和信息丢失。对于具有线性形状和少量像素的微小目标(如配电塔)来说,这一缺点尤为明显。

为了解决这个问题,作者提出放弃调整大小的操作。相反,作者引入了位置编码多头交叉注意力机制。这使得模型能够捕获上下文信息,并从多个表示子空间中学习,有效地丰富了配电塔的语义信息。此外,作者还通过将三个池化特征图 Reshape 为一个新统一的特征图,同时减少计算负担,增强了空间金字塔池化。这种方法允许不同尺寸和尺度的图像生成具有统一维度的特征图,并可用于特征图传播。作者的SCAResNet将这些改进整合到主干网络ResNet中。作者使用杜克大学的输电和配电基础设施图像数据集评估了作者的SCAResNet。

I Introduction

检测输电和配电塔对于电力网的安全可靠运行至关重要,因为这些塔的位置和数量是设计电力网络拓扑和规划其扩展的关键参数。将遥感(RS)和深度学习技术相结合作为一种广泛采用的目标检测方法具有多种优势,包括能够快速覆盖大面积、减少人为错误以及提高检测精度。卷积神经网络(CNNs)已成为深度学习中的主要方法,因为它们可以从原始图像像素自动学习判别特征,捕捉图像区域之间的复杂空间关系,并获得更好的检测性能。基于CNN的主流目标检测器可以分为基于 Anchor 框和无需 Anchor 框两类。基于 Anchor 框的检测器使用预定义的 Anchor 框来预测目标位置和大小,这提供了更好的准确性,但可能会受到 Anchor 框设计偏差的影响。无需 Anchor 框的检测器直接回归目标的中心和大小,不使用 Anchor 框。

然而,由于输电和配电塔体积小且缺乏明显特征,检测这些塔具有挑战性,尤其是配电塔在遥感图像中通常是黑色的线性物体。微小的物体通常具有较小的空间占用和与周围环境较低的对比度,这使得它们更难以检测。此外,现有的目标检测器在分配正负样本时往往倾向于较大的物体[1],导致大多数微小目标没有得到正样本分配[1]。因此,在检测微小物体,如输电塔尤其是配电塔时,检测性能显著降低。

目前,许多工作致力于解决微小目标检测的困难。多尺度特征学习涉及分别学习不同大小的物体,主要解决微小物体特征判别性不足的问题。基于特征金字塔的方法[2]主要使用低级空间和高级语义信息来增强目标特征。为了解决微小物体未被分配到样本的问题,徐等人提出了基于高斯感受野的标签分配(RFLA)[3]。作为一种专门为微小目标设计的标签分配方法,RFLA从归一化高斯Wasserstein距离[4]和有效感受野[5]中汲取灵感,采用高斯建模 GT 框和感受野以重新测量它们之间的距离进行标签分配。这种方法提高了微小目标标签分配的概率,并为基于 Anchor 框和无需 Anchor 框的检测器都带来了良好的结果。

然而,当前相关研究对数据预处理对微小目标检测影响的研究有限。在数据预处理阶段,传统做法是在数据输入目标检测网络之前对其进行调整大小的操作,以实现不同大小和尺度图像的统一大小和尺度。这一做法旨在减轻模型的计算负担,更重要的是,确保特征图可以生成相同长度的特征向量。这是后续全连接分类不可或缺的前提条件。不幸的是,对于微小物体,由于它们的像素较少且特征相对贫乏,在数据预处理中调整大小时丢失的像素对提取微小物体的特征产生了比大型物体更严重的影响。

如图1所示,与具有丰富特征的输电塔调整大小后的图像相比,具有微小黑色线性形状的配电塔调整大小后的图像失去了更多独特的特征,甚至变成了一个模糊的黑点。这对于后续的特征提取极为不利,因为这些微小物体从一开始就失去了宝贵的特征[6]。

因此,作者提出放弃传统调整大小的数据预处理步骤。相反,在主干网络的传播过程中,作者最初在不同大小和尺度的特征图上执行位置编码的多头交叉注意力。这使得模型能够在多个子表示空间中学习整个图像的全局上下文信息,以便模型可以学习到遥感图像中配电塔位置及其周围环境的更丰富的特征信息。随后,将三轮池化应用于不同大小和尺度的特征图。将池化特征图的展平特征向量 Reshape 为具有相同大小和尺度的新特征图。作者设计的主干网络SCAResNet,将前述创新模块整合到ResNet[7]中,在杜克大学发布的电力传输和配电基础设施图像数据集[8]上取得了有希望的结果。

II Methods

SCAResNet结合了基于ResNet的位置编码多头交叉注意力(Positional-Encoding Multi-head CCA)和SPPRCSP模块,其架构如图2所示。

Positional-Encoding Multi-head CCA Module

在检测传输和分配塔的过程中,一个挑战是丰富特征的可获得性有限,特别是对于常常表现为微小黑色线性形状的分配塔。为了减轻分配塔特征不够鲜明的问题,作者采用了基于自注意力(Self-Attention)[10]改进的交叉注意力(Criss-Cross Attention, CCA)[9]来捕捉分配塔从长期依赖关系中情境信息和相关性,从而得到具有更丰富语义的塔。

如图3中的交叉注意力块模块所示,CCA用两次连续的行-列相关矩阵转换替换了自注意力中的全图相关矩阵转换,大大减少了自注意力所需的参数数量,同时保持了高精度。

然而,单头注意力以单一表示处理输入数据,这可能限制了模型捕捉数据完整复杂性的能力。相比之下,多头注意力将输入数据投影到多个表示子空间,使模型能够捕捉信息的不同方面并将它们整合为最终输出[10]。因此,多头CCA可以将多个注意力焦点分配到不同的兴趣点,如图3所示,包括图像中的周围环境以及全局上下文,例如输电线路、居民区块和道路。这种全面的学习方法有助于确定哪些环境特征更可能与分配塔的存在相关联,从而协助检测。

在计算注意力时,没有考虑不同位置键的影响,因此预处理绝对位置编码的目的是在注意力机制中添加位置信息以捕捉位置关系。作者使用基于正弦和余弦函数的位置编码方法,该方法将位置信息编码为周期性的高维向量,可以轻松地添加到输入数据中。

SPPRCSP Module

在经过位置编码多头CCA模块对与配电塔相关的上下文信息进行综合特征提取并保留信息后,不同大小和尺度的特征图将通过作者设计的空间金字塔池化 Reshape 跨阶段部分(SPPRCSP)模块。该模块确保输出大小和尺度统一的特征图,同时避免精度损失并降低后续任务(如全连接分类等)的计算成本。

空间金字塔池化(SPP)[11],由He等人提出,将各种大小和尺度的特征图划分为一组(通常是3个)具有固定大小网格的金字塔层。每个网格区域内的特征独立进行池化。最终,来自金字塔层每个网格区域的池化特征被连接起来形成一个固定长度的特征向量。然而,这个特征向量不能在以特征图组织的网络中传播;它只能作为分类网络的输入。因此,作者引入了空间金字塔池化 Reshape (SPPR)层,以实现在网络中的特征向量传播。

如图4所示的SPPR模块所示,在SPPR层的早期阶段,保持了SPP层的步骤不变,区别在于最后对连接的特征向量进行 Reshape 。与标准的SPP层不同,为了成功将连接的特征向量 Reshape 为特征图,SPPR层中池化特征图的 Level 不能任意指定;它们必须满足以下方程:

其中 、、 和  是三个池化特征图和 Reshape 特征图的 Level 。、、 和  是任意正整数。在作者的研究中,、、 和  被确定为 、、 和 。

在建立了池化特征图层次之后,作者可以推理出池化层的参数,包括池化核、步长和填充值。在原始SPP论文的方程中,在特征图的池化过程中,填充大小有可能超过池化核大小的一半。这种情况可能导致边缘信息的截断和有价值特征的丢失,进而阻碍模型训练过程。因此,作者提出了以下修正后的方程,用于计算SPPR池化层的参数:

其中  是使用方程 (2) 计算的判断值。 表示输入特征图的高度或宽度。 表示池化特征图的层次。

如果满足方程 (3),则:

如果不满足方程 (3),则:

由于没有进行尺寸调整,来自高分辨率遥感图像的特征图尺寸较大。这又在一定程度上给训练过程带来了重大的计算负担。为了解决这个问题,作者引入了跨阶段部分(CSP)结构和DSEConv模块。

如图4所示,进入SPPRCSP结构的特征图经过通道压缩以减少参数。为了弥补由通道压缩和特征图的池化引起的准确度损失,特征图通过跳跃连接将详细信息整合到SPPR层的输出结果中。此外,作者用深度卷积和点卷积替换普通卷积以减少参数和FLOPs[15],同时引入压缩和激励注意力[16]来帮助从全局角度选择更有利于小目标检测的通道。

III Experiment Results

Dataset

作者使用了电力传输与配电基础设施图像(ETDII)数据集进行实验,这是一个来自杜克大学的公开数据集。该数据集的来源包括CT ECO、USGS、LINZ和SpaceNet等不同提供者。它由494个图像块组成,来自六个国家,分别是美国、苏丹、新西兰、墨西哥、中国和巴西,每个国家都有独特的地形类型,分辨率为0.3米。检测类别包括配电塔(DT)和输电塔(TT),分别为DT和TT提供了16,418个和1,385个真实框。

根据标准COCO数据集[17]的大小分类标准,尺寸小于或等于像素的目标被认为是小型,尺寸大于像素但小于或等于像素的目标被认为是中型,尺寸大于像素的目标被认为是大型。在ETDII数据集中,有12,713个小型目标,其中6,342个小于或等于像素;有4,723个中型目标;以及367个大型目标。

Experiment Settings

所有实验都在一台配备有NVIDIA GeForce RTX 3060笔记本电脑GPU的计算机上进行。模型训练基于PyTorch [18],核心代码建立在MMdetection [19]之上。使用了来自ImageNet [20]的预训练模型。

所有模型都采用随机梯度下降(SGD)优化器进行训练,动量为,权重衰减为,批量大小为,共训练个周期。初始学习率设置为,在第和第个周期时衰减到。作者使用具有层的SCAResNet进行实验。所有其他参数设置与基于RFLA的检测器相同。

Ablation Study

作者通过消融实验评估了不同模块对SCAResNet性能的影响,以验证每个模块的有效性。消融实验的结果展示在表1中。

Iii-C1 Effect of Positional-Encoding Multi-head CCA

在作者的实验中,与仅使用RFLA的检测器相比,基于RFLA并配备了位置编码多 Head CCA模块的检测器在mAP上提高了0.7%,在mAP上提高了1.4%,在mAP上提高了0.2%,在mAP上提高了1.0%,在mAP上提高了1.7%。

Iii-C2 Effect of SPPRCSP

在作者的实验中,基于RFLA的检测器结合SPPRCSP模块,在mAP上提升了1.7%,在mAP上提升了2.5%,在mAP上提升了1.1%,在mAP上提升了1.9%,但与单独的基于RFLA的检测器相比,在mAP上下降了3.4%。

Iii-C3 Effect of Combining Positional-Encoding Multi-head CCA and SPPRCSP

基于RFLA的检测器,结合了位置编码多 Head CCA和SPPRCSP模块的优点,与仅基于RFLA的检测器相比,在mAP上提高了1.3%,在mAP上提高了4.3%,在mAP上提高了2.1%,在mAP上提高了1.4%。

Contrast Experiments

为了验证SCAResNet在不同检测器架构下检测输电和配电塔的性能,作者通过将Cascade R-CNN [21],Faster R-CNN [22],FCOS [23]的 Backbone 网络替换为作者设计的SCAResNet,在ETDII数据集上进行了对比实验。

表2展示了实验结果,图5说明了每个检测器的精确度-召回率性能。

可以看出,基于SCAResNet的检测器在不同检测器上应用时,在mAP、mAP、mAP和mAPm方面都有不同程度的提升。然而,mAPl略有下降。这是由于与中、小目标相比,大目标的数量要少得多,造成了不平衡。

为了更好地可视化SCAResNet在输电和配电塔特征提取方面的改进,作者采用基于RFLA的检测器作为 Baseline ,并使用带有SCAResNet的 Baseline 分别检测主要包含配电塔和输电塔的遥感图像。如图6所示,可以明显看出,SCAResNet增强的基于RFLA的检测器提取了更丰富的特征,并且在输电和配电塔的检测性能上表现更好。

IV Conclusion

作者提出了一种 Backbone 网络,名为SCAResNet,专门为小目标检测而设计。作者消除了数据预处理中的传统缩放操作,因为从一开始就丢失宝贵信息对于像输电塔这样的小目标是有害的。作者设计的定位编码多头CCA模块能够在不丢失信息的情况下从图像中学习更多上下文特征。随后的SPPRCSP模块将不同大小和尺度的特征图统一到一致的大小和尺度,使得在减少参数的同时,传播不会牺牲准确性。SCAResNet在ETDII数据集上取得了令人印象深刻的检测结果。

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

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

相关文章

1W 3KVDC 隔离 单输出 DC/DC 电源模块——TPB-1W 系列

TPB-1W系列产品是专门针对PCB上分布式电源系统中需要与输入电源隔离且输出精度要求较高的电源应用场合而设计。该产品适用于;1)输入电源的电压变化≤5%;2)输入输出之前要求隔离电压≥3000VDC;3)对输出电压稳…

CESS 受邀出席香港Web3.0标准化协会第一次理事会议,共商行业未来

2024 年 4 月 5 日,CESS(Cumulus Encrypted Storage System)作为香港 Web3.0 标准化协会的副理事会成员,于香港出席了 2024 年度第一次理事会会议。此次会议汇聚了来自不同领域的知名企业和专家(参会代表名单见文末&am…

Vue.extend()和我的两米大砍刀

Vue.extends是什么&#xff1f; 一个全局API,用于注册并挂载组件。 传统的引用组件的方式是使用import直接引入&#xff0c;但是使用Vue.extends()也可以实现。 使用规则 <div id"mount-point"></div>// 创建构造器 var Profile Vue.extend({templat…

4.16

1.总结keil5下载代码和编译代码需要注意的事项 1.&#xff09;仿真器设置&#xff1a; 点击魔术棒&#xff0c;选择debug选项&#xff0c;找到使用的仿真器&#xff0c;选择ST-LINK仿真器&#xff0c;点击setting&#xff0c;选择flash download ,勾选reset and run,选择pack…

SpringBoot整合Nacos

文章目录 nacosnacos下载nacos启动nacos相关配置demo-dev.yamldemo-test.yamluser.yaml 代码pom.xmlUserConfigBeanAutoRefreshConfigExampleValueAnnotationExampleDemoApplicationbootstrap.yml测试结果补充.刷新静态配置 nacos nacos下载 下载地址 一键傻瓜试安装即可,官…

其它IO合集

其它IO合集 1. 缓冲流1.1 概述1.2 字节缓冲流构造方法效率测试 1.3 字符缓冲流构造方法特有方法 2. 转换流2.1 字符编码和字符集字符编码字符集 2.2 编码引出的问题2.3 InputStreamReader类构造方法指定编码读取 2.4 OutputStreamWriter类构造方法指定编码写出转换流理解图解 3…

Java开发从入门到精通(十):Java的面向对象编程OOP:抽象类

Java大数据开发和安全开发 &#xff08;一)Java的抽象类1.1 什么是抽象类?1.2 抽象类的注意事项、特点1.3 认识一下抽象类1.4 抽象类的场景和好处1.4.1 抽象类案例 1.5 抽象类的常见应用场景:模板方法设计模式1.5.1 模板方法设计模式作用1.5.1 模板方法设计模式的写法 &#x…

AI开发者急需看的大语言模型基本原理

在学习大语言模型的基本原理的时候&#xff0c;发现遇到了很多问题&#xff0c;比如一个个单词是怎么转换为向量的&#xff0c;是提前得到的还是训练过程中得到&#xff1f;Transformer的输出向量又是怎么转化为自然语言的&#xff1f;Finetune的时候不是只需要输入和输出吗&am…

百度驾驶证C++离线SDK V1.1 C#接入

百度驾驶证C离线SDK V1.1 C#接入 目录 说明 效果 项目 代码 下载 说明 自己根据SDK封装了动态库&#xff0c;然后C#调用。 SDK包结构 效果 项目 代码 using Newtonsoft.Json; using OpenCvSharp; using System; using System.Collections.Generic; using System.…

不用Linux也可以的强大文本处理方法

不用Linux也可以的强大文本处理方法 标题党了&#xff0c;其实是论VIM的使用。 做生物信息分析最合适的还是Linux操作系统&#xff0c;所以生信宝典在最开始就推出了Linux学习系列&#xff0c;由浅入深的讲述了Linux学习中的关键点。 主要文章列举如下&#xff1a; Linux学…

连续上榜|全息网御实力入选《中国网络安全行业全景图》

2024年4月12日&#xff0c;国内网络安全专业媒体安全牛正式发布第十一版《中国网络安全行业全景图》&#xff08;以下简称“全景图”&#xff09;。 本次全景图研究历时近4个月&#xff0c;共收到510家国内安全厂商4941项申报&#xff0c;实际收录2413项&#xff08;包含部分往…

Flutter 之 HTTP3/QUIC 和 Cronet 你了解过吗?

虽然 HTTP3/QUIC 和 cronet 跟 Flutter 没太大关系&#xff0c;只是最近在整理 Flutter 相关资料时发现还挺多人不了解&#xff0c;就放到一起聊聊。 本篇也是主要将现有资料做一些简化整合理解。 前言 其实为什么会有 HTTP3/QUIC &#xff1f;核心原因还是现有协议已经无法满…

van-uploader 在app内嵌的webview中的一些坑

问题&#xff1a; 部分版本在ios 中没有问题&#xff0c;但是安卓中不触发图片选择和拍照&#xff08;之前是可以的&#xff0c;可能是没有锁定版本&#xff0c;重新发版导致的&#xff09;。在ios中下拉文案是英文&#xff0c;html配置lang等于 zh 也没有用&#xff0c;ios里…

强化网络安全防线,您的等级保护措施到位了吗?

在这个信息化飞速发展的时代&#xff0c;网络安全已经成为我们每个人都需要关注的问题。无论是企业还是个人&#xff0c;我们的工作和生活都越来越依赖于网络。确保网络环境的安全&#xff0c;防止信息泄露和网络攻击&#xff0c;已经成为了一项至关重要的任务。等级保护制度作…

Oracle 正则,开窗,行列转换

1.开窗函数 基本上在查询结果上添加窗口列 1.1 聚合函数开窗 基本格式: ..... 函数() over([partition by 分组列,...][order by 排序列 desc|asc][定位框架]) 1&#xff0c;partition by 字段 相当于group by 字段 起到分组作用2&#xff0c;order by 字段 即根据某个字段…

​面试经典150题——对称二叉树

1. 题目描述 2. 题目分析与解析 2.1 思路一——递归 为了解决问题“检查一个二叉树是否是对称的”&#xff0c;我们需要判断树的左子树和右子树是否是彼此的镜像。这意味着树的左子树的左侧应该与右子树的右侧相同&#xff0c;左子树的右侧应该与右子树的左侧相同。 定义问题…

基于springboot实现人口老龄化社区服务与管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现人口老龄化社区服务与管理系统演示 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了人口老龄化社区服务与管理平台的开发全过程。通过分析人口老龄化社区服务与管理平台方面的不足&#xff…

Gitee和Git学习笔记

Gitee和Git指令 Gitee提交代码方法1 先将仓库clone到本地&#xff0c;修改后再push到 Gitee 的仓库方法2 本地初始化一个仓库&#xff0c;设置远程仓库地址后再做push 切换分支下载代码通过git clone克隆仓库通过下载 ZIP 的方式下载代码 Git提交指令 解决本地库同时关联GitHub…

货币保卫战,美联储降息预期推迟,油价飙升110美元,亚洲市场股债汇三杀,各国央行操作难度上升!

货币保卫激战 美联储降息预期一降再降&#xff0c;叠加中东局势变化带来避险需求飙升&#xff0c;美元连续第五天上涨之际&#xff0c;新兴市场再次打响“货币保卫战”&#xff0c;而更大的风险似乎仍未过去。亚洲市场普跌&#xff0c;日股跌近2%&#xff0c;韩国股指跌超2%&a…

【好书推荐6】《Excel函数与公式应用大全for Excel 365 Excel 2021》

【好书推荐6】《Excel函数与公式应用大全for Excel 365 & Excel 2021》 写在最前面《Excel函数与公式应用大全for Excel 365 & Excel 2021》关键点内容简介作者简介前言/序言目录 &#x1f308;你好呀&#xff01;我是 是Yu欸 &#x1f30c; 2024每日百字篆刻时光&…