我正在努力训练一个语义分割网络(E-Net),特别是高质量的人体分割。为此,我收集了“Supervisely Person”数据集,并使用提供的API提取了注释掩码。此数据集包含高质量的掩码,因此我认为它将提供比例如COCO数据集更好的结果。在
监督-示例如下:原始图像-背景真相。
首先,我想介绍一下模型的一些细节。网络本身(Enet_arch)返回来自最后一个卷积层的logit和通过tf.nn.sigmoid(logits,name='logits_to_softmax')产生的概率。在
我使用的是sigmoid交叉熵的基本真理和返回的逻辑,动量和指数衰减的学习率。模型如下所示。在self.global_step = tf.Variable(0, name='global_step', trainable=False)
self.momentum = tf.Variable(0.9, trainable=False)
# introducing weight decay
#with slim.arg_scope(ENet_arg_scope(weight_decay=2e-4)):
self.logits, self.probabilities = Enet_arch(inputs=self.input_data, num_classes=self.num_classes, batch_size=self.batch_size) # returns