目标检测正负样本分配策略----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的。
相关推荐
明志数科13 分钟前
具身智能数据工程观察:“数据筑基“时代的数据底座建设路径
人工智能·机器人
m0_614523551 小时前
普通视频怎么做多场景一镜到底:路线设计、逐段衔接与整体验收
人工智能·音视频
海宇服务2 小时前
零信任架构实战:基于海宇对外投资历史查询服务构建自动化供应商准入网关
运维·人工智能·架构·自动化
东风破_2 小时前
别急着上 Agentic RAG:先用 LangGraph 把最小 RAG 跑明白
人工智能
LaughingZhu2 小时前
Product Hunt 每日热榜 | 2026-09-12
人工智能·深度学习·神经网络·搜索引擎·百度
潜心一志2 小时前
HALCON软件——基本架构,算子参数
学习·计算机视觉
天真小巫2 小时前
2026.9.13总结(工作量日益繁重的当下,AI如何提效)
人工智能
Zguigo2 小时前
【CUDA1】GPUvsCPU,CUDA Kernel
人工智能·pytorch·深度学习
thesky1234562 小时前
用 ONNX Runtime 把 PyTorch 模型变成跨平台极速推理引擎:导出、优化、量化完整实
人工智能·深度学习·模型部署
米小虾3 小时前
把 KV Cache 从 3514 字节压到 890 字节:DeepSeek V4.1-Flash 动了什么,又没动什么
人工智能