一、YOLOV3比之前的版本有什么改进措施?
a ) 1、通过加入FPN结构2并使用残差结构,能够构建更深的网络结构,从darknet19变为darknet53。
二、如何理解anchor boxes的作用?
(1、anchor box最先出现在faster-rcnn上,但最初的目标检测是以金字塔多尺度遍历滑动窗口的方式,对每个尺度判断“此尺度的此位置是否有识别的目标”非常沉重
fast-rcnn倡导的RPN是conv1x1,其中一个conv3x3并排放置,在预测anchor中是否包含目标的同时,预测目标边框距离固定anchor有多远。
因此,anchors的作用一方面代替了耗时的显式密集滑动窗方法,另一方面公式代替了显式SSP,解决了多尺度问题,每个特征图上的点对应于几个anchors,这些anhors
在yolo模型中,anchors的作用也很相似。
当然,anchors的优缺点如下。
1 .好处:
(1)使用anchor机制生成密集的anchor box,使网络能够直接在此基础上进行目标分类和边界框坐标回归;
)2)密集的anchor box可以有效提高网络目标的召回能力,对小目标的检测有非常明显的提高。
2 .缺点:
) anchor机制要求设置超参。 “比例”和“纵横比”aspect ratio很难设计。 这需要很强的先验知识。
)2)冗馀框非常多)一张图片内的目标只是有限的,每个anchor设置大量的anchor box会产生大量的easy-sample,即完全不包含目标的背景框。 这引起正负样本严重失衡的问题,也是one-stage算法难以超越two-stage算法的原因之一。
)3)网络实质上看不到anchor box。 基于anchor box进行边界回归,就像范围小时的强制记忆。
三.如何实现anchor boxes的
答:yolo上anchor box的第一个版本参考了RPN网络进行了一些优化。 RPN网络选择三组固定大小的长宽比分别为2:1、2:1和2:1,每个特征图上的点对应于这九个anchor boxes,yolo在这一点上进行了改进,yolo
四.坐标预测方式
1、根据预测目标和anchor的偏差进行预测,公式如下。
这里为什么选择sigmoid函数作为中心点坐标预测方式? 这种目的是将目标偏差限制在一个蜂窝小区的范围内,sigmoid可能的值范围是[ 0,1 ]。
五.损失函数