1.Anchor-based
一般说的anchor指的是只有宽高的信息。
anchor的宽高是一个先验信息:根据经验或者聚类计算数据集的真实框的宽高
yolov5的下采样的特征图输出有三个:
红色线的是在自己feature map尺寸下的宽高信息
feature map的每一个像素都会生成该尺度下的三个不同尺寸的anchor,那就是一共有:
(80*80+40*40+20*20)*3 = 25200个预测框
yolov5输出的是bbox的中心点坐标偏移量和bbox的宽高因子
为什么based?
1.1.预测框的中心点坐标,都是基于feature map中像素的左上角点的坐标计算得到
1.2.预测框的宽高,是基于anchor的宽高计算得到(宽高因子)
2.anchor free
anchor point:是feature map中的每个像素点的坐标(亚像素)-->不是真的像素,比如20*20的特征图一个1*1的格子就是一个像素,但这个各自内部有点,是亚像素
如果还是80*40*20的三个特征图,预测框的数量是:
80*80+40*40+20+20=8400,例如yolov8,相较于yolov5少了2/3的预测框
下面都已yolov8为例子:
网路输出形式
上述来源于番外 | anchor-based 与 anchor-free 、anchor 与 anchor-point、grid cell_哔哩哔哩_bilibili
我感觉Mi姐讲的很细,很好,十分推荐学习代码的小伙伴