# %pip install leafmap # %pip install segment-geospatial localtileserver import os import leafmap from samgeo import SamGeo, tms_to_geotiff, get_basemaps m = leafmap.Map(center=[29.676840, -95.369222], zoom=19) m.add_basemap("SATELLITE") m if m.user_roi_bounds() is not None: bbox = m.user_roi_bounds() else: bbox = [-95.3704, 29.6762, -95.368, 29.6775] image = "satellite.tif" # get_basemaps().keys() tms_to_geotiff(output=image, bbox=bbox, zoom=20, source="Satellite", overwrite=True) # image = '/path/to/your/own/image.tif' m.layers[-1].visible = False # turn off the basemap m.add_raster(image, layer_name="Image") m sam = SamGeo( model_type="vit_h", checkpoint="sam_vit_h_4b8939.pth", sam_kwargs=None, ) mask = "segment.tif" sam.generate( image, mask, batch=True, foreground=True, erosion_kernel=(3, 3), mask_multiplier=255 ) vector = "segment.gpkg" sam.tiff_to_gpkg(mask, vector, simplify_tolerance=None) shapefile = "segment.shp" sam.tiff_to_vector(mask, shapefile) style = { "color": "#3388ff", "weight": 2, "fillColor": "#7c4185", "fillOpacity": 0.5, } m.add_vector(vector, layer_name="Vector", style=style) m