Python Keras:图像分割中的空洞标记像素

Python Keras:图像分割中的空洞标记像素,python,keras,image-segmentation,Python,Keras,Image Segmentation,我目前有一个keras模型,它使用完全卷积网络将每个像素分类为属于对象或背景。因为我只有2个类(对象或背景),所以我在输出层使用了一个sigmoid激活和二进制交叉熵损失 但是,对于一些图像,我不确定某些像素属于哪一类,因此我想将这些像素标记为void,这样网络权重就不会根据这些像素的预测进行更新。是否有一种方法来处理Keras中的无效标签 通常,一种方法是为每个像素指定损失权重,并将空像素的权重设置为0。(例如,对于tensorflow)。我研究了在Keras中使用样本权重,但我无法使其起作用

我目前有一个keras模型,它使用完全卷积网络将每个像素分类为属于对象或背景。因为我只有2个类(对象或背景),所以我在输出层使用了一个sigmoid激活和二进制交叉熵损失

但是,对于一些图像,我不确定某些像素属于哪一类,因此我想将这些像素标记为void,这样网络权重就不会根据这些像素的预测进行更新。是否有一种方法来处理Keras中的无效标签


通常,一种方法是为每个像素指定损失权重,并将空像素的权重设置为0。(例如,对于tensorflow)。我研究了在Keras中使用样本权重,但我无法使其起作用,因为它似乎不适用于加权像素。

因此,最终证明样本权重可以使用。由于样本重量只能有2个维度(批次大小,没有预测),所以技巧是将模型的输出重塑为平面

我的模型定义的最后两行:

model.add(Reshape((-1, 1)))
model.compile(loss='binary_crossentropy', optimizer='adam', sample_weight_mode='temporal', metrics=['binary_accuracy'])
我使用整形(-1,1)),因为我的输入图像具有可变的尺寸。当我训练模型时,我还必须使用扁平标签和样本重量


我找到了答案。

因此,最终证明样品重量可以使用。由于样本重量只能有2个维度(批次大小,没有预测),所以技巧是将模型的输出重塑为平面

我的模型定义的最后两行:

model.add(Reshape((-1, 1)))
model.compile(loss='binary_crossentropy', optimizer='adam', sample_weight_mode='temporal', metrics=['binary_accuracy'])
我使用整形(-1,1)),因为我的输入图像具有可变的尺寸。当我训练模型时,我还必须使用扁平标签和样本重量


我找到了答案。

>该功能似乎不适合此用途。如果成功了,就成功了。我会用这个,但一定要说清楚。对不起。我还不够清楚。我无法使用示例权重功能进行图像分割。我认为这是不可能的。我已经编辑了文本。>该功能似乎不适用于此目的。如果成功了,就成功了。我会用这个,但一定要说清楚。对不起。我还不够清楚。我无法使用示例权重功能进行图像分割。我认为这是不可能的。我已经编辑了文本。