打开tiff图像堆栈在python与gdal

时间:2013-09-27 21:27:03

标签: python image tiff gdal

我正在尝试使用python中的gdal打开tiff堆栈。它是一个单独的文件,其中有多个tiff文件。当我在ImageJ中打开它时,我可以滚动堆栈。但是做“gdal.Open(file).ReadAsArray()只会加载第一个tiff文件。有没有办法加载整个堆栈?

1 个答案:

答案 0 :(得分:2)

迭代GetSubDatasets并且(如果所有TIFF页面具有相同的尺寸)创建一个numpy数组:

import numpy, gdal, gdalconst
dataset = gdal.Open("multipage.tiff", gdalconst.GA_ReadOnly)
data = numpy.array([gdal.Open(name, gdalconst.GA_ReadOnly).ReadAsArray()
                    for name, descr in dataset.GetSubDatasets()])