YOLO v1

YOLO系列(一)——YOLO v1



前言

该系列为博主自主学习YOLO系列的自我总结。主要对该系列网络的设计原因,算法原理,模型结构,损失函数及模型优缺点进行学习和分析。


一、设计原因

YOLO的诞生是为了解决之前的目标检测网络耗时长的问题,以达到能实时(real-time)进行目标检测。


二、算法原理

在这里插入图片描述
1、将输入图像分割为S×S个网格
2、在每一个网格中预测B个边界框,每个边界框包含5个值——x、y、w、h、confidence
3、在每一个网格中也会预测C个类别概率Pr(Class|Object)
4、网络最后的输出为S×S×(B×5+C)


三、模型结构


YOLO的模型结构设计灵感来自于用于图像分类的GoogleNet。YOLOv1网络包含24个3×3卷积层,之后连接2个全连接层。与GoogleNet不同的是,YOLOv1采用1×1的归约层连接3×3的卷积层。


四、损失函数

在这里插入图片描述
YOLOv1将目标检测看成回归问题(即根据先验数据——输入,对下一数据——输出的一种估计),所以采用的是均方差损失函数。YOLOv1的损失函数可分为三个部分:定位误差损失、置信度误差损失、分类误差损失,每个部分采用不同的权值。

定位误差损失

在这里插入图片描述
对于定位误差,会采用较大的权值,例如:λcoord=5。根据上图可以看到定位误差采用的是均方误差的计算方法,而对于w,h计算的方法和下x,y不一样,这是因为宽高较小的边框的变化敏感度要大于宽高较大的边框。为了避免这种情况,对宽高
预测改为对其均方根的预测。
i表示第i个网格,j表示第j个边界框,1i,j表示第i个网格存在目标且有第j个边界框预测该目标。

置信度误差损失

在这里插入图片描述
对于置信度的预测,要区分包含目标边界框的置信度和不包含目标边界框的置信度。对于包含目标的边界框,其权值要大一些,取1。而对于不包含目标的边界框,其权值要小一些,λnoobj=0.5

分类误差损失

在这里插入图片描述
1i表示第i个网格存在目标。


五、优缺点

优点

YOLOv1采用一个CNN网络来实现目标检测,模型结构较为简单,且速度很快,可以实现实时检测;
由于YOLOv1是对整张图片做卷积,所以在检测目标时会有更大的视野,不容易对背景进行误判;
YOLOv1泛化能力强,做部署时鲁棒性高。

缺点

对于小物体较多的图片来说,表现效果较差。因为单元格内的边界框数量有限,设置过多速度就不够快,精度也会下降;
定位不准确,同时对尺寸不规则的物体定位也不准。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值