YOLOv3源码解析1-代码整体结构

YOLOv3源码解析2-数据预处理Dataset()

YOLOv3源码解析3-网络结构YOLOV3()

YOLOv3源码解析4-计算损失compute_loss()

YOLOv3源码解析5-损失函数

理论部分参照大神的文章学习:

简书:关于YOLOv3的一些细节

github:源代码作者YOLOV3

知乎:【YOLO】yolo v1到yolo v3

知乎:目标检测|YOLO原理与实现

知乎:YOLO v3深入理解

CSDN:yolo系列之yolo v3【深度解析】

解析的代码地址:

github:tensorflow-yolov3

源码结构解析:

代码整体结构如下(原图大小20M太大上传不了,这是降低质量后的只有2M),说实话,按照代码解析,画完这个图,我暗暗感叹,YOLOV3的作者真是牛逼,这么复杂的框架都能想出来,不服不行啊:

整体结构图太过复杂,不太方便看,下面把各个结构分解出来。下面是代码主流程:

上图中标红的Dataset()、YOLOV3()、conpute_loss()分别是数据预处理、建立网络框架、计算损失函数,下面将按这3块进行代码解析。

一)Dataset()数据预处理部分:

二)YOLOV3()建立模型框架部分:

1)其中的build_network()函数,建立网络模型

A)其中的darknet53()函数,建立基本的卷积网络,获取大中小3个等级的特征图:

其中反复用到了两个基本单元common.convolutional()common.residual_block()结构分别如下:

  • common.convolutional()

  • common.residual_block()

2)其中的decode()函数,解码,返回预测框的xywh,置信度,预测概率

三)compute_loss()计算各部分损失:

其中的loss_layer()(损失层):

Dataset()、YOLOV3()、conpute_loss()分别是数据预处理、建立网络框架、计算损失函数,下面将按这3块进行代码解析。

YOLOv3源码解析1-代码整体结构相关推荐

  1. YOLOv3源码解析2-数据预处理Dataset()

    YOLOv3源码解析1-代码整体结构 YOLOv3源码解析2-数据预处理Dataset() YOLOv3源码解析3-网络结构YOLOV3() YOLOv3源码解析4-计算损失compute_loss( ...

  2. jquery源码解析:代码结构分析

    本系列是针对jquery2.0.3版本进行的讲解.此版本不支持IE8及以下版本. (function(){ (21, 94)     定义了一些变量和函数,   jQuery = function() ...

  3. pytorch YoLOV3 源码解析 train.py

    train.py 总体分为三部分(不算import 库) 初始的一些设定 + train函数 + main函数 源码地址: https://github.com/ultralytics/yolov3 ...

  4. yolo源码解析(1):代码逻辑

    一. 整体代码逻辑 yolo中源码分为三个部分,\example,\include,以及\src文件夹下都有源代码存在. 结构如下所示 ├── examples │ ├── darknet.c(主程序 ...

  5. Wayland 源码解析之代码结构

    来源:http://blog.csdn.net/basilc/article/details/8074895 获取.编译 Wayland 及其依赖库可参考 Wayland 官方网站的 Build 指南 ...

  6. Andromeda 源码解析 (同步获取服务)

    Andromeda Andromeda是爱奇艺开源的适用于多进程架构的组件通信框架. github地址: https://github.com/iqiyi/Andromeda 其特点如下: 无需开发者 ...

  7. .Net Core 源码解析

    .Net core 源码解析 启动代码 创建并配置主机Builder CreateDefaultBuilder分析 Host类-用于产生初始的builder静态类 IHostBuilder转变成IWe ...

  8. vue cli3源码解析

    vue-cli3 源码解析 脚手架代码入口点 从package.json文件中可以看到"vue-cli-service": "bin/vue-cli-service.js ...

  9. 视频教程-YOLOv3目标检测:原理与源码解析-计算机视觉

    YOLOv3目标检测:原理与源码解析 大学教授,美国归国博士.博士生导师:人工智能公司专家顾问:长期从事人工智能.物联网.大数据研究:已发表学术论文100多篇,授权发明专利10多项 白勇 ¥78.00 ...

  10. yolov3之pytorch源码解析_springmvc源码架构解析之view

    说在前面 前期回顾 sharding-jdbc源码解析 更新完毕 spring源码解析 更新完毕 spring-mvc源码解析 更新完毕 spring-tx源码解析 更新完毕 spring-boot源 ...

最新文章

  1. ​ROS必须理解的概念
  2. checkbox 与文字对齐
  3. kibana操作elasticsearch:创建映射字段
  4. PHP笔记-管道的作用 类
  5. collection转换为list_JAVA 集合 接口继承关系和实现,List,Set,Map(总结)
  6. ICDAR发票识别冠军(文字检测Corner)
  7. my04_Mysql复制数据一致性校验
  8. hadoop+hbase安装
  9. 五笔字根表识别码图_五笔字根表图
  10. android投屏到web,安卓投屏神器下载|安卓投屏神器(Web Video Caster)v4.5.4高级版下载 - 99安卓游戏...
  11. 计算力学——有限元编程实现
  12. 记苹果企业开发者账号申请踩过的坑
  13. 美国金融客户投诉数据分析
  14. adb shell and docker_k8s
  15. ireport+Jasper 动态改变字体大小
  16. 阻容降压电路:每个元器件计算选型
  17. vue拦截器刷新登陆页面_Vue + Spring Boot 项目实战(六):前端路由与登录拦截器-Go语言中文社区...
  18. 电信卡间隔多久再办,流量卡申请间隔是多少?
  19. 矩阵的秩+基础解系的秩为什么等于n?
  20. tls协议 android 证书,Android TLS连接和自签名证书

热门文章

  1. 【CAN总线学习01】CAN网络概述
  2. Udacity课程脉络-统计学基础(二)- t分布
  3. 智能穿戴及传感器调研
  4. Echarts 实现 设备运行状态图 工业大数据展示
  5. 二十四节气—处暑,暑气渐轻,热力不减。
  6. CNN网络实现垃圾分类
  7. ZigBee单播通信
  8. mysql现象_Mysql编程中的怪现象
  9. excle批量填充自增数据
  10. 2016-2017-2 《程序设计与数据结构》课程总结