使用恒源云服务器+VSCODE+MMsegmentation进行语义分割训练(史上最详细)

欢迎大家批评指正

一、恒源云服务器

深度学习的实验离不开算力的支持,在计算资源有限的情况下,使用云服务器进行深度学习训练是一个不错的选择。
这里我使用的是恒源云平台
1.进行账号注册
可以使用手机验证登录
2.学生认证
恒源云对学生有很大优惠
3.租借实例
以我为例,我租借的是单卡3090,可以选择按量付费和按周付费,由于跑实验需要长时间使用,按量付费很有可能需要和别人抢卡对我来说太麻烦了。这里我选择的是Pytorch1.11 Cuda11.3 Python3.8的版本。

单卡3090

二、VSCODE连接远程服务器

1.这个步骤很多文章中都有提到,可以参考VSCODE连接远程服务器,其实对熟悉这个操作的人来说这步其实很简单,只需要输入对应的账号和密码即可。
2.通过在服务器端下载python扩展,以实现后续成功编译

在这里插入图片描述若不在服务器上下载python插件,编译器会找不到编译环境,无法编译。

三、配置服务器mmsegmentation环境

1.环境的配置是很让人头疼的,我当初没有选择mmsegmentation镜像,因为担心恒源云官网mmsegmentation镜像版本太老,所以便自己创建了一个没有mmsegmentation镜像的。
2.使用服务器自带的(base)环境,如图所示:
在这里插入图片描述激活环境

conda activate base

在这里插入图片描述激活成功,查看是否能找到cuda
在这里插入图片描述
按上图步骤依次输入

python
import torch
torch.__version__
torch.cuda.is_available()

不出意外的话返回为True,如果返回为False则说明torch和cuda的版本不对,这个就需要自己到pytorch官网进行选择对应的pytorch和cuda下载。选择对应版本的pytorch和cuda
3.安装mmsegmentation
这里参考官方文档的最佳实践,由于我们使用了原来的base环境,所以创建虚拟环境和安装pytorch的步骤可以省略,如下图:

在这里插入图片描述接下来按照最佳实践进行配置即可。
最佳实践中会有一个验证程序,运行后的结果是这样的

在这里插入图片描述

四、mmsegmentation训练自己的数据集

1.这个环节我是参考这个大佬的博客进行的AESA相控阵,前面的步骤按照他的要求来是没有问题的;
2.但是,在所有配置确认完之后,会报出一个AttributeError,其原因是,/hy-tmp/mmsegmentation/mmseg/datasets/,路径下自己定义的dataset根据stare.py直接复制过来的会出错,只需要把最后一行代码注释掉即可。
在这里插入图片描述3.同时,mmsegmentation二分类图像的mask像素不能为0,255,而是要求为0,1
因此需要对掩码图像进行一个转换,以下是批量将图片像素由0,255转化为0,1的python脚本

import cv2
import os

path = '/hy-tmp/mmsegmentation/trainData/***' #自己定义路径
path_save = '/hy-tmp/mmsegmentation/trainData/***/' #自己定义路径
name_list = os.listdir(path)

for name in name_list:
    print(name)
    img_path = os.path.join(path, name)
    img = cv2.imread(img_path,-1)
    img = img/255
    cv2.imwrite(path_save + str(name), img)
#img = cv2.imread('/media/cyy_1/mmsegmentation/my_data/potsdam/ann_dir/train/3.png',-1)
#img = img/255
#print(img)
#cv2.imwrite('image.png',img)'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值