Request for Changes-79: BundleToPerfectSensor implemented as composite application

From OTBWiki
Jump to: navigation, search

[Request for Changes - 79] BundleToPerfectSensor implemented as composite application


  • Author: Guillaume
  • Additional Contributors (if different than authors)
  • Submitted on 10.01.2017
  • Proposed target release : 5.10
  • Adopted : +3 from Julien, Rémi, Victor, Guillaume
  • Merged : 028c0e0af94a49dddc821aa871183bdebd4b9207


This RFC proposes a new implementation of the BundleToPerfectSensor using the composite application framework.


The existing implementation was mostly a copy/paste of the code of two other applications (Superimpose and Pansharpening). Using the new composite application framework, it is possible to re-implement BundleToPerfectSensor as the concatenation of Superimpose and Pansharpening.

Implementation details

Classes and files

No filter modified.


M       Modules/Applications/AppFusion/app/otbBundleToPerfectSensor.cxx
M       Modules/Applications/AppFusion/otb-module.cmake
M       Modules/Applications/AppProjection/app/otbSuperimpose.cxx

BundleToPerfectSensor has been re-implemented as a composite of Superimpose and Pansharpening. As the Superimpose application is in a different module, a dependency to OTBAppProjection has been added.

The Superimpose behaviour has slightly changed :

  • if no "lms" parameter is given, the deformation field spacing is set to 10 times the output pixel size
  • if "lms" is set, its value is used for the deformation field (value in physical units).

The previous strategy, when no "lms" was given, was to leave the underlying filter choose its deformation grid spacing (which was 2 times the output spacing

The new behaviour was actually implemented in BundleToPerfectSensor, and I found it more convenient for the user.


M       Modules/Applications/AppProjection/test/CMakeLists.txt

The parameters for the test of Superimpose have been modified to keep the same baseline.


Additional notes