目标检测正负样本分配策略----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的。
相关推荐
Victory_orsh16 分钟前
“自然搞懂”深度学习系列(基于Pytorch架构)——02小试牛刀
人工智能·python·深度学习·神经网络·机器学习
tzc_fly19 分钟前
DeepSeek-OCR:上下文光学压缩
人工智能·计算机视觉·ocr
37手游后端团队21 分钟前
构建AI会话质检平台:技术架构与实践分享
人工智能·后端
哔哩哔哩技术29 分钟前
B站游戏大模型翻译实践 —— 我们如何用LLM撑起全年百万字本地化翻译任务
人工智能
longgyy30 分钟前
AI 开发告别 “孤岛”:MCP + 火山引擎
人工智能·火山引擎
珊瑚礁的猪猪侠32 分钟前
正则表达式入门到精通教程(Linux实操版)
linux·人工智能·正则表达式
星空的资源小屋32 分钟前
MkFont,一款开源免费的字体设计工具
网络·人工智能·pdf·电脑
mir frog36 分钟前
DAY44 PYTHON 预训练模型
人工智能·深度学习·机器学习
yuzhuanhei37 分钟前
机器学习算法常用算法
人工智能·算法·机器学习
2401_841495641 小时前
自然语言处理实战——英法机器翻译
人工智能·pytorch·python·深度学习·自然语言处理·transformer·机器翻译