MMDetection环境搭建与安装教程

2020-12-08 17:29:07 浏览数 (1)

“作者为团队成员星球,平台的专栏作者之一

本文由「海边的拾遗者」公众号编辑首发”

导读

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')

若上述代码没有报错则说明已经正确安装。

0 人点赞