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