Skip to content

Commit 627d4e6

Browse files
committed
Fix mask geometry to ensure consistent MultiPolygon output across Python versions
1 parent 1784891 commit 627d4e6

File tree

1 file changed

+7
-1
lines changed
  • libs/labelbox/src/labelbox/data/annotation_types/geometry

1 file changed

+7
-1
lines changed

libs/labelbox/src/labelbox/data/annotation_types/geometry/mask.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,13 @@ def geometry(self) -> Dict[str, Tuple[int, int, int]]:
6262
if not holes.is_valid:
6363
holes = holes.buffer(0)
6464

65-
return external_polygons.difference(holes).__geo_interface__
65+
result = external_polygons.difference(holes)
66+
67+
# Ensure consistent MultiPolygon output across Python versions
68+
if hasattr(result, "geom_type") and result.geom_type == "Polygon":
69+
result = MultiPolygon([result])
70+
71+
return result.__geo_interface__
6672

6773
def draw(
6874
self,

0 commit comments

Comments
 (0)