diff --git a/minigrida/descriptors/aps.py b/minigrida/descriptors/aps.py index 6d7d95c..4521a74 100644 --- a/minigrida/descriptors/aps.py +++ b/minigrida/descriptors/aps.py @@ -34,9 +34,9 @@ def run(gt, rasters, coords, remove, attributes, adjacency='4', filtering='direc eap += [_attribute_profiles(raster, attribute, adjacency, name, filtering)] eap = sap.concatenate(eap) - Xn = [' '.join((a['tree']['image_name'], - a['attribute'], - *[str(v) for v in p.values()])) + Xn = [' '.join((a['tree']['image_name'], + a['attribute'], + *[str(v) for v in p.values()])) for a in eap.description for p in a['profiles']] if not Xn else Xn # Create vectors diff --git a/minigrida/descriptors/sdaps.py b/minigrida/descriptors/sdaps.py index 2723422..0e1854a 100644 --- a/minigrida/descriptors/sdaps.py +++ b/minigrida/descriptors/sdaps.py @@ -28,9 +28,10 @@ def run(gt, rasters, coords, remove, attributes, adjacency='4', filtering='direc for i, (gti, rastersi, coordsi) in enumerate(zip(gt, rasters, coords)): # Compute EAP + attributes = [attributes] * len(rastersi) if isinstance(attributes, dict) else attributes eap = [] - for name, raster in rastersi.items(): - eap += [_self_dual_attribute_profiles(raster, attributes, adjacency, name, filtering)] + for (name, raster), attribute in zip(rastersi.items(), attributes): + eap += [_self_dual_attribute_profiles(raster, attribute, adjacency, name, filtering)] eap = sap.concatenate(eap) Xn = [' '.join((a['tree']['image_name'],