YOLO1:
最后检测头7*7grid,每个点预测两个框(一个大框一个小框),分类用one hot,如下图所示:
YOLO2:
增加了一个中间卷积层,先采用64个 1*1 卷积核进行卷积,然后再进行passthrough处理,这样26*26*512的特征图得到13*13*256的特征图。
passthrough层的来源(细粒度特征):上图中第25层route 16,意思是来自16层的output,即26*26*512。
passthrough层的处理:
利用1*1*64卷积降低第25层26*26*512(实际来自16层)的通道数,从512降低到64,输出26*26*64(见第26层)。
第27层进行拆分(实际的passthrough层)操作,1拆4分成13*13*256。
将passthrough层和最后一层卷积层结合: 第28层叠加27层和24层的输出(13x13x1024+13x13x256),得到13*13*1280。
- 7*7 grid 太小了,增大为13*13
- 每个grid对应两个人为设计的anchor增加为5个统计得到的anchor(在voc2007和coco上都进行了统计,coco相比voc小框更多)
- 每个anchor对应一个类别,13*13*(5*5+5*20)=422500 outputs
- 损失函数gt为1变 与iou计算的值
- passthrough
YOLO3:
分为3个检测头分别检测大目标中目标和小目标,每个检测头预测3个人为设计的anchor
YOLO4:
- Using mutlti-anchors for single ground truth
anchor与ground truth IOU大于阈值的框在损失函数计算时,使用的c用IOU值
- Eliminate_grid_sensitivity
因为yolo3中使用了基于base anchor的策略限制了预测框中心点的位置必须在grid方框内部,这样会忽略中心点落在grid边界的情况,在前面增加系数,比如说1.1,填补这部分空缺的可能性。
- CIOU loss
YOLO5:
自适应anchor:
基于人工定义的anchor,网络对anchor再次计算。先定义前景背景,然后进行精细化分类和回归,相当于two stage检测模型。