序言
在做计算机视觉相关研究的时候,往往需要复现大量的代码,涉及各种包的兼容及多个数据集和模型的构建(包依赖性超级强),这个过程比较繁琐且困难。为了推进计算机视觉领域的研究,OpenMMlab提供了一系列针对计算机视觉任务(姿态估计,图像分割等)的开源框架(类似于前端框架Vue,React)。利用这些框架,避免了从头构建项目(处理各种环境,数据集,模型等等让人分分钟爆炸的问题,这些问题对于深度学习研究的贡献来说繁琐且不必要)。开箱即用的SOTA模型和数据集,可以让研究人员更专注于模型和数据本身。这篇博客主要针对姿态估计领域的研究人员。按照本文的操作,你将会了解如何在windows上安装并使用mmpose进行姿态估计研究。
安装步骤
依赖环境
GPU
在进行任何深度学习研究之前,你都应该拥有英伟达显卡。 我使用的是3060ti。
Python环境
使用anaconda创建python环境并激活。
conda create --name openmmlab python=3.8 -y
conda activate openmmlab
PyTorch
安装深度学习框架,torch版本的选择会影响到后边其他包的安装(mmcv),如果你是3060ti,直接使用下面的安装命令即可。其他版本的GPU则需要根据包版本的依赖关系进行选择尝试。
pip install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio==0.9.1 -f https://download.pytorch.org/whl/torch_stable.html
CUDA和CUDNN
-
cuda版本必须和torch的cuda版本对应。由于我之后安装的torch的cuda版本是11.1,所以我下载的是cuda11.1版本。cuda下载地址打开下载的
.exe文件,选择默认的提取路径(安装完成之后会自动删除),点击OK。点击同意并继续。
选择自定义,点击下一步。
取消第二个和第三个勾选,取消
CUDA中的Visual Studio integration,点击下一步。选择默认安装位置,点击一下步,开始安装。
运行以下命令查看是否安装成功。
nvcc --version输出如下,则代表安装成功。
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2020 NVIDIA Corporation Built on Mon_Oct_12_20:54:10_Pacific_Daylight_Time_2020 Cuda compilation tools, release 11.1, V11.1.105 Build cuda_11.1.relgpu_drvr455TC455_06.29190527_0 -
下载
cuda11.1版本对应的cudnn。cudnn下载地址解压下载的压缩包,复制
libincludebin三个文件夹到cuda的安装文件夹(默认为C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1),替换cuda安装文件夹下的libincludebin。粘贴到这里。
然后配置
cudnn相关环境变量,路径需要和cuda安装路径一致。C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\bin C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\libnvvp C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\include C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\lib打开
cuda的安装文件夹(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.1\extras\demo_suite),在文件夹下打开终端,执行以下命令,检验cudnn是否安装成功。./deviceQuery.exe输出如下:
./bandwidthTest.exe输出如下:
两条命令都出现
PASS说明cudnn环境配置成功。
cuda和cudnn安装成功后,可以检验一下torch是否可用。执行下面的命令:
python -c "import torch; print('Torch version:', torch.__version__); print('CUDA available:', torch.cuda.is_available()); print('CUDA version:', torch.version.cuda)"
输出如下,则代表torch安装成功。
Torch version: 1.9.1+cu111
CUDA available: True
CUDA version: 11.1
使用MIN安装MMEngine和MMCV
安装openmim:
pip install -U openmim
安装mmengine:
mim install mmengine==0.10.4
安装mmcv,这里安装的mmcv版本需要和torch版本,cuda版本一一对应,参考官方文档进行选择。
pip install mmcv==2.0.0rc4 -f https://download.openmmlab.com/mmcv/dist/cu111/torch1.9/index.html
安装mmdet
mim install mmdet==3.1.0
安装MMPose
git clone https://github.com/open-mmlab/mmpose.git
cd mmpose
pip install -r requirements.txt
pip install -v -e .
# "-v" 表示输出更多安装相关的信息
# "-e" 表示以可编辑形式安装,这样可以在不重新安装的情况下,让本地修改直接生效
验证安装
为了验证mmpose是否安装正确,您可以通过以下步骤运行模型推理。
- 下载配置文件和模型权重文件
下载过程往往需要几秒或更多的时间,这取决于您的网络环境。完成之后,您会在当前目录下找到这两个文件:mim download mmpose --config td-hm_hrnet-w32_8xb64-210e_ap10k-256x256 --dest .td-hm_hrnet-w32_8xb64-210e_ap10k-256x256.py和hrnet_w32_ap10k_256x256-18aac840_20211029.pth, 分别是配置文件和对应的模型权重文件。 - 验证推理
python demo/image_demo.py tests/data/ap10k/000000000004.jpg td-hm_hrnet-w32_8xb64-210e_ap10k-256x256.py hrnet_w32_ap10k_256x256-18aac840_20211029.pth --out-file vis_results1.jpg --draw-heatmap
如果一切顺利,您将会得到这样的可视化结果:
结语
至此,我们的mmpose安装之旅就结束了,接下来可以参考mmpose官方文档,开始建立自己的姿态估计项目。(注:如果在安装过程中遇到任何问题,欢迎私信我讨论,看到后我会抽空恢复您。)Keep learning!guys!