Commit 23db304
Add integration tests and enhance Sentinel-1 GRD to GeoZarr conversion (#30)
* Add integration tests for Sentinel-1 GRD to GeoZarr conversion
- Implemented a comprehensive integration test for converting Sentinel-1 GRD datasets to GeoZarr format.
- Created a sample EOPF DataTree structure mimicking the Sentinel-1 GRD organization.
- Verified the preservation of GRD measurement data, GCP-based georeferencing, and compliance with GeoZarr specifications.
- Included checks for basic structure, GeoZarr compliance, and GCP implementation.
* Enhance GeoZarr dataset conversion to support GCPs and update integration tests for Sentinel-1
* tests: update sentinel 1 sample (mock) datatree
* silence test warnings
* clean-up, misc. fixes and formatting
* refactor create_geozarr_dataset to include sentinel-1
Deal with current VH and VV top-level groups in sentinel-1 data
products.
* fix typing
* fix zarr variable path
* tests: fix temp path
* fix write auxiliary coords to zarr
Avoid chunking 1-d auxiliary coordinates "line" and "pixel", which
raises an error when attempting to write them to zarr with the rest
of the single variable dataset and its coordinates.
* streamline sentinel-1 special case
`iterative_copy` iterates over the whole datatree, so a simpler approach
is to just make the cross-product of the groups to convert to geozarr
with the two VV/VH polarization groups and pick one of the two
`conditions/gcp` groups (both should be equal).
* add grid mapping variable with GCPs + tests
Native resolution only for now.
* add GCP-based multiscale support for Sentinel1 GRD
No GCP decimation yet (original GCPs copied at each zoom level).
* re-organize tests structure
So we can later reuse testing logic that is common to Sentinel 1 and 2,
if need.
* add tests for sentinel 1 multiscale
* add GCP group cli argument
* fix tests
* check sentinel-1 data but no GCP group provided
* move tests
So they are installed with the package.
* compute overview GCPs from native resolution GCPs
* fix sentinel1 grd overview dimensions
* ci: update test directory
* fix: improve chunk size calculation logic in calculate_aligned_chunk_size function
* strip group name slash prefix
Co-authored-by: Emmanuel Mathot <emmanuel.mathot@gmail.com>
* bands -> variables
Co-authored-by: Emmanuel Mathot <emmanuel.mathot@gmail.com>
* band -> variable
Co-authored-by: Emmanuel Mathot <emmanuel.mathot@gmail.com>
* feat: add Sentinel-1 reprojection utilities and update GeoZarr conversion logic
* fix: update group name formatting in create_geozarr_dataset function
* fix: correct standard names for target coordinates in _create_target_coordinates function
* feat: add validation script for Sentinel-1 reprojection compatibility with titiler-eopf
* feat: enhance reprojection and downsampling functions with nodata handling
* fix: update grid_mapping handling in overview dataset creation
* fix: suppress FutureWarning for timedelta decoding in CLI
* fix: refine warning suppression for FutureWarning and UserWarning in CLI
* fix: refine warning suppression for RuntimeWarning in CLI
* feat: add validation script for Sentinel-1 reprojection compatibility with titiler-eopf
* Implement code changes to enhance functionality and improve performance
* fix: refine warning suppression and improve code formatting across multiple files
* fix: update test command to use correct source directory for pytest
* fix: update test command to use correct test directory for pytest
---------
Co-authored-by: Benoit Bovy <benbovy@gmail.com>1 parent b59afed commit 23db304
15 files changed
Lines changed: 2111 additions & 738 deletions
File tree
- .github/workflows
- .vscode
- src/eopf_geozarr
- conversion
- tests
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
53 | | - | |
| 53 | + | |
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| |||
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
108 | | - | |
| 108 | + | |
109 | 109 | | |
110 | 110 | | |
111 | 111 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
123 | 123 | | |
124 | 124 | | |
125 | 125 | | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
126 | 200 | | |
127 | 201 | | |
128 | 202 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
10 | 11 | | |
11 | 12 | | |
12 | 13 | | |
| |||
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
23 | 31 | | |
24 | 32 | | |
25 | 33 | | |
| |||
166 | 174 | | |
167 | 175 | | |
168 | 176 | | |
| 177 | + | |
169 | 178 | | |
170 | 179 | | |
171 | 180 | | |
| |||
1087 | 1096 | | |
1088 | 1097 | | |
1089 | 1098 | | |
| 1099 | + | |
| 1100 | + | |
| 1101 | + | |
| 1102 | + | |
| 1103 | + | |
1090 | 1104 | | |
1091 | 1105 | | |
1092 | 1106 | | |
| |||
0 commit comments