目录:MMDetection的安装过程
前言
文首先介绍了 MMDetection 库在 Windows 11 下的安装方式,及可能遇到的问题和解决方法。
一、本地环境
这里放上我本人的配置环境:
-
显卡 = 3060
-
CUDA = 11.3
-
Pytorch = 1.12.1
-
Python = 3.10.6
-
torchvision = 0.13.1
-
torchaudio = 0.12.1
-
openmim = 0.3.2
-
mmcv-full = 1.7.0
-
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
顺利安装成功!
文章出处登录后可见!