文章的挑战:
先验值与物体区域之间的重叠度较低,导致样本池受到限制,而辨别信息的匮乏则进一步加剧了识别问题。
论文内容概括:
提出了CFINet网络,是一种基于粗-细管道和特征模仿学习的两阶段框架,专门用于小物体检测。
网络具体内容:
1.引入了从粗到细的RPN(CRPN),通过动态锚选择策略和级联回归,确保为小对象提供足够且高质量的建议。
2.给传统的检测头配备了一个“特征模仿(FI)”分支,以便于以模仿的方式对困惑模型的大小有限的实例进行区域表示。
3.设计了辅助模仿损失,与Faster RCNN集成。
传统的检测网络方法:
首先当前流行的检测器是利用基于重叠的策略和基于距离的策略来选择训练对象的正确值;降低定义正样本的阈值。
有几种方法提出缩小小物体与大物体之间表征距离的方法,大部分都依赖于生成对抗网络或相似性学习。在被认为具有视觉真实性的达吾提的引导下,解析还原尺寸受限实例的特征。
论文思路:
提出了一种基于粗到细通道和人特征模仿学习两阶段小目标检测器CFINet:
1.借鉴了级联RPN中的多级提案生成方案,设计了粗到细RPN(CRPN):首先采用动态锚选择策略挖掘潜在的先验进行粗回归,然后由区域建议网络对这些细化的锚进行分类和回归。
2.扩展了传统的分类回归设置,增加了一个辅助的特征模仿(FI)分支:利用高质量实例区域特征来指导哪些预测不确定\被误判的对象的学习。
3.设计了一个基于监督对比学习(SCL)的损失函数来优化整个过程。
主要贡献:
1.我们建立了一个名为CRPN的从粗到细的建议生成通道,用于执行从锚点到建议的程序,其中基于区域的锚点挖掘策略和级联回归技术为小实例提供了高质量的建议。
2.在高质量实例的监督下,引入了辅助特征模仿(FI)分支,以丰富使模型感到困惑的低质量实例的表征,并通过基于SCL的定制损失函数对这一新颖分支进行优化。
3.在SODA-D和SODA-A数据集上的实验结果表明,模型检测这些规模极其有限的实例方面具有优势。
国内外研究现状:
一、锚点完善和区域建议:
"完善锚点"和"区域建议"都是为了生成一组更精确的候选区域,确保在后续的目标检测过程中,能够准确识别并定位图像中的目标。
锚点:是一些预定义的边界框,它们在图像的不同位置和不同尺度上进行采样,以捕捉可能的目标,完善锚点的过程是对这些预定义的锚点进行调整和优化,使它们更准确地匹配图像中实际目标的大小和位置。
区域建议:区域建议(Region Proposals)是一种方法,用来从图像中生成一组可能包含目标物体的候选区域。这些候选区域通常是通过某种算法(如Selective Search、RPN等)生成的,并且数量较少,但更有可能包含目标物体。
两阶段:
- RPN首次在Faster RCNN中引入,应用于在全卷积网络中生成提案。
1) RPN网络主要包括以下几个步骤:
a.特征提取:使用预训练的卷积神经网络作为特征提取器,提取输入图像的特征图。
B.锚点生成:在特征图上生成多个不同大小和比例的锚点框,这些锚点框覆盖了特征图上的不同位置。
C.区域提议:使用卷积层对特征图进行进一步处理,生成每个位置的分数,这些分数表示该位置是否包含目标以及目标的类别。
D.非极大值抑制(NMS):对生成的候选框进行筛选,去除重叠度过高的框,只保留得分最高的几个框。
E.对筛选后的候选框进行调整,以获得更精确的目标边界。
- 建议对预定义的锚点进行迭代回归(2016年)。
- GA-RPN:抛弃了统一锚定策略,将锚点生成分为两个步骤:
- 首先是确定可能包含物体的位置,然后在这些位置上预测锚标尺(anchor scales):anchor中的ratio和scale,其中ratio是长宽之比,scale是边长。(https://blog.csdn.net/weixin_42756682/article/details/125137585),通过使用multi-stage anchor-to-proposal strategy(多级锚点到提案策略):一种通过多个阶段逐步调整和优化锚点,最终生成高质量候选区域的方法。
- multi-stage anchor-to-proposal strategy:解释为 RPN(Region Proposal Network)生成初始候选区域,然后通过 RoI Pooling 对这些区域进一步优化。之后,这些优化后的区域会经过更精细的分类和边界回归,最终确定目标物体的位置和类别。
- 首先是确定可能包含物体的位置,然后在这些位置上预测锚标尺(anchor scales):anchor中的ratio和scale,其中ratio是长宽之比,scale是边长。(https://blog.csdn.net/weixin_42756682/article/details/125137585),通过使用multi-stage anchor-to-proposal strategy(多级锚点到提案策略):一种通过多个阶段逐步调整和优化锚点,最终生成高质量候选区域的方法。
- Cascade RPN可以生成高质量的提案。
二、小物体检测的特征模仿(Feature imitation):
通过挖掘小型和大型物体之间的内在关联来增强小型/微型实例的语义表征。
- 基于生成对抗范式(the generative adversarial paradigm):
- Perceptual GAN:设计了一种生成器,经过优化后可生成高质量的小实例表示,以骗过随后的判别器。
- Bai等人设计了一种新颖的管道(pipeline):通常是一种创新的或改进的模型架构、训练方法或数据处理流程。
- Noh等人进一步引入了对小物体超分辨率过程中的精准监控。
- Wu和Kim等人都利用相似性学习,迫使小范围行人的特征接近于大范围行人的特征,而大范围行人的特征是通过附加模型获得的。
- 超分辨率分支(super-resolution branch):通常指的是一种网络结构或处理流程,用于提高图像的分辨率。包括的步骤:1.从低分辨率图像中提取特征;2.学习映射;3.上采样;4.细节增强;5.损失函数;6.后处理。
- 离线特征库(offline feature bank):离线特征库是指预计算并存储的一组特征向量或特征表示,这些特征通常是从数据集中提取出来的,并且在训练或推理过程中可以直接访问和使用,不需要实时计算(可以理解为预提取)
超分辨率分支或离线特征库的存在阻碍了端到端的优化,本文方法以在线方式更新示例特征(updates the exemplar features in an online fashion)。
示例数据:从特定类别或样本中提取的特征表示,通常用于对比学习、聚类或少样本学习等任务中。
在线方式:在线更新是指系统在接收到新的数据或新样本时,会即时地对示例特征进行更新,而不是等待一批数据或在整个训练结束后在进行更新,这种方法适合动态或流态数据场景。
三、物体检测的对比学习
对比学习(Contrastive learning)是一种无监督或者自监督学习方法。旨在通过对比样本之间的相似性和差异性来学习有用的特征。
自监督学习的发展源于对比学习。
1.Detco:一种有效的物体检测自监督框架,它利用图像及其局部斑块进行对比学习。
2.Wu等人将对比学习应用于烟雾条件下的物体检测。
但对比学习仍没有得到研究在小物体检测中。
本文方法:
1.讨论了级联RPN在面对小物体时的固有局限性。
2.介绍了为尺寸受限的实例量身定制的粗-细高质量建议生成管道。
3.阐明了新设计的特征模仿分支的架构以及优化和训练过程。
Cascade RPN网络流程:
第一阶段:初始RPN阶段
- 初始RPN阶段:输入图像通过backbone提取特征图。
- 初始区域建议生成:在特征图上生成初始的锚框,这些锚框是预定义的固定尺寸和长宽比的矩形框。通过RPN网络计算每个锚框的分类得分(是否包含目标)和回归偏移(调整锚框到更精确的位置和尺度)。
第二阶段:级联优化阶段
多阶段优化:初始RPN阶段生成的区域建议被传递到后续的RPN阶段。在每个阶段,先前生成的区域建议(proposal)被进一步细化。
1.第二阶段:将第一阶段的区域建议作为输入,重新调整,生成更精确的区域建议。该阶段通过更高分辨率的特征图或者更加复杂的回归网络来处理。
2.第三阶段:如果有第三阶段,重复第二阶段。
逐步细化:每个阶段使用前一阶段的输出作为输入,进行优化。
第三阶段:区域建议过滤
NMS
第四阶段:最终区域建议生成
经过多阶段的cascade RNN处理后,最终生成高质量区域建议。建议传递给目标检测头进行目标检测。
第五阶段:目标检测或分割
最终的区域建议被传递给目标检测模块,该模块进一步分类每个区域建议并精确地回归目标的边界框。如果是实例分割任务,还会生成目标的像素级别的分割掩码(mask)。
输入图像 -> 特征提取 -> 初始RPN -> 第一阶段区域建议 -> NMS
-> 第二阶段RPN -> 进一步优化的区域建议 -> NMS
-> (第三阶段RPN) -> 最终区域建议 -> 目标检测或分割
Cascade RPN局限性:
虽然高质量的建议很重要,但需要启发式的锚点设置-传统的RPN
在传统的锚点中,锚点的尺度和长宽比通常是根据经验选择,常见的设置可能包括多种尺度(如128,256,521);多种长宽比(如1:1,1:2,2:1)。这些锚点在特征图上密集的滑动,生成一系列的候选区域。
cascade的多阶段优化:
Cascade RPN 不再依赖于单一阶段中的锚点设置,而是通过多阶段的区域建议优化过程逐步调整这些锚点的位置、尺度和形状。在每一个阶段,之前的区域建议作为输入,在特征图上进行进一步的回归和优化,使得每个阶段的区域建议越来越精确。
局限性:Cascade RPN在处理一般大小的物体时可以,但由于其局限性,无法解决极小物体的问题:
具体而言,对于中心区域明显较小的小物体,第一阶段回归所使用的距离指标无法保证足够的潜在锚点。
此外,Cascade RPN只在单个金字塔层次上标注符合锚点标记的为正。
一、Coarse-to-fine RPN(从粗到细的RPN):
1.设计了一种基于区域的锚点选择策略,使用不同大小的实例(相对)足够的潜在锚点。具体而言,对于宽度为W,高度为H的对象框,IoU大于𝑇a的锚点被视为粗回归的正锚点。
𝑇a = max(0.25,0.20+ 𝛾.log𝑊.𝐻12)
𝛾表示比例因子,本实验中设置为0.15。12对应的是SODA数据集中最小的面积定义的。
𝛾.log𝑊.𝐻12是交叉熵函数。交叉熵是用来衡量两个概率分布之间的差异的一种方法。
交叉熵:交叉熵是衡量两个概率分布的相似度。
信息量:衡量信息量的大小就是看这个消息消除不确定的程度。概率越大,信息量越小,概率越小,信息量越大。
I(x)=log(p(x))
信息熵:用来表示所有信息量的期望。
期望:衡量随机变量中心趋势的一种度量,它代表了随机变量在多次实验中的平均结果。期望可以被视为随机变量的加权平均值,其中权重由每次结果发生的概率决定。(十有八九?)
离散型随机变量X:
E[x] = i=1nxi*P(X = xi)
xi是随机变量X可能取到的第i个值,P(X = xi)是X取到xi值的概率。
连续性随机变量X:
E[x] = −∞+∞x∗f(x)dx
x是随机变量X的值,f(x)是X的概率密度函数。
相对熵(KL散度,KL距离):是两个随机分布间距离的度量。
对于同一个随机变量X有两个单独的概率分布P(x)和Q(x)。
𝐷KL(p||q)=-i=1n𝑝(i=1n𝑝(
KL散度 = 交叉熵 - 信息熵
2.回归后,捕捉回归框内的偏移量,并将其与特征图一起输入RPN,然后利用自适应卷积对齐特征,进行第二阶段回归和前景-背景分类。
Loss Function:𝐿𝐶𝑅𝑃𝑁 = α1(𝐿reg𝐶 + 𝐿regf)+α2𝐿cls
使用交叉熵函数和IoU分别作为𝐿cls和𝐿reg,其中,c,f分别表示我们的CRPN中的粗阶段和细阶段。损失权重分别为9.0和0.9。
二、小物体检测的特征模仿