Annotation Set¶
An Annotation Set partitions a Coordinate Space into labeled regions (masks, meshes) using a specific Terminology. It is versioned; new versions capture refinements, added regions, or structural corrections.
Directory Structure¶
annotation-sets/
└── <annotation_set_name>/
└── <version>/
├── data_description.json (REQUIRED)
├── annotations.ome.zarr (REQUIRED)
├── annotations_compressed.ome.zarr (OPTIONAL)
├── annotations_compressed_{resolution}.nii.gz (OPTIONAL)
├── annotations.precomputed (REQUIRED)
├── annotations_smooth.precomputed (OPTIONAL)
├── parcellation_volumes.csv (OPTIONAL)
└── manifest.json (REQUIRED)
Naming Convention¶
Note
Naming conventions in this specification are recommended guidelines to encourage consistency, not requirements.
<annotation_set_name> = <organization>-<age>-<species>-annotation
Example: allen-adult-mouse-annotation
Files¶
annotations.ome.zarrOME-Zarr >= 0.5 multiscale
Correct coordinate transformations
Units in millimeters
Dimensions:
AZYX(A = annotation label dimension)Chunks should be compressed (e.g. Blosc/Zstd). Most OME-Zarr writers apply a sensible default, but verify when using a custom writer — uncompressed annotation volumes are extremely large.
The mapping from each index along the
Adimension to its corresponding terminologyannotation_valueMUST be stored in an array namedannotation_values.
annotations_compressed.ome.zarrSingle integer label per voxel variant of
annotationsarray.OME-Zarr >= 0.5 multiscale
Correct coordinate transformations
Dimensions:
ZYXUnits in millimeters
Chunks should be compressed (e.g. Blosc/Zstd). Most OME-Zarr writers apply a sensible default, but verify when using a custom writer — uncompressed annotation volumes are extremely large.
annotations_compressed_{resolution}.nii.gzNIfTI export of the single-label
annotations_compressedvolume at the given resolution (e.g.annotations_compressed_25.nii.gz).
annotations.precomputedstores compressed masks in Neuroglancer precomputed format
stores meshes in either legacy or sharded multiscale format
includes segment properties with name and abbreviation of annotation
annotations_smooth.precomputedSmoothed version of the meshes, for visualization only.
parcellation_volumes.csvDocuments the annotated volume for each identifier.
Columns:
identifier,voxel_count,volume_mm3
manifest.jsonReferences the terminology name/version and coordinate space version, including component paths.
data_description.jsonaind_data_schema >= 2.0: includes administrative metadata, description, provenance, authorship, licensing, references
Versioning¶
New version when:
Region boundaries change
Labels added/removed/merged
Terminology version changes
Best Practices¶
Document merged/split labels in data_description.json.
Generate meshes from highest resolution masks.
Validate topology (closed, watertight surfaces) for 3D meshes when feasible.
Provide smoothing parameters used (if any) for reproducibility.