使用labelme进行图片语义分割数据的标注(如何转换为训练的灰度图,即像素值为类别值)

其实最新版本的labelme工具已经支持类别直接转换为像素值了,下面一一来看:

首先安装labelme软件,可以根据这个安装labelme

安装完成后,进行标定, 此时会生成.json文件,然后到刚才安装的labelme的路径找到json_to_dataset.py

我的路径为:G:\Anaconda\Lib\site-packages\labelme\cli

这里相信的解释了为什么生成的label.png就是8位的数据,大家可以看看

然后进行调用,方法是在cmd下输入: labelme_json_to_dataset <文件路径>.json

会生成如下文件:通过.json文件生成一个文件夹,文件夹里就是生成的文件包含原始图片img.png,标签文件label.png,标签文本文件,可视化文件lanbel_viz.png

下面看看标签文件的内容:

 从上图可以看到这里有5类,那么label.png的像素值应该是以类别的方式进行填充,那么我们看看像素值,我是通过打印了label.png的像素值观察的,对了,这里不能通过opencv读取图片,需要通过PIL包进行读取,代码如下:

from PIL import Image
import numpy as np

img = Image.open("F:/电警大图/Desktop/dh_34_80_202_51_0724-062844_674_json/label.png")
img = np.array(img)

print("img.shape", img.shape)
print()
height,width = img.shape
for i in range(height):
    for j in range(width):
        print(img[i][j],end="")
    print("") 

下面就是输出的像素值:

通过上面可以看出像素值就是类值,因此不需要转换,只是需要通过PIL进行读取label.png的图片即可

 

 

 

 

 

 

 

 

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值