对于语义图像分割,我知道您通常有一个包含图像的文件夹和一个包含相应蒙版的文件夹。在我的例子中,我有尺寸为(32,32,32)的灰度图像。面具自然具有相同的尺寸。标签将另存为强度值(值1=标签1,值2=标签2,依此类推)。共4个班。假设我找到了一个使用keras模型API构建的模型。我如何知道如何准备我的标签数据,以使其被模型接受?它依赖于损失函数吗?它是在模型(输入参数)中定义的吗?我只是添加另一个维度(4,32,32,32),其中4代表4个不同的类,并对其进行一次热编码吗?
我想构建一个用于语义分割的3D卷积神经网络,但我无法理解如何在keras中正确地输入数据。预测的输出应该是一个4通道的3D图像,每个通道显示每个像素属于某个类别的概率值。
发布于 2019-07-10 22:47:37
Input()函数定义给定模型的输入张量的形状。对于3D图像,通常需要5D张量,例如(None, 32, 32, 32, 1),其中None指的是批量大小。因此,训练图像和标签必须重塑形状。Keras提供了to_categorical函数对标签数据进行一次性编码(这是必要的)。生成器的使用有助于输入数据。在这种情况下,我不能使用keras中的ImageDataGenerator,因为它只能处理RGB和灰度图像,因此必须编写自定义脚本。
https://stackoverflow.com/questions/56888245
复制相似问题