python gdal读取tif栅格数据

安装方法:

  1. 手动下载whl安装包https://www.lfd.uci.edu/~gohlke/pythonlibs/
  2. pip install 安装包
# -*- coding: utf-8 -*-

from osgeo import gdal

dataset = gdal.Open(r'F:\MOD11A1.A2018152.LST_Day_1km.tif')

#栅格矩阵的列数
im_width = dataset.RasterXSize

#栅格矩阵的行数
im_height = dataset.RasterYSize

#波段数
im_bands = dataset.RasterCount

#仿射矩阵,左上角像素的大地坐标和像素分辨率。
#共有六个参数,分表代表左上角x坐标;东西方向上图像的分辨率;如果北边朝上,地图的旋转角度,0表示图像的行与x轴平行;左上角y坐标;
#如果北边朝上,地图的旋转角度,0表示图像的列与y轴平行;南北方向上地图的分辨率。
im_geotrans = dataset.GetGeoTransform()
#地图投影信息
im_proj = dataset.GetProjection()

#读取某一像素点的值
#(1)读取一个波段,其参数为波段的索引号,波段索引号从1开始(我打开的这幅图像只有一个波段)
band = dataset.GetRasterBand(1)

#(2)用ReadAsArray(, , , ),读出从(xoff,yoff)开始,大小为(xsize,ysize)的矩阵。以下为读取整幅图像
im_datas = band.ReadAsArray(0,0,im_width,im_height)

#(3)获取某一或某几个像素的值
data = im_datas[0,1046]
print(data)
#释放内存。如果不释放,在arcgis或envi中打开该图像时显示文件已被占用
del dataset

你可能感兴趣的:(python gdal读取tif栅格数据)