neat-eo.pink : computer vision framework for geospatial imagery · 2020-02-12 · neat-eo.pink...

32
neat-EO.pink : Computer Vision framework for GeoSpatial Imagery @o_courtin @FOSDEM 2020

Upload: others

Post on 23-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

neat-EO.pink : Computer Vision framework for GeoSpatial Imagery

@o_courtin

@FOSDEM 2020

Page 2: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Error Detection

Error Correction

Cybernetic Loop, Norber Wiener, ~1940s

Page 3: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Earth Observation

Widely Used: Govs Agencies, NGOs, Scientists, Companies, Farmers...

Huge Data: ~100To / Day

Wasted Data: ~80% of acquired pixels remains unused

Page 4: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

From Pixels to Insights

Page 5: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

NeuralsNetwork

Output

Input

Loss Function

Supervised Learning

Page 6: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

NeuralsNetwork

Output

Input

Loss Function

TrainedModel Output

Supervised Learning

Page 7: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Polynom

Weighted Graph

Lossy Data Compression

Grey Box

A Trained model ?

Page 8: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

neat-EO.pink

Computer Vision framework for GeoSpatial Imagery

@neat_eo

Page 9: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

NeuralsNetwork

Output

Input

Loss Function

TrainedModel Output

Quality Analysis

AlternateDataSet

Compare

Page 10: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Neat WebUI to ease compare

Pink : Predicted by trained model

Green : Alternate dataset

Grey : Both agree

Spotify significative differences

Page 11: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

NeuralsNetwork

Output

Input

Loss Function

TrainedModel Output

Change Detection

AlternateOutput

Compare

AlternateInput

Page 12: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

NeuralsNetwork

Output

Input

Loss Function

TrainedModel

WiderOutput

Feature Extraction

WiderInput

Vectorize

Page 13: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Command Line Interface

Page 14: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

neat-EO

GeoJSON

PostGIS

Rasters

WMS

Tiles

MasksPrediction

MasksCompare

VectorPrediction

Spotifydifferences

areas

OSM PBF

Page 15: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Stacks

Proj 4

GEOS GDAL

Rasterio

CUDAcuDNN

PyTorch

NumPy

OpenCV

neat-EO

PillowShapely PostGIS

Mercantile

SuperMercado

Albumentations

LeafLet+ VectorGrid

Page 16: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Easy to deploy

pip3 install neat-EO

Page 17: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

- Install neat-EO- Download data- Data Preparation- Training - Inference- Compare to OSM- Spotify differences areas- Vectorize features

https://github.com/datapink/neat-eo.pink/blob/master/docs/101.md

101 Tutorial

Page 18: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

So all you need is :

- Imagery → any file format readable by GDAL

- GPU → NVIDIA > 8Go VRAM

- Labels → usualy the key point

Page 19: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

GIGO

Imagery City OpenData OSM

Page 20: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

NeuralsNetwork

Output

Input

Loss Function

TrainedModel Output

Quality Analysis on DataSet Training

LabelsCompare

Page 21: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

WebUI BuildIn Binary Selector

Page 22: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

What’s new ?

Page 23: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Metatiles option on predict

With (but x3 time slower) Without

Page 24: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Multi GPUs efficient scaling

neo train

neo predict

Allow to scale to x8 GPUs

Page 25: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Multi Classes

Including auto weighted umbalaced classes option

Page 26: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Limits

- Predict Imagery DataSet must be quite related to the training one

- Still need about thousands labels per class (as a rule of thumb)

- Don’t deal (for now) with topology, so behave badly on connected stuff (as roads)

Page 27: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Request For Funding

- Increase again accuracy - Low Resolution - Topology

- Reduce significantly amount of needed labels (weakly supervised)

- Improve again performances

Page 28: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Open Source AI4EO

Page 29: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Why using neat-EO.pink ?

- GIS Standards compliancy

- Easy Data Preparation

- Build-In WebUI

- Modular and extensible

- Handle MultiBands Imagery and DataFusion

- High Performances

- Accurate (state of art Computer Vision)

Page 30: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Human Learning

http://www.math.ens.fr/~feydy/Teaching/culture_mathematique.pdf [FR]

http://cs231n.stanford.edu/

https://neurovenge.antonomase.fr/NeuronsSpikeBack.pdf

http://www.numerical-tours.com/python/

Page 31: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

Extract insights from GeoSpatial data with Deep Learning

@data_pink

www.datapink.com

Page 32: neat-EO.pink : Computer Vision framework for GeoSpatial Imagery · 2020-02-12 · neat-EO.pink powered by @data_pink Take Away - Industrial OpenSource AI4EO Imagery framework available

neat-EO.pink powered by @data_pink

Take Away

- Industrial OpenSource AI4EO Imagery framework available

- Performances already OK to use it on regions or countries

- No need anymore to be a Computer Vision expert to use it

- Plain OpenData can be use to train accurate model

- Funding and Pull Requests can make the difference