我正在搞乱谷歌DeepLab的语义图像分割。我希望能够为每个语义(即人、猫等)更改颜色。使用 PASCAL 基准创建颜色图的方法是
def create_pascal_label_colormap():
"""Creates a label colormap used in PASCAL VOC segmentation benchmark.
Returns:
A Colormap for visualizing segmentation results.
"""
colormap = np.zeros((256, 3), dtype=int)
ind = np.arange(256, dtype=int)
for shift in reversed(range(8)):
for channel in range(3):
colormap[:, channel] |= ((ind >> channel) & 1) << shift
ind >>= 3
return colormap
我想如果我ind
用另一个(而不是2
拥有3
)改变值,我会得到不同的颜色。另外,是否有另一种方法可以为语义获得不同的颜色?我似乎无法猜测它是如何工作的,如何使用我们在代码中看到的移位来创建颜色图。我还链接了我在谷歌 colab 上的DeepLab处理的完整代码:
https ://colab.research.google.com/drive/1a3TnfeEjVMg7N1Dz5d_UA8GN_iKHkG_l#scrollTo=na9DyxVl4_Ul