目标检测正负样本分配策略----ATSS

一、ATSS

参考:https://blog.csdn.net/xuzz_498100208/article/details/110355048

https://zhuanlan.zhihu.com/p/411659547

作者提出了一种自适应的选取正样本的方法,具体方法如下:

1.对于每个输出的检测层,选计算每个anchor的中心点和目标的中心点的L2距离,选取K(mmdetection的topK是9)个anchor中心点离目标中心点最近的anchor为候选正样本(candidate positive samples)

2.计算每个候选正样本和groundtruth之间的IOU,计算这组IOU的均值和方差

根据方差和均值,设置选取正样本的阈值:t=m+g ;m为均值,g为方差

3.根据每一层的t从其候选正样本中选出真正需要加入训练的正样本

然后进行训练

ATSS (Adaptive Training Sample Selection)

该方法根据目标的相关统计特征自动进行正负样本的选择。

复制代码
对于每个GT box 

,首先在每个特征层找到中心点最近的

个候选anchor boxes(非预测结果)。

计算候选box与GT间的IoU

,计算IoU的均值和标准差

得到IoU阈值

选择阈值大于

复制代码
的box作为最后的输出。如果anchor box对应多个GT,则选择IoU最大的GT。

均值

表示预设的anchor与GT的匹配程度,均值高则应当提高阈值来调整正样本,均值低则应当降低阈值来调整正样本。标准差

表示适合GT的FPN层数,标准差高则表示高质量的anchor box集中在一个层中,应将阈值加上标准差来过滤其他层的anchor box,低则表示多个层都适合该GT,将阈值加上标准差来选择合适的层的anchor box,均值和标准差结合作为IoU阈值能够很好地自动选择对应的特征层上合适的anchor box。

ATSS的思想主要考虑了下面几个方向:

复制代码
在RetinaNet中,anchor box与GT中心点越近一般IoU越高,而在FCOS中,中心点越近一般预测的质量越高。
若anchor box的中心点不在GT区域内,则其会使用非GT区域的特征进行预测,这不利于训练,应该排除。
根据统计原理,大约16%的anchor box会落在

,尽管候选框的IoU不是标准正态分布,但统计下来每个GT大约有

个正样本,与其大小和长宽比无关,而RetinaNet和FCOS则是偏向大目标有更多的正样本,导致训练不公平。

ATSS仅有一个超参数

,后面的使用会表明ATSS的性能对

复制代码
不敏感,所以ATSS几乎是hyperparameter-free的。
相关推荐
XM_jhxx1 小时前
±0.03mm的精度怎么保证?翌东塑胶用AI赋能质量管控升级
人工智能
阿正的梦工坊1 小时前
深入理解 PyTorch 中的 unsqueeze 操作
人工智能·pytorch·python
秦歌6663 小时前
DeepAgents框架详解和文件后端
人工智能·langchain
测试员周周4 小时前
【Appium 系列】第06节-页面对象实现 — LoginPage 实战
开发语言·前端·人工智能·python·功能测试·appium·测试用例
霸道流氓气质4 小时前
基于 Milvus Lite 的 Spring AI RAG 向量库实践方案与示例
人工智能·spring·milvus
ar01234 小时前
AR巡检平台:构筑智能巡检新模式的数字化引擎
人工智能·ar
语音之家4 小时前
【预讲会征集】ACL 2026 论文预讲会
人工智能·论文·acl
碳基硅坊4 小时前
电商场景下的商品自动识别与辅助上架
人工智能
熊猫钓鱼>_>4 小时前
强化学习与决策优化:从理论到工程落地的完整指南
人工智能·llm·强化学习·rl·马尔可夫·mdp·决策过程