Python教程

python调用gdal2tiles实现栅格影像TMS切片

本文主要是介绍python调用gdal2tiles实现栅格影像TMS切片,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

前言

一直以来,作为一个GIS开发者,都想自己去实现栅格切片和矢量切片。前面的博文中,已经介绍了如何实现矢量切片,刚刚进入GIS行业的人一般都是用GeoServer进行栅格切片,速度效率很低。这里介绍一下如何使用代码高效地进行栅格切片,主要是依赖gdal2tiles这个python库。

安装

我的电脑环境是

  • python3.9.5
  • GDAL3.3.0

执行下面的安装命令 安装gdal2tiles

pip install gdal2tiles

切片代码

  • 常用参数
参数名示意示例默认值
第一参数,输入影像文件test.tif
第二参数,切片存储区位置test/
zoom切片等级区间“2-5”、“2-”、“10”
tilesize切片大小,单位像素256
resampling重采样方法average, near, bilinear, cubic, cubicspline, lanczos, antialias, mode, max, min, med, q1, q3average
processes并行进程数
resume修复模式,只生成缺少的瓦片truefasle
srcnodata输入影像的nodata值
  • 代码
import gdal2tiles

if __name__ == '__main__':
    gdal2tiles.generate_tiles('test.tif', 'test/', np_processes=2, zoom='7-9')

测试数据

使用的是一个内乡县的tif文件

测试影像

生成结果

生成结果的目录如下:
切片结果

点击其中生成的利用leaflet的预览文件leaflet.html,记得勾选切片结果,运行效果如下图所示:
结果预览

这篇关于python调用gdal2tiles实现栅格影像TMS切片的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!