gpt4 book ai didi

python - SimpleITK 调整图像大小

转载 作者:行者123 更新时间:2023-11-28 22:21:46 27 4
gpt4 key购买 nike

我有一组 3D 卷,我正在使用 SimpleITK

阅读
import SimpleITK as sitk
for filename in filenames:
image = sitk.ReadImage(filename)

每个体积都有不同的大小、间距、原点和方向。此代码为不同的图像产生不同的值:

print(image.GetSize())
print(image.GetOrigin())
print(image.GetSpacing())
print(image.GetDirection())

我的问题是:如何将图像转换为具有相同的大小和间距,以便在转换为 numpy 数组时它们都具有相同的分辨率和大小。像这样的东西:

import SimpleITK as sitk
for filename in filenames:
image = sitk.ReadImage(filename)
image = transform(image, fixed_size, fixed_spacing)
array = sitk.GetArrayFromImage(image)

最佳答案

做到这一点的方法是使用具有固定/任意大小和间距的重采样函数。下面的代码片段显示了这个“reference_image”空间的构造:

reference_origin = np.zeros(dimension)
reference_direction = np.identity(dimension).flatten()
reference_size = [128]*dimension # Arbitrary sizes, smallest size that yields desired results.
reference_spacing = [ phys_sz/(sz-1) for sz,phys_sz in zip(reference_size, reference_physical_size) ]

reference_image = sitk.Image(reference_size, data[0].GetPixelIDValue())
reference_image.SetOrigin(reference_origin)
reference_image.SetSpacing(reference_spacing)
reference_image.SetDirection(reference_direction)

有关交 key 解决方案,请查看 this Jupyter notebook它说明了如何在 SimpleITK 中使用可变大小的图像进行数据扩充(上面的代码来自笔记本)。您可以从 SimpleITK notebook repository 中找到其他笔记本也有用。

关于python - SimpleITK 调整图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48065117/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com