mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。

解决环境安装过程中出现的问题,避免踩坑。

前言:

如果是复现别人论文里的代码,那么要注意mmdet和mmcv版本匹配的问题。
从论文中把代码下载下来之后首先要看一下项目文件中的mmdet/init.py和mmdet/version.py这两个文件:
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第1张图片
这里的__version__指定了项目中使用的mmdet版本,这里作者用mmdet是2.3.0版本。
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第2张图片这里的mmcv_*_version参数指明了所需要的mmcv版本,这里mmcv=1.0.5.

这里的mmcv和mmdet版本一定要对应好,不然会出问题。下面是官方的版本匹配图:
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第3张图片

安装指定版本的mmcv和mmdet

知道需要的版本之后开始正式安装过程。
下面演示安装:
mmcv-full=1.0.5
mmdet=2.3.0

步骤1:安装依赖项和设置环境

在开始配置之前,确保您的系统满足以下要求:

安装Anaconda或Miniconda:可以从Anaconda官方网站下载适用于您操作系统的版本,并按照官方指南进行安装。

创建并激活虚拟环境:打开终端并执行以下命令以创建一个新的虚拟环境,并激活它。
conda create --name mmdetection python=3.8 -y
conda activate mmdetection

这将创建一个Python版本为3.8的虚拟环境,并自动安装所有默认依赖项.

步骤2:安装pytorch

先看一眼mmcv官网的安装要求:https://mmcv.readthedocs.io/zh_CN/latest/get_started/installation.html
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第4张图片看下面图片描述:
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第5张图片然后进入pytorch官网:https://pytorch.org/
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第6张图片找到需要的pytorch 1.6

mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第7张图片复制命令到刚刚创建的虚拟环境中安装pytorch:

conda install pytorch==1.6.0 torchvision==0.7.0 cudatoolkit=10.2 -c pytorch

忘记创建的虚拟环境名字了,那么虚拟环境列表查看命令:

conda env list

激活:

conda activate mmdetection

步骤3:安装mmcv-full

安装好pytorch了,进入mmcv官网刚刚打开的页面
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第8张图片
可以试试pytorch安装状态:

python -c 'import torch;print(torch.__version__);print(torch.version.cuda)'

开始安装mmcv 1.0.5:

pip install mmcv-full==1.0.5 -f https://download.openmmlab.com/mmcv/dist/cu102/torch1.6/index.html

正确执行完毕就可以了,用不着验证。

步骤4:安装mmdet (复现别人的项目中的代码一半不需要这一步,看步骤5)

进入官网:https://mmdetection.readthedocs.io/zh_CN/latest/index.html
点“开始你的第一步”,然后往下找:
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第9张图片执行这个,下载源码:(网速慢,也可以从github上直接下载mmdetection项目)

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection

然后就需要注意了,cd 进入mmdetection目录后不能直接执行:pip install -v -e .
因为这样会默认安装最新版mmdet框架。
要安装需要的mmdet版本 需要执行以下操作:
打开mmdetection目录中的mmdet目录,然后修改其中的version.py这两个文件:
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第10张图片
把这个参数改成需要的版本号,如2.3.0,然后执行:

pip install -v -e .

至此,完整安装了mmcv-full 1.0.5和mmdet 2.3.0。

步骤5:复现代码步骤(不需要单独下载mmdetection)

完成步骤1,2, 3之后,直接进入你所下载的项目目录中(因为项目已经包含了mmdetection),可以看到mmdet这个目录(上面引言部分参考一下)。
其中version.py中已经指明了mmdet的版本。
mmdet代码复现:安装指定版本的mmcv和mmdet以及版本匹配问题。_第11张图片
这个时候你已经按照上面的步骤安装好mmcv-full了,只需在项目主目录中执行:

python setup.py install 

完成编译即可。
执行完毕可以发现mmdet已经安装好了,pip list命令查看。
然后就可以运行代码了,如果运行失败,一般是缺少某些工具包,根据提示安装相应的包即可,如:

pip install mmlvis
pip install mmpycocotools

你可能感兴趣的:(目标检测,pytorch,神经网络,object,detection)