首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以适当的顺序获得分割掩码中的通道?

如何以适当的顺序获得分割掩码中的通道?
EN

Stack Overflow用户
提问于 2021-08-25 09:48:59
回答 1查看 177关注 0票数 1

我正在尝试解决新冠肺炎CT扫描的分割问题,我也尝试过使用MedSeg免费浏览器工具(https://www.medseg.ai/)为自己分割图像。我想这样做,以增加我的数据集,现在有4个类别:磨玻璃,巩固,肺其他和背景。我发现了一个数据集,它只包含带有磨玻璃标签的面具。我想要分割肺其他和背景手动在他们。但是,这些手动分割的掩码的通道顺序与我的其他图像不同:

手动分段口罩:

consolidation

  • 3
  • 0 -背景
  • 1-磨玻璃
  • 2-肺其他

适当的口罩:

consolidation

  • 2 -
  • 0 -磨玻璃
  • 1-
  • 3-背景

当我下载准备好手动分段掩码时,它的形状是(41,512,512)。下载后,我最终添加了一个维度,因此它变成(41,512,512,1)。,而不是使用这个调色板= [0], [1], [2], [3]应用这个函数。

代码语言:javascript
复制
def mask_to_onehot(mask, palette):
"""
Converts a segmentation mask (H, W, C) to (H, W, K) where the last dim is a one
hot encoding vector, C is usually 1 or 3, and K is the number of class.
"""
semantic_map = []
for colour in palette:
    #print('colour',colour)
    equality = np.equal(mask, colour)
    #print('equality',equality)
    class_map = np.all(equality, axis=-1)
    semantic_map.append(class_map)
semantic_map = np.stack(semantic_map, axis=-1).astype(np.float32)
return torch.from_numpy(semantic_map)

在那之后,新面具和旧面具不同了。有人能给我点建议吗?我做错什么了?提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-06 18:55:04

您可以在MedSeg中打开设置菜单(使用掩码打开数据)并使用“from...to.”。下面的序列应该适用于您:0到5,然后1到0,然后2到1,然后3到2,然后5到3。

当然,在python中也可以自动执行类似的操作,例如maskmask==0=5、maskmask==1=0等等。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68920586

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档