[Detectron2]安装和训练
Detectron2 is Facebook AI Research's next generation software system that implements state-of-the-art object detection algorithms. It is a ground-up rewrite of the previous version, Detectron, and it originates from maskrcnn-benchmark.
花了不少时间熟悉Detectron2的安装和训练,期间也遇到了不少问题,小结一下
在线文档地址:detectron2
安装
Detectron2
提供了多种安装方式,当前选用本地源码编译安装
Requirements
1 | Linux or macOS with Python ≥ 3.6 |
源码安装
1 | $ git clone https://github.com/facebookresearch/detectron2.git |
训练
Detectron2
在tools
和demo
文件夹下提供了不少的使用示例,并且在configs
文件夹下配置了不少算法
下面使用PASCAL VOC
数据集训练Faster R-CNN+ResNet-50
配置数据集
解析VOC 07/12
数据集,使用环境变量DETECTRON2_DATASETS
指定数据路径
1 | $ ls |
训练
当前仅使用单块GPU
,需要进行显式参数设置
1 | $ cd tools |
问题
训练过程中出现了如下问题:
1 | [06/14 17:31:31 d2.engine.train_loop]: Starting training from iteration 0 |
在网上找了很久,发现是由于CUDA
和cudatoolkit
的版本不一致关系。参考
RuntimeError: CUDA error: invalid device function ROIAlign_forward_cuda #62
重新安装了PyTorch
和cudatoolkit
1 | conda install pytorch torchvision cudatoolkit=10.0 -c pytorch |
再次编译Detectron2
,问题解决