【pascal voc数据集制作】mask图格式

本文介绍了VOC数据集中用于语义分割的8位深调色板图,这类图像是PIL.Image的P模式,每个像素用0-255的数字代表颜色索引。通过调色板映射这些索引到RGB颜色。示例代码展示了如何读取、转换并保存带有调色板的mask图像,强调了不能使用OpenCV进行读取和保存。
摘要由CSDN通过智能技术生成

8位深调色板图

VOC数据集中的mask图虽然看上去是彩色的,但不同于RGB图像,它是8位深的调色板图。

调色板图:每个像素为0~255中的一个数,代表颜色索引。调色板图像本身会存储一个叫调色板(palette)的数据结构, 最多存储256组rgb颜色。图像中的每一个像素,通过颜色索引, 可以在调色板中获得相应的颜色。

path="E:\\deeplab\\data\\table_tennis\\SegmentationClass\\000079.png"
image=Image.open(path)
print(image.mode)

# output
P

保存调色板

  • 将mask转为PIL.Image格式
  • 使用imgviz中的Label colormap给mask添加调色板
  • 保存PIL.Image格式的图像。不可以使用OpenCV进行读取
def save_colored_mask(mask, save_path):
	img=Image.fromarray(mask.astype(np.uint8),mode="P")
    colormap = imgviz.label_colormap()
    img.putpalette(colormap.flatten())
    img.save(save_path)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值