Detectron2 使用指南

Posted SpikeKing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Detectron2 使用指南相关的知识,希望对你有一定的参考价值。

Detectron2是Facebook开源的深度学习的目标检测(Object Detection)框架,支持深度学习中常见的目标检测、实例分割、姿态估计等任务。

  • GitHub:https://github.com/facebookresearch/detectron2

安装Detectron2

参考

支持从源码构建再安装或者直接从pip安装,推荐直接从pip安装,比较便捷,限制较少。

  • 注意:如果从源码安装,需要GCC支持5.0+,部分服务器可能不支持。

pip支持的CUDA+torch版本,如下:

检查服务器的CUDA版本:nvidia-smi,当前版本是10.2,如下:

检查服务器的torch版本:pip3 show torch,当前版本是1.7.0,如下:

检查服务器的Python版本:python3 -version,当前版本是3.7.5rc1,如下:

因此,选择CUDA 10.2 + torch 1.7版本,推荐按照命令如下:

python -m pip install detectron2 -f \\
  https://dl.fbaipublicfiles.com/detectron2/wheels/cu102/torch1.7/index.html

建议直接到index.html页面,下载相应的包文件:

下载whl文件:

wget https://dl.fbaipublicfiles.com/detectron2/wheels/cu102/torch1.7/detectron2-0.5+cu102-cp37-cp37m-linux_x86_64.whl

安装whl文件:

pip3 install --user detectron2-0.5+cu102-cp37-cp37m-linux_x86_64.whl

测试工程

以实例分割算法-PointRend为例,使用的数据集是COCO。由于COCO数据集较大,我们选择Tiny-COCO,仅包含16张图像的微型数据集。

准备数据集:

在PointRend目录下,构建datasets/coco/,annotations中是标注文件,train2017中是样本图像,即:

  • annotations/instances_train2017.json
  • train2017/…

执行:

python3 train_net.py --config-file configs/InstanceSegmentation/pointrend_rcnn_R_50_FPN_1x_coco.yaml --num-gpus 1

即可训练

关于模型存储,存储位置由OUTPUT_DIR参数控制,存储间隔由SOLVER.CHECKPOINT_PERIOD控制

  • OUTPUT_DIR: ./output
  • CHECKPOINT_PERIOD: 5000

pointrend_rcnn_R_50_FPN_1x_coco.yaml文件中,修改参数即可,如:

SOLVER:
  CHECKPOINT_PERIOD: 2

参考:


以上是关于Detectron2 使用指南的主要内容,如果未能解决你的问题,请参考以下文章

Detectron2 API 之 config | 十五

Detectron2 使用指南

Detectron2的使用指南

如何使用 Detectron2 .pth 模型从存储中进行预测..?

Windows11安装Detectron2超详细操作指南

如何使用多个自定义数据集训练 Detectron2 模型