yolov1论文地址:https://arxiv.org/abs/1506.02640
以往的目标检测要么有实时性,但是accuracy很低,如30Hz DPM、100Hz DPM;要么虽然有着较高的mAP值,但是不满足实时性要求,如RCNN系列;难以在高速场景下进行应用。yolo作者致力于推出既具有实时性又具有准确性的目标检测算法,最终发表了yolo目标检测算法,作为一篇one stage的目标检测论文,yolo的提出具有十分重大的意义。
核心思想:将目标检测作为一个空间分离的bounding box和相关的类概率的回归问题。
YOLO之前的物体检测系统使用分类器来完成物体检测任务。为了检测一个物体,这些物体检测系统要在一张测试图的不同位置和不同尺寸的bounding box上使用该物体的分类器去评估是否有该物体。如DPM系统,要使用一个滑窗(sliding window)在整张图像上均匀滑动,用分类器评估是否有物体。
Faster R-CNN通过 RPN 产生大量的可能包含待检测物体的 bounding box,再用分类器去判断每个 bounding box里是否包含有物体,以及物体所属类别的概率。
相较于其他的state-of-the-art 物体检测系统,YOLO在物体定位时更容易出错,但是在背景上预测false positives的情况会少一些。而且,YOLO比DPM、R-CNN等物体检测系统能够学到更加抽象的物体的特征。
如上图所示,使用YOLO来检测物体,其流程是非常简单明了的:
i、首先将输入图像resize到448 * 448作为卷积神经网络的输入;
ii、然后运行神经网络,得到一些bounding box坐标、bounding box中包含物体的置信度和class probabilities;
iii、对SxSx(B*5+C) 个向量进行非极大值抑制,过滤掉一些重叠的矩形框,筛选得到最终的box。
从上图我们可以看出,yolo目标检测算法能够达到45的FPS以及63.4的mAP,满足实时性和较高的精确性。
yolo网络架构将物体检测任务当做一个regression问题来处理,使用一个神经网络,直接从一整张图像来预测出bounding box 的坐标、box中包含物体的置信度和物体的probabilities。因为YOLO的物体检测流程是在一个神经网络里完成的,所以可以end to end来优化物体检测性能。
YOLO将输入图像划分为S*S的栅格,每个grid cell负责检测中心落在该栅格中的物体。每一个栅格预测B个bounding boxes,以及这些bounding boxes的confidence scores。这个 confidence scores反映了模型对于这个栅格的预测:该栅格是否含有物体,以及这个box的坐标预测的准确性。
YOLO的每个grid cell预测多(VOC中是2个)个bounding box。为了计算正阳性样本的损失,我们只要求它们之中的一个bbox对物体负责。因此,我们选取与真实标注(ground truth)有最高IOU的一个。这种策略导致bbox的的预测的特殊性,即每个预测在物体尺寸和比率上更准。
YOLO使用预测bbox和真实bbox的二次方差和来作为损失函数。损失函数由以下项组成
我们更重视8维的坐标预测,给这些损失前面赋予更大的loss weight, 记为
,在pascal VOC训练中取5。对没有object的bbox的confidence loss,赋予小的loss weight,记为
,在pascal VOC训练中取0.5。有object的bbox的confidence loss 和类别的loss 的loss weight正常取1。
对不同大小的B-box预测中,相比于大B-box预测偏一点,小box预测偏一点更不能忍受。为了缓和这个问题,作者用了一个比较取巧的办法,就是将box的width和height取平方根代替原本的height和width。如下图:all bbox的横轴值较小,发生偏移时,反应到y轴上的loss比big box要大。
在YOLO看来大的bbox和小的bbox的2个像素的误差是相等的,为刻意强调这一点,YOLO没有直接预测bbox的宽和高,而是宽的二次方根和高的二次方根。除此之外,我们对此loss乘以一个权重λcoord以增加bbox的准确率。
由于大部分box不包含任何物体,这会导致分类(正负样本)的不均衡,因此,我们降低了背景检测损失的权重,引入权重λnoobj默认值为0.5。
注意事项:
如果检测到物体,每个grid cell的分类损失是每个分类的条件概率的平方误差和。
所以这个误差项我们可以这么理解:
这里贴上原文的检测结果,能够更好的评价yolo的实际性能。
https://tangh.github.io/articles/yolo-from-v1-to-v4/
https://shartoo.github.io/2019/03/12/yolo-v123/
本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕,E-mail:xinmeigg88@163.com
本文链接:http://cpq.tttmy.cn/news/11004.html