【目标检测】从头到尾教你安装MMDetection(超详细版本)

前言

文首先介绍了 MMDetection 库在 Windows 11 下的安装方式,及可能遇到的问题和解决方法。

一、本地环境

这里放上我本人的配置环境:

  1. 显卡 = 3060

  2. CUDA = 11.3

  3. Pytorch = 1.12.1

  4. Python = 3.10.6

  5. torchvision = 0.13.1

  6. torchaudio = 0.12.1

  7. openmim = 0.3.2

  8. mmcv-full = 1.7.0

  9. mmdet = 2.25.3

二、先决条件

MMDetection适用于Linux,Windows和macOS。它需要Python 3.6+,CUDA 9.2+和PyTorch 1.5+。

If you are experienced with PyTorch and have already installed it, just skip this part and jump to the [next section](#installation). Otherwise, you can follow these steps for the preparation.

1. 从官方网站下载并安装Anaconda。

2. 创建 conda 环境并激活它

conda create --name openmmlab python=3.8 -y
conda activate openmmlab

3. 按照官方说明安装 PyTorch,例如

在 GPU 平台上:

conda install pytorch torchvision -c pytorch

在 CPU 平台上:

conda install pytorch torchvision cpuonly -c pytorch

三、配置PyTorch环境时出现的第一个错误

在下载pytorch的时候,出现了不少错误:

1. 无法下载包

(1)错误类型

Conda SSL Error: OpenSSL appears to be unavailable on this machine. OpenSSL is required to download。

按提示安装 openssl,问题也没解决。

【目标检测】从头到尾教你安装MMDetection(超详细版本)

(2)分析

这是.dll错误导致的。

(3)解决办法

转到安装anaconda-anaconda3>Library>bin的位置。搜索并复制以下dll文件:

libcrypto-1_1-x64.dll
libssl-1_1-x64.dll

然后复制这两个文件到anaconda3>DLLs

上网搜了一下之后发现我的电脑可能是缺少OpenSSL了。

到网站下载:

https://slproweb.com/products/Win32OpenSSL.html

【目标检测】从头到尾教你安装MMDetection(超详细版本)

这里按照系统下载对应的版本,我的电脑是Win10 64bit,于是就选择了红色圈起来的版本:

【目标检测】从头到尾教你安装MMDetection(超详细版本)

安装的过程中记得选择这项:

【目标检测】从头到尾教你安装MMDetection(超详细版本)

安装好之后就可以顺利下包了!!!

四、配置PyTorch环境时出现的第二个错误

根据PyTorch网站,我选择下载CUDA11.3对应的版本:

【目标检测】从头到尾教你安装MMDetection(超详细版本)

不知道为什么,我这样下载的却是CPU版本的torch。

在旧电脑上可以顺利安装,但是新电脑安装失败!

我们改变下载策略:

conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.3 -c pytorch

【目标检测】从头到尾教你安装MMDetection(超详细版本)

torch.cuda.is_available()返回的为True。

五、安装mmdet

1. 使用MIM 安装MMCV

MMDetection 的运行依赖 MMCV ,它是一个面向计算机视觉的基础库,其中支持了很多开源工具,如图像分类工具、目标检测工具、语义分割工具、姿态估计工具等常用工具。 MMDetection 的版本跟 MMCV 的版本依赖关系如下表:

pip install -U openmim
mim install mmcv-full

没想到第一步就出了问题。

2. pip install -U openmim出错

【目标检测】从头到尾教你安装MMDetection(超详细版本)
然后下载错误,我们配置下载源,选择豆瓣的:

豆瓣的镜像源地址为:

https://pypi.douban.com/simple

【目标检测】从头到尾教你安装MMDetection(超详细版本)

【目标检测】从头到尾教你安装MMDetection(超详细版本)

下载安装成功!

3. 安装 MMDetection

3.1 情况 a:直接开发和运行 mmdet

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -v -e .
# "-v" means verbose, or more output
# "-e" means installing a project in editable mode,
# thus any local modifications made to the code will take effect without reinstallation.

3.2 情况 b:使用 mmdet 作为依赖项或第三方包

pip install mmdet

我们选用第二种情况,再次出现错误!

4. pip install mmdet出错

一样的问题,下载错误:

【目标检测】从头到尾教你安装MMDetection(超详细版本)

我们同样使用豆瓣的源进行下载:

【目标检测】从头到尾教你安装MMDetection(超详细版本)
【目标检测】从头到尾教你安装MMDetection(超详细版本)

再次失败,pycocotools下载安装失败。

六、安装pycocotools

在网上查了几篇问题一样的文章,说是pycocotools作者压根没想过windows版本,所以会有这样的报错。

从【https://github.com/pdollar/coco.git 】这个网址下载源码。

【目标检测】从头到尾教你安装MMDetection(超详细版本)
然后解压,将文件夹放到【D:\Anaconda3.8.5\Lib\site-packages】路径下,这个路径是Anaconda安装的路径,找到里面的site-packages文件夹。

然后打开Anaconda Prompt (Anaconda3.8.5)或者是cmd,将当前路径跳转至【D:\Anaconda3.8.5\Lib\site-packages\cocoapi-master\PythonAPI】。

依次输入以下命令:

# install pycocotools locally (先这一条,结束后再下一条)
python setup.py build_ext --inplace
# install pycocotools to the Python site-packages
python setup.py build_ext install

到这一步我就开始报错了,没有飘红,但是显示有error:

【目标检测】从头到尾教你安装MMDetection(超详细版本)
错误类型为:

error: Microsoft Visual C++ 14.0 or greater is required. Get it with “Microsoft C++ Build Tools”: https://visualstudio.microsoft.com/visual-cpp-build-tools/

根据error里面的信息,进入到这个网址【https://visualstudio.microsoft.com/visual-cpp-build-tools/】,然后下载vs_buildtools__238bb1dd7df5438ca3028116fa524923.exe。

【目标检测】从头到尾教你安装MMDetection(超详细版本)
【目标检测】从头到尾教你安装MMDetection(超详细版本)

【目标检测】从头到尾教你安装MMDetection(超详细版本)
装好了之后我们返回第四步输入命令。

在此处报了第二个错误:

【目标检测】从头到尾教你安装MMDetection(超详细版本)
错误为:

命令行 error D8021 :无效的数值参数“/Wno-cpp”

解决该问题需要打开setup.py文件,以记事本的形式打开,然后删除里面的两个参数,并保存。

【目标检测】从头到尾教你安装MMDetection(超详细版本)

好了之后,继续返回第四步输入命令:

【目标检测】从头到尾教你安装MMDetection(超详细版本)
装好!

七、再次安装mmdet

继续安装:

pip install mmdet

【目标检测】从头到尾教你安装MMDetection(超详细版本)
再次报错!

解决方案重新安装importlib_metadata:

pip install importlib_metadata --force-reinstall

【目标检测】从头到尾教你安装MMDetection(超详细版本)
【目标检测】从头到尾教你安装MMDetection(超详细版本)

顺利安装成功!

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年3月10日 上午8:01
下一篇 2023年3月10日

相关推荐