2. DEM数据获取与预处理实战
构造线性体提取对DEM的几何精度和坐标一致性极为敏感。同一研究区内若混用了不同来源、不同基准、不同分辨率的DEM,后续的坡度、山脊线、谷线提取结果会出现错位、断裂或虚假线性体。因此,本节把“拿到可用DEM”作为一条完整的数据准备链来处理:先明确研究区与数据源,再统一下载与命名,随后完成坐标系统一、投影转换、裁剪与重采样,最后用检查项确认数据可用。以下示例以某山地研究区(约东经102°—103°、北纬25°—26°)为教学假设,参数均为示例值,实际作业需按真实研究区替换。
一、明确研究区与数据源选择
动手下载前,先用矢量边界确定研究区范围,并向外扩展5%—10%作为缓冲,避免裁剪后边缘线性体被截断。数据源方面,常用免费DEM包括SRTM(30 m)、ASTER GDEM(30 m)、Copernicus DEM(30 m/90 m)以及国内地理空间数据云提供的ASTER GDEM和部分SRTM产品。选择时关注三点:一是分辨率是否满足线性体最小长度要求(一般要求线性体长度不小于3—5个像元);二是高程基准与坐标基准(如WGS84地理坐标、EGM96大地水准面);三是数据空洞与噪声情况,SRTM在陡峭峡谷区可能出现 voids。
下载时建议按图幅或按研究区外接矩形分块获取,并统一命名,例如 DEM_SRTM30_N25E102.tif,把数据源、分辨率、经纬度范围写入文件名,便于后续批量处理时追溯。下载完成后先做一次完整性检查:文件能否正常打开、像元值范围是否合理(示例区约200—2800 m)、是否存在NoData异常值(如-32768)。
二、坐标系统一与投影转换
线性体提取中的坡度、坡向、长度量算都要求平面坐标,因此不能长期停留在地理坐标系(度为单位)下计算。推荐流程是:先确认所有DEM的原始坐标系,统一到同一地理基准(如WGS84),再投影到适合研究区的投影坐标系。示例区位于东经102°—103°,可选用UTM 48N(EPSG:32648)或CGCS2000 3度带高斯-克吕格投影。投影转换可用GDAL命令行完成:
# 查看原始坐标系与像元信息
gdalinfo DEM_SRTM30_N25E102.tif
# 投影转换为 UTM 48N,重采样采用双线性
gdalwarp -t_srs EPSG:32648 -r bilinear \
DEM_SRTM30_N25E102.tif DEM_utm48.tif
这里有两个关键约定需要先说明并全程保持一致:其一,投影后坐标单位为米,X向东为正、Y向北为正;其二,重采样方法的选择会影响高程精度——双线性(bilinear)适合连续高程面,最近邻(near)适合分类数据,立方卷积(cubic)在起伏较大区域更平滑但可能过冲。DEM属于连续表面,通常选双线性或立方卷积,并在元数据中记录所用方法。
三、裁剪与重采样
裁剪的目的是把数据限定在研究区缓冲范围内,减少后续计算量。使用 gdalwarp -cutline 按矢量边界裁剪,并设置 -crop_to_cutline 使输出范围贴合边界:
gdalwarp -cutline study_area_buffer.shp -crop_to_cutline \
-t_srs EPSG:32648 -tr 30 30 -r bilinear \
DEM_utm48.tif DEM_clip30.tif
其中 -tr 30 30 同时完成重采样,把像元统一为30 m×30 m。若原始数据为90 m而研究需要30 m,则属于升采样,只能插值不能增加真实信息,需在成果说明中注明;若原始为30 m而目标为90 m,则属于降采样,可降低噪声但会削弱短小线性体,建议线性体提取优先保留原始分辨率。重采样后应检查像元对齐:同一研究区所有图层必须具有相同的投影、相同的像元大小和相同的左上角原点,否则后续叠加会出现半像元偏移。
四、结果检查与常见问题
预处理完成后,用 gdalinfo 逐一核对输出文件的坐标系、像元大小、行列数和NoData值,并在GIS软件中把DEM与矢量边界叠加,观察边缘是否贴合、有无黑边或错位。常见问题有三类:一是投影后范围偏移,多因原始数据基准未统一,需先做基准转换再投影;二是裁剪后出现锯齿状边缘,通常是未加 -crop_to_cutline 或缓冲不足;三是重采样后高程出现台阶感,说明误用了最近邻,应改回双线性。把这些问题在预处理阶段解决,后续线性体提取才能稳定复现。