SimpleITK:应用逆变换

Posted

技术标签:

【中文标题】SimpleITK:应用逆变换【英文标题】:SimpleITK: apply inverse transformation 【发布时间】:2018-08-29 11:16:45 【问题描述】:

我最近开始使用 SimpleITK 进行图像配准。对于我目前的项目,我需要配准一张 X 射线图像和一张 CT 图像,然后将逆矩阵应用到追踪 X 射线图像的 ROI 掩模上。

我用这条线得到了逆矩阵:

inverse_transform = final_transform.GetInverse()

如何将变换应用到 ROI 蒙版?

【问题讨论】:

【参考方案1】:

欢迎来到 SimpleITK!

假设您的 X 射线是配准中的固定图像(CT 是移动的),那么配准的结果是从 X 射线到 CT 的变换映射点。您需要做的就是使用逆变换将您的 ROI 蒙版图像重新采样到 CT 上。

transformed_labels = sitk.Resample(xray_roi_mask, ct_image, inverse_transform, sitk.sitkNearestNeighbor, 0.0, #out of bounds pixel color xray_roi_mask.GetPixelID())

this Jupyter notebook 的最后一个单元格执行此操作。

另外两个 cmets:

    不确定您所说的 X 射线到 CT 配准是什么意思。这是 SimpleITK 目前不支持的 2D/3D 注册,所以我假设您正在进行 2D/2D 或 3D/3D 注册。 由于您是 SimpleITK 的新手,我建议您查看我们的 main Jupyter notebook repository 或更简洁的 IEEE ISBI'18 tutorial 以熟悉该工具包。

【讨论】:

谢谢!这正是我需要做的。我正在执行 3D/3D 注册。我不正确地使用了“X 射线”,我有一张来自 X 射线术中系统的图像。并感谢您的链接。

以上是关于SimpleITK:应用逆变换的主要内容,如果未能解决你的问题,请参考以下文章

simpleITK 与 anaconda python

SimpleITK中术语

SimpleITK 和 Nibabe

SimpleITK 和 Nibabe

如何在 Python 中实现 itk 图像和 SimpleITK 图像之间的转换?

无法安装 SimpleITK 库