目标检测论文之FCOS

论文 FCOS: Fully Convolutional One-Stage Object Detection
GitHub源码地址

FCOS做目标检测,模仿语意分割,对每个像素进行预测。避免了和anchor(proposal)相关的复杂计算和超参数,只需要一个NMS的后处理;最优结果:backbone用ResNeXt-64x4d-101,AP=44.7%.

1、Prior

  • feature map F i F_i Fi中的像素 ( x , y ) (x,y) (x,y),映射回原图 ( s x + ⌊ s 2 ⌋ , s y + ⌊ s 2 ⌋ ) (sx+\lfloor\frac{s}2\rfloor,sy+\lfloor\frac{s}2\rfloor) (sx+2s,sy+2s),s为该feature map的total stride。
    adding ⌊ s 2 ⌋ \lfloor\frac{s}2\rfloor 2s是为了使其接近感受野中心
  • 正负样本:
    该像素落入groun-truth(以下简称gt)的bbox中,即为positive;并且类别c为该gt的类别。否则为negative,类别c=0。
  • bounding box (l,t,r,b)
    bounding box是一个四维向量 ( l , t , r , b ) (l,t,r,b) (l,t,r,b),分别为当前像素距离gt box四个边的距离。
    l = x − x 0 t = y − y 0 r = x 1 − x b = y 1 − y l=x-x_0\quad t=y-y_0\\r=x_1-x\quad b=y_1-y l=xx0t=yy0r=x1xb=y1y
    ( x 0 , y 0 , x 1 , y 1 ) (x_0,y_0,x_1,y_1) (x0,y0,x1,y1)为gt box的坐标。

2、Output & Loss

2.1 classification

是C个二分类,对于输出>0.05的为positive。因为这些输出都是>0的正数,所以用 e x p ( s i x ) exp(s_ix) exp(six)将输出结果转为大于0的数。 s i s_i si为FPN的level i i i的参数。

2.2 center-ness

  • 由于产生了很多low quality的box(是由离目标中心点较远的像素产生的),所以为了抑制这些low quality的box,引入了center-ness。 c e n t e r n e s s = m i n ( l , r ) m a x ( l , r ) × m i n ( t , b ) m a x ( t , b ) centerness=\sqrt{\frac{min(l,r)}{max(l,r)}\times\frac{min(t,b)}{max(t,b)}} centerness=max(l,r)min(l,r)×max(t,b)min(t,b)
  • Loss为BCE(Binary Cross Entropy)
  • center-ness的结果与classification相乘,用来降低low quality的box的权重。
  • low quality box如下图所示:
    在这里插入图片描述

2.3 bbox

bbox是一个4D的向量 ( l , t , r , b ) (l,t,r,b) (l,t,r,b)。同样用 e x p ( s i x ) exp(s_ix) exp(six)将输出结果转为大于0的数。

3、Head

4个输出channel=256的conv。具体见下图的网络结构。

4、Network

在这里插入图片描述

4.1 Backbone

4.2 FPN

  • gt box有重叠(over-lap)的情况,通过FPN来解决。
  • 不同尺寸的box用FPN的不同level去预测。选择方法如下:
    对于 m a x ( l , r , t , b ) > m i o r m i n ( l , r , t , b ) < m i − 1 max(l,r,t,b)>m_i or min(l,r,t,b)<m_{i-1} max(l,r,t,b)>miormin(l,r,t,b)<mi1的,认为negative。其中 m i m_i mi为FPN level i i i的最大回归距离。对于 m 2 , m 3 , m 4 , m 5 , m 6 , m 7 m_2,m_3,m_4,m_5,m_6,m_7 m2,m3,m4,m5,m6,m7分别为 0 , 64 , 128 , 256 , 512 , ∞ 0,64,128,256,512,\infty 064,128,256,512,
  • 因为一般有重叠的box的尺寸大多数是不一样的,所以可以通过这种方法将有重叠的box分配到不同level进行计算。
  • 如果经过这种处理后,仍然有重叠的box,则直接选取面积最小的box作为回归目标。

5、post-process

同RetinaNet的后处理。只有NMS。

6、Training

  • input:(800,<1333)
  • optimizer:SGD,weiht_decay=0.0001,momentum=0.9
  • lr:0.01,一共90k iteration,在60k和80k iteration时,学习率下降为原来的十分之一。
  • batch_size=16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值