Ein Python-Paket zum Segmentieren von Geodaten mit dem Segment Anything Model (SAM)
Das Segment-Geospatial- Paket ist vom Segment-Anything-EO-Repository inspiriert, das von Aliaksandr Hancharenka verfasst wurde. Um die Verwendung des Segment Anything Model (SAM) für Geodaten zu erleichtern, habe ich die Python-Pakete segment-anything-py und segment-geospatial entwickelt, die jetzt auf PyPI und conda-forge verfügbar sind. Mein Hauptziel besteht darin, den Prozess der Nutzung von SAM für die Geodatenanalyse zu vereinfachen, indem ich es Benutzern ermögliche, dies mit minimalem Codierungsaufwand zu erreichen. Ich habe den Quellcode von segment-geospatial aus dem Segment-anything-eo-Repository angepasst, und der Dank für die Originalversion geht an Aliaksandr Hancharenka.
segment-geospatial ist auf PyPI verfügbar. Um segment-geospatial zu installieren, führen Sie diesen Befehl in Ihrem Terminal aus:
pip install segment-geospatial
segment-geospatial ist auch auf conda-forge verfügbar. Wenn Sie Anaconda oder Miniconda auf Ihrem Computer installiert haben, können Sie segment-geospatial mit den folgenden Befehlen installieren. Es wird empfohlen, eine neue Conda-Umgebung für segment-geospatial zu erstellen. Die folgenden Befehle erstellen eine neue Conda-Umgebung mit dem Namen geo
und installieren segment-geospatial und seine Abhängigkeiten:
conda create -n geo python
conda activate geo
conda install -c conda-forge mamba
mamba install -c conda-forge segment-geospatial
Wenn Ihr System über eine GPU verfügt, die oben genannten Befehle jedoch nicht die GPU-Version von Pytorch installieren, können Sie die Installation der GPU-Version von Pytorch mit dem folgenden Befehl erzwingen:
mamba install -c conda-forge segment-geospatial " pytorch=*=cuda* "
Samgeo-geospatial verfügt über einige optionale Abhängigkeiten, die nicht in der Standard-Conda-Umgebung enthalten sind. Führen Sie den folgenden Befehl aus, um diese Abhängigkeiten zu installieren:
mamba install -c conda-forge groundingdino-py segment-anything-fast
Video-Tutorials sind auf meinem YouTube-Kanal verfügbar.
Das Segment Anything-Modell ist rechenintensiv und für die Verarbeitung großer Datensätze wird eine leistungsstarke GPU empfohlen. Es wird empfohlen, über eine GPU mit mindestens 8 GB GPU-Speicher zu verfügen. Sie können die kostenlosen GPU-Ressourcen von Google Colab nutzen. Alternativ können Sie AWS Cloud Credit for Research beantragen, das Cloud-Credits zur Unterstützung akademischer Forschung bietet. Wenn Sie in der Region Greater China ansässig sind, beantragen Sie hier das AWS Cloud Credit.
Dieses Repository und sein Inhalt werden ausschließlich zu Bildungszwecken bereitgestellt. Durch die Verwendung der bereitgestellten Informationen und Codes erkennen Benutzer an, dass sie die APIs und Modelle auf eigenes Risiko nutzen und erklären sich damit einverstanden, alle geltenden Gesetze und Vorschriften einzuhalten. Benutzern, die beabsichtigen, eine große Anzahl von Bildkacheln von einer beliebigen Grundkarte herunterzuladen, wird empfohlen, sich vorher an den Anbieter der Grundkarte zu wenden, um eine Genehmigung einzuholen. Die unbefugte Nutzung der Grundkarte oder ihrer Komponenten kann einen Verstoß gegen das Urheberrecht oder andere geltende Gesetze und Vorschriften darstellen.
Weitere Informationen finden Sie in den Beitragsrichtlinien.
Dieses Projekt basiert auf Arbeiten, die teilweise von der National Aeronautics and Space Administration (NASA) unter der Fördernummer 80NSSC22K1742 unterstützt werden, die im Rahmen des Open Source Tools, Frameworks, and Libraries 2020-Programms vergeben wird.
Dieses Projekt wird auch von Amazon Web Services (AWS) unterstützt. Darüber hinaus wurde dieses Paket durch die folgenden Open-Source-Projekte ermöglicht. Der Dank geht an die Entwickler dieser Projekte.