转载:https://blog.csdn.net/zfq740695564/article/details/79754578
yolo系列整理

版本 作者主页 程序 论文
yoloV1 点击打开 点击打开 点击打开
yoloV2 点击打开 点击打开 点击打开
yoloV3 点击打开 点击打开 点击打开

改进

V2 VS V1:

增加BN层:

  • 解决问题:每层的输入分布一直在改变,训练难度增加;
  • 采取措施:在每层卷积层后,添加batch normalization;
  • 改进效果:
    1.mAP获得了2%的提升;
    2.规范化模型,可以在舍弃dropout优化后依然不会过拟合;
    ##High Resolution Classifier
  • 解决问题:由于现有的特征提取网络局限,导致图片被resize到不足256 * 256,导致分辨率不够高,给检测带来困难;
  • 采取措施:
    1.提高分辨力到448 * 448;
    2.改变原来特征网络的输入分辨率,在ImageNet数据集上对分类网络进行fine tune训练10轮(10 epochs),使得网络适应高分辨率的输入;然后,对检测网络进行fine tune。
  • 改进效果:mAP获得了4%的提升;
    ##Convolutional With Anchor Boxes
  • 解决问题:全连接层的数据完成边框的预测,导致丢失较多的空间信息,定位不准;
  • 采取措施:
    1.借鉴了Faster R-CNN中的anchor思想
    2.在卷积特征图上进行滑窗操作,每一个中心可以预测9种不同大小的建议框。
    3.去掉了后面的一个池化层以确保输出的卷积特征图有更高的分辨率;
    4.缩减网络,输入分辨力为416416,使得输出的feature map宽高为基数,产生一个center cell(大物体通常占据了图像的中间位置),用一个中心cell预测大物体,否则就要用中间的4个cell来进行预测,有利于提高效率。
    5.卷积层降采样(factor为32),输入大小:416
    416;输出大小:13*13
  • 改进效果:召回率上升,准确率下降。
    1.改进后:预测13 * 13 * 9 = 1521个boxes,recall为88%,mAP为69.2%
    2.改进前:预测7 * 7 * 2 = 98个boxes,recall为81%,mAP为69.5%
    3.准确率只有小幅度的下降,而召回率则提升了7%。
    ##Dimension Clusters
  • 解决问题:
    1.anchor boxes的宽高维度往往是精选的先验框,如果一开始就选择了更好的、更有代表性的先验boxes维度,那么网络就更容易学到准确的预测位置;
    2.传统的K-means聚类方法使用的是欧氏距离函数,也就意味着较大的boxes会比较小的boxes产生更多的error,聚类结果可能会偏离;
  • 采取措施:
    1.距离函数:error就和box的尺度无关

    聚类结果:扁长的框较少,而瘦高的框更多
  • 改进效果:使用聚类方法,仅仅5种boxes的召回率就和Faster R-CNN的9种相当

    ##Direct location prediction
  • 模型不稳定,尤其是在早期迭代的时候,大部分的不稳定现象出现在预测box的 (x,y)(x,y) 坐标上;

  • 这个公式的理解为:当预测 tx=1tx=1,就会把box向右边移动一定距离(具体为anchor box的宽度),预测 tx=−1tx=−1,就会把box向左边移动相同的距离。
    符号含义:
    1.x是坐标预测值
    2.xa 是anchor坐标(预设固定值)
    3.x∗是坐标真实值(标注信息)
    4.其他变量 y,w,h 以此类推,t 变量是偏移量;
    这个公式没有任何限制,使得无论在什么位置进行预测,任何anchor boxes可以在图像中任意一点结束。模型随机初始化后,需要花很长一段时间才能稳定预测敏感的物体位置。
  • 采取措施:
    1.采用预测相对于grid cell坐标位置的方法。
    2.13*13的grid,每个cell对应5个anchors box,每个anchors box对应5个值(分别是坐标和置信度),如下所示:

    (cx,cy):这个cell距离图像左上角的cell数;
    (pw,ph):cell对应的anchors box的宽高;
    tx,ty 经sigmod函数处理过,取值限定在了0~1,实际意义就是使anchor只负责周围的box,有利于提升效率和网络收敛。
    e的幂函数是因为前面做了 lnln 计算;
    σ(tx):bounding box的中心相对栅格左上角的横坐标;
    σ(ty):bounding box的中心相对栅格左上角的纵坐标;
    σ(to)是bounding box的confidence score。
  • 改进效果:定位预测值被归一化后,参数就更容易得到学习,模型就更稳定。使用Dimension Clusters和Direct location prediction这两项anchor boxes改进方法,mAP获得了5%的提升。

创新

将目标检测作为回归问题,实现end-to-end训练和检测。
#V3
##改进
多尺度检测 改动基础分类网络和分类器

  1. 添加多尺度预测:将深层特征上采样后,与浅层特征融合,分别形成多个尺度,输出featuremap进行检测,每个尺度对应3中不同大小的anchor,负责预测不同大小的目标。
    尺度1:在基础特征网络后添加几层卷积层后,再输出box信息,负责预测较大目标
    尺度2:从尺度1网络的倒数第二层2倍上采样后与最后一个1616大小的featuremap相加,再通过几层卷积层后,输出box,相比尺度1变大size变大两倍,负责预测中等大小的目标。
    尺度3:与尺度2类似,使用32
    32大小的featuremap作为输出,负责预测较小目标。

对比

1.与RCNN和Fast RCNN对比:yolo没有求取proposal region,而RCNN系列需要通过selective research提取候选框,导致训练过程分为多个阶段完成。
与Faster RCNN对比:尽管用RPN 网络代替selective research,将RPN集成到Fast RCNN中,形成了一个统一的网络,实现卷积层参数的共享。但是在训练过程中还是需要反复训练RPN和Fast RCNN网络。
因此RCNN系列的检测,都属于two-stage策略。
2.YOLO通过一次inference,同时得出目标位置和分类scores,而RCNN系列将目标检测任务分成:检测和回归。
#基础网络
仿ResNet, 与ResNet-101或ResNet-152准确率接近,但速度更快.


##边框预测
仍采用之前的logistic方式:
KaTeX parse error: Expected group after '\begin' at position 68: …ition 7: \begin{̲̲̲a̲l̲i̲g̲n̲}̲ b_…
其中:
cx,cycx,cycx,cycx,cycx,cy c_x,c_ycx,cycx,cycx​,cy​λnoobj实现两者之间对梯度平衡作用。
3.含有object的bbox的confidence loss (上图红色框) 和类别的loss (上图紫色框)的loss weight正常取1。
4.**不同大小box对IoU影响:**对不同大小的bbox,相同的偏离,大bbox对IOU的影响若于小box。通过sum-square error loss对该问题进行缓和。
调整的目标:相同的偏离,增强对小bbox的IOU的影响,减弱打的bbox的IOU的影响。为了缓和这个问题,作者用了一个巧妙的办法,就是将box的width和height取平方根代替原本的height和width。 如下图:small bbox的横轴值较小,发生偏移时,反应到y轴上的loss(下图绿色)比big box(下图红色)要大。
如下图所示:

每个grid有多个boxes,最终的结果,采用IoU最大的box predictor预测,因此,不同box之间存在竞争,因此,随着训练轮数的增加,特定box predictor越来越好的,负责预测不同尺寸的物体。

#参考网址
YOLO详解
图解YOLO
YOLOv1论文理解
目标检测网络之 YOLOv3
darknet+win+linux接口
yolov3论文解析

      </div><link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-258a4616f7.css" rel="stylesheet"></div>

深度学习算法-YOLO相关推荐

  1. 计算机视觉招聘_INDEMIND|SLAM、计算机视觉、深度学习算法招聘(社招实习)

    公司介绍 INDEMIND是一家专注于计算机视觉技术研发与嵌入式计算平台研发的人工智能公司,行业领先的计算机视觉方案提供商.公司成立于2017年,核心技术团队成员均为来自计算机视觉领域的顶级技术人员. ...

  2. 深度学习算法简要综述(下)

    点击上方"算法猿的成长",关注公众号,选择加"星标"或"置顶" 总第 124 篇文章,本文大约 3731 字,阅读大约需要 10 分钟 原文 ...

  3. 基于深度学习的YOLO目标检测研究-附Matlab代码

    目录 ✳️ 一.引言 ✳️ 二.YOLO的基本思想 ✳️ 三.实验验证 ✳️ 四.参考文献 ✳️ 五.Matlab代码获取 ✳️ 一.引言 目标检测是计算机视觉中的一个研究热点,在很多领域都有应用需求 ...

  4. 华南理工深度学习与神经网络期末考试_深度学习算法地图

    原创声明:本文为 SIGAI 原创文章,仅供个人学习使用,未经允许,不能用于商业目的. 其它机器学习.深度学习算法的全面系统讲解可以阅读<机器学习-原理.算法与应用>,清华大学出版社,雷明 ...

  5. Python大数据综合应用 :零基础入门机器学习、深度学习算法原理与案例

    机器学习.深度学习算法原理与案例实现暨Python大数据综合应用高级研修班 一.课程简介 课程强调动手操作:内容以代码落地为主,以理论讲解为根,以公式推导为辅.共4天8节,讲解机器学习和深度学习的模型 ...

  6. 推荐 | 一个统计硕士的深度学习算法工程师的成长之路

    公众号推荐 推荐人/文文 俗话说,一个人走得快,但一群人可以走的远.在数据科学和机器学习的道路上,相信每个人都不是闭门造车的人.技术学习除了在个人努力外,交流和分享也是很重要的一部分. 今天给大家推荐 ...

  7. OCR文字识别:深度学习算法识别步骤

    之前没有接触过OCR文字识别,本文主要对使用深度学习算法完成文字识别的整体步骤进行一下梳理. 一般来说,OCR文字识别是检测+识别,首先将可能在文字的区域检测出来,然后在进行识别.本质是识别图片中的文 ...

  8. 深度学习算法实现———基础环境

    前言: 深度学习是包含在机器学习里的一个特殊领域,他是基于人工神经网络的一种特征学习算法的领域.自卷积神经网络现世以来深度学习开始迅速发展,相比于机器学习它更适合处理超高维特征.现如今深度学习在图像. ...

  9. ONNX 浅析:如何加速深度学习算法工程化?

    AlphaGo击败围棋世界冠军李世石以来,关于人工智能和深度学习的研究呈现井喷之势. 各种新的算法和网络模型层出不穷,令人眼花缭乱.与之相随的,深度学习的训练和推理框架也在不断的推陈出新,比较著名的有 ...

  10. 大话卷积神经网络CNN,小白也能看懂的深度学习算法教程,全程干货建议收藏!...

    来源 | 程序员管小亮 本文创作的主要目的,是对时下最火最流行的深度学习算法的基础知识做一个简介,作者看过许多教程,感觉对小白不是特别友好,尤其是在踩过好多坑之后,于是便有了写这篇文章的想法. 由于文 ...

最新文章

  1. php批量导出pdf文件大小,php完美导出pdf,pdf合并批量导出
  2. linux c 获取目录文件列表
  3. 一款图像相关软件PhoXo
  4. python3精要(22)-函数(3)
  5. Vue的阻止冒泡与阻止默认
  6. php对接钉钉_PHP使用POST方法与钉钉对接无返回结果的问题
  7. 华章7-8月份新书简介(2015年)
  8. java 缓存接口,java项目中,针对缓存问题的处理方式【接口中的处理方式】
  9. Aptana插件安装到eclipse和myeclipse的详细过程
  10. dbeaver 连接hbase 数据库
  11. TCP/ip通信模式
  12. 那些没有兴趣花必要的C++时间
  13. 实战系列-分布式锁的Redis实现
  14. 面试了3个‘85前’的嵌入式软件工程师
  15. 【年度重磅】《2021营销自动化应用基准报告》正式发布!
  16. 【恋上数据结构】图代码实现、最小生成树(Prim、Kruskal)、最短路径(Dijkstra、Bellman-Ford、Floyd)
  17. Spring Cloud Alibaba | Dubbo 与 Spring Cloud 完美结合
  18. Resource is out of sync with the file system
  19. MIPS处理器 CPU控制信号
  20. 线性回归-误差项分析

热门文章

  1. 红米3 MoKee 7.1.2_r36 自编译版/去魔趣中心、宙斯盾/息屏禁止刷新UI 2018年5月5日更新...
  2. 服务器显示PSD缩略图么,psd缩略图补丁(如何显示psd缩略图)
  3. softmgr主程序_为什么我电脑打开后,我的电脑打不开,控制面板一
  4. VM ware 12安装教程
  5. 项目管理实践——一页纸项目管理
  6. matlab画图常用符号,matlab画图特殊符号
  7. 共空间模式算法(CSP)
  8. 国家电网考试计算机基础知识,大学计算机基础(国家电网考试整理)
  9. 平面直角坐标系中的旋转公式_巧用隐圆求解旋转中的最值问题
  10. 《Go程序设计语言》- 第11章:测试