coolzhao / Geo-SAM

A QGIS plugin tool using Segment Anything Model (SAM) to accelerate segmenting or delineating landforms in geospatial raster images.
MIT License
199 stars 26 forks source link

Feature extraction #6

Open icysapphire opened 11 months ago

icysapphire commented 11 months ago

The tool currently only supports preprocessed images (whose features have been generated in advance using a separate program, as the included demo image).

Is it possible to have further information on this point? How can I extract features? Is this separate program available?

coolzhao commented 11 months ago

Hi there. We just published a new release with the encoding tool for segmenting customized images. Please take a look at the updated readme for more information.

icysapphire commented 11 months ago

Is it possible to have a MWE on how to produce such feature files on a GPU-enabled machine (instance)? What is the format required by the plugin?

coolzhao commented 11 months ago

Hi @icysapphire, our encoding tool currently supports CUDA GPU processing images. If you are asking for a stand-alone Python script for encoding, I may consider providing a NoteBook example later, but it's not part of the plugin.

Fanchengyan commented 11 months ago

Hi @icysapphire. In fact, using the GPU for image encoding is enabled by default. As long as you correctly install the python dependencies for CUDA version according to the tutorial in readme, the GPU will be utilized for image encoding if it is detected as available. If you have multiple graphics cards, you can also change your CUDA Device ID in the advanced parameters.

icysapphire commented 11 months ago

Hi @coolzhao and @Fanchengyan, my problem is that I don't have GPUs on the machine that I am using for QGIS. With a standalone script I could run the feature extraction part on a separate headless machine (e.g. AWS instance) without having to use QGIS GUI.

Fanchengyan commented 11 months ago

The version we have currently released is still only a preliminary demo. We are still continuously optimizing the user experience, and a separate script to execute image encoding will be available in the next version. Please stay tuned.

Fanchengyan commented 11 months ago

Hi @icysapphire. We have just released a Python package for encoding images, but it has not undergone rigorous testing. We welcome you to try it out and provide feedback. GeoSAM-Image-Encoder. (You can try this example by clicking open in Colab)