在python中将三维体积图像调整为指定大小(skiliage.misc.imresize已删除)

2024-10-01 13:39:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将3D医学PET图像调整为与CT图像相同的大小,到目前为止,我还没有找到有效的解决方案。 我想将PET图像(256256159)调整为与CT图像(960)相同的大小。但是,这些维度稍后可能会更改

到目前为止,我试过:

skimage.transform.resize(PETimg, (960,960,960), order=0)

这会导致内存错误(并且似乎产生了错误的维度):

MemoryError: Unable to allocate 19.8 GiB for an array with shape (3, 960, 960, 960) and data type float64

我还尝试通过在图像中包装使用PIL和cv2,但两者似乎都与3D图像不兼容

我很幸运使用了

scipy.ndimage.zoom(ArrayDicomPET, (960/256, 960/256, 960/159), order=1)

但正如标题中所述,我只想指定我的输出像素大小并选择插值方法,就像skimage.misc.imresize

有人知道3D图像的解决方案吗?我宁愿不降低撇渣率


Tags: to内存图像错误transformorder解决方案医学