Top Banner
04.04.2016 Uni Trier 5 th EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin Jakimow [email protected] [email protected] www.hu-geomatics.de
36

th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

Jul 04, 2018

Download

Documents

lamkhue
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

04.04.2016 Uni Trier

5th EnMAP School EnMAP-Box

Andreas Rabe

Matthias Held

Sebastian van der Linden

Benjamin Jakimow

[email protected]

[email protected]

www.hu-geomatics.de

Page 2: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

2

• the EnMAP-Box provides users of EnMAP-data (or similar) with a set of tools and applications to achieve best results during image analysis

• for this purpose the EnMAP-Box offers basic functionaliy for image processing as well as state-of-the-art algorithms for hyperspectral image analysis

• it is developed by Humboldt-Universität zu Berlin under contract of GFZ

EnMAP-Box

Page 3: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

3

Main development goals

• cost-free license agreement

• user-friendliness

• state-of-the-art applications for data analysis

• open source code

• rich application programming interface (hubAPI) to make it an evolving toolbox

– allow for easy and standardized integration of external developments

– offer flexibility for integrating code from various languages

EnMAP-Box

Page 4: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

4

Main development goals

• summary recently published in Remote Sensing Special Issue on EnMAP

EnMAP-Box

Page 5: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

5

• current version is EnMAP-Box 2.2.1

• developed with IDL 8.5

• runs in cost-free IDL Virtual Machine Mode

• IDL developers need a license

• supported platforms: Windows, Linux, Mac

• interfaces for code in C, C#, R, Python, JAVA

• can be integrated into ENVI 5.3

EnMAP-Box

Page 6: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

6

http://www.enmap.org/?q=enmapbox

EnMAP-Box Web-Portal

Page 7: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

7

EnMAP-Box GUI

Page 8: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

8

EnMAP-Box GUI: Filelist and File Type

(hyperspectral) images

regression images

classification images

mask images

Page 9: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

9

EnMAP-Box GUI: Speclibs

spectral library

spectral library as pseudo-image

Page 10: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

10

• labeling a pixel or profile means: adding this pixel/profile to a region of interest (ROI) / spectra of interest (SOI)

• ROIs/SOIs are managed inside an attribute table

• specific attributes can later be used for supervised classification/regression

• labeled images can be converted to labeled speclibs

EnMAP-Box GUI: Labeling Tool

attribute table

Page 11: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

11

EnMAP-Box GUI: Image Labeling Tool

Page 12: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

12

EnMAP-Box GUI: Spectral Labeling Tool

Page 13: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

13

• wrapper to Mort Canty’s routine (http://mcanty.homepage.t-online.de/software.html)

EnMAP-Box Tools: linear and kernel PCA

Page 14: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

14

EnMAP-Box Tools: imageMath

Page 15: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

15

EnMAP-Box Applications: Supervised Methods

Page 16: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

16

• fully automated parameter tuning via grid search and cross-validation

• uses Java version of LIBSVM for optimization (IDL-Java Bridge)

EnMAP-Box Applications: Support Vector Machines

Page 17: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

17

• Random Forests for Classification and Regression (provided by Uni Bonn and HU Berlin)

EnMAP-Box Applications: Random Forests

Page 18: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

18

• groups redundant features

• useful for identifying hyperspectral or hypertemporal segments

EnMAP-Box Applications: Feature Clustering

hyperspectral data hypertemporal data

Page 19: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

19

• hyperspectral/hypertemporal segments could for example be ranked in terms of relevance using "SVM-based Feature Selection"

EnMAP-Box Applications: Feature Selection

Page 20: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

20

• Automatic Detection and Delineation of Surface Water Bodies (provided by GFZ Potsdam)

EnMAP-Box Applications: EnWaterMAP

Page 21: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

21

• SynthMix SVR(provided by HU Berlin)

EnMAP-Box Applications: LibMix and SynthMixSVR

Page 22: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

22

• Spectral Unmixing using SVRegression on synthetic mixures (LibMix) of pure endmembers (provided by HU Berlin)

EnMAP-Box Applications: synthMix-SVR

Page 23: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

23

• Spectral Index Data Mining Tool (provided by Uni Trier)

EnMAP-Box Applications: SpInMine

Page 24: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

24

• Agricultural Vegetation Indices (AVI) (provided by LMU München)

EnMAP-Box Applications: AVI

Page 25: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

25

1.application is started from EnMAP-Box menu

2.user input is collected via graphical dialogs (widget program)

3.image/data processing

4.results are presented via a report

Beside pure IDL, external R, Python or Matlab script, as well as stand-alone programs (e.g. C, Java, Fortran) can be integrated.

EnMAP-Box Application Development

Page 26: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

26

EnMAP-Box External R Applications

Page 27: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

27

Future EnMAP-Box in QGIS

- EnMAP-Box as a QGIS Plug-In

- Inroduce hyperspectral processing and viewer functionality to QGIS

- Programming in Python

- Tools and Apps implemented using the QGIS Processing Framework, allowing the usage inside the QGIS Model Builder

Page 28: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

28

Hands-On Exercise: The dataset

Okujeni, Akpona; van der Linden, Sebastian; Hostert, Patrick (2016): Berlin-Urban-Gradient

dataset 2009 - An EnMAP Preparatory Flight Campaign (Datasets). GFZ Data Services.

http://doi.org/10.5880/enmap.2016.002

Page 29: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

29

Hands-On Exercise: Open and explore the data

Open & explore Subsetting Random Sample SVR Accuracy

Topic: Imperviousness in Berlin

Open ‘EnMAP01_Berlin_Urban_Gradient_2009.bsq’ (image products)

-> “colored infrared”

‘LandCov_Layer_Level1_Berlin_Urban_Gradient_2009.bsq’ (add. data)

-> Impervious

Link images

Page 30: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

30

Hands-On Exercise: Subset the land cover stack

Open & explore Subsetting Random Sample SVR Accuracy

Start Tools > Spatial/Spectral Subset

Choose the land cover file and create a “spectral subset” to have the impervious fraction in a single band file (choose band 1).

Page 31: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

31

Hands-On Exercise: Random Sample

Open & explore Subsetting Random Sample SVR Accuracy

Draw a random sample from the impervious fraction reference pixels

Tools > Random Sampling

-> Absolute Sampling, 100 Pixels, Output with Complement

Page 32: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

32

Hands-On Exercise: Parameterize SVM

Open & explore Subsetting Random Sample SVR Accuracy

Start Applications > Regression> imageSVM > Parameterize SVR

-> The (feature) Image is the simulated EnMAP scene

-> The reference areas is the random sample from the imperviousness reference dataset (100 pixels)

An HTML report opens, click ‘Yes’ to apply the SVR model to the EnMAP scene

Page 33: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

33

Hands-On Exercise: Application of SVR Model

Open & explore Subsetting Random Sample SVR Accuracy

In the Apply SVR to Image window, everything from before is defined already, simply Apply.

Explore the result.

Page 34: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

34

Hands-On Exercise: Accuracy Assessment

Open & explore Subsetting Random Sample SVR Accuracy

Perform an accuracy assessment of the result (svrEstimation) with the sample complement

Applications > Accuracy Assessment > Regression

Page 35: th5 EnMAP School - uni-trier.de · th5 EnMAP School EnMAP-Box Andreas Rabe Matthias Held Sebastian van der Linden Benjamin ... Python or Matlab script, as well as stand-alone programs

35

Held, M., Rabe, A., Senf, C., van der Linden, S., & Hostert, P. (2015).

Analyzing hyperspectral and hypertemporal data by decoupling feature redundancy and feature relevance. Geoscience and Remote Sensing Letters, IEEE, 12(5), 983-987.

Mielke, C., Rogass, C., Boesche, N., Segl, K., & Altenberger, U. (2016).

EnGeoMAP 2.0—Automated Hyperspectral Mineral Identification for the German EnMAP Space Mission. Remote Sensing, 8(2), 127.

Okujeni, A., van der Linden, S., Tits, L., Somers, B., & Hostert, P. (2013).

Support vector regression and synthetically mixed training data for quantifying urban land cover. Remote Sensing of Environment, 137, 184-197.

Suess, S., van der Linden, S., Okujeni, A., Leitão, P. J., Schwieder, M., & Hostert, P.(2015).

Using class probabilities to map gradual transitions in shrub vegetation from simulated EnMAP data. Remote Sensing, 7(8), 10668-10688.

Waske, B., van der Linden, S., Oldenburg, C., Jakimow, B., Rabe, A., & Hostert, P. (2012).

ImageRF–a user-oriented implementation for remote sensing image analysis with Random Forests. Environmental Modelling & Software, 35, 192-193.

References