Skip to content

Commit a05c686

Browse files
committed
Added inspection in udf and corrected type annotations
1 parent f5e2317 commit a05c686

File tree

2 files changed

+11
-6
lines changed

2 files changed

+11
-6
lines changed

efast/distance_transform_udf.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1+
from openeo.udf.debug import inspect
12
from scipy.ndimage import distance_transform_edt
23
import numpy as np
34
import xarray as xr
45
from openeo.udf import XarrayDataCube
56

67
def apply_datacube(cube: XarrayDataCube, context: dict) -> XarrayDataCube:
78
array = cube.get_array()
9+
inspect(array.dims, message="array dims")
10+
inspect(array.sizes, message="array sizes")
811
distance = distance_transform_edt(array)
912
clipped = np.clip(distance, 0, 255)
10-
return XarrayDataCube(xr.DataArray(clipped, dims=["bands", "t", "y", "x"]))
13+
return XarrayDataCube(xr.DataArray(clipped, dims=["t", "bands", "y", "x"]))

efast/openeo/preprocessing/general.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import numpy as np
77
import openeo
8+
from openeo import processes
89
import scipy
910

1011

@@ -44,7 +45,7 @@ def get_s2_cube(self, connection):
4445
bands=self.s2_bands,
4546
)
4647

47-
def get_s3_cube(self, connection):
48+
def get_s3_cube(self, connection) -> openeo.DataCube:
4849
return connection.load_collection(
4950
"SENTINEL3_SYN_L2_SYN",
5051
spatial_extent=self.bbox,
@@ -53,9 +54,10 @@ def get_s3_cube(self, connection):
5354
)
5455

5556

57+
# TODO ratio and max_distance arguments unused
5658
def distance_to_clouds(
57-
cube: openeo.DataCube, tolerance_percentage=0.05, ratio=30, max_distance=255
58-
):
59+
cube: processes.ProcessBuilder | openeo.DataCube, tolerance_percentage=0.05, ratio=30, max_distance=255
60+
) -> processes.ProcessBuilder:
5961
return _distance_to_clouds_udf(
6062
cube,
6163
tolerance_percentage=tolerance_percentage,
@@ -79,8 +81,8 @@ def _distance_to_clouds_kernel(
7981
# TODO implement max_distance as a parameter to the UDF
8082
# TODO replace hard coded tile size (366)
8183
def _distance_to_clouds_udf(
82-
cube: openeo.DataCube, tolerance_percentage=0.05, ratio=30, max_distance=255
83-
):
84+
cube: processes.ProcessBuilder | openeo.DataCube, tolerance_percentage=0.05, ratio=30, max_distance=255
85+
) -> processes.ProcessBuilder:
8486
udf = openeo.UDF.from_file("efast/distance_transform_udf.py")
8587
dtc = cube.apply_neighborhood(
8688
udf,

0 commit comments

Comments
 (0)