改进小目标检测!SSPNet:微小目标检测的尺度选择金字塔网络

2023-12-25 21:50

本文主要是介绍改进小目标检测!SSPNet:微小目标检测的尺度选择金字塔网络,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击下方卡片,关注“CVer”公众号

AI/CV重磅干货,第一时间送达

转载自:Smarter

SSPNet: Scale Selection Pyramid Network for Tiny Person Detection from UAV Images

论文:https://arxiv.org/abs/2107.01548

SSPNet:从无人机图像中检测微小目标的尺度选择金字塔网络,其由上下文注意模块(CAM)、尺度增强模块(SEM)和尺度选择模块(SSM)组成,在Tiny-Person上表现SOTA!性能优于Swin-T、NAS-FPN等网络。
作者单位:四川大学

1简介

随着搜救需求的不断增加,人们对在无人机(UAV)捕获的大尺度图像中检测感兴趣的物体的需求越来越高,由于物体的尺度极小,这非常具有挑战性。大多数现有方法采用特征金字塔网络(FPN)通过组合深层的上下文特征来丰富浅层的特征。然而,在跨层梯度计算不一致的限制下,FPN中的浅层没有被充分利用来检测微小物体。

在本文中提出了一个用于Tiny-Person检测的尺度选择金字塔网络(SSPNet),它由3个组件组成:

  • 上下文注意模块(CAM):CAM 考虑上下文信息以生成分层 Attention Heatmap。

  • 尺度增强模块(SEM):SEM 在不同层突出特定尺度的特征,使检测器专注于特定尺度的物体。

  • 尺度选择模块(SSM):SSM 利用相邻层的关系来实现深层和浅层之间适当的特征共享,从而避免不同层之间梯度计算的不一致。

此外,作者还提出了一种加权负采样(WNS)策略来指导检测器选择更具代表性的样本。Tiny-Person测试表明,本文所提方法优于其他SOTA检测器。

2本文方法

SSPNet主要是基于Faster R-CNN的框架,包括CAM、SEM、SSM,如图2(a)所示。

2.1 Context Attention Module

为了生成分层的attention heatmap,作者设计了CAM来生成不同层次的attention heatmap。因为上下文信息可以提高检测小目标的性能。

因此,作者首先将backbone在不同stage产生的特征进行上采样,使其与底部的特征具有相同的形状,并将它们cat起来。然后采用多尺度空间金字塔池算法(atrous spatial pyramid pooling, ASPP),提取的多尺度特征来寻找目标线索;ASPP生成的上下文感知特征被传递到一个由多个 卷积和sigmoid激活函数组成的激活门,该激活门由多个不同stride的 卷积和sigmoid激活函数组成,生成层次attention heatmap   :

其中σ为sigmoid激活函数, 为第k层的 卷积, 为卷积参数, 为ASPP生成的上下文感知特征, 为卷积步长。

为了指出在SSPNet的每一层中哪些尺度对象可以被指定为正样本,作者采用了supervised attention heatmap来突出SSPNet每一层中特定尺度的目标,避免被背景淹没。

具体地说,supervised attention heatmap与不同层次锚点匹配的对象相关联。如图2(b)所示,supervised attention heatmap在不同的层次上表现出不同的具体比例尺范围,其中红色和绿色虚线框表示对应层锚定不匹配的对象将被视为背景。与之对应的attention heatmap如图2(b)所示,CAM能够生成特定比例尺范围的attention heatmap。

2.2 Scale Enhancement Module

采用SEM增强特定尺度物体的线索。由于不同层的attention heatmap具有不同的尺度偏好,使得SEM能够产生尺度感知特征:

其中 分别为输入特征图和输出尺度感知特征, 为第k层的attention heatmap。

请注意,残差连接用于避免降低目标周围的特征,因为上下文信息可能有助于检测。

2.3 Scale Selection Module

为了从深层为浅层选择合适的特征,作者提出SSM来引导深层向浅层提供合适的特征,在浅层中,合适的特征被优化到同一类,因此不会导致梯度计算不一致。另一方面,如果相邻层的目标都能被检测到,那么深层将提供更多的语义特征,同时与下一层进行优化。SSM可以设计如下:

其中 的交点为 为最近的上采样操作, 为第k层的合并映射, 为第(k−1)个残块的输出。

具体来说,SSM扮演着比例选择器的角色。对于下一层尺度范围内的目标对应的特征将被视为合适的特征流入下一层,而其他特征将被弱化,以抑制梯度计算中的不一致性。

2.4 Weighted Negative Sampling

在无人机拍摄的大视场图像中,复杂的背景通常比自然场景图像引入更多的噪声。此外,这些图像中的部分遮挡导致一些物体只被可见部分标注,导致检测器将人的部分视为完整的个体,尤其是在数据集不大的情况下。基于这些考虑,作者提出了小波神经网络,通过更多地观察代表性样本来增强检测器的泛化能力。

首先,hard negative样本通常被检测器视为具有较高置信度的positive样本。因此,置信度是最需要考虑的直觉因素。然后,采用前景交叉准则来量化目标的不完整程度。接下来,构造一个考虑IoF和置信度2个因素的评分融合函数:

其中 分别表示第 个检测结果的置信度和对应的最大IoF, 表示调整置信度与IoF的系数。然后,可以根据 调整每个样本的选择概率。

2.5 损失函数

总损失如下:

RPN损失:

Head损失:

其中 对边界框回归均采用smooth L1 loss,但在分类方面, 采用了二进制交叉熵(BCE)损失, 采用了交叉熵损失。

对于 , i是minibatch中边界框的索引。 分别表示预测类和ground-truth的概率分布。 分别表示预测的边界框和ground-truth box。分类和回归损失由 (minibatch)和 (box位置的数量)归一化,并由一个平衡参数 加权。默认情况下,将 设为1。 以类似的方式定义。

表示attention loss,引导CAM生成hierarchical attention heatmaps。attention loss可以表述为:

其中α和β分别表示dice loss 和BCE loss 的超参数。具体来说,为了避免被背景淹没,使用dice loss来优先考虑前景,因为它只与attention heatmaps和supervised attention heatmap之间的交集相关。

其次,为了弥补attention heatmaps和supervised attention heatmap没有交集时梯度消失的问题,利用BCE损失来处理这种极端情况,提供有效的梯度进行优化。此外,采用OHEM来保证检测器主要聚焦于容易被视为前景的非物体区域,并且将正负极的比例设置为1:3,而不是考虑所有的负样本。具体来说,使用BCE loss来学习分类差的底片,使用dice loss来学习分类分布,以缓解数据的不平衡。

3实验

可视化结果:

SSPNet论文PDF资料下载后台回复:SSPNet,即可下载上述论文PDF
CVPR和Transformer资料下载后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集
后台回复:Transformer综述,即可下载最新的两篇Transformer综述PDF
CVer-目标检测交流群成立
扫码添加CVer助手,可申请加入CVer-目标检测 微信交流群,方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch和TensorFlow等群。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
▲长按加小助手微信,进交流群▲点击上方卡片,关注CVer公众号
整理不易,请点赞和在看

这篇关于改进小目标检测!SSPNet:微小目标检测的尺度选择金字塔网络的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

SpringBoot使用Apache Tika检测敏感信息

《SpringBoot使用ApacheTika检测敏感信息》ApacheTika是一个功能强大的内容分析工具,它能够从多种文件格式中提取文本、元数据以及其他结构化信息,下面我们来看看如何使用Ap... 目录Tika 主要特性1. 多格式支持2. 自动文件类型检测3. 文本和元数据提取4. 支持 OCR(光学

Python 中 requests 与 aiohttp 在实际项目中的选择策略详解

《Python中requests与aiohttp在实际项目中的选择策略详解》本文主要介绍了Python爬虫开发中常用的两个库requests和aiohttp的使用方法及其区别,通过实际项目案... 目录一、requests 库二、aiohttp 库三、requests 和 aiohttp 的比较四、requ

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

el-select下拉选择缓存的实现

《el-select下拉选择缓存的实现》本文主要介绍了在使用el-select实现下拉选择缓存时遇到的问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录项目场景:问题描述解决方案:项目场景:从左侧列表中选取字段填入右侧下拉多选框,用户可以对右侧

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

如何选择适合孤独症兄妹的学校?

在探索适合孤独症儿童教育的道路上,每一位家长都面临着前所未有的挑战与抉择。当这份责任落在拥有孤独症兄妹的家庭肩上时,选择一所能够同时满足两个孩子特殊需求的学校,更显得尤为关键。本文将探讨如何为这样的家庭做出明智的选择,并介绍星贝育园自闭症儿童寄宿制学校作为一个值得考虑的选项。 理解孤独症儿童的独特性 孤独症,这一复杂的神经发育障碍,影响着儿童的社交互动、沟通能力以及行为模式。对于拥有孤独症兄

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖