我最近开始使用SimpleITK进行图像注册。对于我当前的项目,我需要注册 X 射线图像和 CT 图像,然后将逆矩阵应用于 X 射线图像上跟踪的 ROI 掩模。
我得到了带有以下行的逆矩阵:
inverse_transform = final_transform.GetInverse()
如何将转换应用于 ROI 掩码?
欢迎来到 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())
此 Jupyter 笔记本的最后一个单元格执行此操作。
另外两点意见:
- 不确定 X 射线到 CT 配准是什么意思。这是一个 2D/3D 注册,目前 SimpleITK 不支持,所以我假设您正在执行 2D/2D 或 3D/3D 注册。
- 由于您是 SimpleITK 的新手,我建议您查看我们主要的 Jupyter 笔记本存储库或更简洁的 IEEE ISBI'18 教程,以熟悉该工具包。