2013-09-27 3 views
0

Я пытаюсь открыть стек tiff, используя gdal в python. Это один файл, внутри которого есть mutliple tiff-файлы. Когда я открываю его в ImageJ, я могу прокручивать стек. Но делать «gdal.Open (файл) .ReadAsArray() загружает только первый файл tiff.Есть ли способ, которым я могу загрузить весь стек?Открытый стек tiff изображения в python с gdal

ответ

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()])