Difference between otbcli_pansharpening and otbcli_BundleToPerfectSensor?

I want to use the Bayesian Fusion algorithm for pansharpening my WorldView 4 imagery. Using otbcli_pansharpening does not work, it throws up the following error:

inputs do not occupy the same physical space

The origin is the same, but of course the pixel sizes for PAN and MS (=XS?) are different.

However, when using otbcli_BundleToPerfectSensor I can also choose the Bayesian fusion algorithm and it works nicely.

So my question: What is the difference between these two functions?

otbcli_BundleToPerfectSensor is what we call in OTB a composite application, it chains two smaller application :

  • Superimpose : reproject the XS image in the PAN geometry
  • Pansharpening : performs the pansharpening operation, assuming the XS image has already been projected in the PAN geometry

So the Pansharpening application is only a subpart of the whole Pansharpening process. I agree the doc of the application isn’t very clear …

1 Like

Also see this CookBook recipe for more info:
https://www.orfeo-toolbox.org/CookBook/recipes/optpreproc.html#pan-sharpening

1 Like