使用labelme构建自己的语义分割数据集并训练的过程

主要根据本视频进行总结(非常不错的视频,推荐!)
https://www.bilibili.com/video/av75562599?p=9

在这之前,最好将自己所有的图片resize为416*416

1. 进行语义分割数据集的标注(体力活)

(1)下载语义标注的软件labelme,需要在命令行中激活环境(如activate tensorflow-gpu)后

activate tensorflow-gpu
pip install labelme

即可安装标注工具labelme,使用时激活环境后在命令行输入labelme回车即可:

activate tensorflow-gpu
labelme

(2)选择左侧打开文件夹:
使用labelme构建自己的语义分割数据集并训练的过程_第1张图片
选择装有需要标注的图片的文件夹/make_dataset/before。
然后一张一张进行标注(标注开始时点击左侧的create polygons,若需要调整则点击edit polygons,标注完一张后点击save,就会保存为一个json文件),注意保存于/make_dataset/before文件夹中。

2. 文件操作

(3)这样,/make_dataset/before文件夹中就会存有所有的图片以及标注后产生的json文件。这时候再在这个文件夹中建立一个txt文件:class_name.txt,文件中包含了所有的类名:
使用labelme构建自己的语义分割数据集并训练的过程_第2张图片
(4)这时候运行json_to_dataset.py,结果是/make_dataset/output中会出现每一张照片对应的文件夹。
使用labelme构建自己的语义分割数据集并训练的过程_第3张图片
(5)再运行get_jpg_and_png.py,会得到png文件夹中一堆标注好的标签。
使用labelme构建自己的语义分割数据集并训练的过程_第4张图片
(6)运行get_train_txt.py,会发现文件夹中出现了train_data.txt文件。

(7)将标注图片全部复制到dataset2/jpg文件夹中,将所有标注标签全部复制到dataset2/png文件夹中。

(8)将之前生成的train_data.txt文件复制到dataset2目录下,改名为train.txt

3. 训练

(9)运行train.py,要注意图片的宽和高要改为自己的(注意,如果为了更省事的话,直接把自己所有的图片resize成416*416即可)

(10)运行predict.py,生成预测图片,注意里面的路径输入自己想要 预测图片的路径即可。

你可能感兴趣的:(语义分割)