Skip to content
Draft
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions apiv2/schema/schema.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -279,6 +279,9 @@ enums:
InstanceSegmentation:
text: InstanceSegmentation
description: A volume with labels for multiple instances
InstanceSegmentationMask:
text: InstanceSegmentationMask
description: A mask with labels for multiple instances
Mesh:
text: Mesh
description: A surface mesh volumes
Expand Down
7 changes: 7 additions & 0 deletions ingestion_tools/dataset_configs/template.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,13 @@ annotations: OPTIONAL
delimiter: OPTIONAL, STRING (DEFAULT ',')
parent_filters: see InstanceSegmentation.parent_filters
exclude: SEE InstanceSegmentation.exclude
- InstanceSegmentationMask:
file_format: see InstanceSegmentation.file_format
glob_string: see InstanceSegmentation.glob_string
glob_strings: see InstanceSegmentation.glob_strings
is_visualization_default: see InstanceSegmentation.is_visualization_default
parent_filters: see InstanceSegmentation.parent_filters
exclude: SEE InstanceSegmentation.exclude
- SegmentationMask:
file_format: see InstanceSegmentation.file_format
glob_string: see InstanceSegmentation.glob_string
Expand Down
7 changes: 7 additions & 0 deletions ingestion_tools/scripts/importers/annotation.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,8 @@ def _instantiate(
anno = PointAnnotation(**instance_args)
if shape == "InstanceSegmentation":
anno = InstanceSegmentationAnnotation(**instance_args)
if shape == "InstanceSegmentationMask":
anno = InstanceSegmentationMaskAnnotation(**instance_args)
if shape == "TriangularMesh":
anno = TriangularMeshAnnotation(**instance_args)
if shape == "TriangularMeshGroup":
Expand Down Expand Up @@ -313,6 +315,11 @@ def convert(self, output_prefix: str):
)


class InstanceSegmentationMaskAnnotation(SegmentationMaskAnnotation):
shape = "InstanceSegmentationMask"



class SemanticSegmentationMaskAnnotation(VolumeAnnotationSource):
shape = "SegmentationMask" # Don't expose SemanticSegmentationMask to the public portal.
mask_label: int
Expand Down
1 change: 1 addition & 0 deletions ingestion_tools/scripts/importers/visualization_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,7 @@ def get_annotation_layer_info(self, alignment_metadata_path: str) -> dict[str, A
"Point",
"OrientedPoint",
"InstanceSegmentation",
"InstanceSegmentationMask",
"TriangularMesh",
"TriangularMeshGroup",
}:
Expand Down
7 changes: 7 additions & 0 deletions schema/core/v1.1.0/metadata.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -629,6 +629,13 @@ classes:
description: File and sourcing data for an instance segmentation annotation. Annotation that identifies individual instances of object shapes.
attributes: # no extended attributes

AnnotationInstanceSegmentationMaskFile:
is_a: AnnotationOrientedPointFile
aliases:
- InstanceSegmentationMask
description: File and sourcing data for an instance segmentation mask annotation. Annotation that identifies individual instances of object shape masks.
attributes: # no extended attributes

AnnotationPointFile:
is_a: AnnotationSourceFile
aliases:
Expand Down
133 changes: 133 additions & 0 deletions schema/core/v2.0.0/codegen/metadata_materialized.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading