Toward a gui remote-sensing environment built over OTB

1,179 views

Published on

Toward a gui remote-sensing environment built over OTB
David Dubois; École de Technologie Superieure
Richard Lepage; École de Technologie Superieure
Tullio Tanzi; Telecom ParisTech

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,179
On SlideShare
0
From Embeds
0
Number of Embeds
235
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Toward a gui remote-sensing environment built over OTB

  1. 1. IGARSS 2009 TOWARD A GUI REMOTE SENSING ENVIRONMENT BUILT OVER OTB Open Source Initiatives for Remote Sensing - Orfeo Toolbox David DUBOIS, Richard LEPAGE École de technologie supérieure, Montréal, QC, Canada Tullio TANZI Télécom ParisTech, Paris, France
  2. 2. Outline • Introduction • Programming concepts • Command line argument parser • Graphical argument parser • Visual programming language • Conclusion 2
  3. 3. Introduction • International Charter: Space and Major Disasters – Support rescue teams in case of disaster – Provide data and knowledge to end user • Automated processing to build damage maps – Provides easy to use applications – Lighten the workload of the photo-interpreter – Quickly provides maps to rescue teams 3
  4. 4. Introduction • Software development based on OTB – Many remote sensing algorithms – Runs on many operating systems – Open source • Master’s research project at Télécom ParisTech during summer 2008 4
  5. 5. Programming concepts • Open source license – Source code is fully accessible • Generic programming – Reusable template modules that can easily be interconnected • Object-oriented programming – Code is easy to read and understand • Use of multiple external open source libraries 5
  6. 6. Programming concepts • Orfeo Toolbox Files • Insight Toolkit OTB • Geospatial Data ITK Abstraction GDAL Library • Fast Light FLTK GUI Toolkit 6
  7. 7. Command line argument parser • Software developer • End user – Create argument – Know each arguments management function and their order – Use OTB’s command – Command line parser line argument parser provides help text – Provide a graphical – Input boxes are user interface (GUI) to present for each input arguments argument 7
  8. 8. Command line argument parser • otbCommandLineArgumentParser class – AddInputImage Creating the argument list – AddOption – ParseCommandLine Validating input arguments • Important attribute of the class – List of options • Using a structure to hold multiple information about all options 8
  9. 9. Command line argument parser • Process of ParseCommandLine function – Try to parse given arguments – Show help information if requested/needed – Exit function 9
  10. 10. Command line argument parser • Example: otbImageViewer (from OTB- Applications) 10
  11. 11. Graphical argument parser • Using otbCommandLineArgumentParser as a basis – ParseGUI replaces ParseCommandLine – Developers only need to change one line of code – Graphical user interface is constructed dynamically – Compatible with any application using external parameters 11
  12. 12. Graphical argument parser • Process of ParseGUI function – Create window Using FLTK – Generate input boxes for all arguments – Receive user input – Wait for user to press “OK” – Fill option list with input box values received – Try to parse arguments – Exit 12
  13. 13. Graphical argument parser • New attributes created – Input list Hold FLTK objects – Button list • How to integrate it in OTB – Originally in “common” folder – Need otbGUI library 13
  14. 14. Graphical argument parser • otbImageViewer with ParseGUI instead of ParserCommandLine Input box  Input list Index number of the red channel of the input image Browser button buttonlist 14
  15. 15. What comes next? • Problem: – OTB requires a lot of programming skills due to it’s C++ origin • Solution: – Make use of the programming concepts used for OTB to create a VISUAL PROGRAMMING INTERFACE 1 1Source: OTB Software guide 3.0 15
  16. 16. Visual programming interface • Elements to keep in mind for OTB interface: – Modularity – Adaptability – Visual cues – Ease of use –… 16
  17. 17. Visual programming interface • itkFlowRun – Prototype visual programming interface for ITK 17
  18. 18. Visual programming interface • Ariane – Visual programming interface for Pandore 18
  19. 19. Visual programming interface • Simulink - Mathworks 19
  20. 20. Visual programming interface • Key benefits for OTB – Enables rapid prototyping – Requires less programming skills – Visually represents data flow 20
  21. 21. The end Open source projects thrive on community support. Making OTB better for everyone should therefore be a common goal. • Questions • Comments 21

×