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

Posted 旅途中的宽~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了目标检测从头到尾教你安装MMDetection(超详细版本)相关的知识,希望对你有一定的参考价值。

目录: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,问题也没解决。

(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

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

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

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

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

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

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

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

我们改变下载策略:

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

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出错


然后下载错误,我们配置下载源,选择豆瓣的:

豆瓣的镜像源地址为:

https://pypi.douban.com/simple

下载安装成功!

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出错

一样的问题,下载错误:

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


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

六、安装pycocotools

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

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


然后解压,将文件夹放到【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:


错误类型为:

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。



装好了之后我们返回第四步输入命令。

在此处报了第二个错误:


错误为:

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

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

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


装好!

七、再次安装mmdet

继续安装:

pip install mmdet


再次报错!

解决方案重新安装importlib_metadata:

pip install importlib_metadata --force-reinstall


顺利安装成功!

以上是关于目标检测从头到尾教你安装MMDetection(超详细版本)的主要内容,如果未能解决你的问题,请参考以下文章

目标检测工具箱MMDetection安装及使用示例

自动驾驶感知算法实战5——MMdetection3d环境搭建使用MMdetection3d做3D目标检测训练自己的数据集测试可视化,以及常见的错误

自动驾驶感知算法实战5——MMdetection3d环境搭建使用MMdetection3d做3D目标检测训练自己的数据集测试可视化,以及常见的错误

一步一步教你在 docker 容器下使用 mmdetection 训练自己的数据集

使用MMDetection进行目标检测实例和全景分割

资源 | 一个基于PyTorch的目标检测工具箱,商汤联合港中文开源mmdetection