Python 如何使用gdal导入tif?

Python 如何使用gdal导入tif?,python,dataset,gdal,Python,Dataset,Gdal,如何使用gdal导入tif 我试图用Python以可用的格式获取tif文件,以便分析数据。然而,每次导入它时,我只会得到一个空列表。这是我的密码: xValues = [447520.0, 432524.0, 451503.0] yValues = [4631976.0, 4608827.0, 4648114.0] gdal.AllRegister() dataset = gdal.Open('final_snow.tif', GA_ReadOnly) if dataset is None:

如何使用gdal导入tif

我试图用Python以可用的格式获取tif文件,以便分析数据。然而,每次导入它时,我只会得到一个空列表。这是我的密码:

xValues = [447520.0, 432524.0, 451503.0]
yValues = [4631976.0, 4608827.0, 4648114.0]

gdal.AllRegister()
dataset = gdal.Open('final_snow.tif', GA_ReadOnly)

if dataset is None:
    print 'Could not open image'
    sys.exit(1)

data = np.array([gdal.Open(name, gdalconst.GA_ReadOnly).ReadAsArray() for name, descr in       dataset.GetSubDatasets()])
print 'this is data ', data`

它总是打印一个空列表,但不会抛出错误。我查了其他问题,比如[这个]()可能有什么问题

对于osgeo.gdal,它应该如下所示:

from osgeo import gdal
gdal.UseExceptions()  # not required, but a good idea
dataset = gdal.Open('final_snow.tif', gdal.GA_ReadOnly)
data = dataset.ReadAsArray()
其中,
data
是用于单波段光栅的2D阵列,或用于多波段光栅的3D阵列


另一个具有的选项如下所示:

import rasterio
with rasterio.open('final_snow.tif', 'r') as r:
    data = r.read()
其中,
数据
始终是一个3D数组,第一个维度作为带索引