使用python GDAL生成COG(Cloud Optimized GeoTIFF)

本文介绍了GDAL 3.1版本新增的COG(Cloud-Optimized GeoTIFF)栅格驱动,使得在warp和translate中直接输出COG格式成为可能,简化了之前的操作流程。通过gdalwarp和gdal_translate命令示例展示了如何生成COG文件,并提供了相应的Python函数实现。内容包括设置nodata值、压缩选项以及重采样方法等,帮助用户高效地转换和处理GeoTIFF数据。

更新

gdal 3.1版本更新了COG栅格driver,现在可以在warp或translate里直接用-of COG输出了,之前那一大堆都不需要了
官网的示例:

gdalwarp src1.tif src2.tif out.tif -of COG
gdal_translate world.tif world_webmerc_cog.tif -of COG -co TILING_SCHEME=GoogleMapsCompatible -co COMPRESS=JPEG

官网文档:https://gdal.org/drivers/raster/cog.html#raster-cog


参考资料:

  1. https://trac.osgeo.org/gdal/wiki/CloudOptimizedGeoTIFF#HowtogenerateitwithGDAL
  2. https://gdal.org/programs/gdal_translate.html
  3. https://gdal.org/drivers/raster/cog.html
  4. https://geoexamples.com/other/2019/02/08/cog-tutorial.html/

几个主要函数

def translateToCOG(in_ds, out_path):
    """
    将dataset转为cog文件
    :param in_ds: 输入dataset
    :param out_path: 输出路径
    :return:
    """
    im_bands = in_ds.RasterCount
    for i in range(im_bands):
        # 获取nodata和波段统计值
        nodataVal = in_ds.GetRasterBand(i + 1).GetNoDataValue()
        maxBandValue =
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值