论文地址:yolo1
目标检测算法按步骤可以分为:two-stage和one-stage,后者就是把目标定位和目标分类同时干了,把物体检测变成了物体分类。
所需要的基础知识:
Boundng Box:用于预测物体的位置,是个多维向量,(bx,by,bh,bw,C1,C2,...),bx和by是指物体中心点的位置,C是指物体的类别。
Anchor Box:由于一个格子中可以检测出来多个对象,因此自定义多个形状的盒子,去确定物体。比如:车一般是横着,人竖着,所以用两个框。同样有(bx,by,bh,bw,C1,C2,...)。
交并比IOU:检测box与真实box的相交面积比上两者的并集面积。
极大值抑制:同一个框里可能有多个检测框,并都声称自己检测到物体中心在自己框里,因此通过极大值抑制的方法来去除重复的框。首先选一个score最大的框,然后再计算它和其他框的交并比,如果IOU大于某个值,则去掉。
Ground Truth:真实数据。
文章大致内容:
网络结构:借鉴了 GoogLeNet ,24个卷积层后面跟了2个全链接层。(用1×1 reduction layers 紧跟 3×3 convolutional layers 取代Goolenet的 inception modules )。
原理:将每张图片分成S*S的网格图片,每个网格中去预测盒子,每个盒子5维度。其中用到了置信度,简单理解就是这个盒子里面是不是有目标,量化了而已,其公式:coincidence=Pr(object)*IOU,Pr的取值为0或者1。最终的预测输出维度是S*S*(5*B+C),S是网格列数,B是盒子数,C是类别数。Loss函数是使用的方差。