我在处理nii标签时遇到的问题,我把他们转化为numpy数组以后,想把不同shape的nii数组叠加起来,以便传入神经网络。有的nii的shape是(512.512.24)有的是(512,512,18)。这是因为切片的数量不同,所以第三个维度不同,这导致我没法把他们加起来,像stack一些方法都要求数组大小相同。
slices = [pydicom.dcmread(path + "/" + s, force=True) for s in os.listdir(path)]
for s in os.listdir(path):
if os.path.splitext(s)[1] == ".gz":
mask = nib.load(path + "/" + s).get_fdata()
print(mask.shape)
load_masks = np.empty([512, 512, 24], dtype=float)
load_masks += mask
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
可以把不同shape的nii数组加起来,或者有什么别的办法处理不同大小的nii文件,还是或许先不转化为数组,要怎么处理呢