isce-framework / nisar-workflows

3 stars 1 forks source link

GUNW product - gridmapping/z-values missing as meta-data for radarGrid fields #7

Open dbekaert opened 6 months ago

dbekaert commented 6 months ago

Hi,

The GUNW product works well with the netcdf reader for the data layers, for plotting in QGIS, panopoly etc. Confirm this both for the public product and a product created internally (as of 20 Feb). Below is consistent between both the public and internal version of GUNW created:

For the radarGrid:

Screenshots for radarGrid illustration

see the difference between unwrapped layer meta-data (has `projection` and `x-y coordinates` referenced): ![Screenshot 2024-02-21 at 3 40 03 PM](https://github.com/isce-framework/nisar-workflows/assets/19240905/37d8fb9d-1248-484f-911a-6aa05aa2446c) parallelBaseline meta-date layer (does not have `projection`, also `z-coordinates` aka `heightAboveEllipsoid` are not included): ![Screenshot 2024-02-21 at 3 39 35 PM](https://github.com/isce-framework/nisar-workflows/assets/19240905/5a7bc9fe-e1ac-420e-8447-a3505c96f91f)

Following could be used to replicate expected behavior

For Unwrapped phase this is the output as expected using the netcdf drives (given CF compliance) `gdalinfo NETCDF:"GUNW_0000424561_001001_ALOS2355610360-201223_0000426271_001001_ALOS2392870360-210901.h5"://science/LSAR/GUNW/grids/frequencyA/unwrappedInterferogram/HH/unwrappedPhase` ```Coordinate System is: PROJCRS["WGS 84 / UTM zone 11N", BASEGEOGCRS["WGS 84", DATUM["World Geodetic System 1984", ELLIPSOID["WGS 84",6378137,298.257223563, LENGTHUNIT["metre",1]]], PRIMEM["Greenwich",0, ANGLEUNIT["degree",0.0174532925199433]], ID["EPSG",4326]], CONVERSION["UTM zone 11N", METHOD["Transverse Mercator", ID["EPSG",9807]], PARAMETER["Latitude of natural origin",0, ANGLEUNIT["degree",0.0174532925199433], ID["EPSG",8801]], PARAMETER["Longitude of natural origin",-117, ANGLEUNIT["degree",0.0174532925199433], ID["EPSG",8802]], PARAMETER["Scale factor at natural origin",0.9996, SCALEUNIT["unity",1], ID["EPSG",8805]], PARAMETER["False easting",500000, LENGTHUNIT["metre",1], ID["EPSG",8806]], PARAMETER["False northing",0, LENGTHUNIT["metre",1], ID["EPSG",8807]]], CS[Cartesian,2], AXIS["easting",east, ORDER[1], LENGTHUNIT["metre",1]], AXIS["northing",north, ORDER[2], LENGTHUNIT["metre",1]], ID["EPSG",32611]] Corner Coordinates: Upper Left ( 365480.000, 3913615.000) (118d28'50.04"W, 35d21'24.39"N) Lower Left ( 365480.000, 3789215.000) (118d27'38.33"W, 34d14' 7.21"N) Upper Right ( 456440.000, 3913615.000) (117d28'46.19"W, 35d21'53.61"N) Lower Right ( 456440.000, 3789215.000) (117d28'22.96"W, 34d14'35.25"N) Center ( 410960.000, 3851415.000) (117d58'24.23"W, 34d48' 3.87"N) ``` For the cubes we would expect something alike recognizing projection but also incorporating the Z-dimension Below is the current produced output: ``` Corner Coordinates: Upper Left ( 362317.178, 3915829.957) Lower Left ( 362317.178, 3788829.957) Upper Right ( 472317.178, 3915829.957) Lower Right ( 472317.178, 3788829.957) Center ( 417317.178, 3852329.957) ```

Separate note for GUNW product Suspect this is already fixed (only applied to the public sample and not internally created product).

Science --> LSAR --> GUNW --> identification --> trackNumer* (trackNumber)
dbekaert commented 5 months ago

We received the new sample data from ADT (version of 14 March) and can confirm that the meta-data cubes are reported correctly using GDAL.

``` products gdalinfo NETCDF:"NISAR_L2_PR_GUNW_001_001_A_001_001_4000_HHNA_20100410T062246_20100410T062300_20110111T061906_20110111T061920_D00401_P_F_J_001.h5"://science/LSAR/GUNW/metadata/radarGrid/hydrostaticTroposphericPhaseScreen Driver: netCDF/Network Common Data Format Files: NISAR_L2_PR_GUNW_001_001_A_001_001_4000_HHNA_20100410T062246_20100410T062300_20110111T061906_20110111T061920_D00401_P_F_J_001.h5 Size is 103, 112 Coordinate System is: PROJCRS["WGS 84 / UTM zone 10N", BASEGEOGCRS["WGS 84", DATUM["World Geodetic System 1984", ELLIPSOID["WGS 84",6378137,298.257223563, LENGTHUNIT["metre",1]]], PRIMEM["Greenwich",0, ANGLEUNIT["degree",0.0174532925199433]], ID["EPSG",4326]], CONVERSION["UTM zone 10N", METHOD["Transverse Mercator", ID["EPSG",9807]], PARAMETER["Latitude of natural origin",0, ANGLEUNIT["degree",0.0174532925199433], ID["EPSG",8801]], PARAMETER["Longitude of natural origin",-123, ANGLEUNIT["degree",0.0174532925199433], ID["EPSG",8802]], PARAMETER["Scale factor at natural origin",0.9996, SCALEUNIT["unity",1], ID["EPSG",8805]], PARAMETER["False easting",500000, LENGTHUNIT["metre",1], ID["EPSG",8806]], PARAMETER["False northing",0, LENGTHUNIT["metre",1], ID["EPSG",8807]]], CS[Cartesian,2], AXIS["easting",east, ORDER[1], LENGTHUNIT["metre",1]], AXIS["northing",north, ORDER[2], LENGTHUNIT["metre",1]], ID["EPSG",32610]] Data axis to CRS axis mapping: 1,2 Origin = (890000.000000000000000,3903000.000000000000000) Pixel Size = (1000.000000000000000,-1000.000000000000000) Metadata: /science/LSAR/GUNW/metadata/radarGrid/heightAboveEllipsoid#description=Height values above WGS84 Ellipsoid corresponding to the radar grid /science/LSAR/GUNW/metadata/radarGrid/heightAboveEllipsoid#standard_name=height_above_reference_ellipsoid /science/LSAR/GUNW/metadata/radarGrid/heightAboveEllipsoid#units=meters /science/LSAR/GUNW/metadata/radarGrid/hydrostaticTroposphericPhaseScreen#description=Hydrostatic component of the troposphere phase screen /science/LSAR/GUNW/metadata/radarGrid/hydrostaticTroposphericPhaseScreen#grid_mapping=projection /science/LSAR/GUNW/metadata/radarGrid/hydrostaticTroposphericPhaseScreen#units=radians /science/LSAR/GUNW/metadata/radarGrid/projection#description=Product map grid projection: EPSG code, with additional projection information as HDF5 Attributes /science/LSAR/GUNW/metadata/radarGrid/projection#ellipsoid=WGS84 /science/LSAR/GUNW/metadata/radarGrid/projection#epsg_code=32610 /science/LSAR/GUNW/metadata/radarGrid/projection#false_easting=500000 /science/LSAR/GUNW/metadata/radarGrid/projection#false_northing=0 /science/LSAR/GUNW/metadata/radarGrid/projection#grid_mapping_name=WGS 84 / UTM zone 10N /science/LSAR/GUNW/metadata/radarGrid/projection#inverse_flattening=298.257223563 /science/LSAR/GUNW/metadata/radarGrid/projection#latitude_of_projection_origin=0 /science/LSAR/GUNW/metadata/radarGrid/projection#longitude_of_projection_origin=0 /science/LSAR/GUNW/metadata/radarGrid/projection#semi_major_axis=6378137 /science/LSAR/GUNW/metadata/radarGrid/projection#spatial_ref=PROJCS["WGS 84 / UTM zone 10N",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",0],PARAMETER["central_meridian",-123],PARAMETER["scale_factor",0.9996],PARAMETER["false_easting",500000],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","32610"]] /science/LSAR/GUNW/metadata/radarGrid/projection#utm_zone_number=10 /science/LSAR/GUNW/metadata/radarGrid/xCoordinates#description=X coordinates in specified projection /science/LSAR/GUNW/metadata/radarGrid/xCoordinates#long_name=x coordinate of projection /science/LSAR/GUNW/metadata/radarGrid/xCoordinates#standard_name=projection_x_coordinate /science/LSAR/GUNW/metadata/radarGrid/xCoordinates#units=meters /science/LSAR/GUNW/metadata/radarGrid/yCoordinates#description=Y coordinates in specified projection /science/LSAR/GUNW/metadata/radarGrid/yCoordinates#long_name=y coordinate of projection /science/LSAR/GUNW/metadata/radarGrid/yCoordinates#standard_name=projection_y_coordinate /science/LSAR/GUNW/metadata/radarGrid/yCoordinates#units=meters NC_GLOBAL#contact=nisar-sds-ops@jpl.nasa.gov NC_GLOBAL#Conventions=CF-1.7 NC_GLOBAL#institution=NASA JPL NC_GLOBAL#mission_name=NISAR NC_GLOBAL#reference_document=D-102272 NISAR NASA SDS Product Specification L2 Geocoded Unwrapped Interferogram NC_GLOBAL#title=NISAR L2 GUNW Product NETCDF_DIM_EXTRA={heightAboveEllipsoid} NETCDF_DIM_heightAboveEllipsoid_DEF={21,6} NETCDF_DIM_heightAboveEllipsoid_VALUES={-1000,-500,0,500,1000,1500,2000,2500,3000,3500,4000,4500,5000,5500,6000,6500,7000,7500,8000,8500,9000} Corner Coordinates: Upper Left ( 890000.000, 3903000.000) (118d43' 2.29"W, 35d11'39.46"N) Lower Left ( 890000.000, 3791000.000) (118d46' 8.27"W, 34d11'13.51"N) Upper Right ( 993000.000, 3903000.000) (117d35'24.90"W, 35d 8'56.75"N) Lower Right ( 993000.000, 3791000.000) (117d39'19.31"W, 34d 8'36.75"N) Center ( 941500.000, 3847000.000) (118d10'58.89"W, 34d40'11.34"N) Band 1 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=-1000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 2 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=-500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 3 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=0 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 4 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 5 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=1000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 6 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=1500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 7 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=2000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 8 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=2500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 9 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=3000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 10 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=3500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 11 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=4000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 12 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=4500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 13 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=5000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 14 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=5500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 15 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=6000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 16 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=6500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 17 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=7000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 18 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=7500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 19 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=8000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 20 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=8500 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians Band 21 Block=103x1 Type=Float64, ColorInterp=Undefined Unit Type: radians Metadata: description=Hydrostatic component of the troposphere phase screen grid_mapping=projection NETCDF_DIM_heightAboveEllipsoid=9000 NETCDF_VARNAME=hydrostaticTroposphericPhaseScreen units=radians NETCDF_DIM_heightAboveEllipsoid_VALUES={-1000,-500,0,500,1000,1500,2000,2500,3000,3500,4000,4500,5000,5500,6000,6500,7000,7500,8000,8500,9000} ```