Python 将三维阵列另存为三维tif图像

Python 将三维阵列另存为三维tif图像,python,image-processing,tiff,scikit-image,Python,Image Processing,Tiff,Scikit Image,我正在尝试将3D阵列保存到tif图像。下面是我的代码。 我试着用两种方法做,他们都做得很好。他们给了我一个“tif”文件,matlab、ImageJ或mac上的旧预览都无法打开 test = maskImage[:,:,:] skimage.external.tifffile.imsave('output.tif',test)#first way with tif.TiffWriter('temp.tif', bigtiff=True) as tif:#second way for i in

我正在尝试将3D阵列保存到tif图像。下面是我的代码。 我试着用两种方法做,他们都做得很好。他们给了我一个“tif”文件,matlab、ImageJ或mac上的旧预览都无法打开

test = maskImage[:,:,:]
skimage.external.tifffile.imsave('output.tif',test)#first way

with tif.TiffWriter('temp.tif', bigtiff=True) as tif:#second way
 for i in range(test.shape[0]):
     tif.save(test[i], compress=6)

有人能帮我吗?我真的很感激

test
的形状和数据类型是什么?您好,形状是(6010241024),类型是nd.array。什么是
test.dtype
?另外,matlab无法打开的
的错误消息有哪些,ImageJ
数据类型为float64。ImageJ错误消息是“文件格式不支持,读卡器插件不可用。”我可以在Matlab中打开这些文件,但它们只是黑色的。我知道它们实际上不是空的,因为当我将Z轴设置为某个数字并在python中使用plt.show时,我可以看到包含内容的2D图像。是的,ImageJ TIFF阅读器不支持float64。尝试通过生物格式导入或将数据保存为float32
imsave('output.tif',test.astype('float32'))
。对于Matlab,可能只是设置正确的显示范围min和max的问题。
test
的形状和数据类型是什么?嗨,形状是(6010241024),类型是nd.array。什么是
test.dtype
?另外,matlab无法打开的
的错误消息有哪些,ImageJ
数据类型为float64。ImageJ错误消息是“文件格式不支持,读卡器插件不可用。”我可以在Matlab中打开这些文件,但它们只是黑色的。我知道它们实际上不是空的,因为当我将Z轴设置为某个数字并在python中使用plt.show时,我可以看到包含内容的2D图像。是的,ImageJ TIFF阅读器不支持float64。尝试通过生物格式导入或将数据保存为float32
imsave('output.tif',test.astype('float32'))
。对于Matlab,可能只是设置正确的显示范围min和max的问题。