目标检查中的 Anchor

正午 2020-02-19 PM 250℃ 0条

在 Faster R-CNN 中引入的 RPN 分支利用对 Anchor 的分类(前景还是背景)和位置回归来选择 Region Proposal 和调整其位置。

Anchor 对应到输入图像是就是一个矩形区域,对应到特征图(feature map)上的一个特征点。在原图上可以用左上角和右下角两个点坐标来定义: [x_min, y_min, x_max, y_max]

Anchor 的生成

在早些时候是用一个框在图像上滑动,比如下面这样,每个小方块就是一个选取的区域,对这个区域提取特种,并分类
Anchor 的生成和这个逻辑类似,我们定义图书这些方块的边长为 base_size , 在每个位置,只生成正方形显然有点儿不够,而且只生成一个大小的方块也不够覆盖所有的,目标的大小不一,所以定义列表 scales 在 base_size 的基础上乘以一个系数得到多个不同大小的方块,为了得到长方形,定义 ratios 是长宽比

anchor 的大小,和长宽比相当于超参数,定义多大的 anchor, 长宽比的参数如何,需要考虑到带检测目标的大小,featuremap 的缩放比,

show_gtbbox.jpg

在一个点生成多个 anchor 的效果,

show_gtbbox_2.jpg

Anchor target

Anchor 生成之后需要对每个 anchor 打上标签,在 RPN 分支中, anchor 分为包含 object 或者叫前景,和不包含 object 或叫背景两类,前者为正样本,后者为负样本,faster rcnn 中根据 IOU 阈值定义正负样本

  1. 每个 anchor 和任意一个 gt 的 iou > 0.7 为正样本 和 所有 gt 的 iou < 0.3 为负样本
  2. 对每个 gt iou 最大的 anchor 且 iou 大于阈值 min_pos_iou 的 anchor 为正

下面就是一些正样本的 anchor ,通常负样本的 anchor 会量会很大,所以存在正负样本不均衡,且正样本本身也会很多的情况,所以在训练的时候通常会做采样,比如随机采样部分样本参与训练
pos_anchor.jpg

标签: none

非特殊说明,本博所有文章均为博主原创。

评论