Я возился с Семанти c Сегментация изображений из Google DeepLab . Я хочу иметь возможность менять цвета для каждого семанти c (т.е. человек, кошка и т. Д. c). Метод, который создает цветовую карту, с тестом 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
), я получу другое цвета. Кроме того, есть ли другой способ получить разные цвета для семантики? Я просто не могу понять, как это работает, как создается палитра , используя сдвиг, как мы видим в коде. Я также связываю полный код, над которым я работаю, из DeepLab , в google colab: https://colab.research.google.com/drive/1a3TnfeEjVMg7N1Dz5d_UA8GN_iKHkG_l#scrollTo = na9DyxVl4_Ul