@@ -121,11 +121,10 @@ def __init__(
121
121
)
122
122
self .rgb_indices = [0 , 1 , 2 ] if rgb_indices is None else rgb_indices
123
123
124
- bands_by_interval = (self ._bands_defined_by_interval (bands_list = dataset_bands ) and
125
- self ._bands_defined_by_interval (bands_list = output_bands ))
124
+ is_bands_by_interval = self ._check_if_its_defined_by_interval (dataset_bands , output_bands )
126
125
127
126
# If the bands are defined by sub-intervals or not.
128
- if bands_by_interval :
127
+ if is_bands_by_interval :
129
128
self .dataset_bands = self ._generate_bands_intervals (dataset_bands )
130
129
self .output_bands = self ._generate_bands_intervals (output_bands )
131
130
else :
@@ -212,6 +211,19 @@ def _bands_as_int_or_str(self, dataset_bands, output_bands) -> type:
212
211
else :
213
212
raise Exception ("The bands must be or all str or all int." )
214
213
214
+ def _check_if_its_defined_by_interval (self , dataset_bands : list [int ] | list [tuple [int ]] = None ,
215
+ output_bands : list [int ] | list [tuple [int ]] = None ) -> bool :
216
+
217
+ is_dataset_bands_defined = self ._bands_defined_by_interval (bands_list = dataset_bands )
218
+ is_output_bands_defined = self ._bands_defined_by_interval (bands_list = output_bands )
219
+
220
+ if is_dataset_bands_defined and is_output_bands_defined :
221
+ return True
222
+ elif not is_dataset_bands_defined and not is_output_bands_defined :
223
+ return False
224
+ else :
225
+ raise Exception (f"Both dataset_bands and output_bands must have the same type, but received { dataset_bands } and { output_bands } " )
226
+
215
227
def _bands_defined_by_interval (self , bands_list : list [int ] | list [tuple [int ]] = None ) -> bool :
216
228
if not bands_list :
217
229
return False
@@ -224,7 +236,6 @@ def _bands_defined_by_interval(self, bands_list: list[int] | list[tuple[int]] =
224
236
else :
225
237
raise Exception (f"Whe using subintervals, the limits must be int." )
226
238
else :
227
- print (bands_list )
228
239
raise Exception (f"Excpected List[int] or List[str] or List[tuple[int, int]], but received { type (bands_list )} ." )
229
240
230
241
class GenericNonGeoSegmentationDataset (GenericPixelWiseDataset ):
0 commit comments