• 目标检测(6)—— YOLO系列V2


    一、YOLOV2改进的概述

    做的改进如下图:

    在这里插入图片描述

    • Batch Normalization 批量归一化层

    不加BN层,网络可能学偏,加上归一化进行限制。
    从今天来看,conv后加BN是标配。

    在这里插入图片描述

    • 更大的分辨率

    V1训练的时候使用224×224,测试用448×448。
    V2训练的时候可以进行10个epoch448×448的微调。训练测试用一样大小的数据集。
    在这里插入图片描述

    • 网络架构的改变

    使用DarkNet19,借鉴了Alex和VGG的思想。所有的层都采用的卷积层,没有采用全连接层,全连接层容易过拟合,训练的也慢。
    经过5次降采样,h/32,w/32,结果为13。V1版本的7×7太小。
    实际输入416×416,希望416/32=奇数,中心点好选。
    卷积核的卷积核为3×3,1×1,借鉴了VGG,19个卷积层。1×1是为了省参数。
    DarkNet深度自己选择

    在这里插入图片描述

    • 聚类提取先验框

    比如数据集里100w个标注好的框,为了使得先验框更加符合实际要求,使用K-means,K=5,聚成5类(都是实际的值),5类中都有一个中心点(h,w),将这些(h,w)做成先验框。
    正常的距离:欧氏距离。
    在YOLO中的距离:用1-IOU
    K越大,越精确,K=5的时候,平均IOU还可以,再往上走的时候,走势不明显。

    在这里插入图片描述

    • Anchor Box先验框

    MAP值没有提升:框多了,不一定每个框都能做对。
    recall提升了:框多了,之前不能框出来了可以框出来了。

    在这里插入图片描述

    • Directed Location Prediction

    直接预测相对位置,相对网格的偏移量。

    在这里插入图片描述
    预测的偏移量:tx,ty,tw,th,实际的预测值bx,by,bw,bh看下面的计算结果
    黑色:先验框
    蓝色:预测的框

    蓝色的点是预测的框的中心点,学的是蓝色点相对于当前网格左上角点的相对位置(图中所标的红色的点),是0-1之间的。所以无论怎么偏移,都不会飘出这个网格了。
    这里的cx,cy都是1,换一个网格就不是了。
    δ是sigmoid

    • 计算方式

    tw和th预测的是对数,所以转换回来。
    pw和ph是等比例缩小后在特征图中的大小。(V2里面就是输入尺寸/32,因为做了5次降采样)。pw和ph是聚类得到的先验框,是已知条件。
    计算出来后要进行还原,×32

    在这里插入图片描述
    在这里插入图片描述

    • 感受野

    在这里插入图片描述
    参数少。
    在这里插入图片描述
    channel数=卷积核数=得到的特征图数
    在这里插入图片描述
    最后的感受野太大了,适合捕捉比较大的目标,所以会导致小物体的丢失。
    前面层的感受野较小,可以把前面的特征图进行融合。
    把前面胖点的特征图拆成4个瘦的特征图,再拼在一起。
    胖的:26×26×512拆成4×13×13×512
    瘦的:13×13×1024
    最后拼成4×512+1024

    在这里插入图片描述

    • Multi-Scale多尺度

    网络都是卷积,不用固定图片尺寸大小。
    在这里插入图片描述

  • 相关阅读:
    原始流,缓冲流性能比较
    Charles安装配置
    Spark系列—spark简介
    RabbitMQ开启消息发送确认和消费手动确认
    python连接sqlserver
    技术分享| 快对讲视频调度功能说明
    排序算法的分析及实现
    HTML+CSS大作业:使用html设计一个简单好看的公司官网首页 浮动布局
    一文读懂自动泊车的自动化等级
    项目管理之实施关键步骤
  • 原文地址:https://blog.csdn.net/weixin_45703331/article/details/127717837