1. 背景

  YOLOv2相对于v1版本,继续保持了很高的处理速度,但是在预测的准确率上有个很高的提高,但是其基本思想还是和v1版本是一致的,通过划分网格,以及使用简单的网络结构来处理分类问题。

  由于YOLO系列,都是从V1开始逐步进行一些缺点的改进,故后面将只叙述改进部分的细节。

 

2.具体改进措施

  2.1 输入及输出的格式

      输入由V1的448 * 448 * 3 改为416 * 416 * 3,输出从 7 * 7  改到 13 * 13,即从打7 * 7的格子到现在打13 * 13的格子,对小物体及稠密的物体稍微更有好一点。

    

  2.2 融合层(浅层特征和深层特征融合)

      

yolov 深度学习 模型训练 yolov2模型_特征提取

 

      由于浅层特征提取的是边缘信息,比如图像的轮廓等等,而深层特征提取的则是语义信息,而在yolo v2网络结构中有一层是需要融合这两个特征的,雇佣到该层,具体操作则是将大小为截面大小为26x26的张量,分为四个截面为13x13的张量保存下来,然后将预先的26x26的张量进行最后的pooling和卷积,然后将该结果和保存的四个截面为13x13的张量按顺序连接起来,形成一个13x13x3072大小的张量。

  2.3 Batch Normalization(归一化)

      起到网络正则化的作用,避免过拟合。

 

  2.4 Multi-Scale Training(多尺度训练)

     由于完全摒弃FC层,故对输入图片的格式没有要求,即能接受任意尺寸的图片,来提高模型的实用性。

     将320, 352, …, 608. 这些尺寸的图片每个训练10个epochs

  2.5 Anchor

      2.5.1 anchor大小和数量

        这里的anchor和faster r-cnn里的anchor有一定的区别,faster里是通过手算每个网格得出9个anchor,而在v2中则是用K-means聚类的方法将每一个网格的预测窗口个数降到了5个。

     **所谓聚类,就是在训练集上进行预测框的距离(预测框的参数x1,y1,x2,y2),那么如何定义聚类的距离了,因为距离小的将被合并,距离大的将被分离,所以用1-IoU来判断两个预选框的距离,如果IoU大,表示两个预选框重合面积大,可以进行合并,如果IoU小,表示两个预选框重合面积大,需要进行分离。

      2.5.2 : Anchors, Truth BBoxes & Predicted BBoxes

        

yolov 深度学习 模型训练 yolov2模型_聚类_02