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的使用指南的主要内容,如果未能解决你的问题,请参考以下文章
使用自定义的Dataloader做数据增强格式统一等操作/像使用pytorch一样进行训练。
[深度学习][原创]detectron2报错RuntimeError: CUDA error: device-side assert triggered