深度学习计算机视觉开源系统OpenMMLab(mmsegmentation、mmdetection、mmpose)环境配置【详细、可运行】
创始人
2024-12-26 08:07:52
0

OpenMMLab(mmsegmentation、mmdetection、mmpose)环境配置

  • OpenMMLab
    • 简介
    • 优势:
  • 一、Windows/Linux下环境配置(以mmsegmentation v1.2.2(最新版)为例)
    • 0. 确认安装版本信息
      • 1)确认电脑显卡版本
      • 2)确认mmcv对应版本
      • 3)确认版本
    • 1. 安装CUDA和cuDNN
    • 2. 创建conda环境,下载pytorch
    • 3. 安装 mmcv
    • 4. 安装 MMSegmentation
    • 5. 添加环境变量(不一定要做)
  • 二、检验配置是否成功
    • 1. 下载配置文件和模型文件
    • 2. 推理验证

OpenMMLab

简介

链接: OpenMMLab
在这里插入图片描述
OpenMMLab基于PyTorch开发了MMEngine提供通用训练和评估引擎,MMCV提供神经网络算子和数据转换,作为整个项目的基础。自2018年10月首次发布以来,OpenMMLab已发布30多个视觉库,实现了300多个算法,并包含2000多个预训练模型。

优势:

  • 提供高质量的库,降低算法重新实现的难度
  • 创建针对各种后端和设备的高效部署工具链
  • 为计算机视觉研发奠定坚实的基础
  • 通过全栈工具链弥合学术研究和工业应用之间的差距

一、Windows/Linux下环境配置(以mmsegmentation v1.2.2(最新版)为例)

0. 确认安装版本信息

1)确认电脑显卡版本

命令行窗口输入:

nvidia-smi 

查看显卡支持的最高CUDA的版本,根据CUDA版本确认cudnn版本,先不下载
在这里插入图片描述
我这里最高支持12.3版本

2)确认mmcv对应版本

https://download.openmmlab.com/mmcv/dist/cu118/torch2.1.0/index.html
替换路径中的cu118、torch2.1.0,先搜有没有对应的whl文件,(mmsegmentationV1.2.2要求pytorch版本在1.13以上),这是openmmlab提供的对应cuda、torch版本的mmcv预编译软件包,有对应版本,后面方便下载
(没有对应torch和cuda版本的预编译的whl文件,则从源码开始编译的。后面可以看到下载的是个tar.gz文件而不是whl文件,从源码开始编译很慢)

3)确认版本

经过上两步,我这里确认使用的版本如下:
CUDA:11.8
cuDNN:选择cuDNNV8.x.x版本的for CUDA11.x版本
pytorch:2.1.0

1. 安装CUDA和cuDNN

在base环境中安装CUDA和cuDNN,这里不赘述,可以自行搜索安装教程
CUDA:https://developer.nvidia.com/cuda-downloads
cuDNN:https://developer.nvidia.com/rdp/cudnn-download
先下载安装CUDA,再将cuDNN中的文件复制到CUDA的对应文件夹下即可

2. 创建conda环境,下载pytorch

新建conda环境,并激活:

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

安装前面确定的pytorch版本:
链接: pytorch各版本下载命令
我这里是:

conda install pytorch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 pytorch-cuda=11.8 -c pytorch -c nvidia 

3. 安装 mmcv

依次执行以下命令,如果前面版本选择没问题,这里应该比较顺利:

pip install -U openmim mim install mmengine mim install "mmcv>=2.0.0" 

4. 安装 MMSegmentation

依次执行以下命令安装分割库文件:

git clone -b main https://github.com/open-mmlab/mmsegmentation.git cd mmsegmentation pip install -v -e . pip install ftfy pip install regex 

5. 添加环境变量(不一定要做)

如果报错与CUDA_HOME有关则添加系统环境变量:
变量名:CUDA_HOME
变量值:pathtoCUDA\CUDA\v11.x

二、检验配置是否成功

1. 下载配置文件和模型文件

在mmsegmentation文件夹路径下运行:

mim download mmsegmentation --config pspnet_r50-d8_4xb2-40k_cityscapes-512x1024 --dest . 

将mmseg\models\losses\cross_entropy_loss.py文件中:
在第19行和第240行修改avg_non_ignore,改为avg_non_ignore=True。
运行:

2. 推理验证

在mmsegmentation文件夹路径下运行

python demo/image_demo.py demo/demo.png configs/pspnet/pspnet_r50-d8_4xb2-40k_cityscapes-512x1024.py pspnet_r50-d8_512x1024_40k_cityscapes_20200605_003338-2966598c.pth --device cuda:0 --out-file result.jpg 

在当前文件夹中将看到一个新图像 result.jpg,其中所有目标都覆盖了分割 mask:
在这里插入图片描述

安装成功!
这个报错不用管:

D:\software\anaconda3\envs\openmmlab\lib\site-packages\mmengine\visualization\visualizer.py:196: UserWarning: Failed to add , please provide the `save_dir` argument.   warnings.warn(f'Failed to add {vis_backend.__class__}, ' 

如果报错:

assert (mmcv_min_version <= mmcv_version < mmcv_max_version), \ AssertionError: MMCV==2.2.0 is used but incompatible. Please install mmcv>=2.0.0rc4. 

修改mmsegmentation\mmseg_init_.py中的:
在这里插入图片描述

相关内容

热门资讯

总算了解!!约局吧作必弊脚本,... 总算了解!!约局吧作必弊脚本,微乐游戏竞技团辅助(透视)确实真的有工具(哔哩哔哩)1、点击下载安装,...
不少玩家反映!智星菠萝辅助,微... 不少玩家反映!智星菠萝辅助,微乐老友广东辅助器(透视)好像是有方法(哔哩哔哩)1)微乐老友广东辅助器...
重大消息!约局吧如何查看是否有... 重大消息!约局吧如何查看是否有挂,微信微乐辅助器使用教程(透视)竟然有有插件(哔哩哔哩)1、点击下载...
推荐攻略!拱趴大菠萝怎么开挂,... 推荐攻略!拱趴大菠萝怎么开挂,微信微乐挂有没有(透视)本来是真的有app(哔哩哔哩)微信微乐挂有没有...
玩家必看科普!xpoker透视... 玩家必看科普!xpoker透视辅助,微乐自建房辅助软件如何下载(透视)切实是真的有技巧(哔哩哔哩)1...
玩家亲测!哈糖大菠萝怎么开挂,... 玩家亲测!哈糖大菠萝怎么开挂,微乐自建房插件详细教程(透视)好像真的有器(哔哩哔哩)1、操作简单,无...
盘点几款!哈糖大菠萝有挂吗5个... 盘点几款!哈糖大菠萝有挂吗5个常用方法,微乐陕西小程序破解器(透视)都是存在有软件(哔哩哔哩)1、金...
有玩家发现!竞技联盟破解版最新... 有玩家发现!竞技联盟破解版最新版,微乐家乡官方app下载(透视)总是存在有技巧(哔哩哔哩)1、实时微...
玩家必看教程!!we poke... 玩家必看教程!!we poker免费辅助器,微乐自建房黑科技辅助工具下载(透视)总是是有软件(哔哩哔...
专业讨论!!哈糖大菠萝有挂吗5... 专业讨论!!哈糖大菠萝有挂吗5个常用方法,微乐小程序免费黑科技下载方法(透视)一直真的是有脚本(哔哩...