Intensity calculation not clear

I found a strange behaviour of SNAP during the intensity derivation of a SAR image.
The prblem begins to manifests itself just during the calibration step, that it is generally (one of) the first step in a common processing pipeline for the backscatter derivation.

When I calibrate a single pol image flagging “save as complex” it produces three layers: the i_xx, the i_qq and the virtual itensity calculated.

When I calibrate an image without flagging “save as complex” it produces directly the intensity layer, that in this case is called Sigma0_xx.
It would be better to standardize the names.

I ascertained that the virtual intensity layer derived producing the complex i an q is equal to the Sigma0.

I don’t know why if I manually calculate Intensity (or Sigma_0) using the raster calculator with the formula

i_xx * i_xx + q_xx * q_xx

or

i_xx == 0.0 ? 0.0 : i_xx * i_xx + q_xx * q_xx.

it produces a results that is slightly different from the virtual intensity layer and the sigma0 layer derived before.

Thank you

the second just means that
IF i_xx is 0.00, THEN the pixel should be zero, ELSE the equation is computed.
It should not make a difference in the actual pixel values then.
Can you give an example how the results are different in your case?

I’m not sure about what you mean with “standardize the names”
Sigma0 is a defined term for the calibrated radar cross section and produces backscatter intensity (phase is lost), while complex calibration intentionally conserves the i+q components for interferometric and polarimetric purposes.

Thank you ABroun

a question: is the virtual Intensity produced during the complex calibration with the formula
i_xx == 0.0 ? 0.0 : i_xx * i_xx + q_xx * q_xx

theoretically supposed to be equal to Sigma0?

Thank you again

I don’t think so because Sigma0 includes knowledge on the global incidence angle of each pixel.

Ok.
I don’t understand why if I calculate the Intensity using i and q with the formula
Intensity == 0.0 ? 0.0 : i_xx * i_xx + q_xx * q_xx using the raster Band Math
it doesn’t produce the same image as the Virtual Intensity band that is shown to be calculated with the same formula.

Thank you

Can you please give an example how the results are different?

Hi ABroun
I just found out that the virtual Intensity differs from the calculated intensity only in some pixels in which the calculated intensity has NaN values, while for the rest of the image the values are the same.
Good news for me.

That encouraged me to go on and to replicate the same analysis with terrain corrected images.
I applied the range doppler terrain correction to the complex calibrated bands two times: 1) the first time producing terrain corrected and geocoded i and q bands, 2) the second time producing terrain corrected and geocoded Intensity.
I used the same DEM, projection and resampling algorithm and I calculated again the intensity using Intensity == 0.0 ? 0.0 : i_xx * i_xx + q_xx * q_xx and comparing it to the Intensity derived in 2).

That time results are very different, my feeling is that SNAP uses two different ways to perform DEM incidence angle correction to i and q with respect to Intensity.

Thank you

to me it is not surprising that they are different because the pixel values are changed during the resampling of the product. So once you alter i+q directly, once you alter the intensity computed from those. Please try once with nearest neighbor resampling of the input bands, it should come closer afterwards.

Also, the terrain correction operator belongs to the geometric calibration tools. It does not correct the radiometric variation caused by the local incidence angle, as you implied in the last sentence.

Ok ABroun

thank you for your help

Giacomo