MMDetection的安装及验证

参考:安装 — MMDetection 2.22.0 文档

进入openMMLab社区好久了,但是前面都是在学一些基础知识,最近看到了目标检测的部分,然后尝试配置了一下mmDet的环境,过程中踩了很多坑,也用了很长时间,在这里记录一下,避免大家后面再次踩坑了,整个过程如果顺利的话可能三分钟不到就好了

安装MMDetection

本文假设已经配置好了anaconda且已经有了pytorch环境,,如果没有的话参考这个文章

首先从已有的环境中克隆一份出来,这样可以省掉很多的下载时间

conda create -n open-mmlab --clone pytorch

然后切换到新创建的环境中

conda activate open-mmlab

这里为了防止过程中出现错误导致配置失败,把删除环境的命令也给出,希望大家不会用到

首先需要切出这个环境到另一个环境中,然后直接删除

conda activate base
conda remove -n open-mmlab --all

然后就是具体的配置了,官方给了两种方式:

  • 使用openmim下载,但是克隆仓库的速度有点慢(可能是服务器的问题,是直接从Github clone代码的),但是操作比较简单
  • 手动安装MMDetection,需要把代码克隆到本地然后安装,这样就可以把代码直接压缩包上传服务器或者在Gitee找个镜像下载就ok了,操作比较复杂一点

在进行下面两步之前建议把连接服务器的会话关掉再开一下,我好几次都是报错No module named torch,也不知道怎么回事

使用openmim安装

mim是官方推荐的安装方法,原文说法是MIM 能够自动地安装 OpenMMLab 的项目以及对应的依赖包。

刚刚创建的环境激活之后使用下列命令:

mim install mmdet

然后等安装完就成功了

image-20220327005330185

手动安装

手动安装需要安装mmcv-full,官方建议使用预构建包来安装:

其中{cu_version}{torch_version}是服务器的cuda版本和torch版本号,可以在命令行输入python进入python命令行,然后如下:

image-20220327004207972

可以看到我的版本是torch1.11.0,cuda102,然后我下载的命令是pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/cuda102/torch1.11.0/index.html

查询完之后使用ctrl+z退出

pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{
    
    cu_version}/{
    
    torch_version}/index.html

这个过程还是很快的

然后安装MMDetection

首先要把Github仓库克隆到服务器上,如果服务器clone速度比较快的话可以直接使用如下命令

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

如果直接clone速度过慢,可以先下载压缩包然后上传到服务器或者在Gitee找一个镜像clone

克隆成功之后

cd mmdetection
pip install -r requirements/build.txt
pip install -v -e .  # or "python setup.py develop"

然后等待配置成功就ok了。

验证

官方文档给出了一种验证方法,可以去参考一下,但有几个需要注意的地方

  • 如果使用的mim安装的话这种方法用不了,使用下面的方法

  • 如果是手动安装则需要在mmdetection目录下首先通过命令下载checkpoint,然后再运行这个文件

    mkdir checkpoints
    cd checkpoints
    wget http://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth
    

另一种方法是看的官方教程的,这个可以在任意位置创建一个py或者jupyter文件,然后运行下面的代码:

注意,如果后面想跟着这个教程看使用的话,千万不要运行第二个单元格,我当时没仔细看,然后把我配置好的环境全删了,结果又重新配置了一遍。。。

# Check Pytorch installation
import torch, torchvision
print(torch.__version__, torch.cuda.is_available())

# Check MMDetection installation
import mmdet
print(mmdet.__version__)

# Check mmcv installation
from mmcv.ops import get_compiling_cuda_version, get_compiler_version
print(get_compiling_cuda_version())
print(get_compiler_version())

可以正常显示版本号则说明配置成功

image-20220327005358003

猜你喜欢

转载自blog.csdn.net/qq_46311811/article/details/123767250