【问题标题】:SimpleITK read io.ByteIOSimpleITK 读取 io.ByteIO
【发布时间】:2020-06-25 15:55:47
【问题描述】:

我有一个代表上传图像 (.nii) 的 io.ByteIO 对象,有没有办法从中获取 simpleITK 对象? 一个不好的解决方法是写入文件然后用 simpleITK 读取它

【问题讨论】:

    标签: python simpleitk


    【解决方案1】:

    很遗憾,SimpleITK 的 Image IO 不适用于流。它只会从文件中读取。

    看起来您可以使用 nibabel 从您的流中读取图像。然后将其转换为numpy数组,再将numpy转换为SimpleITK。这很难看,但至少你不会回到磁盘。

    这是一篇关于在 nibabel 中读取流的帖子: https://mail.python.org/pipermail/neuroimaging/2017-February/001345.html

    以下是从 nibabel 到 numpy 的方法: How to convert Nifti file to Numpy array?

    然后使用 numpy 数组,您可以调用 SimpleITK.GetImageFromArray 来创建 SimpleITK 图像。

    这些步骤不会保留任何图像元信息,因此您必须复制图像间距、原点和方向等所有内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多