Skip to content

A Python package for segmenting geospatial data with the Segment Anything Model (SAM)

License

Notifications You must be signed in to change notification settings

katSchmid/segment-geospatial

 
 

Repository files navigation

segment-geospatial

image image image image image

A Python package for segmenting geospatial data with the Segment Anything Model (SAM)

The segment-geospatial package draws its inspiration from segment-anything-eo repository authored by Aliaksandr Hancharenka. To facilitate the use of the Segment Anything Model (SAM) for geospatial data, I have developed the segment-anything-py and segment-geospatial Python packages, which are now available on PyPI and conda-forge. My primary objective is to simplify the process of leveraging SAM for geospatial data analysis by enabling users to achieve this with minimal coding effort. I have adapted the source code of segment-geospatial from the segment-anything-eo repository, and credit for its original version goes to Aliaksandr Hancharenka.

Features

  • Download map tiles from Tile Map Service (TMS) servers and create GeoTIFF files
  • Segment GeoTIFF files using the Segment Anything Model (SAM)
  • Save segmentation results as common vector formats (GeoPackage, Shapefile, GeoJSON, etc.)
  • Visualize segmentation results on interactive maps

Examples

Demos

  • Automatic mask generator

  • Interactive segmentation with input prompts

  • Input prompts from existing files

Tutorials

Video tutorials are available on my YouTube Channel.

Alt text

Using SAM with Desktop GIS

Computing Resources

The Segment Anything Model is computationally intensive, and a powerful GPU is recommended to process large datasets. It is recommended to have a GPU with at least 8 GB of GPU memory. You can utilize the free GPU resources provided by Google Colab. Alternatively, you can apply for AWS Cloud Credit for Research, which offers cloud credits to support academic research. If you are in the Greater China region, apply for the AWS Cloud Credit here.

Acknowledgements

This package was made possible by the following open source projects. Credit goes to the developers of these projects.

About

A Python package for segmenting geospatial data with the Segment Anything Model (SAM)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%