【YOLO_V2】

img

一 、前言

YOLO(You Only Look Once)是一种快速、高效、准确的目标检测算法,由Joseph Redmon等人于2016年提出。相比于其他目标检测算法,YOLO使用单个神经网络实现目标检测,使其更快、更高效。

YOLO算法的基本原理是将输入图像分成一个个网格,然后每个网格都会预测该网格内存在的物体的边框位置和类别概率。与传统的目标检测算法相比,YOLO在处理整个图像时只需要执行一次前向传递操作,因此速度非常快。此外,YOLO的网络结构比较简单,具有很强的通用性和可扩展性,可以应用于多种不同的目标检测任务。

在实际应用中,YOLO已经被广泛应用于各种计算机视觉应用,例如自动驾驶、监控和机器人。它以其高准确性和实时处理能力而闻名,是许多目标检测任务的首选算法之一。

二、YOlO_V2

1.概述

更快更强

img

2.改变

YOLO-V2-Batch Normalization

  • V2版本舍弃Dropout,卷积后全部加入Batch Normalization
  • 网络的每一层的输入都做了归一化,收敛相对更容易
  • 经过Batch Normalization处理后的网络会提升2%的mAP
  • 从现在的角度来看,Batch Normalization已经成网络必备处理

YOLO-V2-更大的分辨率

  • V1训练时用的是224224,测试时使用448448
  • 可能导致模型水土不服,V2训练时额外又进行了10次448*448 的微调
  • 使用高分辨率分类器后,YOLOv2的mAP提升了约4%

3.网络结构

DarkNet,实际输入为416416 没有FC层,5次降采样,变为(1313),1*1卷积节省了很多参数

img

4.聚类提取先验框

faster-rcnn系列选择的先验比例都是常规的,但是不一定完全适合数据集
K-means聚类中的距离:

聚类算法最重要的是选择如何计算两个边框之间的“距离”,对于常用的欧式距离,大边框会产生更大的误差。而且设置先验框的主要目的是为了使得预测框与ground truth的IOU更好,所以聚类分析时选用box与聚类中心box之间的IOU值作为距离指标:

img

img

5.Anchor Box

YOLO V1没有Anchor的概念,而且候选框一共98个(7x7x2),所以可想而知,模型的Recall是个问题,所以YOLO V2为了增加Recall(如果连正确的框都没有检查出来,就更不用想着后续的优化了,所以需要增加Recall),使用了Anchor的概念,像Faster RCNN,一个Anchor会产生9个候选框,这样在YOLO V1的情况下,原本的98个框就变成了441(7x7x9)。

同时为了进一步增加候选框的数目,YOLO V2中最后用来预测的特征图尺寸是原图的1/32(YOLO V1是1/64),由于448 / 32 = 14,这样一来图像中心点是4个点(图7方便理解),这样就会导致在图像中心的物体的中心点落在4个Grid Cell中,不方便分配,所以作者把输入图像的尺寸改成了416(416/32=13),中心点只有一个。增加了Anchor的概念后,mAP由原来的69.5%降低到了69.2%,但是Recall从81%增加到88%,这也为后续的优化提供了可能性

img

6.偏移量 Directed Location Prediction

  • bbox:中心为(xp,yp);宽和高为(wp,hp),则:

img

  • tx=1,则将bbox在x轴向右移动wp;tx=−1则将其向左移动wp
  • 这样会导致收敛问题,模型不稳定,尤其是刚开始进行训练的时候

V2中并没有直接使用偏移量,而是选择相对grid cell的偏移量

img

7.细粒度特征Fine-Grained Features

  • 最后一层时感受野太大了,小目标可能丢失了,需融合之前的特征

img

8.Multi-Scale

  • 都是卷积操作图片不受限制!一定iterations之后改变输入图片大小
    最小的图像尺寸为320 x 320
    最大的图像尺寸为608 x 608

img

9.小结

YOLO-V2是一个先进的实时检测系统,提升速度与精度上提出了很多新奇有效的方法,可以运行在不同尺寸大小图片的上,也使得可以很好地权衡速度与精度。同时YOLO9000使用WordTree来结合来自不同来源的数据,并使用联合优化技术在ImageNet和COCO上同时进行训练。YOLO-v2的很多技巧都可以很好地运用在其他场合任务中。

猜你喜欢

转载自blog.csdn.net/weixin_62403633/article/details/130567112