zoukankan      html  css  js  c++  java
  • YOLOv1

    YOLOv1

    作者:Joseph Redmon

    CVPR'16

    paper:YOLOv1

    亮点

    • 将目标检测当作是一个回归任务,使用一个网络预测类别和bounding box

    网络结构

    传统的目标检测方法先生成候选框,然后在候选框的基础上进行分类,修正边框,去重复框等操作,速度慢。

    本文将目标检测视为回归任务,通过一次处理图片,即得到分类和位置结果。

    看到的是整个图像,对背景误检测效果更好。

    accuracy比SOTA方法差,对小目标物体检测效果并不好。

    效果:V100,45fps(448*448),63.4mAP(PASCAL VOC 2007)

    实现部分

    首先将图像分为s * s个网格,如果目标的中心落在了网格的中心,那么这个网格就负责检测这个目标。

    每个网格预测B个bounding Box,并且为每个Bounding Box 预测一个置信度分数。(置信度分数表示box包含物体以及预测框的精度):(Pr(Object)*IOU^{gt}_{pred});如果网格中不存在目标,置信度分数为0/有目标的时候(Pr(Object)=1).

    每个bounding Box预测了5个值,x,y,w,h,confidence;其中x,y是相对于网格的外置(0 ~ 1),w,h是相对与整张图片的位置(0 ~ 1)

    每个网格(包含目标)预测了C个类别的条件概率(Pr(C_j|Object))。测试的时候和Bounding Box预测的置信度联合起来,得到(Pr(C_j)*IOU^{gt}_{pred}),表示类别的概率和box的精确度。

    对于Pascal VOC数据集来说,(S=7,B=2,C=20,tensor:7*7*(2*5+20))

    每个格子会预测多个bounding box,训练阶段,取IOU最大的box。

    原论文网络结构图有点问题。

    缺点

    每个单元格只有很少的bounding box,对于成群出现的目标检测效果并不好。

    对新的长宽比的目标泛化性不好。

    对待大框和小框的错误相同,对小框不友好。

  • 相关阅读:
    第二次作业
    复盘一个商品期货的通用模型
    C#如何获取枚举(Enum)变量的值
    [C#]Socket通信BeginReceive异步接收数据何时回调Callback
    [C#]浮点数除零无法捕获异常的解决办法
    js对字符串进行编码方法总结
    web最全资源网址
    简单粗暴地理解js原型链--js面向对象编程
    常见前端九十道面试题及答案-韩烨
    C语言文件读写,复制
  • 原文地址:https://www.cnblogs.com/xiaowk/p/15154028.html
Copyright © 2011-2022 走看看