gtano commited on
Commit
67a3943
·
verified ·
1 Parent(s): a8436dc

Big upload

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. croplands/io.py +37 -0
  2. croplands/polygonize.py +59 -0
  3. croplands/utils.py +37 -0
  4. examples/at_si_sk_2021_380.zarr/.zattrs +1 -0
  5. examples/at_si_sk_2021_380.zarr/.zgroup +3 -0
  6. examples/at_si_sk_2021_380.zarr/.zmetadata +154 -0
  7. examples/at_si_sk_2021_380.zarr/band/.zarray +20 -0
  8. examples/at_si_sk_2021_380.zarr/band/.zattrs +5 -0
  9. examples/at_si_sk_2021_380.zarr/band/0 +0 -0
  10. examples/at_si_sk_2021_380.zarr/band_data/.zarray +26 -0
  11. examples/at_si_sk_2021_380.zarr/band_data/.zattrs +13 -0
  12. examples/at_si_sk_2021_380.zarr/band_data/0.0.0.0 +0 -0
  13. examples/at_si_sk_2021_380.zarr/band_data/0.1.0.0 +0 -0
  14. examples/at_si_sk_2021_380.zarr/band_data/0.2.0.0 +0 -0
  15. examples/at_si_sk_2021_380.zarr/band_data/0.3.0.0 +0 -0
  16. examples/at_si_sk_2021_380.zarr/band_data/0.4.0.0 +0 -0
  17. examples/at_si_sk_2021_380.zarr/band_data/0.5.0.0 +0 -0
  18. examples/at_si_sk_2021_380.zarr/band_data/0.6.0.0 +0 -0
  19. examples/at_si_sk_2021_380.zarr/band_data/0.7.0.0 +0 -0
  20. examples/at_si_sk_2021_380.zarr/band_data/0.8.0.0 +0 -0
  21. examples/at_si_sk_2021_380.zarr/band_data/0.9.0.0 +0 -0
  22. examples/at_si_sk_2021_380.zarr/band_data/1.0.0.0 +0 -0
  23. examples/at_si_sk_2021_380.zarr/band_data/1.1.0.0 +0 -0
  24. examples/at_si_sk_2021_380.zarr/band_data/1.2.0.0 +0 -0
  25. examples/at_si_sk_2021_380.zarr/band_data/1.3.0.0 +0 -0
  26. examples/at_si_sk_2021_380.zarr/band_data/1.4.0.0 +0 -0
  27. examples/at_si_sk_2021_380.zarr/band_data/1.5.0.0 +0 -0
  28. examples/at_si_sk_2021_380.zarr/band_data/1.6.0.0 +0 -0
  29. examples/at_si_sk_2021_380.zarr/band_data/1.7.0.0 +0 -0
  30. examples/at_si_sk_2021_380.zarr/band_data/1.8.0.0 +0 -0
  31. examples/at_si_sk_2021_380.zarr/band_data/1.9.0.0 +0 -0
  32. examples/at_si_sk_2021_380.zarr/band_data/2.0.0.0 +0 -0
  33. examples/at_si_sk_2021_380.zarr/band_data/2.1.0.0 +0 -0
  34. examples/at_si_sk_2021_380.zarr/band_data/2.2.0.0 +0 -0
  35. examples/at_si_sk_2021_380.zarr/band_data/2.3.0.0 +0 -0
  36. examples/at_si_sk_2021_380.zarr/band_data/2.4.0.0 +0 -0
  37. examples/at_si_sk_2021_380.zarr/band_data/2.5.0.0 +0 -0
  38. examples/at_si_sk_2021_380.zarr/band_data/2.6.0.0 +0 -0
  39. examples/at_si_sk_2021_380.zarr/band_data/2.7.0.0 +0 -0
  40. examples/at_si_sk_2021_380.zarr/band_data/2.8.0.0 +0 -0
  41. examples/at_si_sk_2021_380.zarr/band_data/2.9.0.0 +0 -0
  42. examples/at_si_sk_2021_380.zarr/band_data/3.0.0.0 +0 -0
  43. examples/at_si_sk_2021_380.zarr/band_data/3.1.0.0 +0 -0
  44. examples/at_si_sk_2021_380.zarr/band_data/3.2.0.0 +0 -0
  45. examples/at_si_sk_2021_380.zarr/band_data/3.3.0.0 +0 -0
  46. examples/at_si_sk_2021_380.zarr/band_data/3.4.0.0 +0 -0
  47. examples/at_si_sk_2021_380.zarr/band_data/3.5.0.0 +0 -0
  48. examples/at_si_sk_2021_380.zarr/band_data/3.6.0.0 +0 -0
  49. examples/at_si_sk_2021_380.zarr/band_data/3.7.0.0 +0 -0
  50. examples/at_si_sk_2021_380.zarr/band_data/3.8.0.0 +0 -0
croplands/io.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import xarray as xr
2
+ from pathlib import Path
3
+ import numpy as np
4
+ from affine import Affine
5
+ from rasterio import CRS
6
+
7
+
8
+ def from_spatial_to_profile(zarr):
9
+ profile = {}
10
+ profile["driver"] = "GTiff"
11
+ profile["dtype"] = zarr.dtypes["band_data"].name
12
+ profile["width"] = zarr.dims["x"]
13
+ profile["height"] = zarr.dims["y"]
14
+ profile["count"] = zarr.dims["band"]
15
+ profile["crs"] = CRS.from_epsg(zarr["spatial_ref"].attrs["crs_wkt"].split(",")[-1].split("\"")[1])
16
+ vals = zarr["spatial_ref"].attrs["GeoTransform"].split(" ")
17
+ profile["transform"] = Affine(float(vals[1]),float(vals[2]),float(vals[0]),float(vals[4]),float(vals[5]),float(vals[3]))
18
+ return profile
19
+
20
+
21
+ def read_zarr(
22
+ path: Path
23
+ ) -> np.ndarray:
24
+ """Read a zarr file using xarray.
25
+
26
+ Args:
27
+ path (Path): Path to the zarr file.
28
+ Returns:
29
+ np.ndarray: zarr data as numpy array.
30
+ """
31
+ data = xr.open_zarr(path)["band_data"]
32
+ return data.values
33
+
34
+ def read_zarr_profile(path:Path):
35
+ data = xr.open_zarr(path)
36
+ profile = from_spatial_to_profile(data)
37
+ return profile
croplands/polygonize.py ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import numpy as np
2
+ import rasterio
3
+ import geopandas as gpd
4
+ import cv2
5
+ from shapely.geometry import shape,Polygon
6
+ from shapely.validation import make_valid
7
+ from collections import defaultdict
8
+
9
+
10
+ def onehot(components: np.ndarray) -> np.ndarray:
11
+ oh = np.zeros((components.max() + 1, *components.shape), dtype=np.uint8)
12
+ for i in range(oh.shape[0]):
13
+ oh[i][components == i] = 1
14
+ if 0 in np.unique(components):
15
+ oh = oh[1:]
16
+ return oh
17
+
18
+ def apply_transform(polygon: Polygon, transform: rasterio.Affine) -> Polygon:
19
+ return Polygon([transform * c for c in polygon.exterior.coords])
20
+
21
+ def polygonize_raster(
22
+ data_img:np.ndarray,
23
+ raster: np.ndarray,
24
+ tolerance: float,
25
+ transform: rasterio.transform.Affine = None,
26
+ crs = None,
27
+ pixel_threshold: int = 25,
28
+ ) -> gpd.GeoDataFrame:
29
+ data = defaultdict(list)
30
+ onehot_raster = onehot(raster)
31
+ if onehot_raster.shape[0] == 0:
32
+ return None
33
+ for i in range(onehot_raster.shape[0]):
34
+ mask = onehot_raster[i]
35
+ if mask.sum() < pixel_threshold:
36
+ continue
37
+
38
+ contours, _ = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
39
+ for contour in contours:
40
+ perimeter = cv2.arcLength(contour, True)
41
+ area = cv2.contourArea(contour)
42
+ approx = cv2.approxPolyDP(contour, tolerance * perimeter, True)
43
+ contour = approx.squeeze()
44
+ if contour.shape[0] < 3:
45
+ continue
46
+ poly = shape({"type": "Polygon", "coordinates": [contour]})
47
+ if transform is not None:
48
+ poly = apply_transform(poly, transform)
49
+
50
+ most_freq_class = np.argmax(np.bincount(data_img[onehot_raster[i].astype(bool)]))
51
+ data["geometry"].append(poly)
52
+ data["component"].append(i)
53
+ data["class"].append(most_freq_class)
54
+ data["area"].append(area)
55
+
56
+ gdf = gpd.GeoDataFrame(data, crs=crs)
57
+ gdf["geometry"] = gdf["geometry"].buffer(9.0)
58
+ gdf["geometry"] = gdf["geometry"].apply(make_valid)
59
+ return gdf
croplands/utils.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import numpy as np
2
+
3
+ def normalize_s2(img: np.ndarray, factor: int = 10_000) -> np.ndarray:
4
+ """Normalizes the given S2 L2A image dividing the raw reflectance values by
5
+ the given factor, then clipping the values to the range [0, 1].
6
+
7
+ Args:
8
+ img (np.ndarray): The image to normalize.
9
+ factor (int, optional): The factor to divide the raw reflectance values
10
+ by. Defaults to 10_000.
11
+
12
+ Returns:
13
+ np.ndarray: The normalized image.
14
+ """
15
+ return np.clip(img / float(factor), 0, 1)
16
+
17
+
18
+ def impute_nan(arr):
19
+ nan_times = np.where(np.isnan(arr).any(-1).any(-1).any(-1))[0]
20
+
21
+ for month in nan_times:
22
+ i = 1
23
+ if month < 4:
24
+ while np.isnan(arr[month]).any():
25
+ if month+i>=6:
26
+ arr[month][np.isnan(arr[month])] = 0.0
27
+ else:
28
+ arr[month][np.isnan(arr[month])] = arr[month+i][np.isnan(arr[month])]
29
+ i+=1
30
+ elif month>=4:
31
+ while np.isnan(arr[month]).any():
32
+ if month-i<0:
33
+ arr[month][np.isnan(arr[month])] = 0.0
34
+ else:
35
+ arr[month][np.isnan(arr[month])] = arr[month-i][np.isnan(arr[month])]
36
+ i+=1
37
+ return arr
examples/at_si_sk_2021_380.zarr/.zattrs ADDED
@@ -0,0 +1 @@
 
 
1
+ {}
examples/at_si_sk_2021_380.zarr/.zgroup ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ {
2
+ "zarr_format": 2
3
+ }
examples/at_si_sk_2021_380.zarr/.zmetadata ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ ".zattrs": {},
4
+ ".zgroup": {
5
+ "zarr_format": 2
6
+ },
7
+ "band/.zarray": {
8
+ "chunks": [
9
+ 10
10
+ ],
11
+ "compressor": {
12
+ "blocksize": 0,
13
+ "clevel": 5,
14
+ "cname": "lz4",
15
+ "id": "blosc",
16
+ "shuffle": 1
17
+ },
18
+ "dtype": "<i8",
19
+ "fill_value": null,
20
+ "filters": null,
21
+ "order": "C",
22
+ "shape": [
23
+ 10
24
+ ],
25
+ "zarr_format": 2
26
+ },
27
+ "band/.zattrs": {
28
+ "_ARRAY_DIMENSIONS": [
29
+ "band"
30
+ ]
31
+ },
32
+ "band_data/.zarray": {
33
+ "chunks": [
34
+ 1,
35
+ 1,
36
+ 128,
37
+ 128
38
+ ],
39
+ "compressor": {
40
+ "blocksize": 0,
41
+ "clevel": 5,
42
+ "cname": "lz4",
43
+ "id": "blosc",
44
+ "shuffle": 1
45
+ },
46
+ "dtype": "<f4",
47
+ "fill_value": "NaN",
48
+ "filters": null,
49
+ "order": "C",
50
+ "shape": [
51
+ 6,
52
+ 10,
53
+ 128,
54
+ 128
55
+ ],
56
+ "zarr_format": 2
57
+ },
58
+ "band_data/.zattrs": {
59
+ "AREA_OR_POINT": "Area",
60
+ "_ARRAY_DIMENSIONS": [
61
+ "time",
62
+ "band",
63
+ "y",
64
+ "x"
65
+ ],
66
+ "coordinates": "spatial_ref",
67
+ "long_name": "stackstac-9f31e5920d53418737c37d57d00f49d8",
68
+ "resolution": 10.0,
69
+ "spec": "RasterSpec(epsg=32633, bounds=(389120.0, 5345280.0, 409600.0, 5365760.0), resolutions_xy=(10.0, 10.0))"
70
+ },
71
+ "spatial_ref/.zarray": {
72
+ "chunks": [],
73
+ "compressor": null,
74
+ "dtype": "<i8",
75
+ "fill_value": null,
76
+ "filters": null,
77
+ "order": "C",
78
+ "shape": [],
79
+ "zarr_format": 2
80
+ },
81
+ "spatial_ref/.zattrs": {
82
+ "GeoTransform": "389115.0 10.0 0.0 5365765.0 0.0 -10.0",
83
+ "_ARRAY_DIMENSIONS": [],
84
+ "crs_wkt": "PROJCS[\"WGS 84 / UTM zone 33N\",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\",15],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\",\"32633\"]]",
85
+ "false_easting": 500000.0,
86
+ "false_northing": 0.0,
87
+ "geographic_crs_name": "WGS 84",
88
+ "grid_mapping_name": "transverse_mercator",
89
+ "horizontal_datum_name": "World Geodetic System 1984",
90
+ "inverse_flattening": 298.257223563,
91
+ "latitude_of_projection_origin": 0.0,
92
+ "longitude_of_central_meridian": 15.0,
93
+ "longitude_of_prime_meridian": 0.0,
94
+ "prime_meridian_name": "Greenwich",
95
+ "projected_crs_name": "WGS 84 / UTM zone 33N",
96
+ "reference_ellipsoid_name": "WGS 84",
97
+ "scale_factor_at_central_meridian": 0.9996,
98
+ "semi_major_axis": 6378137.0,
99
+ "semi_minor_axis": 6356752.314245179,
100
+ "spatial_ref": "PROJCS[\"WGS 84 / UTM zone 33N\",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\",15],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\",\"32633\"]]"
101
+ },
102
+ "x/.zarray": {
103
+ "chunks": [
104
+ 128
105
+ ],
106
+ "compressor": {
107
+ "blocksize": 0,
108
+ "clevel": 5,
109
+ "cname": "lz4",
110
+ "id": "blosc",
111
+ "shuffle": 1
112
+ },
113
+ "dtype": "<f8",
114
+ "fill_value": "NaN",
115
+ "filters": null,
116
+ "order": "C",
117
+ "shape": [
118
+ 128
119
+ ],
120
+ "zarr_format": 2
121
+ },
122
+ "x/.zattrs": {
123
+ "_ARRAY_DIMENSIONS": [
124
+ "x"
125
+ ]
126
+ },
127
+ "y/.zarray": {
128
+ "chunks": [
129
+ 128
130
+ ],
131
+ "compressor": {
132
+ "blocksize": 0,
133
+ "clevel": 5,
134
+ "cname": "lz4",
135
+ "id": "blosc",
136
+ "shuffle": 1
137
+ },
138
+ "dtype": "<f8",
139
+ "fill_value": "NaN",
140
+ "filters": null,
141
+ "order": "C",
142
+ "shape": [
143
+ 128
144
+ ],
145
+ "zarr_format": 2
146
+ },
147
+ "y/.zattrs": {
148
+ "_ARRAY_DIMENSIONS": [
149
+ "y"
150
+ ]
151
+ }
152
+ },
153
+ "zarr_consolidated_format": 1
154
+ }
examples/at_si_sk_2021_380.zarr/band/.zarray ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "chunks": [
3
+ 10
4
+ ],
5
+ "compressor": {
6
+ "blocksize": 0,
7
+ "clevel": 5,
8
+ "cname": "lz4",
9
+ "id": "blosc",
10
+ "shuffle": 1
11
+ },
12
+ "dtype": "<i8",
13
+ "fill_value": null,
14
+ "filters": null,
15
+ "order": "C",
16
+ "shape": [
17
+ 10
18
+ ],
19
+ "zarr_format": 2
20
+ }
examples/at_si_sk_2021_380.zarr/band/.zattrs ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ {
2
+ "_ARRAY_DIMENSIONS": [
3
+ "band"
4
+ ]
5
+ }
examples/at_si_sk_2021_380.zarr/band/0 ADDED
Binary file (96 Bytes). View file
 
examples/at_si_sk_2021_380.zarr/band_data/.zarray ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "chunks": [
3
+ 1,
4
+ 1,
5
+ 128,
6
+ 128
7
+ ],
8
+ "compressor": {
9
+ "blocksize": 0,
10
+ "clevel": 5,
11
+ "cname": "lz4",
12
+ "id": "blosc",
13
+ "shuffle": 1
14
+ },
15
+ "dtype": "<f4",
16
+ "fill_value": "NaN",
17
+ "filters": null,
18
+ "order": "C",
19
+ "shape": [
20
+ 6,
21
+ 10,
22
+ 128,
23
+ 128
24
+ ],
25
+ "zarr_format": 2
26
+ }
examples/at_si_sk_2021_380.zarr/band_data/.zattrs ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "AREA_OR_POINT": "Area",
3
+ "_ARRAY_DIMENSIONS": [
4
+ "time",
5
+ "band",
6
+ "y",
7
+ "x"
8
+ ],
9
+ "coordinates": "spatial_ref",
10
+ "long_name": "stackstac-9f31e5920d53418737c37d57d00f49d8",
11
+ "resolution": 10.0,
12
+ "spec": "RasterSpec(epsg=32633, bounds=(389120.0, 5345280.0, 409600.0, 5365760.0), resolutions_xy=(10.0, 10.0))"
13
+ }
examples/at_si_sk_2021_380.zarr/band_data/0.0.0.0 ADDED
Binary file (28.9 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.1.0.0 ADDED
Binary file (32.1 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.2.0.0 ADDED
Binary file (31 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.3.0.0 ADDED
Binary file (19.8 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.4.0.0 ADDED
Binary file (20.4 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.5.0.0 ADDED
Binary file (20.9 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.6.0.0 ADDED
Binary file (32.9 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.7.0.0 ADDED
Binary file (19.6 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.8.0.0 ADDED
Binary file (21.7 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/0.9.0.0 ADDED
Binary file (21.2 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.0.0.0 ADDED
Binary file (28.6 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.1.0.0 ADDED
Binary file (31.7 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.2.0.0 ADDED
Binary file (30.8 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.3.0.0 ADDED
Binary file (20.4 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.4.0.0 ADDED
Binary file (18.6 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.5.0.0 ADDED
Binary file (19.4 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.6.0.0 ADDED
Binary file (31.8 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.7.0.0 ADDED
Binary file (18.5 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.8.0.0 ADDED
Binary file (21.5 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/1.9.0.0 ADDED
Binary file (21.3 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.0.0.0 ADDED
Binary file (31.5 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.1.0.0 ADDED
Binary file (30.7 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.2.0.0 ADDED
Binary file (32.4 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.3.0.0 ADDED
Binary file (19.6 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.4.0.0 ADDED
Binary file (16.5 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.5.0.0 ADDED
Binary file (17.5 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.6.0.0 ADDED
Binary file (31 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.7.0.0 ADDED
Binary file (16.6 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.8.0.0 ADDED
Binary file (21.3 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/2.9.0.0 ADDED
Binary file (22 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.0.0.0 ADDED
Binary file (29.4 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.1.0.0 ADDED
Binary file (31.6 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.2.0.0 ADDED
Binary file (31.5 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.3.0.0 ADDED
Binary file (21.4 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.4.0.0 ADDED
Binary file (18.8 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.5.0.0 ADDED
Binary file (20 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.6.0.0 ADDED
Binary file (32.3 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.7.0.0 ADDED
Binary file (18.3 kB). View file
 
examples/at_si_sk_2021_380.zarr/band_data/3.8.0.0 ADDED
Binary file (20.7 kB). View file