语义分割(以焊缝图像为例)

351 words

环境:featurize
GPU RTX 4000 CUDA v11.3

标注自己的语义分割数据集

Labelme标注数据集、SAM分割一切视觉大模型辅助标注、整理标注格式为整数掩码格式。最终采用的数据集包含焊缝图像192张,并使用伪彩色标注进行训练;
数据集格式转换工具
整数掩膜矩阵反映了原图对应像素的类别

安装配置MMSegmentation

安装Pytorch 用MIM安装MMCV 安装其它工具包 下载 MMSegmentation 安装 MMSegmentation 检查安装成功 设置Matplotlib中文字体

  • 云GPU环境无法保留,需要重复配置
    见featurize官方文档说明。

准备config配置文件

数据集配置文件

各类别名称及配色

注册数据集类

pipeline配置文件

数据集路径、预处理、后处理、DataLoader、测试集评估指标

训练 语义分割算法-KNet

训练KNet语义分割算法,调整参数。
文件名要变 例:

1
2
3
cd mmsegmentation

python tools/train.py lil-Configs/lilDataset_PSPNet_20230818.py
  • 可视化训练日志

bug:

  • ValueError: need at least one array to concatenate mask
    img_dir必须是jpg格式
  • FileNotFoundError: [Errno 2] No such file or directory: ‘数据集中一文件夹名’
    更新config文档,检查数据集路径
  • CUDA out of memeory
    调小 batch size;关闭所有内核,释放其它notebook占用的显存;重启实例,或者使用显存更高的实例

Comments