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

6

我有每个图像的二进制掩膜,其中每个掩膜像素的值为0或255。现在由于我的图像分割需要固定大小的图像,因此我必须调整图像和掩膜的大小。然而,当我调整图像大小时,掩膜中会出现值大于0但小于255的位置。我该如何知道保留哪一个?因为库要求只有0或255。请帮帮我,非常感谢。

2个回答

4
如果您使用的插值方式不是最近邻插值,那么您确实会得到在[0, 255]范围内的值。这并不一定是坏事。如果您的损失函数是交叉熵,您可以将这些值视为“软标签”。也就是说,该像素没有“硬性”分配给任何目标,而是对两个目标进行了“软性”的概率分配。
将此推广到多标签分割掩模,并扩展到更复杂的几何增强(例如旋转、仿射变换等)。问题是如何正确地将增强应用于离散目标图像?
例如,您有一个语义分割掩模,其中包含81个类别(即,每个像素具有在{0, 1, ..., 80}中的值,表示该像素的类别)。这些目标掩模存储为索引RGB图像。您想要将某些几何增强应用于输入图像和目标掩模。
“快速而粗略”的方法是使用最近邻插值,正如Amitay Nachmani所提出的那样。
一种更“准确”和“正确”的方法是将目标掩码从一个HxW离散(整数)掩码转换为一个CxHxW概率图:即,每个通道都对应于每个像素属于81个类别的概率。
请注意,这不是预测分割(网络的输出),而是网络应该预测的目标。这样,您可以将每个目标像素表示为1热81维向量。
使用此表示,您可以将增强应用于每个通道,使用与输入图像本身相同的插值方法(通常是双三次插值)。
现在,对于每个目标像素,它属于81个类别的概率已知,这些向量不再是1热的(由于插值和变换)。您可以使用argmax将此映射转换回像素的硬分类分配,或者修改损失函数以使用这些软标签更好地捕捉图像中不同区域之间的边界。

3

如果你想调整图片大小,并且希望结果图像仅包含原始范围内的值,那么可以使用最近邻插值。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接