为什么需要anchor box?
在此之前的一些目标识别方法
1.滑动窗口
这是比较原始的目标检测方法,给定一个固定尺寸的窗口,根据设定的步伐,一步一步的从左至右、从上至下滑动,把每个窗口输入到卷积神经网络中进行预测和分类,这样做有两个缺点: 1. 由于窗口尺寸固定,因此不适合形变较大的物体 2.窗口较多,运算量大
2.区域建议
这是R-CNN系列中核心的思想,以Faster R-CNN为例,模型中使用了两个神经网络,一个是CNN,一个是RPN(Regional Proposal),区域建议网络不负责图像的分类,它只负责选取出图像中可能属于数据集其中一类的候选区域。接下来就是把RPN产生的候选区域输入到分类网络中进行最终的分类。
3.anchor box
anchor box第一次是出现在Faster R-CNN的论文里
为什么提出anchor box?
主要有两个原因:
1 .一个窗口只能检测一个目标
2. 无法解决多尺度问题。
以往的模型一个窗口只能预测一个目标,把窗口输入到分类网络中,最终得到一个预测概率,这个概率偏向哪个类别则把窗口内的目标预测为相应的类别,例如在图中红色框内回归得到的行人概率更大,则认为这个目标为行人。此外,在解决多尺度问题时主要采用一种思想--金字塔,或者是例如DPM模型中经典的特征金字塔。在不同分辨率的特征图下检测不同尺寸的目标。但是这样存在一个问题,就是大大的增加了计算量。
Anchor Boxes的弊端:
(缝合怪就是我嘿嘿嘿!)