ITADN
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

geemap

Open in Colab Open in Binder Open In Studio Lab image image Conda Recipe image Conda Downloads image image image image pre-commit.ci status

logo

一个用于与 Google Earth Engine 进行交互式地理空间分析和可视化的 Python 包

加入我们的 Discord 服务器 👇

致谢: geemap 项目由美国国家航空航天局(NASA)通过 开源工具、框架和库 2020 计划 颁发的 80NSSC22K1742 号资助金支持。

公告

Qiusheng Wu 撰写的书籍 Earth Engine and Geemap: Geospatial Data Science with Python 已于 2023 年 7 月由 Locate Press 出版。如果您有兴趣购买该书,请访问此网址:https://locatepress.com/book/gee

book

简介

Geemap 是一个用于交互式地理空间分析与可视化的 Python 包,基于 Google Earth Engine (GEE),这是一个拥有 多 PB 级卫星影像和地理空间数据集目录 的云计算平台。在过去几年中,GEE 在地理空间社区中变得非常流行,并在局部、区域和全球尺度上推动了众多环境应用。GEE 提供了 JavaScript 和 Python API,用于向 Earth Engine 服务器发起计算请求。与 GEE JavaScript API 全面的 文档 和交互式 IDE(即 GEE JavaScript Code Editor)相比,GEE Python API 的文档相对较少,且交互式可视化结果的功能有限。geemap Python 包的创建旨在填补这一空白。它基于 ipyleafletipywidgets 构建,使用户能够在基于 Jupyter 的环境中交互式地分析和可视化 Earth Engine 数据集。

Geemap 面向希望利用 Python 生态系统中多样化的库和工具来探索 Google Earth Engine 的学生和研究人员。它也为希望从 GEE JavaScript API 过渡到 Python API 的现有 GEE 用户而设计。geemap 包的自动化 JavaScript 到 Python 转换模块 可以大大减少将现有 GEE JavaScript 转换为 Python 脚本和 Jupyter notebook 所需的时间。

有关视频教程和 notebook 示例,请访问 examples page。有关 geemap 模块和方法的完整文档,请访问 API Reference

如果您发现 geemap 对您的研究有用,请考虑引用以下论文以支持我的工作。感谢您的支持。

  • Wu, Q., (2020). geemap: A Python package for interactive mapping with Google Earth Engine. The Journal of Open Source Software, 5(51), 2305. https://doi.org/10.21105/joss.02305
  • Wu, Q., Lane, C. R., Li, X., Zhao, K., Zhou, Y., Clinton, N., DeVries, B., Golden, H. E., & Lang, M. W. (2019). Integrating LiDAR data and multi-temporal aerial imagery to map wetland inundation dynamics using Google Earth Engine. Remote Sensing of Environment, 228, 1-13. https://doi.org/10.1016/j.rse.2019.04.015 (pdf | source code)

查看在 GeoPython Conference 2021 上展示的 geemap workshop。该 workshop 全面介绍了 geemap 的主要功能。

geemap workshop

主要功能

以下是 geemap 包可用功能的列表(部分)。请查看 示例 页面以获取笔记本示例、GIF 动画和视频教程。

  • 将 Earth Engine JavaScript 转换为 Python 脚本和 Jupyter notebook。

  • 显示 Earth Engine 数据图层以进行交互式制图。

  • 在 Python 中支持 Earth Engine JavaScript API 风格的函数,例如 Map.addLayer()Map.setCenter()Map.centerObject()Map.setOptions()

  • 使用 Earth Engine 数据创建分屏地图。

  • 使用 Inspector Tool 交互式获取 Earth Engine 数据。

  • 只需在地图上点击即可交互式绘制 Earth Engine 数据。

  • 在 GeoJSON 和 Earth Engine 之间转换数据格式。

  • 使用绘图工具与 Earth Engine 数据进行交互。

  • 使用 shapefiles 与 Earth Engine 交互,而无需将数据上传到个人的 GEE 账户。

  • 将 Earth Engine FeatureCollection 导出为其他格式(即 shp、csv、json、kml、kmz)。

  • 将 Earth Engine Image 和 ImageCollection 导出为 GeoTIFF。

  • 从 Earth Engine Image 中提取像素到 3D numpy 数组。

  • 按组计算区域统计量。

  • 为 Earth Engine 数据添加自定义图例。

  • 直接在 Jupyter notebook 中将 Earth Engine JavaScript 转换为 Python 代码。

  • 为从 Earth Engine 数据生成的 GIF 图像添加动画文本。

  • 为从 Earth Engine 数据生成的 GIF 动画添加颜色条和图像。

  • 使用 Earth Engine 创建带有动画文本的 Landsat 时间序列动画。

  • 从 Earth Engine Data Catalog 中搜索地点和数据集。

  • 使用时间序列检查器可视化随时间变化的景观变化。

  • 将 Earth Engine 地图导出为 HTML 文件和 PNG 图像。

  • 在 Jupyter notebooks 中搜索 Earth Engine API 文档。

  • 从个人账户导入 Earth Engine 资产。

  • 直接在 Jupyter notebook 中发布交互式 GEE 地图。

  • 将本地栅格数据集(例如 GeoTIFF)添加到地图中。

  • 执行图像分类和精度评估。

  • 交互式提取像素值并导出为 shapefile 和 csv。