告别ArcGIS!用GEE+QGIS搞定流域DEM下载与地形分析(附完整代码)
告别ArcGIS用GEEQGIS搞定流域DEM下载与地形分析附完整代码在GIS领域数字高程模型DEM是地形分析的基础数据。传统上ArcGIS凭借其完善的功能和稳定的性能成为DEM处理的首选工具。但对于预算有限的个人用户或小型团队来说ArcGIS高昂的授权费用往往成为一道难以逾越的门槛。今天我将分享一套完全免费的替代方案——Google Earth EngineGEE与QGIS的组合工作流让你无需ArcGIS也能高效完成从DEM获取到地形分析的全流程操作。这套方案特别适合以下场景你需要快速获取特定流域或研究区域的DEM数据你的预算有限无法承担商业GIS软件的费用你希望利用云端计算能力处理大规模地理数据你需要进行基础的坡度、坡向等地形分析1. 准备工作与环境配置1.1 注册与配置GEE账号Google Earth Engine是一个强大的地理空间分析平台提供海量的遥感数据和处理能力。要使用GEE首先需要访问Google Earth Engine官网并注册开发者账号等待Google审核通过通常需要1-2个工作日登录后进入代码编辑器界面https://code.earthengine.google.com/1.2 安装QGISQGIS是一款开源的地理信息系统软件功能强大且完全免费前往QGIS官网下载最新稳定版按照向导完成安装支持Windows、macOS和Linux首次启动后建议安装以下插件SCPSemi-Automatic Classification PluginQuickMapServices用于加载底图1.3 准备研究区域边界数据你需要准备研究区域的矢量边界文件如Shapefile这是后续DEM裁剪的基础。确保你的边界文件采用WGS84坐标系EPSG:4326文件大小不超过GEE的上传限制通常10MB以内包含明确的几何信息2. 在GEE中获取DEM数据2.1 上传边界数据到GEE在GEE代码编辑器中点击Assets选项卡然后选择New→Shape files上传你的边界文件。上传完成后记下生成的asset路径格式为projects/your-project-name/assets/your-file-name。2.2 编写DEM提取代码以下是一个完整的DEM提取脚本可以直接在GEE代码编辑器中使用// 1. 加载研究区域边界 var roi ee.FeatureCollection(projects/YOUR_PROJECT/assets/YOUR_ASSET_NAME); // 2. 获取SRTM DEM数据全球30米分辨率 var dem ee.Image(USGS/SRTMGL1_003).select(elevation); // 3. 裁剪DEM到研究区域 var clippedDem dem.clip(roi); // 4. 可视化设置 Map.centerObject(roi, 8); Map.addLayer(roi, {color: red}, Study Area); Map.addLayer(clippedDem, {min: 0, max: 5000, palette: [blue, green, yellow, red]}, DEM); // 5. 导出DEM到Google Drive Export.image.toDrive({ image: clippedDem, description: DEM_Export, scale: 30, region: roi.geometry(), maxPixels: 1e13, folder: GEE_Exports, crs: EPSG:4326 });2.3 执行代码与数据导出将上述代码粘贴到GEE代码编辑器中替换YOUR_PROJECT和YOUR_ASSET_NAME为你的实际项目名称和资产名称点击Run执行代码在Tasks选项卡中点击Run开始导出任务导出完成后DEM文件将保存到你的Google Drive指定文件夹中3. 在QGIS中进行地形分析3.1 导入DEM数据打开QGIS创建一个新项目通过Layer→Add Layer→Add Raster Layer导入从GEE下载的DEM文件右键点击图层选择Properties→Symbology调整显示样式3.2 坡度分析坡度是地表倾斜程度的度量在QGIS中可以轻松计算打开Processing Toolbox如果未显示可通过View→Panels启用搜索并选择Slope工具在参数设置中输入DEM图层选择输出文件位置设置输出格式建议使用GeoTIFF点击Run执行计算3.3 坡向分析坡向表示坡面的朝向对太阳辐射和植被分布等研究很重要# 在QGIS Python控制台中也可以使用以下代码进行坡向分析 processing.run(gdal:aspect, {INPUT:/path/to/your/dem.tif, ZEVENBERGEN:False, TRIG_ANGLE:False, ZERO_FLAT:False, COMPUTE_EDGES:False, OUTPUT:/path/to/output/aspect.tif})3.4 地形阴影与可视化增强为了更直观地展示地形特征可以创建地形阴影使用Raster→Terrain Analysis→Hillshade工具设置适当的方位角Azimuth和高度角Altitude将生成的hillshade图层设置为DEM图层的底图并调整透明度4. 进阶技巧与性能优化4.1 处理大区域DEM数据当研究区域较大时可能会遇到以下问题问题解决方案GEE导出限制将区域分块处理然后合并内存不足降低处理分辨率或使用QGIS的Raster Calculator分步计算处理速度慢启用QGIS的多线程处理设置→Options→Processing4.2 精度验证与质量控制为确保数据质量建议与已知高程点如GNSS测量点进行对比验证检查DEM边缘是否存在异常值使用Raster→Analysis→Raster Calculator进行数据一致性检查4.3 自动化工作流对于需要频繁执行的任务可以创建QGIS Processing Model打开Processing Toolbox→Models→Create New Model拖入输入参数和处理算法保存模型以后可以直接调用5. 替代数据源与扩展应用除了SRTM DEMGEE还提供多种高程数据NASADEM全球30米分辨率SRTM的改进版ALOS World 3D全球30米分辨率日本ALOS卫星数据Copernicus DEM欧洲航天局提供的全球DEM在QGIS中这些数据可以用于更专业的分析水文分析流域划分、水流方向可视域分析Viewshed Analysis地形特征提取山脊线、山谷线我在实际项目中发现对于中小流域1000km²的分析这套GEEQGIS的组合完全能够满足需求而且处理速度往往比本地运行的ArcGIS更快特别是在需要多时相分析或大区域处理时GEE的云端计算优势更加明显。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2497841.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!