OTB User Days 2017 – Recap

Following a tradition that is now three years old, we just held our OTB User Days 2017! This three days meeting is open to everyone in the Orfeo ToolBox community, and this year’s edition was out biggest success so far.

Day 1: Plenary session

Day 2: Technical session


Day 2 start with a tutorial session split in four different groups:

  • Beginners: to learn how to use Monteverdi and OTB Applications
  • Intermediate 1: The OTB framework to perform large scale Pixel based classification (from samples extraction to classification map regularization)
  • Intermediate 2: “OTB-Applications under the hood” to learn how to configure OTB applications and take full advantage of streaming and multi-threading capabilities
  • Developer session: Develop in C++ with OTB: Learn how to code your own features using OTB API

Some of the people have kept on following tutorials in the afternoon with special sessions about OTB classification framework and exercises to learn how to implement new functions in OTB using the C++ API.

As usual it was a great pleasure to organize these tutorial sessions, it is always a good occasion to gather user feedbacks and see what can be improved in the library.

The support material is available online. You will need the Data Package and the Workshop Guide. Don’t hesitate to test it and reuse it if you want (all the support material is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Open questions

During day 2 afternoon, a session has been proposed for the users that had questions related to their personal use of OTB. The goal was to advise them and propose solutions to their specific problems. Various topics were discussed in this session :

  • Unsupervised learning : what is available in the OTB?
  • Automatic classification : what is the best strategy?
  • Radiometric indices : how to use different formulas than the ones available?
  • Remote modules : how to make them?
  • No-data : how does OTB handle it?
  • Sentinel-1 metadata : how to retrieve the sensor position?

We tried to organize the questions and group them by topic, but it was difficult given that each question was rather specific. In some cases, the discussion became quite technical and long. For next time, the talks shall be scheduled and have a fixed duration. We hope that the people present found their answers (and maybe more).


Meawhile in the afternoon, we had a little brainstorming session so as to gather ideas about things to refactor or new features to add. Here are the topics that have been discussed :

  • Refactoring of the ExtractROI application
  • How to fix the DownloadSRTM application
  • In sampling framework, how to compute features on the sampled points only ?
  • How could we chain applications in memory from command-line ?
  • Object-based image analysis in Orfeo ToolBox
  • Deep Learning in Orfeo ToolBox
  • What is missing for SAR imagery
  • Enhance use of time series as image stacks

A detailed report is available on the wiki. Please feel free to comment or improve the report !

Day 3: Hackfest

Here a list of things we worked on during the third day: Hackfest! Some are well understood features which made in into an RFC or remote module:

Some are still work-in-progress:

Documentation improvements:

  • Doc API Python
  • CookBook unsupervised learning

Others are more exploratory and brainstorming:

The PSC also had an informal, in-person meeting covering:

  • Documentation License and OSGeo incubation status
  • How to improve OTB integration in QGIS?

See you next year for the fourth edition!