【PIL】图像分割竞赛中8位深调色板模式的mask读取与保存(PASCAL VOC) |
您所在的位置:网站首页 › rgb模式图像的颜色位深度可为 › 【PIL】图像分割竞赛中8位深调色板模式的mask读取与保存(PASCAL VOC) |
【PIL】图像分割竞赛中8位深调色板模式的mask读取与保存(PASCAL VOC)
目录:
【PIL】图像分割竞赛中8位深调色板模式的mask读取与保存(PASCAL VOC)1.调色板图像原理2.代码2.1 读取mask转换为GT2.2 保存调色板2.3 保存预测的mask为调色板模式(P模式)
3.参考
1.调色板图像原理
首先理解调色板图像的结构,与RGB模式不同,调色板图像中每个像素为0~255中的一个数,代表颜色索引,而调色板图像本身还会存储一个叫调色板(palette)的数据结构, 最多存储256组rgb颜色。图像中的每一个像素,通过颜色索引, 可以在调色板中获得相应的颜色。 下面是某场比赛的mask数据和它对应的调色板展示: 这一步的目的是为了保存模型预测的mask时逻辑上的美观,当然图方便也可以直接用原数据mask中的调色板, 可忽略此步。 img_pil = Image.open('mask/xxx.png') palette = img_pil.getpalette() # 获取调色板 np.save('cmap.npy', palette) img_pil.close()这样原数据集中的调色板数据就保存在了cmap.npy文件中,之后每次保存mask时就可以直接用cmap的。 2.3 保存预测的mask为调色板模式(P模式) cmap = np.load('cmap.npy') img_pil = Image.fromarray(img, mode='P') img_pil.putpalette(cmap.tolist()) # 赋予调色板,要从numpy变为list # img_pil.show() img_pil.save('pred/'+fname)如果图方便,也可以直接img_pil.putpalette(palette) #2.2中的 3.参考自制VOC数据集的踩坑记录和解决方案:使用PIL生成8位深的RGB图像 语义分割标签——mask的读取与保存 numpy转PIL.Image: 处理Mask图像为单通道的彩色/灰度图colormap.png voc分割数据集 pil调色板 自制VOC数据集的踩坑记录和解决方案:使用PIL生成8位深的RGB图像 关于Image模块的调色板 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |