整个系列包括:Demo源码逐行讲解->train脚本源码逐行讲解->backbone源码逐行讲解->FPN源码逐行讲解->Head源码逐行讲解->loss计算源码逐行讲解->数据加载源码逐行讲解->数据增强源码逐行讲解->simOTA源码逐行讲解。保证逐行,注意是逐行,包括python语法,tensor维度和逐行代码的作用及应用。其实网络结构本没有任何神秘的地方,都是一些模块堆叠起来的,你完全可以没有任何理由的修改任何一个模块。看完这个系列后自己完全可以随便的去对任何网络结构做手脚,而不仅仅局限于一个调参者。
本篇讲的是YOLOX中数据加载及数据预处理部分。大家在学网络的时候总是侧重于模型结构的搭建,而忽略了数据的处理部分。这造成的后果就是对数据整体的变化没有一个准确的认知。构造两个东西:数据解析器:从本地加载标注文件和图像解析成网络需要的数据格式。取样器:每一个批次中完成随机取batchsize张图像的操作。
首先定位到yolox\exp\yolox_base.py的get_data_loader方法:
参数is_distributed:是否进行分布式训练。no_aug:
版权归原作者 @会飞的毛毛虫 所有, 如有侵权,请联系我们删除。