微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Python如何将4维数组21,32,1024,1024保存为tif图像生物医学

如何解决使用Python如何将4维数组21,32,1024,1024保存为tif图像生物医学

我想在tiff文件中保存一堆数组,以便显微镜软件可以在通道和z平面中将其读取为图像。因此,这是一个4维数组:(21,32,1024,1024)。但是我找不到办法。

例如,使用io.imsave(os.path.join(outpath),stack2),此图像将保存为一堆单独的图像,但不会保存在代表21个z平面的32个通道的集合中。

您知道实现这一目标的任何方法吗?

解决方法

由于TIFF规范不处理多通道Z堆栈,因此需要将其他元数据与图像数据一起保存。有两种常见的元数据格式:OME-TIFFImageJ hyperstacks用于在TIFF中保存ZCYX图像以进行生物成像。 OME-TIFF得到更多软件的支持。 Tifffile可以读写两种格式:

import numpy
from tifffile import imwrite

image = numpy.zeros((21,32,1024,1024),dtype='uint16')

# write OME-TIFF
imwrite('zcyx.ome.tif',image)

# write ImageJ hyperstack
imwrite('zcyx.tif',image,imagej=True)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。