Anchor free系列检测器之YOLOX源码逐行讲解篇(二)--搭建类PAFPN结构及数据流向分析

整个YOLOX源码的学习一定要按照以下顺序才能整体串起来:Backbone->FPN->Head->->数据读入源码->数据增强源码->loss计算源码->simOTA源码->demo.py脚本->train.py脚本。而该系列博文也遵循该顺序来逐行分析代码。注意是逐行,包括python语法,tensor维度和逐行代码的作用及应用。其实网络结构本没有任何神秘的地方,都是一些模块堆叠起来的,你完全可以没有任何理由的修改任何一个模块。看完这个系列后自己完全可以随便的去对任何网络结构做手脚,而不仅仅局限于一个调参者。

本篇讲的是YOLOX中类PAFPN结构的搭建,在这之前一定先要看篇一,否则这一篇会有很多篇一的内容看不明白。


上图是YOLOX的FPN结构的实现图,黄色字体为代码中的中间变量,方便理解。维度则是当采用yolox_s网络时整个网络的输出特征维度。首先打开yolox\models\yolo_pafpn.py。整个FPN的官方实现过程只有下面这么一些代码,可以说是非常简单的。简单的语句会直接赋上注释:

import torch
import to

猜你喜欢

转载自blog.csdn.net/qq_42308217/article/details/122909371