处理大量医学影像的时候,可能会夹杂一些非CT或者MRI的影像,从而导致批量的循环报错,比如在一堆CT中掺杂了一个重建图像:
通过读取文件的header可以看到nii的shape是长度为5的数组:
print(nii_image.shape)
(512, 512, 8, 1, 3)
这是提示nii图像一共由8张重建图像组成,每张的shape是(512,512,1,3),其中的1是指图像的深度,3是指通道数。这里可以直接简单地去掉深度通道从而生成缩略图
if len(nii_image.shape)==5:
slides = nii_image.shape[2]//2
thumbnail = nii_image[:,:,slides,0,:]