目标检测-yolo2 输出向量格式

介绍

如上图,每个像素点有5个 anchors box(橙色框),红色框是真实框,输出的格式如下:

(tx,ty,tw,th,c,分类) * 5
  • tx、ty:相当于真实框 中心点 坐标的偏移量,下面有计算公式
  • tw、th:相当于真实框 中心点 宽高的偏移量
  • c: confidence,anchors box 与 真实框 重合率。iou算法
  • 分类:onehot编码,也就是说20个分类(voc2007有20个分类),就有20个0或1组成
  • 5:有5个anchors box,所以要乘5

优点

每一个anchors box都能预测一个类别

例子

假设有20个分类,那么维度是:

(25,30,35,50,0.8,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)*5

即:

(4+1+20)*5=125

计算方法(YOLOv2)

预测边界框 中心点 相对于对应 grid cell 左上角位置的相对 偏移值,为了将边界框中心点约束在当前cell中,使用sigmoid函数处理偏移值,这样预测的偏移值在(0,1)范围内。

关于 sigmoid函数 参见:
https://www.malaoshi.top/show_1EF4IWSucFTE.html

默认YOLOv2,最终得到的特征图大小为 13x13,所以grid cell是13x13个格子,cell宽、高是1:

假设 cell的左上角坐标(cx,cy),预测边界框的4个偏移值 tx,ty,tw,th,anchor box 的宽高pw,ph,实际边界框为:bx,by,bw,bh(要预测的值),如下图:

计算公式为:

注意:

  • a()是sigmoid激活函数,结果在0 ~ 1之间
  • 计算的是中心点坐标

由于sigmoid函数的处理,边界框的中心位置会约束在当前cell内部,防止偏移过多。


原文出处:https://malaoshi.top/show_1EF6QvK6QiWi.html