Un package Python pour segmenter les données géospatiales avec le Segment Anything Model (SAM)
Le package segment-geospatial s'inspire du référentiel segment-anything-eo rédigé par Aliaksandr Hancharenka. Pour faciliter l'utilisation du Segment Anything Model (SAM) pour les données géospatiales, j'ai développé les packages Python segment-anything-py et segment-geospatial, qui sont désormais disponibles sur PyPI et conda-forge. Mon objectif principal est de simplifier le processus d'exploitation de SAM pour l'analyse des données géospatiales en permettant aux utilisateurs d'y parvenir avec un minimum d'effort de codage. J'ai adapté le code source de segment-geospatial du référentiel segment-anything-eo, et le mérite de sa version originale revient à Aliaksandr Hancharenka.
segment-geospatial est disponible sur PyPI. Pour installer segment-geospatial , exécutez cette commande dans votre terminal :
pip install segment-geospatial
segment-geospatial est également disponible sur conda-forge. Si Anaconda ou Miniconda est installé sur votre ordinateur, vous pouvez installer segment-geospatial à l'aide des commandes suivantes. Il est recommandé de créer un nouvel environnement conda pour le segment géospatial . Les commandes suivantes créeront un nouvel environnement conda nommé geo
et installeront segment-geospatial et ses dépendances :
conda create -n geo python
conda activate geo
conda install -c conda-forge mamba
mamba install -c conda-forge segment-geospatial
Si votre système dispose d'un GPU, mais que les commandes ci-dessus n'installent pas la version GPU de pytorch, vous pouvez forcer l'installation de la version GPU de pytorch à l'aide de la commande suivante :
mamba install -c conda-forge segment-geospatial " pytorch=*=cuda* "
Samgeo-geospatial a certaines dépendances facultatives qui ne sont pas incluses dans l'environnement conda par défaut. Pour installer ces dépendances, exécutez la commande suivante :
mamba install -c conda-forge groundingdino-py segment-anything-fast
Des didacticiels vidéo sont disponibles sur ma chaîne YouTube.
Le modèle Segment Anything nécessite beaucoup de calculs et un GPU puissant est recommandé pour traiter de grands ensembles de données. Il est recommandé d'avoir un GPU avec au moins 8 Go de mémoire GPU. Vous pouvez utiliser les ressources GPU gratuites fournies par Google Colab. Vous pouvez également demander un AWS Cloud Credit for Research, qui offre des crédits cloud pour soutenir la recherche universitaire. Si vous résidez dans la région de la Grande Chine, demandez le crédit AWS Cloud ici.
Ce référentiel et son contenu sont fournis à des fins éducatives uniquement. En utilisant les informations et le code fournis, les utilisateurs reconnaissent qu'ils utilisent les API et les modèles à leurs propres risques et acceptent de se conformer à toutes les lois et réglementations applicables. Il est conseillé aux utilisateurs qui souhaitent télécharger un grand nombre de vignettes d'images à partir d'un fond de carte de contacter le fournisseur du fond de carte pour obtenir l'autorisation avant de le faire. L'utilisation non autorisée du fond de carte ou de l'un de ses composants peut constituer une violation des lois sur les droits d'auteur ou d'autres lois et réglementations applicables.
Veuillez vous référer aux lignes directrices de contribution pour plus d'informations.
Ce projet est basé sur des travaux partiellement soutenus par la National Aeronautics and Space Administration (NASA) dans le cadre de la subvention n° 80NSSC22K1742 délivrée dans le cadre du programme Open Source Tools, Frameworks and Libraries 2020.
Ce projet est également pris en charge par Amazon Web Services (AWS). De plus, ce package a été rendu possible par les projets open source suivants. Le mérite revient aux développeurs de ces projets.