Project Icon

segment-geospatial

用于地理空间数据分割的Python工具包

segment-geospatial是一个基于Segment Anything Model (SAM) 用于地理空间数据分割的Python包,旨在通过最少的编码简化数据分析流程。它支持从Tile Map Service (TMS)服务器下载地图瓦片并创建GeoTIFF文件,使用SAM和HQ-SAM分割GeoTIFF文件,创建交互式标记,保存分割结果为常见矢量格式并在交互地图上显示。segment-geospatial提供丰富的示例和教程,方便用户使用,并在PyPI和conda-forge上可用,适用于各种计算环境。

segment-geospatial

image image image image image Docker Pulls PyPI Downloads Conda Downloads DOI

logo

Segment Anything Model (SAM) 的一个用于分割地理空间数据的 Python 软件包

介绍

segment-geospatial 包受 segment-anything-eo 仓库的启发,该仓库由 Aliaksandr Hancharenka 编写。为了方便使用 Segment Anything 模型(SAM)处理地理空间数据,我开发了 segment-anything-pysegment-geospatial Python 软件包,这些包现在可在 PyPI 和 conda-forge 上获取。我的主要目标是通过减少代码量来简化 SAM 的使用过程,以便用户能够轻松进行地理空间数据分析。我已从 segment-anything-eo 仓库中适配了 segment-geospatial 的源码,原版本的贡献归功于 Aliaksandr Hancharenka。

引用

  • Wu, Q., & Osco, L. (2023)。 samgeo:一种用于使用 Segment Anything 模型(SAM)分割地理空间数据的 Python 软件包。 Journal of Open Source Software, 8(89), 5663. https://doi.org/10.21105/joss.05663
  • Osco, L. P., Wu, Q., de Lemos, E. L., Gonçalves, W. N., Ramos, A. P. M., Li, J., & Junior, J. M. (2023)。 Segment Anything 模型(SAM)在遥感应用中的使用:从零到一。 国际应用地球观测与地球信息科学杂志, 124, 103540. https://doi.org/10.1016/j.jag.2023.103540

功能

  • 从瓦片地图服务(TMS)服务器下载地图瓦片并创建 GeoTIFF 文件
  • 使用 Segment Anything 模型(SAM)和 HQ-SAM 分割 GeoTIFF 文件
  • 使用文本提示分割遥感图像
  • 交互创建前景和背景标记
  • 从矢量数据集中加载现有标记
  • 将分割结果保存为常见的矢量格式(GeoPackage、Shapefile、GeoJSON)
  • 将输入提示保存为 GeoJSON 文件
  • 在交互地图上可视化分割结果

安装

从 PyPI 安装

segment-geospatial 可以在 PyPI 上获取。要安装 segment-geospatial,在终端运行以下命令:

pip install segment-geospatial

从 conda-forge 安装

segment-geospatial 也可以从 conda-forge 获取。如果您的计算机上已安装 AnacondaMiniconda,您可以使用以下命令安装 segment-geospatial。推荐为 segment-geospatial 创建一个新的 conda 环境。以下命令将创建一个名为 geo 的新 conda 环境,并安装 segment-geospatial 及其依赖项:

conda create -n geo python
conda activate geo
conda install -c conda-forge mamba
mamba install -c conda-forge segment-geospatial

如果您的系统有 GPU,但上述命令未能安装 pytorch 的 GPU 版本,可以使用以下命令强制安装 pytorch 的 GPU 版本:

mamba install -c conda-forge segment-geospatial "pytorch=*=cuda*"

Samgeo-geospatial 有一些默认 conda 环境中不包含的可选依赖项。要安装这些依赖项,请运行以下命令:

mamba install -c conda-forge groundingdino-py segment-anything-fast

示例

演示

  • 自动掩码生成器

  • 带输入提示的交互分割

  • 来自现有文件的输入提示

  • 使用文本提示的交互分割

教程

视频教程可以在我的 YouTube 频道 上观看。

  • 自动掩码生成

Alt text

  • 使用 SAM 和 ArcGIS Pro

Alt text

  • 使用文本提示进行交互分割

Alt text

在桌面 GIS 中使用 SAM

计算资源

Segment Anything 模型计算强度大,建议使用强大的 GPU 处理大型数据集。建议使用具有至少 8 GB GPU 内存的 GPU。您可以利用 Google Colab 提供的免费 GPU 资源。或者,您可以申请 AWS 研究云信用,提供云信用以支持学术研究。如果您在大中华区,可以在 这里 申请 AWS 研究云信用。

法律声明

本仓库及其内容仅用于教育目的。通过使用提供的信息和代码,用户确认他们自担风险使用 API 和模型,并同意遵守任何适用的法律和法规。计划从任何底图下载大量图像瓦片的用户应联系底图提供商获得许可,否则可能违反版权法或其他适用的法律和法规。

贡献

有关更多信息,请参阅 贡献指南

致谢

此项目基于部分由美国国家航空航天局(NASA)支持的工作,资助号为 80NSSC22K1742,通过 开放源码工具、框架和库 2020 计划 颁发。

该项目还得到了 Amazon Web Services(AWS)的支持。此外,该包得以实现还得益于以下开源项目的支持。感谢这些项目的开发者。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号