Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier...

36
Robosat: an Open Source and efficient Semantic Segmentation Toolbox for Aerial Imagery @o_courtin @PyParisFr 2018

Transcript of Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier...

Page 1: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Robosat: an Open Source and efficient Semantic Segmentation Toolbox for Aerial Imagery

@o_courtin

@PyParisFr 2018

Page 2: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

https://github.com/datapink/robosat

https://github.com/mapbox/robosat

RoboSat

Generic ecosystem for QoD and feature extraction from aerial and satellite imagery

Page 3: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

RoboSat

State of Art SemSeg

Industrial standards code design and written

Higly modular and quite extensible

OSM and MapBox ecosystem integration

PyTorch based

Licence MIT

Page 4: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

NeuronsNetwork

Data

Labels

Weights

Loss Function

Page 5: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

NeuronsNetwork

Data

Labels

Weights

Loss Function

Page 6: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

DownloadWMS

TMS

XYZ

RasterizeGeoJSON

ExtractOSM pbf

Cover

Image

Tile

Raster

Label

Subset

TrainingDataSetBbox

XYZ dir

Data Preparation

Page 7: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

NeuronsNetwork

Data

Labels

Weights

Loss Function

Page 8: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

https://arxiv.org/pdf/1806.00844.pdf

Page 9: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

MultiBands and Fusion

Multi spectral imagery or any (related) vector rasterization

Page 10: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

NeuronsNetwork

Data

Labels

Weights

Loss Function

Page 11: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Image Label Cross Entropy mIoU Lovasz

http://www.cs.toronto.edu/~wenjie/papers/iccv17/mattyus_etal_iccv17.pdfhttp://www.cs.umanitoba.ca/~ywang/papers/isvc16.pdfhttps://arxiv.org/abs/1705.08790

Page 12: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

NeuronsNetwork

Data

Labels

Weights

Loss Function

Page 13: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Weights

ImageNet pre-trained

Resume Training

Export ONNX

Page 14: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Grand Lyon OpenData use case

Page 15: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Rasterize

Images

LyonGeoJson

Labels

DownloadLyonWMS

Page 16: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Rasterize

Images

LyonGeoJson

Labels

Train Labels

Val Labels

Train Images

Val Images

Subset

SubsetDownloadLyonWMS

Page 17: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Rasterize

Images

LyonGeoJson

Labels

Train Labels

Val Labels

Train Images

Val Images

Subset

Subset

Train

Model

DownloadLyonWMS

Page 18: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Rasterize

Images

LyonGeoJson

Labels

Train Labels

Val Labels

Train Images

Val Images

Subset

Subset

Train

Model

PredictMasks

DownloadLyonWMS

Images

Page 19: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Rasterize

Images

LyonGeoJson

Labels

Train Labels

Val Labels

Train Images

Val Images

Subset

Subset

Train

Model

PredictMasks

DownloadLyonWMS

Images

Compare

Page 20: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October
Page 21: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October
Page 22: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October
Page 23: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Rasterize

Images

LyonGeoJson

Labels

Train Labels

Val Labels

Train Images

Val Images

Subset

Subset

Train

Model

PredictMasks

DownloadLyonWMS

Images

Compare

Page 24: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Rasterize

Images

LyonGeoJson

Labels

Train Labels

Val Labels

Train Images

Val Images

Subset

Subset

Train

Model

PredictMasks

OSMGeoJson Rasterize

OSM Masks

Compare

DownloadLyonWMS

Images

Compare

Page 25: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October
Page 26: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October
Page 27: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Stacks

Proj 4

GEOS GDAL

RasterioShapelib

CUDAcuDNN

PyTorch

NumPy

OpenCV

RoboSat

Page 28: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

August v 1.0.0 Initial release daniel-j-h bkowshik

September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin

October master OSM Roads extraction DragonEmperorG

mIoU and Lovasz losses ocourtin

November PR 138 Multibands and tools stuff ocourtin

Code reviewer since ever : daniel-j-h :)

RoboSat Timeline

Page 29: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Next ?

#1 Predict performance improvment

#2 Lower resolution Imagery SemSeg: Sentinel-2 or PlanetLab

#3 Feature extraction

Page 30: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Next ?

#1 Predict performance improvment

- PyTorch 1.0 JIT

- CUDA 10 FP 16 models

- ONNX export to high performance env (Caffe2 / Microsoft ?)

- Lighter models

Page 31: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Next ?

#2 Lower resolution Imagery SemSeg: Sentinel-2 or PlanetLab

- Improve again Fusion and Topological Losses

- SuperPixel resolution

Page 32: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Next ?

#3 Feature extraction

- Generic feature post treatment. Explore GAN

Page 33: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Next ?

Predict performance improvment

Lower resolution Imagery SemSeg: Sentinel-2 or PlanetLab

Feature extraction

Page 34: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Take Away

Industrial state of art Aerial SemSeg available, and playful

Data are also available

Decent OpenDataSet is a bottle neck

Predict speed performances had to been improve to scale at large

Page 35: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Computer Vision

NLP

TimeSeries

www.datapink.com

@data_pink expertise, core dev and solutions :

Page 36: Robosat: an Open Source and efficient Semantic ...pyparis.org/static/slides/Olivier Courtin-486f7730.pdf · September v 1.1.0 Increase Training perfs Jesse-jApps ocourtin October

Computer Vision

NLP

TimeSeries

www.datapink.com

@data_pink expertise, core dev and solutions :

Coming conf, 05/12 @OSS_Paris : NLP State of Art