首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何计算分割结果的AvgD、RMSD、VOE和VD评价指标?

如何计算分割结果的AvgD、RMSD、VOE和VD评价指标?
EN

Stack Overflow用户
提问于 2018-09-06 03:40:15
回答 2查看 976关注 0票数 0

我正在做医学图像分割和三维图像处理,有两幅图像,一张是地面真实值(gt),一张是分割预测结果(segm),我需要计算另外两个指标。

  • 平均绝对表面距离(AvgD),
  • 平均均方根表面距离(RMSD),
  • 体积重叠误差(VOE)百分比,
  • 相对体积差(VD),以百分比计。

其中R是gt,S是segm。在python中,交集可以计算为np.logical_and(segm, gt)。但我不知道如何计算这四种评估指标。非常感谢你的帮助。

EN

回答 2

Stack Overflow用户

发布于 2018-09-06 07:58:36

假设segmgt是二进制ndarray,则可以计算VOE和VD:

代码语言:javascript
运行
复制
voe = 100 * (1. - np.logical_and(segm, gt).sum() / float(np.logical_or(segm, gt)))
vd = 100 * (segm.sum() - gt.sum()) / float(gt.sum())

请注意,您可以使用二进制掩码的.sum()来计算它的“大小”,即收S= segm.sum()

票数 0
EN

Stack Overflow用户

发布于 2021-11-11 13:52:24

是的,有一些基于表面距离的度量。

  • Hausdorff距离
  • Hausdorff距离95%百分位数
  • 平均(平均)表面距离
  • 中位表面距离
  • 表面距离标准差

https://pypi.org/project/seg-metrics/

这是一个简单的包,用于计算用于医学图像分割的不同指标(带有后缀.mhd、.mha、.nii、.nii.gz或.nrrd的图像),并将它们写入csv文件。

举个例子:

首先安装此软件包。pip install seg-metrics

代码语言:javascript
运行
复制
import seg_metrics.seg_metrics as sg

labels = [0, 4, 5 ,6 ,7 , 8]
gdth_file = 'data/gdth.mhd'  # ground truth image full path
pred_file = 'data/pred.mhd'  # prediction image full path
csv_file = 'metrics.csv'

metrics = sg.write_metrics(labels=labels[1:],  # exclude background
                  gdth_path=gdth_file,
                  pred_path=pred_file,
                  csv_file=csv_file, 
                  metrics=['hd', 'msd'])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52196179

复制
相关文章

相似问题

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