深度学习计算机视觉开源系统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中的:
在这里插入图片描述

相关内容

热门资讯

透视有挂!wepoker透视作... 透视有挂!wepoker透视作弊挂!详细辅助教程,pokertime挂百度知道(详细辅助AI教程);...
wepokeai代打的胜率!x... wepokeai代打的胜率!x-poker辅助软件,(wePOke)先前是有挂(有挂攻略);原来确实...
透视辅助!心悦怎么开挂(辅助挂... 透视辅助!心悦怎么开挂(辅助挂)一直真的是有挂(详细辅助攻略教程)心悦怎么开挂辅助器中分为三种模型:...
透视计算!德州牌面分析器最新版... 透视计算!德州牌面分析器最新版本更新内容,wepoker透视作弊挂(详细辅助解密教程);小薇(透视辅...
透视辅助!青龙辅助最新下载(辅... 透视辅助!青龙辅助最新下载(辅助挂)都是真的有挂(详细辅助解密教程)青龙辅助最新下载辅助器中分为三种...
WePoKe透明挂!推扑克辅助... WePoKe透明挂!推扑克辅助器,(wopoker)一向真的有挂(有挂攻略)是一款可以让一直输的玩家...
透视苹果版!德扑辅助器免费版下... 透视苹果版!德扑辅助器免费版下载官方网站,HH poker德州挂(详细辅助解密教程)1、许多玩家不知...
wepoke确实有挂!wpk专... wepoke确实有挂!wpk专用辅助程序,(WepokE)一向是有挂(有挂透视);原来确实真的有挂(...
透视辅助!同乡游有辅助软件吗(... 透视辅助!同乡游有辅助软件吗(辅助挂)竟然有挂(详细辅助普及教程);1、完成同乡游有辅助软件吗透视辅...
透视辅助!governor o... 1、透视辅助!governor of poker2破解,德州扑克辅助器免费版(详细辅助wepoke教...