ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

重庆30米DEM地形分析全流程:数据源选型、裁剪填洼与等高线避坑指南

重庆30米DEM地形分析全流程:数据源选型、裁剪填洼与等高线避坑指南 简介重庆DEM30米分辨率是一份覆盖重庆市全域的高精度数字高程模型数据面向GIS、遥感领域的学习者、规划与科研人员可用于地形分析、坡度坡向提取、水文模拟及地质灾害风险评估等场景。该数据基于ASTER GDEM V3原始分幅数据自行拼接而成采用GeoTiff栅格格式坐标为WGS84并附带重庆市行政边界Shapefile矢量数据便于直接裁剪和边界内统计。资料共10个文件包含tif主数据、tfw坐标配准文件、prj投影信息及相关shp、dbf等矢量属性文件整体包体约125.77MB结构较为完整。该资源已吸引936人浏览学习适合需要真实区域高分辨率DEM做课程设计、论文实验或项目预研的读者。借助GIS软件打开后可快速进行可视化与定量地形分析节省自行下载拼接全球数据的时间成本。1. 重庆DEM30米分辨率山地城市做地形分析先从选对数据开始重庆DEM30米分辨率不是一组随便下载的栅格文件它决定了你在两江四岸做坡度、坡向、淹没分析和选址评估时算出来的结果是不是真的能落到地上。重庆主城被中梁山、铜锣山、缙云山三条束状山脉夹住槽谷起伏经常一公里内高差超过300米30米分辨率是平衡精度与数据量的实用选择——比90米SRTM能看出坡面细节又没有5米、10米数据动辄几十GB的存储压力。这篇文章只讲一件事拿到重庆30米DEM之后从选源、裁剪到填洼出等高线的完整路径以及每一步的坑。2. 重庆地区30米DEM数据源选型ASTER、SRTM、ALOS到底该用谁2.1 三个主流30米DEM的精度差异和适用前提市面上能公开拿到、分辨率接近30米的数据源主要有三个ASTER GDEM V3、SRTM V3/V4、ALOS AW3D30。三者标称分辨率都是30米但实际地面精度差距不小尤其在重庆这种切割深度大的地形里选错数据源等于后面所有分析都在放大噪声。ASTER GDEM V3由NASA和METI发布覆盖全球标称30米实际1弧秒。它的优点是覆盖完整、更新到2019年缺点是在多云多雾地区容易残留云层伪影重庆正好是重灾区——全年阴雨天数多ASTER的可见光立体像对在云雾遮挡区经常出现局部“鼓包”和负凹陷。SRTM V3NASADEM覆盖范围到北纬60°以南重庆在覆盖区内它的数据主要来自2000年航天飞机雷达地形测绘优点是噪声小、水域处理干净缺点是重庆部分陡崖沟谷区域有雷达阴影导致的空洞不过30米分辨率下这些空洞大多数已经由辅助数据填补。ALOS AW3D30由日本JAXA发布基于ALOS卫星PRISM立体影像垂直精度在三种数据里通常表现最好对陡峭地形的刻画更接近真实山脊线但同样受云影响。选型建议我给三个档位做流域分析、淹没模拟优先ALOS AW3D30做坡度坡向、日光分析这类看重平滑度的选SRTM V3做全域范围的大面积填图ASTER GDEM V3可以用但必须做地形逻辑检查。我的习惯是下载ALOS和SRTM两个版本在关键研究区交叉验证高程差超过50米偏差的区域单独处理。任何公开DEM在重庆的沟谷地形里都可能出现剧烈跳变只靠单一数据源不看检查后面生成等高线的时候一定会翻车。2.2 下载渠道与行政边界数据的配套准备30米DEM的下载渠道以USGS EarthExplorer和国内的地理空间数据云为主前者需要注册申请后者镜像ASTER和SRTM数据下载速度快一些。ALOS AW3D30需要从JAXA官网申请按经纬度格网分幅下载每幅约1度×1度。重庆主城跨多个经纬度分幅至少要下载三到四幅才能覆盖完整下载后必须拼接。行政边界数据建议用全国地理信息资源目录服务系统的省市县矢量边界或者用高德、百度的行政区划API转出GeoJSON再转Shapefile。这里有个容易忽略的点重庆是直辖市但“重庆DEM30米分辨率”的边界应该用重庆市域边界还是主城都市区边界要提前想清楚。市域边界面积8.24万平方公里30米分辨率栅格约9160万像元ArcGIS处理不卡但做填洼和流向分析时计算量比主城区大一个量级。如果是做规划类项目通常用主城都市区或各区县边界裁剪如果是做全市生态本底调查才用完整市域边界。坐标系统一要提前处理。下载的DEM通常是WGS84经纬度坐标重庆地区的投影应该用CGCS2000 / 3-degree Gauss-Kruger CM 108EEPSG:4547或UTM 48N。30米分辨率在经纬度坐标下像元不是正方形做坡度、坡向、填洼之前必须先投影转换否则算出来的坡度值系统性偏大尤其是南北向坡面。提示投影转换在ArcGIS里用Project Raster注意重采样方法选Bilinear或Cubic不要用Nearest否则生成的地形会有锯齿状台阶。3. 按重庆边界裁剪DEM面裁剪与掩膜提取到底差在哪3.1 面图层裁剪和栅格掩膜提取的本质区别ArcMap里右键图层用“Data Export Data”裁剪和用Spatial Analyst的“Extract by Mask”提取看起来结果都是按边界切出来的DEM但底层逻辑完全不同。面裁剪是对栅格做几何切割输出范围严格对齐裁剪面的包络矩形像元位置基本保持原栅格网格速度很快适合只关心范围、不关心边界外数据的场景。掩膜提取是按像元逐个判断位于掩膜多边形内部的像元保留边界上的像元做锯齿状取舍输出栅格的行列数会被重排边界外像元直接变成NoData。在重庆这种行政边界极不规则的地区两者差别会直接影响后续分析。用面裁剪出的DEM边界外还有大块有效高程数据。如果边界外是陡崖流方向分析时边界处的径流会被错误截断洼地提取会在边界处生成一圈假洼地。用掩膜提取虽然边界外是NoData但同样存在边界效应——边缘像元的流向指向NoData会被当成流出边界所以无论用哪种方法都建议在裁剪后再加一条2到3公里的缓冲区分析完再按精确边界切回。3.2 ArcMap里完整裁剪步骤与参数设置第一步加载投影后的DEM和重庆市域边界Shapefile确保边界要素的坐标系与DEM一致。在ArcToolbox里选“Spatial Analyst Tools Extraction Extract by Mask”输入栅格选DEM掩膜数据选边界矢量输出路径设置到工作空间。需要勾选“Maintain the extent of the input raster to the mask”这个选项吗不需要ArcGIS 10.8以后的版本默认会按掩膜范围输出。第二步如果习惯用面裁剪流程是选中边界要素右键DEM图层选择“Data Export Data”在“Extent”下拉列表选“Selected Graphics”或“Layer”勾选“Use the same coordinate system as: the layer’s source data”。这里最容易错的是没勾选“Enable Resampling During Export”的情况下默认Nearest重采样会丢失高程精度正确做法是在Environment设置里把Resampling Method改为Bilinear。第三步检查裁剪结果。用栅格计算器跑一个简单的统计“Zonal Statistics as Table”按边界要素区划统计高程最小值、最大值和标准差。重庆主城区的正常高差应在200到1000米之间如果你看到边界处高程突然跳变到负数或零说明裁剪时把背景值NaN或0值带了进来。解决方法是先用“Set Null”把DEM里的小于等于0的值设为NoData再重新做掩膜提取。3.3 裁剪后必做的三个一致性检查第一个检查是边界匹配把裁剪后的DEM和原始边界叠加Zoom到重庆东北角的城口、巫溪一带看边界是否贴合。这些区域山脊线切割剧烈边界和等高线交错频繁容易看出锯齿。第二个检查是重叠区一致性如果下载了多幅分幅数据拼接完后在重叠带看高程是否连续。ASTER V3在重庆的重叠带经常有3到10米的接边差需要按“Mosaic to New Raster”的Blend模式做羽化否则生成等高线时接边处会出现双线鬼影。第三个检查是负值筛查重庆的DEM在陡崖和水库区域容易出现负高程异常用栅格计算器执行“Con(IsNull(dem), NoData, dem)”配合“”符号输出最小值统计小于0的部分要么人工判读要么用邻域填补。4. 从DEM到地形分析成果坡度、坡向、填洼与等高线生成的完整流程4.1 为什么填洼必须排在坡度计算之前很多人在ArcGIS里一加载DEM就直接点“Slope”这是最常见的翻车操作。原始DEM里存在大量由于数据噪声、河流穿过山脊、桥梁点异常造成的伪洼地。重庆的地形破碎、冲沟密集伪洼地比平原地区多得多。如果不填洼流方向计算会在伪洼地附近形成环流导致汇流累积量分布诡异生成的河网要么断流要么绕圈。正确顺序是先填洼Fill算流向Flow Direction再算流量Flow Accumulation最后才做坡度坡向。填洼的Z limit参数需要谨慎设置。ArcGIS的Fill工具默认把所有洼地都填平这在重庆会导致真实的地形闭合凹地如喀斯特漏斗、天坑被错误填成平地。参数设置上我一般用“Fill”工具而不勾选“Z limit”保持默认然后通过对比填洼前后高程变化量手动排查变化超过80米的区域——这些区域往往是真实的喀斯特负地形或雷达阴影空洞。重庆喀斯特地貌分布广泛武隆、南川一带的天坑和漏斗群如果在填洼时被填平之后做水文分析就完全失真。处理办法是把已知的喀斯特漏斗区做成掩膜只对掩膜外部填洼或者使用“水文分析中的压力差法”做条件填洼即只填会导致水流倒灌的洼地。注意填洼是破坏性操作务必保留原始DEM副本。我习惯命名为“dem_orig.tif”和“dem_fill.tif”后续任何分析链都从fill版本开始但出图、展示和精度审查一律用原始版本。4.2 坡度坡向与曲面曲率的参数选择坡度计算用“Slope”工具在ArcGIS里选择输出以“度”为单位而非“百分比”。重庆地区的平均坡度在20度到35度之间陡坡路段超过45度如果用百分比输出后续分级和专题制图的分界点很难解释。坡向工具对平坦区域没有意义需要在计算后先做一次条件赋值当坡度小于2度时坡向值应该是-1而不是0到360度。ArcGIS的Aspect工具已经自动把平坦区输出为-1但导出成TIFF后-1会被压缩到有效值范围外再次打开后悔药就没了。曲率Curvature工具不太常用但很有价值重庆的滑坡易发段在曲率突变带上用曲率正负拐点可以辅助识别陡崖坡脚和冲沟沟缘。曲率输出分平面曲率和剖面曲率建议分别导出后续用于道路选线和地质灾害分析时只需要其中一项。参数设置方面Curvature的“Z factor”在WGS84投影坐标准确的情况下应设为1如果使用经纬度未投影的DEM这里需要填一个百万级别的比例因子但上面已经强调必须先投影所以Z factor保持1即可。4.3 等高线提取与间距选择的逻辑直接从DEM生成等高线用“Contour”工具ArcGIS会按设定间距输出矢量线。间距设置要看用图比例尺和地形特征重庆做区域规划用20米间距做镇区详细设计用10米主城区局部地块如果坡度变化复杂用5米。间距不是越小越好——5米等高线在高差800米的区域会产生上百条线出图时全部挤成一团墨迹制图意义为0。等高线提取的另一个关键点是平滑处理。直接提取的等高线在陡坡段会呈现锯齿状这是栅格分辨率导致的不要用“Generalize”里的平滑角度硬推那样会移动等高线位置。正确做法是提取后使用“Smooth Line”工具Smoothing Algorithm选PAEKTolerance设为30米到50米即一个到两个像元宽度。重庆的山地轮廓本身就是折线型过度平滑会把真实的地形转折抹掉所以Tolerance不要超过50米。生成等高线前最好先做一次“DEM Reconditioning”即流线修正把已知水系矢量作为“Agree”输入用“Topographic Hydrological Correction”工具让DEM上的河流位置与实际水系对齐。重庆的河流切割深特别是嘉陵江沿岸原始DEM的河谷轴线可能与实际河道的偏移有几十米不修正直接生成等高线等高线会骑在河道上影响后续洪水淹没分析。4.4 DSM转DEM的一点延伸热词里提到“dsm生成dem”在重庆这种建筑密集的城市区域确实常见。DSM数字表面模型包含建筑物和植被高度做地形分析必须先分离地表。常见做法是用点云分类后提取地面点插值或者在CSM表面模型和DTM地形模型相减得到植被和建筑高度模型。如果只有30米分辨率的DSM想得到DEM做法是统计每个像元邻域内的高程最低值并做窗口滤波。但30米分辨率下建筑占像元比例不高这种变换的误差可能达到10到20米只适合做宏观背景不能用于工程级分析。5. 重庆DEM处理避坑数据源的坑比算法的坑更难发现5.1 现象高程异常导致坡度图出现大量“蛛网斑”原因ASTER GDEM V3数据在重庆西部永川、荣昌一带的低丘地区存在条带状高程起伏这是数据采集时的轨道噪声不是真实地形。很多初学者加载后直接计算坡度出来的图布满不规则的短线斑块。解决先对DEM做低通滤波比如使用“Focal Statistics”取3x3窗口的均值再做坡度计算。滤波后细节会有少量损失但坡度图的噪声会明显减轻。如果项目要求保留细节则改用ALOS数据源做交叉验证以ALOS为准。5.2 现象裁剪后DEM边缘出现一条明显的“黑框”或“白框”原因面裁剪Export Data时裁剪范围比面要素的包络略大一圈边缘无数据区域没有被真正赋为NoData而是背景值0或255。背景值参与后续运算会让坡度、填洼结果在边界处全部错乱。解决在工具箱里用“Set Null”将小于等于0或大于等于某个经验阈值的像元设为NoData再执行“IsNull”检查是否还有残留值。另外一种快捷方法是直接用“Extract by Mask”它输出的NoData处理方式更规范不会残留背景值。5.3 现象填洼后地形变化量巨大在主城区平坝出现大面积“平台”原因把真实洼地伪洼地一起填平且没有设Z limit。重庆的渝中半岛、沙坪坝坝区地形确实平缓但填洼后高程被抬升到与周边山体齐平大约两三百米的高程变化。解决在填洼后立即执行“Minus填洼后DEM减去原始DEM”生成变化量栅格。统计变化量大于80米的像元集合对照影像判断是否为真实喀斯特负地形。如果是则把那些像元从填洼结果里恢复出来用“Con”条件语句把原始DEM值写回这些像元。这个恢复操作不可逆所以要事先把“dem_fill.tif”做备份。5.4 现象等高线在河谷处完全错乱高线与沟道相交而不平行原因原始DEM的河道位置和真实河道有偏移加上陡崖处雷达阴影导致的高程跳变等高线提取时在河谷里出现交叉和闭合圈。解决先用水系矢量做“Reconditioning”AgreeDEM函数强制河道位置的DEM高程沿水流方向递减。这一步之后生成的等高线会和河谷走向大致平行。重庆的长江、嘉陵江沿岸地形切割深建议把河流矢量导入DEM修正流程中而不是依赖默认的填洼。5.5 现象投影后DEM产生晕影或斜纹原因从经纬度坐标直接投影到高斯克吕格时重采样方法选Nearest没有报错但输出变成台阶状。又或者投影参数写错把中央经线填成了105度导致重庆主城区域的投影变形叠加。解决投影参数必须用“CGCS2000 / 3-degree Gauss-Kruger CM 108E”EPSG:4547。重采样选Bilinear且必须在投影完成后目视检查河流和山脊线是否连续。如果出现斜纹放弃当前文件回到原始经纬度DEM重新投影。6. 用Global Mapper做重庆DEM可视化与等高线导出的验证技巧Global Mapper 14对DEM的可视化检查和快速出图效率很高。加载TIFF后在“Control Center”里右键图层选择“Generate Contours”设置间距后可以快速生成等高线预览。这里有一个很实用的技巧先用“Hill Shade”生成带光照的山影图叠加半透明的坡度图再叠加等高线——三重叠加模式下重庆的地形结构一目了然造假数据一眼就能挑出来。等高线导出到CAD或GIS平台时在Global Mapper的“Vector Setup”里勾选“Smooth Contours”并设置3到5的平滑级别。注意平滑级别过高的文件在CAD里打开后线型会变成复杂顶点后期编辑卡顿。推荐的平滑值山地地区用2丘陵用3平坝用5。如果导出后要用于埋深分析或土方计算建议保持等高线不平滑直接用原始栅格提取的结果防止平滑带来的高程偏移。针对重庆的具体建议先下载长江和嘉陵江干支流矢量把河流交汇口区域单独生成一版5米间距的局部等高线做验证。这个位置的DEM最容易出问题也是同行评审时最常被挑战的地方。做完验证再铺开到全域避免全域做完后才发现河谷处系统错位。还有一个日常检查习惯在Global Mapper里打开“Performance Vertical Exaggeration”设为2.0如果感觉地形起伏失真不是软件坏了是DEM在某个区域出现了高幅值高程异常。按下“Measure Tool”跨异常区量两次点之间的距离和高差对比公开地图的高程点。我的经验是重庆全境任何两公里范围内高差超过800米的位置都需要抽查超过极限的那就是你保存原始DEM的那一刻。希望这些踩坑记录能帮你少走几趟武隆的山路祝顺利。本文还有配套的精品资源点击获取
返回列表