Python GDAL Raster 学习笔记 之 gdal_array

最近在学习python gdal栅格计算,为了以后使用方便,就写了读写转换存储的函数,在即将告成的时候,发现了新大陆,就是gdal_array包,很多功能都已经有了,我还在闭门造车,重复造轮子。。。好吧,那就学习学习gdal_array包吧!

常用函数有如下几个:

flip_code(array.dtype) -> 返回数据类型(GDT_Byte/GDT_CFloat32/...)

def flip_code(code):

OpenArray() -> Dataset (Dataset是数据集类)

def OpenArray(array, prototype_ds=None, interleave='band'):
  return ds

LoadFile() -> 将图像读取成numpy.ndarray

def LoadFile(filename, xoff=0, yoff=0, xsize=None, ysize=None,
             buf_xsize=None, buf_ysize=None, buf_type=None,
             resample_alg=gdal.GRIORA_NearestNeighbour,
             callback=None, callback_data=None, interleave='band',
             band_list=None):

 SaveArray() -> 将array写入Gtiff文件

def SaveArray(src_array, filename, format="GTiff", prototype=None, interleave='band'):

 DatasetReadAsArray() -> numpy.ndarray

def DatasetReadAsArray(ds, xoff=0, yoff=0, win_xsize=None, win_ysize=None, buf_obj=None,
                       buf_xsize=None, buf_ysize=None, buf_type=None,
                       resample_alg=gdal.GRIORA_NearestNeighbour,
                       callback=None, callback_data=None, interleave='band',
                       band_list=None):

 DatasetWriteArray() -> 将array写入ds数据集所在位置

def DatasetWriteArray(ds, array, xoff=0, yoff=0,
                      band_list=None,
                      interleave='band',
                      resample_alg=gdal.GRIORA_NearestNeighbour,
                      callback=None, callback_data=None):

 

posted @ 2022-11-17 10:56  HaijianYang  阅读(314)  评论(0编辑  收藏  举报