其他分享
首页 > 其他分享> > rasterio实用教程(3)——图像掩膜提取

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