Python GDAL Raster 学习笔记 之 gdal_array
最近在学习python gdal栅格计算,为了以后使用方便,就写了读写转换存储的函数,在即将告成的时候,发现了新大陆,就是gdal_array包,很多功能都已经有了,我还在闭门造车,重复造轮子。。。好吧,那就学习学习gdal_array包吧!
常用函数有如下几个:
flip_code(array.dtype) -> 返回数据类型(GDT_Byte/GDT_CFloat32/...)
1 | def flip_code(code): |
OpenArray() -> Dataset (Dataset是数据集类)
1 | def OpenArray(array, prototype_ds=None, interleave= 'band' ):<br> return ds |
LoadFile() -> 将图像读取成numpy.ndarray
1 2 3 4 5 | 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文件
1 | def SaveArray(src_array, filename, format= "GTiff" , prototype=None, interleave= 'band' ): |
DatasetReadAsArray() -> numpy.ndarray
1 2 3 4 5 | 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数据集所在位置
1 2 3 4 5 | def DatasetWriteArray(ds, array, xoff=0, yoff=0, band_list=None, interleave= 'band' , resample_alg=gdal.GRIORA_NearestNeighbour, callback=None, callback_data=None): |
作者:HaijianYang
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理