YOLO详解

Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: Unified, real-time object detection. In: CVPR. (2016)

思想

YOLO将物体检测作为回归问题求解,用卷积神经网络直接从输入图像预测BBox和类别的概率,没有单独的求取region proposal的过程。下图是RCNN,Fast RCNN, Faster RCNN和YOLO区别。

网络详情

网络结构


网络主要采用GoogLeNet,使用1x1卷积层+3x3卷积层简单代替了GoogleNet中的Inception module。卷积层主要用来提取特征,全连接层主要用来预测类别概率和坐标。最后的输出是7*7*30。其中激活函数为如下函数:

f(x)={x0.1xx>0x<0 f ( x ) = { x x > 0 0.1 x x < 0

算法流程

这里写图片描述
YOLO将输入图像分成SxS个格子,每个格子负责检测‘落入’该格子的物体。若某个物体的中心位置的坐标落入到某个格子,那么这个格子就负责检测出这个物体。如下图所示,图中物体狗的中心点(红色原点)落入第5行、第2列的格子内,所以这个格子负责预测图像中的物体狗。
这里写图片描述
每个格子中产生B个BBox,以及C个物体属于某种类别的概率信息。每个BBox包含5个数据,分别是x,y,w,h和confidence。其中x,y是BBox中心位置相对于当前格子位置的偏移值,并且被归一化到[0,1]。w,h是BBox相对于原图的宽度和高度,也是在[0,1]内。confidence表示该BBox是否包含物体以及物体位置的准确性。计算公式如下:

confidence=P(object)× IOU c o n f i d e n c e = P ( o b j e c t ) ×   I O U

若BBox包含物体,则 P(object)=1 P ( o b j e c t ) = 1 ;否则 P(object)=0 P ( o b j e c t ) = 0 。IOU为预测bounding box与物体真实区域的交集面积(以像素为单位,用真实区域的像素面积归一化到[0,1]区间)。每个BBox的confidence乘以该BBox所在的格子的类别预测值就是该BBox的类别预测值。

损失函数

YOLO使用均方和误差作为loss函数来优化模型参数,即网络输出的S*S*(B*5 + C)维向量与真实图像的对应S*S*(B*5 + C)维向量的均方和误差。
这里写图片描述
其中, x,y,w,C,p x , y , w , C , p 为网络预测值, x̂ ,ŷ ,ŵ ,Ĉ ,p̂  x ^ , y ^ , w ^ , C ^ , p ^ 为标注值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值