SegFormer的环境配置包括Windows和Linux系统(超级详细)

  • Post author:
  • Post category:linux




SegFormer的环境配置包括Windows和Linux系统

segformer的环境配置在于MMCV-full这个库的配置,在Windows下配置这个文件十分的折磨人。但是在我查询的过程中找到了一个别人复现的版本,可以避开MMCV这个库。


首先需要会配置pytorch环境,详细配置步骤见另外一篇文章



pytorch超级详细的安装教程


先不要急于配置,需要根据显卡的版本来确定配置的pytorch的版本。



Windows系统下面的配置(这是在Windows环境下找到的最简单的运行版本)

如果使用mmcv的方法进行配置,配置过程是十分的折磨人,并且经常会出现一些莫名其妙的错误,很是折磨人。但是我在查询的过程中找到了一个别人复现的版本,这个版本很简单就能够运行SegFormer,但是相对的效果可能没有官方版好。(我没有拿来实验,猜的)

这个项目只需要配置torch==1.2.0 ,项目连接如下:


项目地址


因为这个torch版本很早了,现在在官网上面下载的pytorch版本都很高,目前已经出到2.0的版本了,因此这个环境需要下载之前的pytorch版本,具体下载方法看上面链接里面的文章,链接如下:


pytorch以往版本链接


配置好环境之后,直接打开运行项目中的

predict.py

就可以了。按照操作输入图片路径就可以

在这里插入图片描述
效果图如下:

在这里插入图片描述



Linux系统下环境配置

因为模型版本很早,因此GitHub上面的代码给出的cuda版本是10.2,但是目前服务器显卡有很多是30系列的显卡(3090之类的),,该系列的显卡已经不支持cuda版本是10.x的环境了,需要11.x的环境,博主在踩了居多坑的之后终于运行成功。


segformer-Github地址


首先是环境部分:

  • 显卡3090
  • 环境:pytorch1.7.0
  • CUDA:11.1(安装mmcv的时候按照版本是11.0安装的)
  • mmcv-full == 1.2.7(根据网上的方案尝试了1.4.2,1.6.1全部失败,把环境都搞坏了)
  • 其他需要安装的包如下:
pip install torchvision==0.8.2
pip install timm==0.3.2
pip install opencv-python==4.5.1.48
pip install IPython

我是先安装的

mmcv-full

在安装的上面的包


mmcv-full版本


如果设置的pytorch和cuda版本与上面的一致,直接运行下面的命令就好

pip install mmcv-full==1.2.7 -f https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/index.html


简直不要太方便


安装完这些包之后,需要执行一条命令,

需要注意此时目录应该在Segformer下面

pip install -r requirements.txt

完成上面的步骤之后

需要在再执行一条命令

pip install -e . --user


网上说如果这一步出现错误是mmcv-full配置出现错误的原因,我按照上面的方法进行配置并没有出现错误


然后需要下载权重文件,建议直接下载到

Segformer

文件夹下面下载,我下载这两个,下载链接在GitHub链接里面。

在这里插入图片描述
下载完成之后,执行命令就可以看到结果图了

命令如下:

python demo/image_demo.py demo/demo.png local_configs/segformer/B1/segformer.b1.1024x1024.city.160k segformer.b1.1024x1024.city.160k.pth --device cuda:0 --palette cityscapes


注意如果选择ade的模型文件,所有文件都要与ade有关,如果选择city的模型文件,语句中的所有文件都要是city相关的,最后一个参数需要修改为cityscapes,如果选择ade同样


结果图如下:

在这里插入图片描述
在这里插入图片描述



版权声明:本文为weixin_45527999原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。