【OpenMMSegmentation踩坑实记】

OpenMMSegmentation踩坑实记

简介

本次踩坑过多,目前也没有很清晰的解决思路,记录下来方便后续的问题排查。
我的目的是在本地配置好OpenMMSegmentation的环境,以跑一个demo为短期目标,以可以使用本地资源(目前只有CPU)进行模型训练及推理为长期目标。
我会重新按照官网的教程操作,记录每轮安装过程中遇到的问题及查找到的解决方法,并在(查到了确切的方法乐呵呵地or我道心破碎只想着一切都毁灭咬牙切齿地)卸载环境重新安装时新起一轮。
各位大佬如果发现我踩了某些坑而不自知的话,恳请您留言提醒,万分感谢

我的环境

CPU:i5-10500 3.10GHz
内存:16GB
操作系统:Win10专业版64位(按教程激活)
相关软件:
Anaconda3 2022.10(Python 3.9.13 64-bit)
Microsoft Visual C++ 2015-2019 Redistributable(x86) - 14.29.30133
Microsoft Visual C++ 2012 Redistributable(x86) - 11.0.61030
Git 2.40.0
在这里插入图片描述
(最初写的时候并没有安装最上面的Microsoft Build Tools 2015)
后续如果有安装软件的需要,我会将其记录在对应的轮次中。

第一轮

打开官网教程,第一步我已安装好了Anaconda就不需要Miniconda了,第二步创建并激活一个conda虚拟环境。这里踩过的一个坑是直接打开windows命令行的话很多conda指令会执行不了,使用conda init也无法解决,我猜测是跟安装时没有添加anaconda的环境变量而是选择手动添加有关,但由于不是关键问题,所以我选择一直在anaconda powershell prompt里执行后续指令。

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

在这里插入图片描述

第三步安装Pytorch,由于我只有cpu,所以选择第二种命令。

conda install pytorch torchvision cpuonly -c pytorch

中间需要输入y确认执行,没截到图所以特别标注一下

第四步要安装mmcv,这里mmcv与mmcv-full的差异、mmcv-full与torch的版本协调是我前面安装过程中遇到的核心问题,但是现在既然要重新踩坑,那我就当不知道,直接按官网提示来。
pip安装mim

pip install -U openmim

在这里插入图片描述

接着使用mim安装mmcv-full

mim install mmcv-full

接下来命令行滚滚而来,
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
超长的命令行提示中出现了三个直接报错,我觉得这里的根本问题是最后这个Microsoft Visual C++ 14.0 or greater is required. 并且请注意我的环境里是存在一个”Microsoft Visual C++ 2015-2019 Redistributable(x86) - 14.29.30133 “的,不知道为何还会报这个错。
按照我查到的资料,这个问题有三种解决办法:一是直接安装这个Microsoft Visual C++ 14.0,但它很大很麻烦,尤其是想到以后电脑里会出现一大堆不同版本的visual c++我就头皮发麻,所以放到最后再选;二是安装一个Microsoft Visual C++ Build Tools;三是下载编译好的轮子包;四是从源码编译mmcv-full,但这种也需要安装C++的编译环境(我的猜测),堪称事倍功半;五是今天新查找到的一篇经验总结,作者使用了pip安装mmcv-full。这种方法需要找到对应版本mmcv-full的下载地址,与第三种方法相同的坑点是当前默认下载安装的pytorch版本是2.0.0,而找不到对应版本的mmcv-full,后面的轮次中我会使用历史版本的pytorch配合这种办法安装。2023/04/03更新 发现这俩种方法不就是同一种么(lll¬ω¬)
那么这次我选择第二种方法,也是我认为比较治本的办法,万一直接解决了呢。安装时勾选了”使用C++的桌面开发“,其他选项按默认状态进行安装。
安装完成后重启电脑,重新运行mmcv-full的安装指令

mim install mmcv-full

这次被我发现了一个华点,命令行中的下载地址在浏览器中直接打开会报错,换成torch1.9等版本就正常了。
在这里插入图片描述
这里卡了一段时间,应该是在编译。
在这里插入图片描述
成功安装,看来后续不用踩这个坑了。

第五步,安装MMSegmentation,选择从源码安装。

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

如果git拉代码失败,可以继续拉,网络问题比较玄学(之前安装的时候试个三四次就拉下来了),也可以试试国内镜像源,不过我暂时没找到稳定好用的。pip安装依赖的时候同理,我用了清华源,参考这里

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -v -e .

在这里插入图片描述

第六步,下载配置文件和模型权重文件。

mim download mmsegmentation --config pspnet_r50-d8_512x1024_40k_cityscapes --dest .

在这里插入图片描述
我在这里曾经遇到过一个报错是XXXMMSegmentation未安装,解决办法是重新装了一遍。

第七步,验证,直接跑demo

python demo/image_demo.py demo/demo.png pspnet_r50-d8_512x1024_40k_cityscapes.py pspnet_r50-d8_512x1024_40k_cityscapes_20200605_003338-2966598c.pth --device cpu --out-file result.jpg

在这里插入图片描述
在这里插入图片描述
它居然报了几个warning就跑出来了?!!那我昨天折腾的那些都是神马?!!
我本来以为这次还得搞个好几轮,把各种坑重新踩一遍重新改一遍,它居然告诉我结束了?!!so crazy

那这篇踩坑记先写到这儿吧,等后面有时间了把之前踩的坑仔细梳理一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值