https://zhuanlan.zhihu.com/p/79854543

先验框生成

✔️ SSD从Conv4_3开始,一共提取了6个特征图,其大小分别为 (38,38),(19,19),(10,10),(5,5),(3,3),(1,1),但是每个特征图上设置的先验框数量不同。

✔️ 先验框的设置,包括尺度(或者说大小)和长宽比两个方面。对于先验框的尺度,其遵守一个线性递增规则:随着特征图大小降低,先验框尺度线性增加:

其中:

  • 指特征图个数,但是为5,因为第一层(Conv4_3)是单独设置的;
  • 表示先验框大小相对于图片的比例;
  • 和 表示比例的最小值与最大值,paper里面取 0.2 和 0.9。

1、对于第一个特征图,它的先验框尺度比例设置为 ,则其尺度为 ;

2、对于后面的特征图,先验框尺度按照上面公式线性增加.

3、乘回原图的大小300,再综合第一个特征图的先验框尺寸,则可得各个特征图的先验框尺寸为:

4、先验框的长宽比一般设置为:

5、根据面积和长宽比可得先验框的宽度和高度:

6、默认情况下,每个特征图会有一个 且尺度为 的先验框,除此之外,还会设置一个尺度为 且 的先验框,这样每个特征图都设置了两个长宽比为1但大小不同的正方形先验框;

7、最后一个特征图需要参考一个虚拟 来计算

8、因此,每个特征图一共有 6 个先验框 ,但是在实现时,Conv4_3,Conv10_2和Conv11_2层仅使用4个先验框,它们不使用长宽比为 的先验框;

9、每个单元的先验框的中心点分布在各个单元的中心,即:

其中 为特征图的大小。

因此,SSD 先验框共个数:

num_priors = 38x38x4+19x19x6+10x10x6+5x5x6+3x3x4+1x1x4=8732
01-31 17:10