geometry - 如何计算附加路径长度(APL)图像分割指标?

标签 geometry image-segmentation medical-imaging

背景

我正在尝试计算在放射治疗计划的分段分割中使用的附加路径长度 (APL) 指标。该指标起源于 this paper但我找不到任何关于如何计算它的解释,只有下图表示形状 A(黑色),以及创建形状 B 所需的表面编辑(黄色虚线):

added path length

目前我是 calculating this metric通过将所有形状 B 但不在形状 A 的表面像素相加(类似于 this )并乘以像素宽度(假设等距像素)以获得以毫米为单位的值。我还添加了一个公差参数,允许形状 A 和 B 的表面在将表面视为“已编辑”之前存在一些偏差。

问题

  1. 关于原始作者如何计算此指标的任何好的引用资料?
  2. 对于从体素到 mm 版本的这个指标有什么想法吗?

最佳答案

我遇到了同样的问题,并在 platipy 中实现了一个 APL 指标版本。代码可用 here .这是开源 Python 代码。

$ pip install platipy

(注意 - 如果出现错误,您可能必须使用 pip install -U pip 更新 pip)。

from platipy.imaging.label.comparison import compute_metric_total_apl

compute_metric_total_apl(label_A, label_B, distance_threshold=3)

这将返回以毫米为单位的(总)APL。您可能还会发现 compute_metric_mean_apl 函数很有用,它可以计算切片平均 APL。

您可能会注意到添加的变量 distance_threshold。如果两个轮廓比这个距离更近,则它们被认为是相同的。它用于使 APL 对 真实 差异更敏感(即忽略可忽略的体素尺度变化)。只需将其设置为零即可获得原始定义的 APL。

关于geometry - 如何计算附加路径长度(APL)图像分割指标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73286639/

相关文章:

algorithm - 简单的3d空间碰撞检查算法

python - CGAL 的 python 绑定(bind)发生了什么?

java - 如何在java中执行图像分割?

java - 关于在java opencv中使用霍夫圆检测虹膜和瞳孔圆

math - 如何在知道起点、终点和半径的圆弧圆周上找到点?

geometry - 给定一组任意点,我如何确定包含这些点的地理围栏?

ios - 如何使用分割模型输出张量?

python - 如何找到图像的填充大小?

python读取并转换原始3D图像文件