同理,一脉相承yolo系列,只为yolov4作准备

yolov1~v2 传送门如下:

葫芦哥哥:yolov4之一 (你真的明白yolo v1吗)​zhuanlan.zhihu.com

葫芦哥哥:yolov4之一 (你真的明白yolo v2吗)(上)​zhuanlan.zhihu.com

葫芦哥哥:yolov4之一 (你真的明白yolo v2吗)(下)​zhuanlan.zhihu.com

延续yolo系列,在写yolo3之前撸了一遍代码,也查阅了大量大神们的博客,以及之前自己搜集的yolo3资源。发现yolov3需要说的事情大家都讲的很清楚,yolov3新亮点并不多。值得说的两个点外加一堆关于yolo3实现与有趣链接

1.网络结构

为了达到更好的分类效果,作者自己设计训练了darknet-53。作者在ImageNet上实验发现这个darknet-53,的确很强,相对于ResNet-152和ResNet-101,darknet-53不仅在分类精度上差不多,计算速度还比ResNet-152和ResNet-101强多了,网络层数也比他们少。

Yolov3使用了darknet53的前面的52层(没有全连接层),yolo_v3这个网络是一个全卷积网络,大量使用残差的跳层连接,并且为了降低池化带来的梯度负面效果,作者直接摒弃了POOLing,用conv的stride来实现降采样。在这个网络结构中,使用的是步长为2的卷积来进行降采样。

darknet53效果

Darknet-53处理速度每秒78张图,比Darknet-19慢不少,但是比同精度的ResNet快很多。Yolov3依然保持了高性能。

为了加强算法对小目标检测的精确度,YOLOv3中采用类似FPN的upsample和融合做法(最后融合了3个scale,其他两个scale的大小分别是26×26和52×52),在多个scale的feature map上做检测。

yolov3整体网络

DBL:代码中的Darknetconv2d_BN_Leaky,是yolo_v3的基本组件。就是卷积+BN+Leaky relu。

resn:n代表数字,有res1,res2, … ,res8等等,表示这个res_block里含有多少个res_unit。

concat:张量拼接。将darknet中间层和后面的某一层的上采样进行拼接。拼接的操作和残差层add的操作是不一样的,拼接会扩充张量的维度,而add只是直接相加不会导致张量维度的改变。

其中特征图的输出维度为

为输出特征图格点数,一共3个Anchor框,每个框有4维预测框数值
,1维预测框置信度,80维物体类别数。所以第一层特征图的输出维度为

y1,y2,y3的具体来源解析

当输入为416×416时,实际总共有(52×52+26×26+13×13)×3=10647个proposal box。

1
2
3
可视化

2.训练策略

此处训练策略摘录于https://zhuanlan.zhihu.com/p/76802514

感谢声明

预测框一共分为三种情况:正例(positive)、负例(negative)、忽略样例(ignore)。
正例:任取一个ground truth,与4032个框全部计算IOU,IOU最大的预测框,即为正例。并且一个预测框,只能分配给一个ground truth。例如第一个ground truth已经匹配了一个正例检测框,那么下一个ground truth,就在余下的4031个检测框中,寻找IOU最大的检测框作为正例。ground truth的先后顺序可忽略。正例产生置信度loss、检测框loss、类别loss。预测框为对应的ground truth box标签(需要反向编码,使用真实的x、y、w、h计算出

);类别标签对应类别为1,其余为0;置信度标签为1。

忽略样例:正例除外,与任意一个ground truth的IOU大于阈值(论文中使用0.5),则为忽略样例。忽略样例不产生任何loss。
负例:正例除外(与ground truth计算后IOU最大的检测框,但是IOU小于阈值,仍为正例),与全部ground truth的IOU都小于阈值(0.5),则为负例。负例只有置信度产生loss,置信度标签为0。

3.yolov3链接

emadboctorx/yolov3-keras-tf2​github.com

加入关键点的darknet训练框架,用yolov3实现了轻量级人脸检测​github.com基于YOLOv3/DeepSORT的行人检测与追踪​github.comPyTorch实现的YOLOv3​github.comYOLOv3各框架复现项目汇总(TensorFlow/PyTorch/Keras/Caffe/MXNet)​github.com对YOLOv3及Tiny的多种剪枝版本,以适应不同的需求​github.comYOLOv3多目标跟踪​github.comPython/YOLOv3自定义对象检测器实战指南​emaraic.comGaussian YOLOv3: An Accurate and Fast Object Detector Using Localization Uncertainty for Autonomous Driving​arxiv.org

青山依旧,来日方长。

此文至此,欢迎拍砖。

下集预告终于到了 yolov4的具体paper内容了

不见不散

v3是c语言吗 yolo_你真的明白yolo v3吗?相关推荐

  1. Python 3 Keras YOLO v3解析与实现

    YOLOv3在YOLOv2的基础进行了一些改进,这些更改使其效果变得更好.其与SSD一样准确,但速度快了三倍,具体效果如下图.本文对YOLO v3的改进点进行了总结,并实现了一个基于Keras的YOL ...

  2. .pth转.weights/openCV-python + YOLO v3实现目标检测

    文章目录 前言 一.基于Pytorch框架的YOLO v3 二.openCV-python 三..pth转.weights 四 模型部署 总结 前言   毕设做的是水面目标的目标检测,因为要用Tkin ...

  3. TensorFlow + Keras 实战 YOLO v3 目标检测图文并茂教程

    作者 | fendouai 编辑 | 安可 [导读]:本文介绍了目标检测算法yolov3的keras实战.欢迎大家点击上方蓝字关注我们的公众号:深度学习与计算机视觉. YOLO 是一种非常流行的目标检 ...

  4. 对象检测目标小用什么模型好_自动驾驶目标检测- YOLO v3 深入解析

    从2016年 Joseph Redmon 发布第一代YOLO开始,YOLO已经更新四代了,凭借着在一个网络模型中完成对图像中所有对象边界框和类别预测的独特创新,成为现今使用最广泛也是最快的对象检测算法 ...

  5. YOLO v3算法详解

    论文地址:YOLOv3: An Incremental Improvement YOLO算法详解,YOLO v2算法详解 1.The Deal 接下来,从头梳理整个网络,如果对YOLO和YOLO v2 ...

  6. r语言把两个折线图图像放到一个图里_图像目标检测算法总结(从R-CNN到YOLO v3)...

    基于CNN 的目标检测是通过CNN 作为特征提取器,并对得到的图像的带有位置属性的特征进行判断,从而产出一个能够圈定出特定目标或者物体(Object)的限定框(Bounding-box,下面简写为bb ...

  7. 你真的明白RPC 吗?一起来探究 RPC 的实质

    为什么80%的码农都做不了架构师?>>>    你真的明白RPC 吗?一起来探究 RPC 的实质 ​ 不论你是科班出身还是半路转行,这么优秀的你一定上过小学语文,那么对扩句和缩句你一 ...

  8. YOLO v3算法解析

    论文:YOLOv3: An Incremental Improvement 论文地址:https://pjreddie.com/media/files/papers/YOLOv3.pdf YOLO系列 ...

  9. 基于Mini无人机与改进损失函数的YOLO V3的大豆幼苗自动计数系统V1.0-使用手册

    源代码参见Github:https://github.com/jamie-ji/improved-YOLO-V3-Application-in-automatic-count-soybean 有帮助可 ...

  10. 【Pytorch深度学习50篇】·······第五篇:【YOLO】【1】----- YOLO V3 V4 V5的模型结构

    第四篇,我们已经简单的过了一个segmentation网络,下面我们要进入一个相对要复杂一点的系列了,它也是用于目标检测的,与segmentation不同的是,这个网络会回归出目标的位置和大小.YOL ...

最新文章

  1. 【Gamma】“北航社团帮”展示博客
  2. 子分类账知识学习(汇总网上比较有用的资料)
  3. 常用SQL语句和HQL语句写法
  4. MVC3+Entity Framework 实现投票系统(一)
  5. c语言中的printf函数_C语言中的printf()函数与示例
  6. 样条曲面_用SolidWorks曲面制作一个:台灯底座造型
  7. 【VS Code】关于VS Code 中文显示乱码
  8. arduino烧录_如何给AVR单片机烧录程序
  9. win7允许远程桌面连接这台计算机,教你怎样win7远程桌面连接设置
  10. 502 proxy error解决方法_Homebrew安装、卸载、可能的报错及解决方案_Mac
  11. php里面像素怎么表示,php检索图片像素最接近的色值位置
  12. 制造业信息化管理蓝图
  13. c语言水解猴子吃桃问题
  14. mysql数据库三表联查
  15. 个人“乱七八糟”笔记和摘要
  16. 74LVC2G14GW 封装 SOT363 栅极/逆变器芯片
  17. C语言中惰性,利用C-H键活化接力(CHAR)实现惰性C-H的功能化
  18. uni-app - 苹果安卓系统监听物理返回按键(手机左滑返回监听)
  19. Vue:获取v-for循环中的数组下标、索引及数据
  20. 2022年全球市场猫抓板总体规模、主要生产商、主要地区、产品和应用细分研究报告

热门文章

  1. cacti的安装与配置(一)安装
  2. 用DISKGEN恢复硬盘数据
  3. linux -初步认识之软件安装
  4. 《构建之法》1-5章读后感
  5. oracle 自定义比较函数
  6. 哈哈哈,看着问题一个个解决,很有满足感哦
  7. jquery中的trigger和triggerHandler区别
  8. 这个网站还不错,可以多看看(这个是学习的网站,没有广告)
  9. 最简单的YUV422转jpg的例程
  10. Ceph 撸源码系列(一):Ceph开源项目源代码的关键目录介绍