online image processing with orfeotoolbox wps
TRANSCRIPT
ONLINE IMAGE PROCESSING WITHORFEOTOOLBOX WPS
Gérald FENOY
GeoLabs SARLhttp://geolabs.fr@GeoLabsSARL
ZOO-PROJECT 1.5 OPTIONAL ORFEO TOOLBOX SUPPORT
OTB Hackfest – Toulouse – June 3rd 2015This work was supported by a grant from theEuropean Union's 7th Framework Programme(2007-2013) provided for the projectPublicaMundi (GA no. 609608).
Introduction
Gérald FENOYComputer scientist
Director of GeoLabs SARL (since 2007)
ZOO-Project PSC Chair (since 2009)
OSGeo Board of Directors (since 2013)
OGC individual member (since 2012)
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
Presentation outline
ZOO-Project, The Open WPS platformOpen Source project
Scalable and generic Web Processing ServicesPublicaMundi FP7 project
ZOO-Project Orfeo Toolbox optional supportNewly implemented in ZOO-Project 1.5
ExamplesOnline and based on OTB Cookbook
Future work
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
ZOO-Project
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
ZOO-Kernel is apowerful server-side CKernel able to manageand chain WPSservices
ZOO-Services is acollection of ready touse WPS servicesbased on open sourcelibraries
ZOO-API is a serverside Javascript API forcreating and chainingWPS Services.
ZOO-Client is a is aJavaScript library forinteracting with WPSServices from webapplications.
ZOO-Project is a WPS (Web Processing Service) implementation written in C, Python andJavaScript. It is an open source platform which implements the WPS 1.0.0 standard edited by theOGC (Open Geospatial Consortium).
ZOO-Kernel (1)
ZOO-Kernel is the heart of ZOO-Project implements and complies with
the WPS standard. It is able to perform the WPS operations as
indicated in the OpenGIS ® specification, as listed bellow:
- GetCapablities: Returns service-level metadata information.It
provides the list of available processing services.
- DescribeProcess: Returns a description of a process, including its
supported input and output.
- Execute: Launches computation and returns the output produced by
a particular process.
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
ZOO-Kernel (2)
ZOO-Kernel is an extensible WPS server which provides a full-featured
processing engine which runs on Linux, Mac OSX ™ and Windows ™
operating systems. ZOO-Kernel works on common web servers (namely
Apache or IIS ™) and can be seamlessly integrated to new or existing
web platforms.
ZOO-Kernel is a polyglot. The software is written in a valid form of
multiple programming languages, which performs the same operations
independent of the programming language used to compile or interpret it.
C, Fortran, Java, PHP, JavaScript, Ruby, Perl
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
What is a ZOO-Service ?
A ZOO-Service is a WPS compliant Web Service working with ZOO-
Kernel, the ZOO-Project WPS server.
A ZOO Service is a couple composed of:
- Source code you want to create or reuse as WPS Service
- A configuration file (.zcfg) which describes this WPS Service
The ZOO-Service configuration file (.zcfg) describes a WPS service.
It provides metadata information on a particular WPS Service and it
is parsed by ZOO-Kernel when DescribeProcess and Execute
request are sent.
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
Scalable and generic WPS Services
ZOO-Project includes ready-to-use WPS Services based on reliable
open source libraries such as GDAL, CGAL, GRASS GIS,
OrfeoToolbox and SAGA GIS.
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
ZOO-Services aim at reusing existing geospatial algorithms
through standard WPS, with no or very minor modification of
the involved software or library source codes.
Orfeo Toolbox optional support
Using OTB Applications on the server-side through WPS requests
- No modifications in OTB source code
- Loading the OTB Applications as shared libraries
- Automatic creation of zcfg files (otb2zcfg)
Prerequisites :
ZOO-Project 1.5 (latest trunk)
Orfeo Toolbox (OTB 4.2.1 )
Insight Segmentation and Registration Toolkit (ITK-4.7 )
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
OTB Smoothing example
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
http://localhost/cgi-bin/zoo_loader.cgi?request=Execute&service=WPS&version=1.0.0&Identifier=OTB.Smoothing&DataInputs=in=Reference@xlink:href=http://geolabs.fr/dl/Landsat8Extract.tif;out=float;type=anidif;type.mean.radius=2;type.anidif.timestep=0.1;type.anidif.nbiter=5&RawDataOutput=out@mimeType=image/tiff
OTB BandMath example
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
http://localhost/cgi-bin/zoo_loader.cgi?request=Execute&service=WPS&version=1.0.0&Identifier=OTB.BandMath&DataInputs=il=Reference@xlink:href=http://geolabs.fr/dl/verySmallFSATSW_nir.tif;il=Reference@xlink:href=http://geolabs.fr/dl/verySmallFSATSW_r.tif;il=Reference@xlink:href=http://geolabs.fr/dl/verySmallFSATSW.tif;out=uint8;exp=cos%28im1b1%29-%28-im2b1%29*im3b1-%28ndvi%28im3b3,im3b4%29%29&RawDataOutput=out@mimeType=image/tiff
Future work
- Using the ZOO-Project OTB optional support from various WPS clients
- Deploy OTB WPS inside new or existing SDIs and provide image
processing capabilities over the Web.
- Scalable WPS for processing huge amounts of imagery
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015
QGIS (WPS plugin) MapMint (SDI manager) CKAN (ckan-ext-wps)
Questions ?
Thanks for your time
Gérald Fenoy
GeoLabs SARL
http://www.zoo-project.org
Gérald Fenoy GeoLabs SARL - OTB Hackfest – Toulouse – June 3 rd 2015