GeoMaster 是一个面向地理空间科学与地球观测的综合技能,覆盖 GIS、遥感、空间分析与地球观测机器学习,涉及 70 多个主题、8 种编程语言、500 多个代码示例。
用途 该技能用于支持地理空间与地球观测相关的工作流,包括矢量数据处理、栅格分析、点云处理、坐标系统管理、遥感光谱指数计算、地形分析、网络分析、影像分类以及云原生数据访问。它面向需要处理地理空间数据的科研与工程场景,提供跨库、跨语言的操作参考。
主要能力
- 数据与库覆盖:矢量数据(Shapefile、GeoJSON、GeoPackage)使用 GeoPandas、Fiona、GDAL;栅格数据(GeoTIFF、NetCDF、COG)使用 Rasterio、Xarray、GDAL;点云数据(LAS、LAZ)使用 Laspy、PDAL、Open3D。
- 坐标系统:涵盖 EPSG:4326(WGS 84,地理坐标,用于存储)、EPSG:3857(Web Mercator,仅用于网页地图,不用于面积/距离计算)、EPSG:326xx/327xx(UTM,用于米制计算),并建议使用 gdf.estimate_utm_crs() 自动检测 UTM。
- 常见操作:光谱指数(NDVI、EVI、SAVI、NDWI)、矢量操作(缓冲区、空间关系、几何操作、叠加)、地形分析(坡度、坡向、山体阴影)、网络分析(OSMnx 与 NetworkX 最短路径)、影像分类(RandomForest 训练与预测)。
- 云原生工作流:通过 STAC 与 Planetary Computer 搜索 Sentinel-2 数据,使用 odc.stac 加载为 xarray;直接读取云上 COG 并支持窗口读取;写入与验证 COG。
- 性能建议:空间索引、分块读取大栅格、Dask 处理大数据、Arrow 加速 I/O、GDAL 缓存、并行处理。
- 最佳实践:操作前检查 CRS、面积/距离使用投影 CRS、验证几何有效性、处理缺失数据、使用高效格式(GeoPackage 优于 Shapefile,大数据用 Parquet)、对光学影像做云掩膜、保留数据血缘、按分析尺度选择分辨率。
使用方式 安装方面,核心 Python 栈推荐使用 conda:conda install -c conda-forge gdal rasterio fiona shapely pyproj geopandas;遥感与机器学习:conda install -c conda-forge rsgislib,uv pip install torchgeo earthengine-api,uv pip install scikit-learn xgboost torch-geometric;网络与可视化:uv pip install osmnx networkx folium keplergl,uv pip install cartopy contextily mapclassify;大数据与云:uv pip install xarray rioxarray dask-geopandas,uv pip install pystac-client planetary-computer;点云:uv pip install laspy pylas open3d pdal;数据库:conda install -c conda-forge postgis spatialite。
快速开始示例包括:从 Sentinel-2 计算 NDVI(使用 rasterio 读取波段并写出);使用 GeoPandas 进行空间连接与统计;使用 Google Earth Engine 提取时间序列;使用 STAC 与 Planetary Computer 搜索并加载数据;读取与写入 COG 并验证。
该技能还包含智能体操作流程:检查环境(确认库版本、单位、坐标系统、数据格式);明确输入(确认格式、标识符与参数,不确定时询问而非猜测);先运行小规模版本验证物理合理性;执行完整任务;验证结果(单位与量纲一致性、守恒律或已知极限、数值收敛);报告运行内容、检查项与不确定性。同时列出异常处理与完整性规则,强调不得编造结果、参数、标识符、引用或统计,需报告不确定性与数值容差,对可能过时的版本细节应查阅官方文档确认,涉及费用、共享 GPU、云配额、个人或患者数据或不可撤销操作前需询问。
适用场景 适用于地理空间数据处理、遥感影像分析、地球观测机器学习、云原生地理数据访问、点云处理、网络分析、地形分析等科研与工程任务。
限制 资料未提供具体的收费、价格、平台支持范围或效果保证。部分库(如 rsgislib)仅通过 conda-forge 提供,不在 PyPI。版本相关细节可能过时,需以官方文档为准。