Doodleverse / seg2map

Seg2Map is an interactive web map app for geospatial image segmentation using deep learning
MIT License
13 stars 2 forks source link

Seg2Map :mag_right: :milky_way:

An interactive web map app for applying Doodleverse/Zoo models to geospatial imagery

separate_seg_controls_demo (1)

Overview:

Installation Instructions

In order to use seg2map you need to install Python packages in an environment. We recommend you use Anaconda to install the python packages in an environment for seg2map. After you install Anaconda on your PC, open the Anaconda prompt or Terminal in Mac and Linux and use the cd command (change directory) to go the folder where you have downloaded the seg2map repository.

  1. Create an Anaconda environment
  1. Activate your conda environment

    conda activate seg2map
  1. Install Conda Dependencies
  conda install -c conda-forge geopandas jupyterlab -y
  1. Install the seg2map from PyPi
    pip install seg2map
  2. Uninstall the h5py installed by pip and reinstall with conda-forge
    pip uninstall h5py -y
    conda install -c conda-forge h5py -y

    Having Installation Errors?

Use the command conda clean --all to clean old packages from your anaconda base environment. Ensure you are not in your seg2map environment or any other environment by running conda deactivate, to deactivate any environment you're in before running conda clean --all. It is recommended that you have Anaconda prompt (terminal for Mac and Linux) open as an administrator before you attempt to install seg2map again.

Conda Clean Steps

conda deactivate
conda clean --all

How to Use Seg2Map

  1. Sign up to use Google Earth Engine Python API

First, you need to request access to Google Earth Engine at https://signup.earthengine.google.com/. It takes about 1 day for Google to approve requests.

  1. Activate your conda environment

    conda activate seg2map
  1. Install the seg2map from PyPi
    cd <location you downloaded seg2map>
    ex: cd C:\1_repos\seg2map
  2. Launch Jupyter Lab

Features

1. Download Imagery from Google Earth Engine

Use google earth engine to download multiple years worth of imagery. download_imagery_demo

You can download multiple ROIs and years of data at lighting speeds 🌩️

download_imagery_demo_multi_roi

2. Apply Models to Imagery

apply_model_demo

3. Load Segmented Imagery onto the Map

load_segmentation_demo

Generic workflow:

Authors

Contributions:

We welcome collaboration! Please use our Discussions tab if you're interested in this project. We welcome user-contributed models! They must be trained using Segmentation Gym, and then served and documented through Segmentation Zoo - get in touch and we'll walk you through the process!

Roadmap / progress

V1

V2

Datasets

General Landcover

DeepGlobe

EnviroAtlas

OpenEarthMap

Coastal Landcover

Chesapeake Landcover

Coast Train

AAAI / Buildings / Flooded Buildings

XBD-hurricanes

Barrier Islands

Superclasses

A. Water:

B. Sediment:

C. Bare:

D. Vegetated:

E. Impervious:

F. Building:

G. Agriculture:

H. Woody Veg:

References

Notes

Classes:

Coast Train 1 Coast Train 2 Coast Train 3 FloodNet Chesapeake EnviroAtlas OpenEarthMap DeepGlobe AAAI NOAA Barrier Substrate
A. Water X X X X X X X X X X
a. whitewater X X
a. pool X
--- --- --- --- --- --- --- --- --- --- --- ---
B. Sediment X X X
b. sand X
b. mixed X
b. coarse X
--- --- --- --- --- --- --- --- --- --- --- ---
C. Bare/barren X X X X X X
--- --- --- --- --- --- --- --- --- --- ---
d. marsh X
d. terrestrial veg X X
d. agriculture X X X
d. grass X
d. herbaceous / low vegetation / field X X
d. tree/forest X X X X X
d. shrubland X
d. rangeland X X X
--- --- --- --- --- --- --- --- --- --- --- ---
E. Impervious/urban/developed X X X X X X
e. impervious (other) X
e. impervious (road) X X
e. Building-flooded X
e. Building-non-flooded X X X
e. Road-flooded X
e. Road-non-flooded X
e. Vehicle X
--- --- --- --- --- --- --- --- --- --- --- ---
X. Other X X X