Detectron目录结构

Detectron是一个深度学习框架,专注于物体检测。其核心目录包括configs(存储模型配置文件)、tools(包含训练和测试脚本)、lib(包含核心组件)。configs中的yaml文件定义训练参数和模型结构;tools下的train_net.py和test_net.py分别用于训练和测试;lib目录下,core负责基础功能,如config.py和rpn_generator.py,datasets管理数据集,modeling定义模型结构,utils提供通用工具,如优化策略和网络初始化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在detectron目录下一般会有如下几个比较重要的目录:
configs、
detectron(lib)、
tools

configs目录下

  • 全部存放的是模型训练的各种yaml配置文件。
  • 在detectron框架中进行训练及测试时,不同的配置文件决定了不同的算法模型结构及训练、测试参数。
  • 官方给出了大量的示例yaml配置,这些配置在公开数据集上跑出的效果优异。
  • 一般,我们可以针对自己实际情况进行修改。

tools目录下

  • 主要存放detectron中的一些拓展功能脚本,
  • 如train_net.py为训练过程的启动文件, test_net.py为测试过程的启动文件
  • infer_simple.py允许根据yaml配置文件及训练好的模型对图片进行推断
  • pickle_caffe_blobs.py文件可以根据caffe的模型文件及caffe的网络定义
  • prototxt文件将caffe的模型转换为满足detectron格式要求的.pkl文件。

detectron(lib)

目录为整个工程的核心目录,其子目录有:

  • core、
  • datasets、
  • modeling、
  • opt、
  • roi_data、
  • tests、
  • utils

core目录中

主要有

  1. config.py文件
  2. 生成rpn的rpn_generator.py
  3. 部分测试核心代码test.py,test_engine.py,test_retinanet.py),

datasets目录

顾名思义主要就是存放数据集以及与数据集读取、定义相关的文件。
这里主要支持coco数据集,
在datasets/data/coco目录下,一般分:

  • Annotations
  • coco_train/
  • coco_val/
  • coco_test

Annotations存放json格式的训练/验证/测试数据的图片名、ground truth、图片高宽等信息
coco_train/coco_val/coco_test中存放相应图片。

modeling目录下

主要存放模型定义的组成脚本,
如model_builder.py主要定义了算法的基本形式,这里主要有三种

  • faster_rcnn、rfcn以及retinanet。
  • FPN.py、resnet.py、vgg16.py、vgg_cnn_M_1024.py等文件定义了检测算法中特征提取网络部分,我们也可以根据需要自己添加或修改特征提取网络部分。
  • fast_rcnn_heads.py 、mask_rcnn_heads.py、retinanet_head.py、rfcn_heads.py定义了各种头部
  • roi_data目录中的文件主要定义detectron中数据的加载及处理细节,
  • 其中loader.py定义了数据加载方式,
  • minibatch.py定义数据进入网络前的增强及过滤方式,我们也可以根据需要修改源码加入想要的图片预处理。

utils目录下

文件包含较广泛,

  • lr_policy.py定义了训练中的优化策略,
  • net.py主要定义了以权重文件初始化网络及在各gpu中broadcast各层网络参数、及从内存中将权重文件保存到硬盘的细节。

参考 链接: 参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值