“作者为团队成员星球,平台的专栏作者之一
本文由「海边的拾遗者」公众号编辑首发”
导读
MMDetection是商汤和港中文大学联合开源的基于PyTorch的目标检测工具箱,支持Faster-RCNN,Mask-RCNN等主流目标检测框架。本文将详细介绍在linux系统下如何进行环境搭建与安装。
1 搭建python虚拟环境
1.1 创建conda虚拟环境并激活
conda是一个包管理系统和环境管理系统,可以通过安装anaconda或miniconda使用,本文暂不做详细介绍。
不使用conda也可以正常安装使用MMDetection。
代码语言:javascript复制conda create -n open-mmlab python=3.6 -y
conda activate open-mmlab
1.2 安装PyTorch和torchvision
查看服务器上cuda版本:
代码语言:javascript复制nvcc -V
根据cuda版本和想要安装的pytorch版本在 PyTorch官网上查找安装命令
如cuda的版本为10.2,想要安装pyTorch1.6.0,命令如下
代码语言:javascript复制conda install pytorch==1.6.0 torchvision==0.7.0 cudatoolkit=10.2 -c pytorch
2 安装MMCV
MMCV是用于计算机视觉研究的基础python库,支持MMDetection等研究项目。
MMCV有两个版本:
- mmcv:精简版,无CUDA操作,但具有其他所有功能。当不需要CUDA操作时可以使用。
- mmcv-full:完整版,具有所有功能。
注意:在同一环境下两个版本无法共存,否则可能出现 ModuleNotFound
错误。
2.1 安装mmcv-full
从github上根据PyTorch和CUDA的版本查找对应mmcv-full版本的安装命令。
如,cuda的版本为10.2,pyTorch版本为1.6.0
代码语言:javascript复制pip install mmcv-full==latest torch1.6.0 cu102 -f https://download.openmmlab.com/mmcv/dist/index.html
也可以选择通过以下命令从源码编译mmcv-full。
代码语言:javascript复制git clone https://github.com/open-mmlab/mmcv.git
cd mmcv
MMCV_WITH_OPS=1 pip install -e . #安装mmcv-full
cd ..
2.2 安装指定版本
github上提供的命令默认安装最新版本。若想要安装指定版本可以在这里选择版本号(如1.0.0)后根据如下命令下载。
代码语言:javascript复制pip install mmcv-full==1.0.0 torch1.6.0 cu102 -f https://download.openmmlab.com/mmcv/dist/index.html
3 安装MMDetection
3.1 版本兼容性
MMDetection和MMCV的版本兼容性如下所示,需要根据MMCV的版本安装对应的MMDetection版本。
MMDetection version | MMCV version |
---|---|
master | mmcv-full>=1.1.5, <=1.3 |
2.6.0 | mmcv-full>=1.1.5, <=1.3 |
2.5.0 | mmcv-full>=1.1.5, <=1.3 |
2.4.0 | mmcv-full>=1.1.1, <=1.3 |
2.3.0 | mmcv-full==1.0.5 |
2.3.0rc0 | mmcv-full>=1.0.2 |
2.2.1 | mmcv==0.6.2 |
2.2.0 | mmcv==0.6.2 |
2.1.0 | mmcv>=0.5.9, <=0.6.1 |
2.0.0 | mmcv>=0.5.1, <=0.5.8 |
3.2 安装MMDetection库
克隆MMDetection库
代码语言:javascript复制git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
安装构建要求并安装MMDetection。
代码语言:javascript复制pip install -r requirements/build.txt
pip install -v -e . # or "python setup.py develop"
3.3 安装指定版本
若想要安装指定版本的MMDetection,需要在github上根据tags找到想要下载的历史版本(如v2.5.0)后根据如下命令下载。
代码语言:javascript复制git clone -b v2.5.0 https://github.com/open-mmlab/mmdetection.git
cd mmdetection
4 验证安装是否正确
运行一段python样例并检测演示图片:
代码语言:javascript复制from mmdet.apis import init_detector, inference_detector
config_file = 'configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py'
device = 'cuda:0'
# init a detector
model = init_detector(config_file, device=device)
# inference the demo image
inference_detector(model, 'demo/demo.jpg')
若上述代码没有报错则说明已经正确安装。