目录
安装MMDetection环境
系统:ubuntu 18.04
显卡 3060
pytorch 2.0
cuda 11.8
请针对自己的系统和硬件环境选择配置,cuda版本建议不要太高,我安装了12.1版本的cuda,运行程序会报错。由于我已经安装好了环境,所以很多地方都没有配图,每个人遇到的错误都不一样,我只针对于我遇到的错误进行分享。
1、安装Pytorch
安装anaconda我就不多赘述了。可以参考我的另一篇文章复现PointRcNN
利用conda创建环境
conda create --name openmmlab python=3.8 -y
conda activate openmmlab
安装pytorch直接去官网找符合自己系统的版本安装
没有自己想要的版本还可以点击Previous PyTorch Versions
选择以前的版本。
直接复制命令安装即可。
可以运行以下代码来验证是否安装成功
python
import torch
torch.__version__
2、安装CUDA Toolkit
2.1 安装nvidia驱动
ubuntu系统可以直接进入到软件和更新
里面,点击驱动版本较大的即可,然后应用更改,需要重启一下才能生效。
(网上很多教程是怎么手动安装的,要关闭图形界面,对linux系统不熟悉的不要轻易尝试,我就为这个重装了系统)
2.2 下载CUDA Toolkit
首先要确定自己的驱动版本和cuda版本,驱动版本刚才在
软件和更新
里面已经知道了,cuda版本在安装pytorch的时候也知道了,之后去nvidia官网查看对应的CUDA Toolkit ,CUDA Toolkit 要与cuda的版本对应,例如我的cuda版本是11.8,那么CUDA Toolkit的版本也是11.8。
选择自己对应的版本:
选择自己的系统,选则runfile(local):
运行下面他给出的指令就行了,需要注意你下载的位置,自己要找的到。
如果遇到什么段错误,核心以已转存
的报错,可以尝试在你下载的命令基础上加-c
。
例如:
wget -c https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run
2.3 安装CUDA Toolkit
之后在你下载的文件夹下打开终端,运行他给出的第二行命令,需要等待一会儿。
进入以下界面,输入accept
注意驱动不要选,我们已经安装了驱动了,其他的全选上,按enter
是选择
之后等待一段时间,可能会安装失败,不知道什么原因,可以多尝试几次。
2.4 修改环境变量
在终端输入
sudogedit ~/.bashrc
在文件末尾添加
将cuda-11.8修改成自己的cuda版本
export PATH=/usr/local/cuda-11.8/bin:/usr/local/cuda-11.8/NsightCompute-2019.1${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
使刚才的配置生效
source ~/.bashrc
输入
nvcc -V
会输出当前的版本信息,即为安装成功
3、安装MMDetection
安装完上面所有的环境时,终于可以开始安装MMDetection了,可以参考官网的安装步骤
3.1 安装依赖:
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
如果之前你没安装过cython
,还需要安装cython
pip install cython
如果你开发并直接运行 mmdet,从源码安装它:
git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -v -e .
在install的时候可能会报错:ERROR: pip‘s dependency resolver does not currently take into account all the packages that are inst
可以试试网上说的,一个一个包去安装,但是我尝试失败了。
我的选择是将报错的那些包全部pip uninstall
卸载了,再将整个克隆下来的文件夹删除,重新克隆一遍,再重新安装依赖。
也可能会报错:Could not build wheels for pycocotools, which is required to install pyproject.toml-based
执行以下命令手动安装:
sudo apt-get install gcc
git clone https://github.com/cocodataset/cocoapi.git
cd cocoapi/PythonAPI
make
python setup.py build_ext install
可能会出现一些报错,根据具体情况谷歌或百度。在重新编译的时候记得将除pycocotlools
文件夹外的其他文件夹删除。
安装成功后输入pip list
会看到一个pycocotools
的包和mmdet
的包。
3.2 验证安装
我们需要下载配置文件和模型权重文件。
mim download mmdet --config rtmdet_tiny_8xb32-300e_coco --dest .
(可能会报错,但具体的报错还请百度。)
下载将需要几秒钟或更长时间,这取决于你的网络环境。完成后,你会在当前文件夹中发现两个文件 rtmdet_tiny_8xb32-300e_coco.py 和 rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth。
python demo/image_demo.py demo/demo.jpg rtmdet_tiny_8xb32-300e_coco.py --weights rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth --device cpu
你会在当前文件夹中的 outputs/vis 文件夹中看到一个新的图像 demo.jpg,图像中包含有网络预测的检测框。