- DataSet Quality Analysis
- Change Detection highlighter
- Features extraction and completion
- Provides several command line tools, you can combine together to build your own workflow
- Follows geospatial standards to ease interoperability and data preparation
- Build-in cutting edge Computer Vision model and loss implementations (and allows to replace by your owns)
- Support either RGB or multibands imagery (as multispectral or hyperspectral)
- Allows Data Fusion (from imagery or rasterized vectors)
- Web-UI tools to easily display, hilight or select results
- High performances
rsp cover
Generate a tiles covering, in csv format: X,Y,Zrsp download
Downloads tiles from a remote server (XYZ, WMS, or TMS)rsp extract
Extracts GeoJSON features from OpenStreetMap .pbfrsp rasterize
Rasterize vector features (GeoJSON or PostGIS), to raster tilesrsp subset
Filter images in a slippy map dir using a csv tiles coverrsp tile
Tile raster coveragersp train
Trains a model on a datasetrsp export
Export a model to ONNX or Torch JITrsp predict
Predict masks, from given inputs and an already trained modelrsp compare
Compute composite images and/or metrics to compare several XYZ dirsrsp vectorize
Extract simplified GeoJSON features from segmentation masks
pip3 install RoboSat.pink # For latest stable version
or
pip3 install git+https://github.com/datapink/robosat.pink # For current dev version
conda create -n robosat_pink python=3.6 && conda activate robosat_pink
pip install robosat.pink # For latest stable version
sudo sh -c "apt update && apt install -y build-essential python3-pip"
pip3 install RoboSat.pink && export PATH=$PATH:~/.local/bin
wget http://us.download.nvidia.com/XFree86/Linux-x86_64/418.43/NVIDIA-Linux-x86_64-418.43.run
sudo sh NVIDIA-Linux-x86_64-418.43.run -a -q --ui=none
sudo sh -c "yum -y update && yum install -y python36 wget && python3.6 -m ensurepip"
pip3 install --user RoboSat.pink
wget http://us.download.nvidia.com/XFree86/Linux-x86_64/418.43/NVIDIA-Linux-x86_64-418.43.run
sudo sh NVIDIA-Linux-x86_64-418.43.run -a -q --ui=none
- Requires: Python 3.6 or later
- GPU is not strictly mandatory, but
rsp train
would be -that- slower without. - To test RoboSat.pink install, launch in a terminal:
rsp -h
- Upon your
pip
PATH setting, you may have to update it:export PATH=$PATH:.local/bin
- PyTorch release published on PyPI is binded with CUDA 9. For CUDA 10, grab a wheel from PyTorch site.
- Training and validation datasets have to be tiled, using XYZ tiles format.
- A Dataset directory, so containing XYZ tiles, can be split as:
dataset
├── training
│ ├── images
│ └── labels
└── validation
├── images
└── labels
- Tiles images formats could be any able to be read by GDAL.
- Tiles labels are expected to be PNG with single band.
- Tools producing XYZ tiles directory, generate also a web map client, for visual inspection.
Several ways to create your own training dataset, upon input data type:
NOTA: several inputs connected to a single arrow point means a logical OR (e.g. WMS or XYZ or TMS).
RoboSat.pink use cherry-picked Open Source libs among Deep Learning, Computer Vision and GIS stacks.- Historical MapBox RoboSat github directory
- Christoph Rieke's Awesome Satellite Imagery Datasets
- Satellites in Global Development
- U-Net: Convolutional Networks for Biomedical Image Segmentation
- Deep Residual Learning for Image Recognition
- Angiodysplasia Detection and Localization Using Deep Convolutional Neural Networks
- TernausNetV2: Fully Convolutional Network for Instance Segmentation
- The Lovász-Softmax loss: A tractable surrogate for the optimization of the IoU measure in neural networks
- Joint Learning from Earth Observation and OpenStreetMap Data to Get Faster Better Semantic Maps
- Albumentations: fast and flexible image augmentations
-
Pull Requests are welcome ! Feel free to send code... Don't hesitate either to initiate a prior discussion via gitter or ticket on any implementation question. And give also a look at Makefile rules.
-
If you want to collaborate through code production and maintenance on a long term basis, please get in touch, co-edition with an ad hoc governance can be considered.
-
If you want a new feature, but don't want to implement it, DataPink provide core-dev services.
-
Expertise and training on RoboSat.pink are also provided by DataPink.
-
And if you want to support the whole project, because it means for your own business, funding is also welcome.
- Daniel J. Hofmann https://github.com/daniel-j-h
- Olivier Courtin https://github.com/ocourtin