SlideShare a Scribd company logo
Introduction Applications and librairy Roadmap




     The Orfeo Toolbox Remote Sensing Image
               Processing Software

                           J. Inglada1 , E. Christophe2

            1 C ENTRE   N ATIONAL D ’É TUDES S PATIALES , TOULOUSE , F RANCE
             2 C ENTRE FOR   R EMOTE I MAGING , S ENSING AND P ROCESSING ,
                          N ATIONAL U NIVERSITY OF S INGAPORE




                             IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   What When Why How


Outline
   Introduction
       What is it?
       A bit of history
       Why doing that?
       How?

   Applications and librairy
     Components
     Architecture
     But steep learning

   What’s coming next?
     New applications for OTB 3.2
     GIS integration
     Bindings
     GPU and clusters
                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   What When Why How


What is Orfeo Toolbox (OTB)?

  In the frame of CNES ORFEO Program
  Goal
  Make the development of new algorithms and their validation
  easier


         C++ library: provide many algorithms (pre-processing,
         image analysis) with a common interface
         Open-source: free to use, to modify, you can make your
         own software based on OTB and sell it
         Multiplatform: Windows, Linux, Unix, Mac


                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   What When Why How


A bit of History

   Everything begins (2006)
         Started in 2006 by CNES (French Space Agency), funding several full-time
         developers
         Targeted at high resolution images (Pleiades to be launched in 2010) but with
         application to other sensors
         4 year budget, over 1,000,000e


   Moving to user friendly applications (2008)
         Strong interactions with the user community highlighted that applications for
         non-programmers are important
         Several applications for non programmers (with GUI) since early 2008
         Several courses (3/5-day courses) given in several French and Belgian
         institutions (Cesbio, RMA, ENST,...)



                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   What When Why How


Why doing that?

  Is it successful so far?
         OTB user community growing steadily (programmers and application users)
         Presented at IGARSS and ISPRS in 2008, special session in IGARSS in 2009
         CNES is planning to extend the budget for several more years
         Value analysis is very positive (cf. Ohloh): re-using is powerful




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   What When Why How


Why doing that?

  Is it successful so far?
         OTB user community growing steadily (programmers and application users)
         Presented at IGARSS and ISPRS in 2008, special session in IGARSS in 2009
         CNES is planning to extend the budget for several more years
         Value analysis is very positive (cf. Ohloh): re-using is powerful


  Why make a multi-million dollar software and give it for
  free?
         CNES is not a software company
         One goal is to encourage research: it is critical for researchers to know what is in
         the box
         CNES makes satellites and wants to make sure the images are used
         if more people have the tools to use satellite images, it is good for CNES



                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   What When Why How


How?

  How to reach this goal?
  Using the best work of others: do not reinvent the wheel




                               IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   What When Why How


How?

  How to reach this goal?
  Using the best work of others: do not reinvent the wheel

  Many open-source libraries of good quality
        ITK: software architecture (streaming, multithreading), many image processing
        algorithms
        Gdal/Ogr: reading data format (geotiff, raw, png, jpeg, shapefile, . . . )
        Ossim: sensor models (Spot, RPC, SAR, . . . ) and map projections
        6S: radiometric corrections
        and many other: libLAS (lidar data), Edison (Mean Shift clustering), libSiftFast
        (SIFT), Boost (graph), libSVM (Support Vector Machines)

  ⇒ all behind a common interface


                               IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Components Architecture But


Outline
   Introduction
       What is it?
       A bit of history
       Why doing that?
       How?

   Applications and librairy
     Components
     Architecture
     But steep learning

   What’s coming next?
     New applications for OTB 3.2
     GIS integration
     Bindings
     GPU and clusters
                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Components Architecture But


Application

   Currently
         Image viewer
         Image Segmentation
         Image Classification (by SVM)
         Land Cover
         Feature Extraction
         Road Extraction
         Orthorectification (with Pan Sharpening)
         Fine registration
         Image to database registration
         Object counting
         Urban area detection
         more to come


                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Components Architecture But


Components available


  Currently
        Most satellite image formats
        Geometric corrections
        Radiometric corrections
        Change detection
        Feature extraction
        Classification


  Huge documentation available
        Software Guide (+600 pages pdf), also the online version
        Doxygen: documentation for developers




                               IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Components Architecture But


A powerful architecture



   Modular
         Easy to combine different blocks to do new processing


   Scalable
         Streaming (processing huge images on the flow) transparent for the user of the
         library
         Multithreading (using multicore CPUs) also




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Components Architecture But


But a steep learning curve for the programmer
   Advanced programming concepts
         Template metaprogramming (generic programming)
         Design patterns (Factory, Functors, Smart Pointers, ...)




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Components Architecture But


But a steep learning curve for the programmer
   Advanced programming concepts
         Template metaprogramming (generic programming)
         Design patterns (Factory, Functors, Smart Pointers, ...)




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Components Architecture But


Ask questions




  As for everything: easier when you’re not alone
         Much easier if you have somebody around to help!
         We didn’t know anything not so long ago...
         Not surprising that most software companies now focus their offer on support:
         help is important




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Application GIS integration Bindings GPU and clusters


Outline
   Introduction
       What is it?
       A bit of history
       Why doing that?
       How?

   Applications and librairy
     Components
     Architecture
     But steep learning

   What’s coming next?
     New applications for OTB 3.2
     GIS integration
     Bindings
     GPU and clusters
                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Application GIS integration Bindings GPU and clusters


New applications for OTB 3.2




         Tree stand extraction
         Radiometric calibration application (Optical and radar)
         Improvement of the land cover application (use of textures)




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Application GIS integration Bindings GPU and clusters


GIS integration




   PostGIS
         Work in progress to integrate the connection to PostGIS database (IO)
         Querying: use the geographic capabilities in feature extraction algorithms (a
         building has a shadow in the north west for example)




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Application GIS integration Bindings GPU and clusters


GIS integration

   Quantum GIS
         Quantum GIS is a very user-friendly open source GIS application
         Work going on to access the OTB capabilities within Quantum GIS (plugins)




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Application GIS integration Bindings GPU and clusters


GIS integration
   Mapping
         Stronger integration with mapping and data representation
         Integration of Mapnik, Open Street Map data




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Application GIS integration Bindings GPU and clusters


Bindings: access through other languages



  Not everybody uses C++!
         Bindings provide an access to the library through other languages
         Python: mostly working but not fully tested
         Java: some work is still needed to be able to use OTB from java but most of the
         work is already done
         IDL/Envi: cooperation with ITT VIS to provide a method to access OTB through
         idl/envi (working but no automatic generation)
         Matlab: recent user contribution (R. Bellens from TU Delft)
         Other languages supported by Cable Swig might be possible (Tcl, Ruby?)




                                IGARSS 2009, Cape Town
Introduction Applications and librairy Roadmap   Application GIS integration Bindings GPU and clusters


GPU and clusters


  Now
        Can automatically use several cores on the same CPU (shared memory)
        This is transparent for the user thanks to the ITK architecture


  GPU and clusters
        Some talks are going on between ITK and OTB to find the best solution: general,
        easy to use...
        Cuda is too dependent on the hardware but OpenCL is leading an effort to get a
        common architecture (Apple, AMD, Intel, Nvidia)
        Probably some novelties in the coming months




                               IGARSS 2009, Cape Town

More Related Content

Viewers also liked

Toward a gui remote-sensing environment built over OTB
Toward a gui remote-sensing environment built over OTBToward a gui remote-sensing environment built over OTB
Toward a gui remote-sensing environment built over OTB
melaneum
 
Madagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classificationMadagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classification
otb
 
Drills
DrillsDrills
HyperZoom by TNO
HyperZoom by TNOHyperZoom by TNO
HyperZoom by TNO
TNO
 
9 11 tribute ricky
9 11 tribute ricky9 11 tribute ricky
9 11 tribute ricky
reickson9
 
Gf presents 2.2.2.12
Gf presents 2.2.2.12Gf presents 2.2.2.12
Gf presents 2.2.2.12
markoverbye
 
Webdev work
Webdev workWebdev work
Webdev work
ICEMarketing
 
Lisa Gray Jisc Generic Cdd
Lisa Gray Jisc Generic CddLisa Gray Jisc Generic Cdd
Lisa Gray Jisc Generic Cdd
JISC SSBR
 
智慧來自煩惱
智慧來自煩惱智慧來自煩惱
智慧來自煩惱missglin
 
Econsultancy Social Media Monetisation Case Study 1212418744419594 8
Econsultancy Social Media Monetisation Case Study 1212418744419594 8Econsultancy Social Media Monetisation Case Study 1212418744419594 8
Econsultancy Social Media Monetisation Case Study 1212418744419594 8
David Knockton
 
Google History
Google HistoryGoogle History
Google History
Roger
 
D I A P 1
D I A P 1D I A P 1
D I A P 1
guestc9bfd34
 
Portuguese pp food_with_sounds
Portuguese pp food_with_soundsPortuguese pp food_with_sounds
Portuguese pp food_with_sounds
Álvaro Faria
 
Sociale media en opsporing
Sociale media en opsporingSociale media en opsporing
Sociale media en opsporingTNO
 
Analysis Of A Film Opening
Analysis Of A Film OpeningAnalysis Of A Film Opening
Analysis Of A Film Opening
guest6dbf425a
 
Value Line
Value LineValue Line
Value Line
Lacey Klemm
 
SCHOOL´S ANNUAL PLAN CHARACTERISTICS
SCHOOL´S ANNUAL PLAN CHARACTERISTICSSCHOOL´S ANNUAL PLAN CHARACTERISTICS
SCHOOL´S ANNUAL PLAN CHARACTERISTICS
rosibelcruz
 
Cloud bursting methodology
Cloud bursting methodologyCloud bursting methodology
Cloud bursting methodology
Jonathan Spindel
 
Advice For Buying Real-estate
Advice For Buying Real-estateAdvice For Buying Real-estate
Advice For Buying Real-estate
Golden Team
 
Previously Story And New Discovery
Previously Story And New DiscoveryPreviously Story And New Discovery
Previously Story And New Discovery
guestb95974d
 

Viewers also liked (20)

Toward a gui remote-sensing environment built over OTB
Toward a gui remote-sensing environment built over OTBToward a gui remote-sensing environment built over OTB
Toward a gui remote-sensing environment built over OTB
 
Madagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classificationMadagascar2011 - 08 - OTB segmentation and classification
Madagascar2011 - 08 - OTB segmentation and classification
 
Drills
DrillsDrills
Drills
 
HyperZoom by TNO
HyperZoom by TNOHyperZoom by TNO
HyperZoom by TNO
 
9 11 tribute ricky
9 11 tribute ricky9 11 tribute ricky
9 11 tribute ricky
 
Gf presents 2.2.2.12
Gf presents 2.2.2.12Gf presents 2.2.2.12
Gf presents 2.2.2.12
 
Webdev work
Webdev workWebdev work
Webdev work
 
Lisa Gray Jisc Generic Cdd
Lisa Gray Jisc Generic CddLisa Gray Jisc Generic Cdd
Lisa Gray Jisc Generic Cdd
 
智慧來自煩惱
智慧來自煩惱智慧來自煩惱
智慧來自煩惱
 
Econsultancy Social Media Monetisation Case Study 1212418744419594 8
Econsultancy Social Media Monetisation Case Study 1212418744419594 8Econsultancy Social Media Monetisation Case Study 1212418744419594 8
Econsultancy Social Media Monetisation Case Study 1212418744419594 8
 
Google History
Google HistoryGoogle History
Google History
 
D I A P 1
D I A P 1D I A P 1
D I A P 1
 
Portuguese pp food_with_sounds
Portuguese pp food_with_soundsPortuguese pp food_with_sounds
Portuguese pp food_with_sounds
 
Sociale media en opsporing
Sociale media en opsporingSociale media en opsporing
Sociale media en opsporing
 
Analysis Of A Film Opening
Analysis Of A Film OpeningAnalysis Of A Film Opening
Analysis Of A Film Opening
 
Value Line
Value LineValue Line
Value Line
 
SCHOOL´S ANNUAL PLAN CHARACTERISTICS
SCHOOL´S ANNUAL PLAN CHARACTERISTICSSCHOOL´S ANNUAL PLAN CHARACTERISTICS
SCHOOL´S ANNUAL PLAN CHARACTERISTICS
 
Cloud bursting methodology
Cloud bursting methodologyCloud bursting methodology
Cloud bursting methodology
 
Advice For Buying Real-estate
Advice For Buying Real-estateAdvice For Buying Real-estate
Advice For Buying Real-estate
 
Previously Story And New Discovery
Previously Story And New DiscoveryPreviously Story And New Discovery
Previously Story And New Discovery
 

Similar to The Orfeo Toolbox remote sensing image processing software

Pragmatic remote sensing handout
Pragmatic remote sensing handoutPragmatic remote sensing handout
Pragmatic remote sensing handout
otb
 
Pragmatic Remote Sensing - IGARSS 2010
Pragmatic Remote Sensing - IGARSS 2010Pragmatic Remote Sensing - IGARSS 2010
Pragmatic Remote Sensing - IGARSS 2010
otb
 
OSGeo Live Lightening Overview
OSGeo Live Lightening OverviewOSGeo Live Lightening Overview
OSGeo Live Lightening Overview
Jody Garnett
 
Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...
Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...
Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...
HannaHorppila
 
c,c++,java and python in gis development
c,c++,java and python in gis developmentc,c++,java and python in gis development
c,c++,java and python in gis development
Sakthivel R
 
SAGA GIS 2.0.7
SAGA GIS 2.0.7SAGA GIS 2.0.7
SAGA GIS 2.0.7
Tomislav Hengl
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GIS
SANGHEE SHIN
 
Case Study about BIM on GIS platform development project with the standard model
Case Study about BIM on GIS platform development project with the standard modelCase Study about BIM on GIS platform development project with the standard model
Case Study about BIM on GIS platform development project with the standard model
Tae wook kang
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
GeoSolutions
 
Thesis Report
Thesis ReportThesis Report
Thesis Report
Salaheddine EL FARISSI
 
EDINA National Datacentre Activity Update to GWG
EDINA National Datacentre Activity Update to GWGEDINA National Datacentre Activity Update to GWG
EDINA National Datacentre Activity Update to GWG
EDINA, University of Edinburgh
 
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Codemotion
 
Comparison of Mobile GIS applications
Comparison of Mobile GIS applicationsComparison of Mobile GIS applications
Comparison of Mobile GIS applications
Miguel Montesinos
 
20100512 Workflow Ramage
20100512 Workflow Ramage20100512 Workflow Ramage
20100512 Workflow Ramage
Steven Ramage
 
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDSFACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
IRJET Journal
 
Apache AGE and the synergy effect in the combination of Postgres and NoSQL
 Apache AGE and the synergy effect in the combination of Postgres and NoSQL Apache AGE and the synergy effect in the combination of Postgres and NoSQL
Apache AGE and the synergy effect in the combination of Postgres and NoSQL
EDB
 
robocity2013-jderobot
robocity2013-jderobotrobocity2013-jderobot
robocity2013-jderobot
Maikel González Baile
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
inventionjournals
 
Mask Lte Planning Tool
Mask Lte Planning ToolMask Lte Planning Tool
Mask Lte Planning Tool
Amr BARAKAT
 
CORE final workshop introduction
CORE final workshop introductionCORE final workshop introduction
CORE final workshop introduction
Carlo Vaccari
 

Similar to The Orfeo Toolbox remote sensing image processing software (20)

Pragmatic remote sensing handout
Pragmatic remote sensing handoutPragmatic remote sensing handout
Pragmatic remote sensing handout
 
Pragmatic Remote Sensing - IGARSS 2010
Pragmatic Remote Sensing - IGARSS 2010Pragmatic Remote Sensing - IGARSS 2010
Pragmatic Remote Sensing - IGARSS 2010
 
OSGeo Live Lightening Overview
OSGeo Live Lightening OverviewOSGeo Live Lightening Overview
OSGeo Live Lightening Overview
 
Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...
Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...
Ogc API features -pilottirajapinnat AU/SU-teemoista, Sampo Savolainen ja Lass...
 
c,c++,java and python in gis development
c,c++,java and python in gis developmentc,c++,java and python in gis development
c,c++,java and python in gis development
 
SAGA GIS 2.0.7
SAGA GIS 2.0.7SAGA GIS 2.0.7
SAGA GIS 2.0.7
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GIS
 
Case Study about BIM on GIS platform development project with the standard model
Case Study about BIM on GIS platform development project with the standard modelCase Study about BIM on GIS platform development project with the standard model
Case Study about BIM on GIS platform development project with the standard model
 
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
Raster Data In GeoServer and GeoTools: Achievements, Issues And Future Develo...
 
Thesis Report
Thesis ReportThesis Report
Thesis Report
 
EDINA National Datacentre Activity Update to GWG
EDINA National Datacentre Activity Update to GWGEDINA National Datacentre Activity Update to GWG
EDINA National Datacentre Activity Update to GWG
 
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
 
Comparison of Mobile GIS applications
Comparison of Mobile GIS applicationsComparison of Mobile GIS applications
Comparison of Mobile GIS applications
 
20100512 Workflow Ramage
20100512 Workflow Ramage20100512 Workflow Ramage
20100512 Workflow Ramage
 
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDSFACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
FACE COUNTING USING OPEN CV & PYTHON FOR ANALYZING UNUSUAL EVENTS IN CROWDS
 
Apache AGE and the synergy effect in the combination of Postgres and NoSQL
 Apache AGE and the synergy effect in the combination of Postgres and NoSQL Apache AGE and the synergy effect in the combination of Postgres and NoSQL
Apache AGE and the synergy effect in the combination of Postgres and NoSQL
 
robocity2013-jderobot
robocity2013-jderobotrobocity2013-jderobot
robocity2013-jderobot
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
 
Mask Lte Planning Tool
Mask Lte Planning ToolMask Lte Planning Tool
Mask Lte Planning Tool
 
CORE final workshop introduction
CORE final workshop introductionCORE final workshop introduction
CORE final workshop introduction
 

More from melaneum

Implementing kohonen's som with missing data in OTB
Implementing kohonen's som with missing data in OTBImplementing kohonen's som with missing data in OTB
Implementing kohonen's som with missing data in OTB
melaneum
 
Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...
Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...
Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...
melaneum
 
Urban area detection and segmentation using OTB
Urban area detection and segmentation using OTBUrban area detection and segmentation using OTB
Urban area detection and segmentation using OTB
melaneum
 
The use of Orfeo Toolbox in the context of map updating
The use of Orfeo Toolbox in the context of map updatingThe use of Orfeo Toolbox in the context of map updating
The use of Orfeo Toolbox in the context of map updating
melaneum
 
Assessment of interest points detection algorithms in OTB
Assessment of interest points detection algorithms in OTBAssessment of interest points detection algorithms in OTB
Assessment of interest points detection algorithms in OTB
melaneum
 
Image semantic coding using OTB
Image semantic coding using OTBImage semantic coding using OTB
Image semantic coding using OTB
melaneum
 
Reference algorithm implementations in OTB: textbook cases
Reference algorithm implementations in OTB: textbook casesReference algorithm implementations in OTB: textbook cases
Reference algorithm implementations in OTB: textbook cases
melaneum
 
Object counting in high resolution remote sensing images with OTB
Object counting in high resolution remote sensing images with OTBObject counting in high resolution remote sensing images with OTB
Object counting in high resolution remote sensing images with OTB
melaneum
 

More from melaneum (8)

Implementing kohonen's som with missing data in OTB
Implementing kohonen's som with missing data in OTBImplementing kohonen's som with missing data in OTB
Implementing kohonen's som with missing data in OTB
 
Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...
Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...
Overview of the PolSARpro V4.0 software. The open source toolbox for polarime...
 
Urban area detection and segmentation using OTB
Urban area detection and segmentation using OTBUrban area detection and segmentation using OTB
Urban area detection and segmentation using OTB
 
The use of Orfeo Toolbox in the context of map updating
The use of Orfeo Toolbox in the context of map updatingThe use of Orfeo Toolbox in the context of map updating
The use of Orfeo Toolbox in the context of map updating
 
Assessment of interest points detection algorithms in OTB
Assessment of interest points detection algorithms in OTBAssessment of interest points detection algorithms in OTB
Assessment of interest points detection algorithms in OTB
 
Image semantic coding using OTB
Image semantic coding using OTBImage semantic coding using OTB
Image semantic coding using OTB
 
Reference algorithm implementations in OTB: textbook cases
Reference algorithm implementations in OTB: textbook casesReference algorithm implementations in OTB: textbook cases
Reference algorithm implementations in OTB: textbook cases
 
Object counting in high resolution remote sensing images with OTB
Object counting in high resolution remote sensing images with OTBObject counting in high resolution remote sensing images with OTB
Object counting in high resolution remote sensing images with OTB
 

Recently uploaded

GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 

Recently uploaded (20)

GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 

The Orfeo Toolbox remote sensing image processing software

  • 1. Introduction Applications and librairy Roadmap The Orfeo Toolbox Remote Sensing Image Processing Software J. Inglada1 , E. Christophe2 1 C ENTRE N ATIONAL D ’É TUDES S PATIALES , TOULOUSE , F RANCE 2 C ENTRE FOR R EMOTE I MAGING , S ENSING AND P ROCESSING , N ATIONAL U NIVERSITY OF S INGAPORE IGARSS 2009, Cape Town
  • 2. Introduction Applications and librairy Roadmap What When Why How Outline Introduction What is it? A bit of history Why doing that? How? Applications and librairy Components Architecture But steep learning What’s coming next? New applications for OTB 3.2 GIS integration Bindings GPU and clusters IGARSS 2009, Cape Town
  • 3. Introduction Applications and librairy Roadmap What When Why How What is Orfeo Toolbox (OTB)? In the frame of CNES ORFEO Program Goal Make the development of new algorithms and their validation easier C++ library: provide many algorithms (pre-processing, image analysis) with a common interface Open-source: free to use, to modify, you can make your own software based on OTB and sell it Multiplatform: Windows, Linux, Unix, Mac IGARSS 2009, Cape Town
  • 4. Introduction Applications and librairy Roadmap What When Why How A bit of History Everything begins (2006) Started in 2006 by CNES (French Space Agency), funding several full-time developers Targeted at high resolution images (Pleiades to be launched in 2010) but with application to other sensors 4 year budget, over 1,000,000e Moving to user friendly applications (2008) Strong interactions with the user community highlighted that applications for non-programmers are important Several applications for non programmers (with GUI) since early 2008 Several courses (3/5-day courses) given in several French and Belgian institutions (Cesbio, RMA, ENST,...) IGARSS 2009, Cape Town
  • 5. Introduction Applications and librairy Roadmap What When Why How Why doing that? Is it successful so far? OTB user community growing steadily (programmers and application users) Presented at IGARSS and ISPRS in 2008, special session in IGARSS in 2009 CNES is planning to extend the budget for several more years Value analysis is very positive (cf. Ohloh): re-using is powerful IGARSS 2009, Cape Town
  • 6. Introduction Applications and librairy Roadmap What When Why How Why doing that? Is it successful so far? OTB user community growing steadily (programmers and application users) Presented at IGARSS and ISPRS in 2008, special session in IGARSS in 2009 CNES is planning to extend the budget for several more years Value analysis is very positive (cf. Ohloh): re-using is powerful Why make a multi-million dollar software and give it for free? CNES is not a software company One goal is to encourage research: it is critical for researchers to know what is in the box CNES makes satellites and wants to make sure the images are used if more people have the tools to use satellite images, it is good for CNES IGARSS 2009, Cape Town
  • 7. Introduction Applications and librairy Roadmap What When Why How How? How to reach this goal? Using the best work of others: do not reinvent the wheel IGARSS 2009, Cape Town
  • 8. Introduction Applications and librairy Roadmap What When Why How How? How to reach this goal? Using the best work of others: do not reinvent the wheel Many open-source libraries of good quality ITK: software architecture (streaming, multithreading), many image processing algorithms Gdal/Ogr: reading data format (geotiff, raw, png, jpeg, shapefile, . . . ) Ossim: sensor models (Spot, RPC, SAR, . . . ) and map projections 6S: radiometric corrections and many other: libLAS (lidar data), Edison (Mean Shift clustering), libSiftFast (SIFT), Boost (graph), libSVM (Support Vector Machines) ⇒ all behind a common interface IGARSS 2009, Cape Town
  • 9. Introduction Applications and librairy Roadmap Components Architecture But Outline Introduction What is it? A bit of history Why doing that? How? Applications and librairy Components Architecture But steep learning What’s coming next? New applications for OTB 3.2 GIS integration Bindings GPU and clusters IGARSS 2009, Cape Town
  • 10. Introduction Applications and librairy Roadmap Components Architecture But Application Currently Image viewer Image Segmentation Image Classification (by SVM) Land Cover Feature Extraction Road Extraction Orthorectification (with Pan Sharpening) Fine registration Image to database registration Object counting Urban area detection more to come IGARSS 2009, Cape Town
  • 11. Introduction Applications and librairy Roadmap Components Architecture But Components available Currently Most satellite image formats Geometric corrections Radiometric corrections Change detection Feature extraction Classification Huge documentation available Software Guide (+600 pages pdf), also the online version Doxygen: documentation for developers IGARSS 2009, Cape Town
  • 12. Introduction Applications and librairy Roadmap Components Architecture But A powerful architecture Modular Easy to combine different blocks to do new processing Scalable Streaming (processing huge images on the flow) transparent for the user of the library Multithreading (using multicore CPUs) also IGARSS 2009, Cape Town
  • 13. Introduction Applications and librairy Roadmap Components Architecture But But a steep learning curve for the programmer Advanced programming concepts Template metaprogramming (generic programming) Design patterns (Factory, Functors, Smart Pointers, ...) IGARSS 2009, Cape Town
  • 14. Introduction Applications and librairy Roadmap Components Architecture But But a steep learning curve for the programmer Advanced programming concepts Template metaprogramming (generic programming) Design patterns (Factory, Functors, Smart Pointers, ...) IGARSS 2009, Cape Town
  • 15. Introduction Applications and librairy Roadmap Components Architecture But Ask questions As for everything: easier when you’re not alone Much easier if you have somebody around to help! We didn’t know anything not so long ago... Not surprising that most software companies now focus their offer on support: help is important IGARSS 2009, Cape Town
  • 16. Introduction Applications and librairy Roadmap Application GIS integration Bindings GPU and clusters Outline Introduction What is it? A bit of history Why doing that? How? Applications and librairy Components Architecture But steep learning What’s coming next? New applications for OTB 3.2 GIS integration Bindings GPU and clusters IGARSS 2009, Cape Town
  • 17. Introduction Applications and librairy Roadmap Application GIS integration Bindings GPU and clusters New applications for OTB 3.2 Tree stand extraction Radiometric calibration application (Optical and radar) Improvement of the land cover application (use of textures) IGARSS 2009, Cape Town
  • 18. Introduction Applications and librairy Roadmap Application GIS integration Bindings GPU and clusters GIS integration PostGIS Work in progress to integrate the connection to PostGIS database (IO) Querying: use the geographic capabilities in feature extraction algorithms (a building has a shadow in the north west for example) IGARSS 2009, Cape Town
  • 19. Introduction Applications and librairy Roadmap Application GIS integration Bindings GPU and clusters GIS integration Quantum GIS Quantum GIS is a very user-friendly open source GIS application Work going on to access the OTB capabilities within Quantum GIS (plugins) IGARSS 2009, Cape Town
  • 20. Introduction Applications and librairy Roadmap Application GIS integration Bindings GPU and clusters GIS integration Mapping Stronger integration with mapping and data representation Integration of Mapnik, Open Street Map data IGARSS 2009, Cape Town
  • 21. Introduction Applications and librairy Roadmap Application GIS integration Bindings GPU and clusters Bindings: access through other languages Not everybody uses C++! Bindings provide an access to the library through other languages Python: mostly working but not fully tested Java: some work is still needed to be able to use OTB from java but most of the work is already done IDL/Envi: cooperation with ITT VIS to provide a method to access OTB through idl/envi (working but no automatic generation) Matlab: recent user contribution (R. Bellens from TU Delft) Other languages supported by Cable Swig might be possible (Tcl, Ruby?) IGARSS 2009, Cape Town
  • 22. Introduction Applications and librairy Roadmap Application GIS integration Bindings GPU and clusters GPU and clusters Now Can automatically use several cores on the same CPU (shared memory) This is transparent for the user thanks to the ITK architecture GPU and clusters Some talks are going on between ITK and OTB to find the best solution: general, easy to use... Cuda is too dependent on the hardware but OpenCL is leading an effort to get a common architecture (Apple, AMD, Intel, Nvidia) Probably some novelties in the coming months IGARSS 2009, Cape Town