目标检测正负样本分配策略----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的。
相关推荐
阿杰学AI3 分钟前
AI核心知识39——大语言模型之World Model(简洁且通俗易懂版)
人工智能·ai·语言模型·aigc·世界模型·world model·sara
智慧地球(AI·Earth)9 分钟前
Vibe Coding:你被取代了吗?
人工智能
大、男人40 分钟前
DeepAgent学习
人工智能·学习
测试人社区—66791 小时前
提升测试覆盖率的有效手段剖析
人工智能·学习·flutter·ui·自动化·测试覆盖率
狂炫冰美式1 小时前
不谈技术,搞点文化 🧀 —— 从复活一句明代残诗破局产品迭代
前端·人工智能·后端
phoenix@Capricornus2 小时前
视觉Transformer(ViT)
人工智能·深度学习·transformer
子春一2 小时前
Flutter 与 AI 融合开发实战:在移动端集成大模型、智能推荐与生成式 UI
人工智能·flutter·ui
whitelbwwww3 小时前
Python图像处理入门指南--opencv
人工智能·opencv·计算机视觉
Peter11467178503 小时前
华中科技大学研究生课程《数字图像处理I》期末考试(2025-回忆版/电子信息与通信学院)
图像处理·人工智能·计算机视觉