Coregistration No-Data Value

By default, if I open a SLC SAFE product in SNAP the I&Q bands use 0.0 as a no data value. I know I can change this by manually unchecking the “No-Data Value Used”.

However, when using the “S1 TOPS Coregistration” operator, I get different results depending if the slave product has no data value enabled or not, as this causes some pixels not participate in the interpolation.

What is the correct option here? Or are both options valid? Is there a rationale for the current default?

I will expand upon the question with sample images, of a coregistered slave from a coastal area using a small area for demonstration:

I band image, no data value is active:

I band image, no data value is inactive.

Band maths of the previous two images, where I substract first from the second:

Comparing the two images in it is clear there is a difference, as the first one has more “no data value” pixels.

Upon closer look with the difference image, I get 4 pixel “spots” all over the image, where the results differ due to bilinear interpolation. If I use another interpolation method, the results differ even more(how many pixels used for interpolation).

I feel that the results cannot be correct if I leave the “No Data Value Used” as active, however I would like someone to confirm this.

There is a record that this has been reversed for create stack operator - [ESM-70] Modified to mask noDataValue pixels in master using noDataVa… · senbox-org/s1tbx@f63b1cc · GitHub So there is obviously a discrepancy.

@junlu could you take a look?