如何调整图像分割掩模的大小?

Dan*_*ong 6 computer-vision image-segmentation deep-learning conv-neural-network semantic-segmentation

我为每个图像都有一个二进制掩码,每个掩码像素的值为 0 或 255。现在,因为我的图像分割需要固定大小的图像,所以我必须调整图像和掩码的大小。但是,当我调整图像大小时,掩码中会有一些位置的值大于 0 但小于 255。我如何知道要保留哪一个?因为图书馆要求只能有0或255。请帮助我,非常感谢。

Sha*_*hai 5

如果您使用插值而不是最近邻来调整大小,您确实会得到 [0, 255] 范围内的值。这不一定是坏事。如果您的损失函数是交叉熵,您可以将这些值视为“软标签”。也就是说,该像素没有对任何目标进行“硬”分配,而是对两个目标进行“软”概率分配。

将其推广到多标签分割掩模,以及更复杂的几何增强(例如,旋转、仿射……)。问题是
如何正确地将增强应用于离散目标图像?

例如,您有一个具有 81 个类别的语义分割掩码(即,每个像素都具有{0, 1, ..., 80}指示该像素的类别的值。这些目标掩码存储为索引 RGB 图像。您想要对输入图像应用一些几何增强,并且目标掩码。

正如Amitay Nachmani提出的那样,“快速而肮脏”的方法是使用最近邻插值法。

更“准确”和“正确”的方法是将目标掩码从HxW离散(整数)掩码转换为CxHxW 概率图:也就是说,每个通道将对应于每个像素属于 81 个类别中每个类别的概率。
请注意,这不是预测的分割(网络的输出),而是网络应该预测的目标。通过这种方式,您可以将每个目标像素表示为 1-hot 81-dim 向量。通过这种表示,您可以使用与输入图像本身相同的
插值方法(通常是双三次) 将增强单独应用于每个通道。 现在,对于每个目标像素,它属于 81 个类别中每个类别的概率,这些向量不再是 1-hot(由于插值和变换)。您可以将此映射转换回每个像素的类的硬分配,或者修改损失函数以使用这些软标签,以更好地捕获图像中不同区域之间的边界。
argmax


Ami*_*ani 3

如果要调整图像大小并希望结果图像仅具有原始范围内的值,则可以使用最近邻插值。