rasterio实用教程(3)——图像掩膜提取
作者:互联网
文章目录
背景
掩膜提取是指基于矢量面范围内的栅格像素值,并输出为新图像的操作。
因为涉及矢量面数据获取,所以需要引入fiona包,未安装的读者请自行安装。
实战
import fiona
import rasterio
import rasterio.mask
mask = 'D:/A_2021寒假/城市群相关/Data/0Slab中国基础地理数据/China/China_single.shp'
src_img = 'input.tif'
dst_img = 'output.tif'
# 读取矢量面
with fiona.open(mask, "r") as shapefile:
shapes = [feature["geometry"] for feature in shapefile]
# 读取输入图像
with rasterio.open(src_img) as src:
out_image, out_transform = rasterio.mask.mask(src, # 输入数据
shapes, # 掩膜数据
crop=True, # 是否裁剪
nodata=0) # 缺省值
out_meta = src.meta # 元数据
# 更新元数据
out_meta.update({"driver": "GTiff",
"height": out_image.shape[1],
"width": out_image.shape[2],
"transform": out_transform}) # 转换函数
# 输出掩膜提取图像
with rasterio.open(dst_img, "w", **out_meta) as dest:
dest.write(out_image)
标签:src,实用教程,掩膜,image,mask,rasterio,out 来源: https://blog.csdn.net/lyandgh/article/details/113776825