dbekaert / RAiDER

Raytracing Atmospheric Delay Estimation for RADAR
Apache License 2.0
70 stars 39 forks source link

ISCE format for RAiDER #546

Open erik-17 opened 1 year ago

erik-17 commented 1 year ago

Hi RAiDER developers,

In many of your documentation you refer to some of the raster products using the "isce" convention. What exact format do they need to have? I am not working with ISCE at the moment but with GAMMA products and I am not sure how I should transform my data to match the isce convention, could you share a reference or example?

Thank you!

dbekaert commented 1 year ago

Hi,

We might need to revisit to ensure the raster options are working (@jlmaurer do you know status?). Generally we could also have support for GAMMA, as its only the reader stage of the heading and incidence angle what we need. An alternative would be to use orbits. Currently we have readers for S1 orbit files directly and we compute the angles on the fly.

erik-17 commented 1 year ago

Thank you,

Not a problem, I can work with the orbit files in the meanwhile. Additionally, once I process a weather model, I obtain the "wet_total" and "hydro_total" arrays in the dataset. These ones are 3D arrays containing delays at each atmosphere level. What would be the best way to apply this corrections to interferograms? Getting the total between wet_total + hydro_total, and add every single level to get one delay array, regardless the amount of height levels I have? Like this:

wet_total = ds['wet_total'].values
hydro_total = ds['hydro_total'].values
total = wet_total + hydro_total
total_delay = np.sum(total, axis=(0))

where, wet_total.shape == hydro_total.shape == total.shape == (145 , 9, 16) and total_delay.shape == (9, 16)

Then use the total_delay array as a correction?

EDIT: Just noticed what I said does not make much sense. However, as I expected a 2d grid delay as a correction. I numerically integrated the 'hydro' and 'wet' datasets and got the exact same values as the first layer of 'hydro_total' and 'wet_total'. Are those the ones I should use as correction delays?

with first layer of total hydro/wet dataset, I mean: total_hydro[0, :, :]/total_wet[0, :, :]

image image

dbekaert commented 1 year ago

You should intersect the 3D cube with a DEM to get to a full resolution 2D delay. This is alike how geometric information is stored within the ARIA S1-GUNW product and how also NISAR will store data. For some more information see the ARIA-tools-docs page under the ARIA-extract notebook (see section 2). https://github.com/aria-tools/ARIA-tools-docs/blob/master/JupyterDocs/ariaExtract/ariaExtract_tutorial.ipynb

There is also internal function in RAiDER that can be called. @jlmaurer do we already have some documentation pages live for this?

jlmaurer commented 4 months ago

Just updating the tags as this is not a bug, it's a documentation need. I think we have some basic documentation on this topic but could be better.