Python 3.x 使用shapefile剪裁或遮罩多波段图像

Python 3.x 使用shapefile剪裁或遮罩多波段图像,python-3.x,image,mask,shapefile,clip,Python 3.x,Image,Mask,Shapefile,Clip,下面的代码允许用户使用简单的多边形形状文件剪裁图像(1个带)。然而,即使我尝试了一些变化,我也无法将其应用于由多个波段组成的图像。我想做的是阅读一个Geotiff图像,它有几个波段,并将它们全部剪辑,而不需要将它们分割成不同的图像 from rasterio.mask import mask import geopandas as gpd img = rasterio.open("..\Image.tiff") aoi = gpd.read_file("..\PO

下面的代码允许用户使用简单的多边形形状文件剪裁图像(1个带)。然而,即使我尝试了一些变化,我也无法将其应用于由多个波段组成的图像。我想做的是阅读一个Geotiff图像,它有几个波段,并将它们全部剪辑,而不需要将它们分割成不同的图像

from rasterio.mask import mask
import geopandas as gpd

img = rasterio.open("..\Image.tiff")
aoi = gpd.read_file("..\POLYGON.shp")
geometry = aoi["geometry"]
clipImg, clipImg_Transform = mask(img, geometry, crop=True, invert=False)
clipImg_Meta = img.meta.copy()
clipImg_Meta.update({"driver": "GTiff",
                     "height": clipImg.shape[1],
                     "width": clipImg.shape[2],
                     "transform": clipImg_Transform})