OTA:用最优传输理论解决目标检测label assign问题(cvpr2021)

最优传输理论:
两种主体,一个供应商(supplier),一个客户(demander)
n个供应商,每个供应商有k个货物,m个客户,每个客户需要s个货物
同时满足n ∗ k = m ∗ s n*k=m*snk=ms,也就是说所有供应商的货物都能给出去,所有客户都能拿到需要的货物
要解决的是供应商把货物交给客户的运输费用最小化问题,所以叫做最优传输问题
先不讲如何解决这个问题,自然有各种办法解决。

OTA这篇文章就是把label assign问题用最优传输问题建模,然后用最优传输问题的常规方法去解决。
建模:
对于一张图,
(1)令所有gt框为供应商,假设有n个gt框,每个gt框提供k个对应类别的positive label
(2)令所有anchor为客户,假设有m个anchor,每个anchor需要1个label,因此总需求为m ∗ 1 m*1m1个label
(3)同时令背景为一个供应商,根据上面的等式,背景供应商提供m − n ∗ k m-n*kmnk个negative label
运输费用:
(1)gt框到anchor的运输费用为把这个anchor分配给这个gt后产生的分类+回归损失
(2)背景到anchor的运输费用为把这个anchor分配给背景类后产生的分类损失
优化:
用Sinkhorn-Knopp方法(已有的方法)最小化总的运输费用

看起来好像这篇文章就是套了个最优传输问题,连优化都是用的现有的方法。

为什么要用OTA来解决呢?
(1)以前的方法以IoU阈值,center sampling,ATSS包括AutoAssign方法都没有从全局最优来考虑,仅仅是考虑每个anchor-gt对的cost最小,OTA会从全局考虑,使得cost和最小。
(2)DeTR用匈牙利算法来考虑全局cost最小,但是是1个gt框对应1个anchor,虽然不用做nms了,不过作者觉得这种one-to-one的方法不好,可能会损失精度,于是希望仍然用one-to-many的方法
于是,OTA既是one-to-many的方法,又是考虑全局最优,于是是更好的方法


版权声明:本文为lt1103725556原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。