Skip to content

GSLC dataset and attribute issues #218

@nemo794

Description

@nemo794

It was noticed by ISRO that some attribute dtypes in GCOV sample products did not correspond to their respective dataset dtypes for GCOV; #213 addresses those reported issues.

As an additional follow-up, I implemented new checks into nisarqa via isce-framework/nisarqa#155 ; this nisarqa PR checks for such issues, and it also checks for empty datasets and invalid string datasets.

Here are the outputs from that QA PR, for a recent sample GSLC HDF5:

"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HH -> sample_stddev_real"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyA/HV -> sample_stddev_real"
"Attribute has dtype int64, which does not match its dataset's dtype of uint8. Path: science/LSAR/GSLC/grids/frequencyA/mask -> _FillValue"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/grids/frequencyA/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/grids/frequencyA/yCoordinates -> NAME"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HH -> sample_stddev_real"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/grids/frequencyB/HV -> sample_stddev_real"
"Attribute has dtype int64, which does not match its dataset's dtype of uint8. Path: science/LSAR/GSLC/grids/frequencyB/mask -> _FillValue"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/grids/frequencyB/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/grids/frequencyB/yCoordinates -> NAME"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxHorizontalCrosspol -> sample_stddev_real"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/rxVerticalCrosspol -> sample_stddev_real"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txHorizontalCrosspol -> sample_stddev_real"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> max_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> max_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> mean_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> mean_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> min_imag_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> min_real_value"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> sample_stddev_imag"
"Attribute has dtype float64, which does not match the half-precision of its dataset's dtype of complex64. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/txVerticalCrosspol -> sample_stddev_real"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/crosstalk/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyA/elevationAntennaPattern/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyA/elevationAntennaPattern/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyA/noiseEquivalentBackscatter/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyA/noiseEquivalentBackscatter/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyB/elevationAntennaPattern/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyB/elevationAntennaPattern/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyB/noiseEquivalentBackscatter/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/frequencyB/noiseEquivalentBackscatter/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/geometry/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/calibrationInformation/geometry/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/processingInformation/parameters/frequencyA/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/processingInformation/parameters/frequencyA/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/processingInformation/parameters/frequencyB/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/processingInformation/parameters/frequencyB/yCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/processingInformation/parameters/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/processingInformation/parameters/yCoordinates -> NAME"
"Attribute has dtype float64, which does not match its dataset's dtype of float32. Path: science/LSAR/GSLC/metadata/radarGrid/alongTrackUnitVectorX -> _FillValue"
"Attribute has dtype float64, which does not match its dataset's dtype of float32. Path: science/LSAR/GSLC/metadata/radarGrid/alongTrackUnitVectorY -> _FillValue"
"Attribute has dtype float64, which does not match its dataset's dtype of float32. Path: science/LSAR/GSLC/metadata/radarGrid/elevationAngle -> _FillValue"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/radarGrid/heightAboveEllipsoid -> NAME"
"Attribute has dtype float64, which does not match its dataset's dtype of float32. Path: science/LSAR/GSLC/metadata/radarGrid/incidenceAngle -> _FillValue"
"Attribute has dtype float64, which does not match its dataset's dtype of float32. Path: science/LSAR/GSLC/metadata/radarGrid/losUnitVectorX -> _FillValue"
"Attribute has dtype float64, which does not match its dataset's dtype of float32. Path: science/LSAR/GSLC/metadata/radarGrid/losUnitVectorY -> _FillValue"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/radarGrid/xCoordinates -> NAME"
"Value is '', which is not valid for nominal NISAR data. Path: science/LSAR/GSLC/metadata/radarGrid/yCoordinates -> NAME"
"Value is '(NOT SPECIFIED)', which is not valid for nominal NISAR data. Path: /science/LSAR/identification/listOfObservationModes"

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions