【发布时间】:2019-10-11 13:35:29
【问题描述】:
在PIL的P模式训练过程中,目标图像的原始值是20和16,所以为了训练分割任务,我将20转换为1和16转换为2。 但是当我想获取输出图像时,虽然我使用了代码,但图片没有着色
pred=pred.reshape([512,512]).astype('uint8')
(x, y) = pred.shape
for xx in range(x):
for yy in range(y):
if pred[xx, yy] == 2:
pred[xx, yy] = 16
elif pred[xx, yy] == 1:
pred[xx, yy] = 20
pp = Image.fromarray(pred).convert('P')
pp.save(r'E:\python_workspace\0711\run\pascal\{}.png'.format(i))
但输出图像是 我已经看到了 PIL.open 的值并将其转换为 numpy 以查看值,部分内容转换为 16 和 20,模式也是 P。 我该如何处理这个问题?
【问题讨论】:
-
你的意思是调色板 = np.array(im.getpalette()) colorVectors = np.reshape(palette,(-1,3)) colorVectors[0]=[255,0,255] im.putpalette (colorVectors.ravel().tolist()) 像这样?
标签: python-imaging-library pytorch image-segmentation