预备知识
边界框
边界框(bounding box)是一个矩形框,用于描述检测目标在图像中的位置。
通常有两种表示方式:
(cx, cy, w, h) 中心点,宽高
(x1, y1, x2, y2) 左上,右下
交并比(IoU)
锚框
以每个像素点为中心生成锚框,又两个参数,分别为缩放比s和宽高比r,锚框的宽度和高度分别为
和
。如果对大小为w*h的图像每个像素点生成锚框,缩放比和宽高比的数量分别为n和m,则总共有whnm个锚框。为了减小计算复杂性,通常只考虑s1和r1的组合,也就是说每一个像素点的锚框数量为n+m-1
如何给训练数据标注锚框
1.给锚框分配真实边框
朴素的讲述,就是看真实的边框和锚框的交并比,从大到小排序,如果某个真实边框被分配给了锚框,那么所对应的行和列将会被丢弃,然后往下再找第二大的,直到所有真实边框被分配。然后再查找没有被分配到真实框的锚框的行元素,如果大于一定阈值,就给其分配真实边框。
2.标记类别和偏移量
锚框A被分配了真实框B,则A的类别与B相同,真实边框的定义如下