YOLO系列,持续更新。。。。

YOLO系列

论文

YOLOV1

YOLOV1 + YOLOV2 只会简单说明原理(太久远。。。。)

论文思想

  1. 将一幅图像分成 S*S 个网格(grid cell) 如果某个object的中心落在这个网格中,则这个网格就负责预测这个object

  2. 每个网格要预测Bbounding box 每个bounding box 除了要预测位置**(x,y,w,h)外 还要附带预测一个condfidence**值。

    每个网格还要预测C个类别的分数。

    Tips: x,y 是在网格中的 是相对坐标 ; w,h 坐标轴是整幅图像

    confidence有两种情况,分别是 “0”和“1”,当我们的网格中确实存在目标时,Pr(Object)就是等于 “1” 的,所以我们预测的confidence就直接等于IOU,如果网格中没有目标落在里面,那么Pr(Object)就是等于“0”的,所以confidence就是等于0的。

    其实我们完全可以把confidence理解为IOU,但是这里的IOU是我们预测的bounding box与 真实的bounding box的交并比

PASCAL VOCclasses= 20 use S = 7 B= 2 C= 20 则预测为7 * 7 * 30

image-20220720211915029

网格结构

网络结构也很简单

image-20220721170251344

损失函数LOSS

主要是误差平方和的形式

image-20220720213727872

其中bounding box 中的损失计算中 w,h 是采用先平方根再相减的形式相当于是y = 根号x,这是为了平衡大小目标的检测效果。如果没有根号那就是y = x 即意义是对于同样的x偏移误差造成的y误差也是一样的。但是目标的大小是有差别的,试想,偏移同样的距离小目标的检测效果可能很差但对于大目标而言可能很好。

y = 根号x 随着 x的增大,同样的x误差,对应的y误差是在减小的

image-20220720214308808
  1. 预测框的中心点(x,y) 。其中 l为控制函数,在标签中包含物体的那些格点处,该值为 1 ;若格点不含有物体,该值为 0。也就是只对那些有真实物体所属的格点进行损失计算,若该格点不包含物体,那么预测数值不对损失函数造成影响**(x,y)**数值与标签用简单的平方和误差。
  2. 预测框的宽高(w,h)l的含义一样,也是使得只有真实物体所属的格点才会造成损失。这里对**(w,h)在损失函数中的处理分别取了根号**,原因在于,如果不取根号,损失函数往往更倾向于调整尺寸比较大的预测框。例如,20个像素点的偏差,对于800 * 600的预测框几乎没有影响,此时的IOU数值还是很大,但是对于30*40的预测框影响就很大。取根号是为了尽可能的消除大尺寸框与小尺寸框之间的差异。
  3. 第三行与第四行,都是预测框的置信度C。当该格点不含有物体时,该置信度的标签为0;若含有物体时,该置信度的标签为预测框与真实物体框的IOU数值(IOU计算公式为:两个框交集的面积除以并集的面积)。
  4. 第五行为物体类别概率P,对应的类别位置,该标签数值为1,其余位置为0,与分类网络相同。
  5. 对于λ Yolo面临的物体检测问题,是一个典型的类别数目不均衡的问题。其中49个格点,含有物体的格点往往只有3、4个,其余全是不含有物体的格点。此时如果不采取点措施,那么物体检测的mAP不会太高,因为模型更倾向于不含有物体的格点。λ 的作用,就是让含有物体的格点,在损失函数中的权重更大,让模型更加“重视”含有物体的格点所造成的损失。在论文中,λcoord, λnoobj 的取值分别为5与0.5
  • 一些技巧
  1. 回归offset代替直接回归坐标

We parametrize the bounding box x and y coordinates to be offsets of a particular grid cell location so they are also bounded between 0 and 1

(x,y) 不直接回归中心点坐标数值,而是回归相对于格点左上角坐标的位移值。例如,第一个格点中物体坐标为 (2.3,3.6),另一个格点中的物体坐标为**(5.4,6.3),这四个数值让神经网络暴力回归,有一定难度。所以这里的offset是指,既然格点已知,那么物体中心点的坐标一定在格点正方形里,相对于格点左上角的位移值一定在区间(0,1)**与 **(0.4,0.3)会更加容易,在使用时,加上格点左上角坐标(2,3),(5,6)**即可。

  1. 同一格点的不同预测框有不同作用

At training time we only want one bounding box predictor to be responsible for each object. We assign one predictor to be “responsible” for predicting an object based on which prediction has the highest current IOU with the ground truth. This leads to specialization between the bounding box predictors. Each predictor gets better at predicting certain sizes, aspect ratios, or classes of object, improving overall recall.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值