You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装rasterio遇阻,求替代工具实现栅格文件按shp裁剪

替代Rasterio的Shapefile裁剪Raster工具方案

1. GDAL Python绑定

GDAL是栅格/矢量处理的底层核心库,Rasterio本身基于它开发,直接使用GDAL的Python接口可实现相同功能,且安装通常更稳定。

示例代码:

from osgeo import gdal

def clip_raster(input_raster_path, shapefile_path, output_raster_path):
    # 配置裁剪参数
    warp_options = gdal.WarpOptions(
        cutlineDSName=shapefile_path,
        cropToCutline=True,
        dstNodata=0  # 可根据你的栅格数据调整无数据值
    )
    # 执行裁剪
    gdal.Warp(output_raster_path, input_raster_path, options=warp_options)

# 调用示例
clip_raster("input.tif", "clip_boundary.shp", "clipped_output.tif")

安装命令:

  • Conda:conda install gdal -y
  • Pip:pip install gdal(注:pip安装可能需要提前在系统层面安装GDAL依赖库)

2. PyRSGIS

这是封装了GDAL的轻量Python库,API更简洁,适合快速实现栅格矢量操作,安装依赖少、速度快。

示例代码:

from pyrsgis import raster, vector

# 读取输入数据
raster_ds, raster_data = raster.read("input.tif")
vector_ds = vector.read("clip_boundary.shp")

# 执行裁剪
clipped_data, clipped_ds = raster.clip(raster_data, raster_ds, vector_ds)

# 保存结果
raster.write(clipped_data, clipped_ds, "clipped_output.tif")

安装命令:pip install pyrsgis

3. GDAL命令行工具(无需Python代码)

如果不需要编写Python脚本,直接用GDAL自带的gdalwarp命令行工具是最快的方式,无需额外Python库,只要系统安装了GDAL即可。

执行命令:

gdalwarp -cutline clip_boundary.shp -crop_to_cutline input.tif clipped_output.tif

安装GDAL命令行工具:

  • Conda:conda install gdal -y
  • Linux(Debian/Ubuntu系):sudo apt install gdal-bin
  • Windows:通过OSGeo4W或Conda安装

内容的提问来源于stack exchange,提问作者Jui Sen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 16:03:10