憨批的语义分割6——制作语义分割数据标签

憨批的语义分割6——制作语义分割数据集

  • 学习前言
  • 制作工具Labelme
  • Labelme的使用
  • 标签文件内容

学习前言

有些小伙伴问怎么制作数据集,其实我也没有去制作过……所以也要学学啦,

在这里插入图片描述

制作工具Labelme

这里要用到Labelme工具。
在cmd终端运行

pip install labelme

即可安装!
憨批的语义分割6——制作语义分割数据标签_第1张图片
安装完成后直接使用:
在这里插入图片描述
运行结果如下:
憨批的语义分割6——制作语义分割数据标签_第2张图片

Labelme的使用

点击画面上的open就可以打开图片。

点击create polygons就可以开始描点了。
在这里插入图片描述
比如我们对猫描点。

点击Save就可以保存了!

然后新建一个cmd窗口。

cd到json文件所放的地方。
在这里插入图片描述
运行如下代码:

labelme_json_to_dataset  <文件名>.json

即:
在这里插入图片描述
得到如下文件:
憨批的语义分割6——制作语义分割数据标签_第3张图片
其中label.png就是所得标签。

标签文件内容

利用如下代码查看label.png的格式。

img = Image.open("猫_json/label.png")
img = np.array(img)
print(img.shape)

输出为:

(1080, 1920)

其实现在这个png文件已经是单通道的了,一个通道8个字节。对于本例而言,里面最后一维度只有两个值,背景为0,猫身上的像素点为1。

我之前在对语义分割训练内容进行讲解的时候说到过,标签文件里面RGB三个通道的值都是它的类,这个标签与之同理,只是从三个通道数减少到了一个通道数,对于这个通道数仅为1的标签文件而言,其实直接获取它单个像素点上的值就是它的类。

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