YOLOv1,YOLOv2 & YOLO9000 论文解读

YOLOv1

paper title:You only look once: Unified, real-time object detection
paper link:https://arxiv.org/pdf/1506.02640.pdf
oral presentationhttps://www.youtube.com/watch?v=NM6lrxy0bxs
darknet YOLO: https://pjreddie.com/darknet/yolo/

YOLOv1 TensorFlow代码解析

YOLOv1(以下YOLO均指YOLOv1)实现了端到端的目标检测任务,无需进行候选框提取,速度很快。不同于R-CNN,Fast R-CNN将物体检测任务转化为分类问题,YOLO将物体检测看作一个回归问题,通过将图片划分为一些格子,使用网络预测在这些格子上的目标的Bounding box和类别

基本思路
YOLO将图片为成S*S个格子,在每一个格子上预测目标的Bounding box和类别,每个格子上输出一个长度为B*5+K的输出结果,其中B是每个格子上预测的Bbox的数目,包括五个维度x,y,w,h,C,四个坐标值和一个分数,K是分类目标的数目,最后的网络输出是S*S*(B*5+K)的tensor。
在预测的Bbox的五个维度中x,y是中心点坐标,这个中心点坐标指相对于格子左上角的相对坐标,并用格子的宽度进行归一化,也就是一个归一化的偏移量,;w,h是Bbox的宽和高,是指用图像的宽和高进行归一化后的值;知道了Bbox坐标的这两个信息之后,就可以在预测时根据输出结果恢复Bbox在图像中的像素坐标位置。
C 是confidence score,这个分数体现了模型有多确定这个Bbox包含目标并且就是它要预测的那个。 当格子中包含物体的时候,希望这个分数等于预测的Bbox和truth Bbox 的IoU;当格子没有物体的时候,希望这个分数为0。
K是分类的数目。K个值实际上对应目标物体属于每个类别的分数,YOLO文章中不管B为多少,即预测几个Bbox, 目标类别的分数只有一套。

网络结构:
YOLO的网络结构(参考了inceptionv1的网络结构,但是沒有使用inception模块,只是使用{3x3+1x1}的这样的结构):
在这里插入图片描述
最后网络输出的是一个7x7x30(dataset:Pascal VOC)的tensor, 7x7是一开始划分的格子的数目,30=(2*5+20),2个box,每个box有五个值x,y,w,h,C,以及20个class。
在这里插入图片描述
网络训练: 在ImageNet 1000类的分类任务上对模型的前20个卷积层进行了预训练,预训练的时候卷积层后面接的是平均池化层和全连接层。网路使用Leaky ReLu(0.1x)作为激活函数;使用darknet框架进行训练;learning-rate的设置:第一个epoch从 1 0 − 3 10^{-3} 103缓慢升到 1 0 − 2 10^{-2} 102,然后使用 1 0 − 2 10^{-2} 102训练75个epoch,然后用 1 0 − 3 10^{-3} 103训练30个epoch, 1 0 − 4 10^{-4} 104训练30个epoch。Batch size 设置为64;使用momentum优化函数,参数设置为0.9;weight decay权重为0.005;

损失函数: 坐标损失[x,y,w,h] + 目标信心(confidence)损失[C] + 类别损失[p]

L o s s ( x , y , w , h , C , p ) = λ c o o r d ∑ i = 0 s 2 ∑ j = 0 B 1 i j o b j [ ( x i j − x ^ i j ) 2 − ( y i j − y ^ i j ) 2 ] + λ c o o r d ∑ i = 0 s 2 ∑ j = 0 B 1 i j o b j [ ( w i j − w ^ i j ) 2 − ( h i j − h ^ i j ) 2 ] + ∑ i = 0 s 2 ∑ j = 0 B 1 i j o b j ( C i j − C ^ i j ) 2 + λ n o o b j ∑ i = 0 s 2 ∑ j = 0 B 1 i j n o o b j ( C i j − C ^ i j ) 2 + ∑ i = 0 s 2 1 i o b j ∑ c ∈ c l a s s ( p i ( c ) − p ^ i ( c )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值