SSD论文阅读笔记

SSD: Single Shot MultiBox Detector

论文arxiv链接:https://arxiv.org/pdf/1605.06409v2.pdf

  • 亮点在于对多个size的featuremap产生各自scale的bbox:
    SSD论文阅读笔记
  • scale采取的是0-1的归一化scale,假设一共利用了m个大小不同的feature map,就会有m个scale,对于一个第k个featuremap,每一个location的default bbox的scale是:sk=smin+smaxsminm1(k1)s_k = s_{min} + \frac{s_{max}-s_{min}}{m-1}(k-1),而aspect对每一个featuremap都是ar{1,2,3,12,13}a_r \in \{1, 2, 3, \frac{1}{2}, \frac{1}{3}\}, bbox的长宽计算方法是w=sa,h=s/aw = s\sqrt{a}, h = s/\sqrt{a},对于ar=1a_r=1的情况再加一种长宽都为sksk+1\sqrt{s_ks_{k+1}}的bbox,所以对于每一个feature map的每一个location都有6个default bbox. 假设第k个feature map的size是ck×pk×pkc_k \times p_k \times p_k那么feature map
    上索引为(i.j)(i. j)的default bbox的中心对应到原图的位置是(i+0.5pk,j+0.5pk)(\frac{i+0.5}{p_k}, \frac{j+0.5}{p_k})其中i,j[0,pk)i, j \in [0, p_k)
  • 此外有一点需要注意的是,不同于其它检测器在训练时match GTbox的时候只选择与dtbox iou最高的GTbox为GT, SSD是通过阈值选择的,也即只要iou超过某个阈值(一般是0.5),就认为是GT,也就是说同一个dt可以match到多个GT,具体还得看代码