yolo论文

综述:

将物体检测任务(划分边界框和类别的可能性)作为回归问题来解决。

速度非常快,但是可能产生定位的误差,相比于rcnn,减少了假阳性。

yolo论文

从上图可以看出结构非常简单

优势:

1、速度非常快

2、处理全局的信息。在 训练和测试的使用看到了整个图像,对类别和外表都进行编码。相比于faster rcnn减少了近一半的假阳性。

3、yolo学习归纳重新表达物体的特征。所以能够更加适应新的领域。在后面的实验中作者对行人进行检测,取得了相对较好的效果。

不足:

定位不够精确,特别是对与小物体。

整体结构:

yolo论文

从全局特征出发,预测定位框。同时针对所有的类预测所有的边界框。

如上图,将输入的图片分为SxS的网格,如果物体的中心落入某个网格,该网格就负责预测预测该物体。

每个网格预测B个边界框和置信度confidence(反映了边界框包含物体的confidence和边界框定位的准确度)

confidence为:

yolo论文

Pr(Object)反映了边界框包含物体的confidence,IOU则体现了准确度。如果cell中不存在物体,则confidence = 0;否则confidence = IOU,边界框和真实目标的重叠率。

如上图:

每个边界框预测:x,y,w,h和congfidence.其中x,y是边界框的中心点,w和h和整个图像相关。

每个cell预测:C个conditional class probability :P(Classi|Object)

网络图:

yolo论文

前24层卷积层用来提取图像的特征,后两层全连接层用来输出一定数量的张量。SxSx(Bx5+C),对于pascal voc数据集我们使用S =7,B = 2,C = 20,最终输出7x7x30的张量。

对于fast yolo 只有九层卷积层。

训练:

1、通过Imagenet训练集预训练前20层卷积层

2、加上四个月卷积层和两个全连接层,随机初始化。进行训练。

最后的层输出目标的类别和预测的边界框的坐标。回归输出的小技巧:通过图像的宽和高将预测框w和h标准化。x,y可以作为某个特定网格的偏置,使得其在0-1之间。

最后一层使用线性**函数,其它层使用如下**函数:

yolo论文

误差函数使用误差平方和函数,因为其便于优化。存在问题:

1、将定位误差和分类误差是为等同。

并不是每一个网格都包含目标,这将这些cell的confidence趋向于0,压制了包含目标的网格的梯度,导致了模型不稳定。引入两个系数,一个是包含目标,一个是未包含目标。

yolo论文

2、将大定位框的损失和小定位框的损失是为相同,应该大定位框误差的损失应该大于小定位框误差的损失。所以对边界框的高度和宽度取根号。

训练的时候每个目标只需一个预测框,所以取当前IOU值最高的边界框。

所以损失函数为:

yolo论文

学习率缓慢增加后再减少。

采用数据集增强扩充。

局限性:

1、由于每个cell只能预测两个box,只能有一类,这个空间的约束限制了周围目标的数目。

2、对于小物体检测效果不佳

3、对于非常规大小比例的物体预测效果不佳。

4、将大定位框的损失和小定位框的损失是为相同

整个yolo网络最主要的误差还是来自于定位误差。

实验:

1、和其他的实时系统相比:

yolo速度最快,识别率最高

yolo论文

和非实时系统相比 :

yolo论文

识别效果还是可以的,虽然没赶得上faster rcnn vgg-16

2、VOC 2007上错误分析:

yolo论文

Correct:分类正确,并且IOU>0.5

Loc:分类正确,IOU<0.5

Similar:类别相似,IOU>0.1

other:分类错误,IOU>0.1

background:假阳性 IOU<0.1

从图中可以看出yolo假阳性较少,但是定位误差比较大。

3、将fast rcnn和yolo结合

yolo论文

通过yolo网络减少fast rcnn的假阳性。对于每个fast rcnn的预测,我们检查yolo是否也生成了相似的box,如果是,取两个的交叠。

4、VOC2012结果:

yolo论文

5、艺术作品中人的检测:

在现实中很难预测测试图片的场景。selective search只能看到小的区域,需要更好的proposal。

yolo不仅仅对目标的大小和形状建模,而且与背景相关联。艺术作品与自然图像在像素点上不同,但是在目标的大小和形状上相似,所以yolo的预测效果更好。

yolo论文

yolo论文