在遥感或者GIS相关任务中,处理TIFF影像是我们绕不开的东东,下面就是利用Python进行最基本的一些操作,主要影像的读写操作、裁剪。需要准备的Python包
rasterio
rasterio.mask
geopandas
shapely
import math
import rasterio
from rasterio.mask import mask
import geopandas as gpd
from shapely.geometry import mapping
读取TIFF文件
RGB_imgpath = r"E:\sentinel.tif" # 路径
# 打开文件 rasterio.io.DatasetReader,包含了栅格的所有信息
src = rasterio.open(RGB_imgpath)
既然读取了栅格,那么他的属性该怎么读取呢?
raster = src.read() # 读取TIFF的栅格值
width=src.width # width * height =行 * 列
height=src.height # width * height =行 * 列
count=src.count # 波段数
crs=src.crs # 投影
transform=src.transform, # 仿射变换参数
我们对栅格进行了处理,处理结果需要带地理坐标写入硬盘,这是针对整张图的写入(如果涉及裁剪需要更新地理坐标,如后所述),具体方法如下:
with r