Keras多类语义分割标签

And*_*Wei 5 deep-learning conv-neural-network keras

对于语义细分,通常最后一层是

output = Conv2D(num_classes, (1, 1), activation='softmax')

我的问题是,我该如何准备标签?例如,如果我要识别10个类,每个类都有不同的颜色。对于每个标签图像,是否需要对一种特定颜色应用蒙版,将其转换为灰度图像,以便可以与模型输出中的1个滤镜进行比较?还是有一种方法可以传递一张完整的RGB图片作为标签?

sdc*_*cbr 3

网络的输出将是一个具有 10 个通道的图像,其中每个像素将包含一个总和为 1 的概率向量(由于 softmax)。示例:[0.1,0.1,0.1,0.05,0.05,0.1,0.1,0.1,0.1,0.2]。您希望标签图像具有相同的形状:具有 10 个通道的图像,每个像素都是一个二进制向量,其中类的索引为 1,其他位置为 0。您的分割损失函数就是像素级交叉熵。

为了实现:keras中的softmax有一个轴参数:https ://keras.io/activations/#softmax