diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/input_output_not_object.json b/cases/parse_attributes/v0.6/core/invalid/scene/input_output_not_object.json new file mode 100644 index 0000000..3a9d366 --- /dev/null +++ b/cases/parse_attributes/v0.6/core/invalid/scene/input_output_not_object.json @@ -0,0 +1,50 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": "atlas1", + "output": "atlas2", + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/missing_scene.json b/cases/parse_attributes/v0.6/core/invalid/scene/missing_scene.json new file mode 100644 index 0000000..b176630 --- /dev/null +++ b/cases/parse_attributes/v0.6/core/invalid/scene/missing_scene.json @@ -0,0 +1,52 @@ +{ + "ome": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ], + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_transformations.json b/cases/parse_attributes/v0.6/core/invalid/scene/missing_transformations.json similarity index 81% rename from cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_transformations.json rename to cases/parse_attributes/v0.6/core/invalid/scene/missing_transformations.json index ea5f5b7..ae8023b 100644 --- a/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_transformations.json +++ b/cases/parse_attributes/v0.6/core/invalid/scene/missing_transformations.json @@ -5,19 +5,17 @@ { "axes": [ { - "discrete": false, - "name": "x", + "name": "y", "type": "space", "unit": "micrometer" }, { - "discrete": false, - "name": "y", + "name": "x", "type": "space", "unit": "micrometer" } ], - "name": "world" + "name": "atlas1" } ] }, diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/missing_version.json b/cases/parse_attributes/v0.6/core/invalid/scene/missing_version.json new file mode 100644 index 0000000..46fd7a3 --- /dev/null +++ b/cases/parse_attributes/v0.6/core/invalid/scene/missing_version.json @@ -0,0 +1,53 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + } + } +} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/scene_input_output_not_object.json b/cases/parse_attributes/v0.6/core/invalid/scene/scene_input_output_not_object.json deleted file mode 100644 index dab6a24..0000000 --- a/cases/parse_attributes/v0.6/core/invalid/scene/scene_input_output_not_object.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "ome": { - "scene": { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - } - ], - "name": "world" - } - ], - "coordinateTransformations": [ - { - "input": { - "name": "physical", - "path": "tile_0" - }, - "name": "tile_0_mm to world", - "output": "world", - "translation": [ - 0, - 0 - ], - "type": "translation" - }, - { - "input": { - "name": "physical", - "path": "tile_1" - }, - "name": "tile_1_mm to world", - "output": "world", - "translation": [ - 0, - 348 - ], - "type": "translation" - }, - { - "input": { - "name": "physical", - "path": "tile_2" - }, - "name": "tile_2_mm to world", - "output": "world", - "translation": [ - 276, - 0 - ], - "type": "translation" - }, - { - "input": { - "name": "physical", - "path": "tile_3" - }, - "name": "tile_3_mm to world", - "output": "world", - "translation": [ - 276, - 348 - ], - "type": "translation" - } - ] - }, - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_scene.json b/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_scene.json deleted file mode 100644 index 7b217ba..0000000 --- a/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_scene.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "ome": { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - } - ], - "name": "world" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_version.json b/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_version.json deleted file mode 100644 index 7b217ba..0000000 --- a/cases/parse_attributes/v0.6/core/invalid/scene/scene_missing_version.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "ome": { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - } - ], - "name": "world" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/unknown_coordinate_system.json b/cases/parse_attributes/v0.6/core/invalid/scene/unknown_coordinate_system.json new file mode 100644 index 0000000..f47c5fc --- /dev/null +++ b/cases/parse_attributes/v0.6/core/invalid/scene/unknown_coordinate_system.json @@ -0,0 +1,39 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/core/valid/scene/path_to_name.json b/cases/parse_attributes/v0.6/core/valid/scene/path_to_name.json new file mode 100644 index 0000000..f5fe860 --- /dev/null +++ b/cases/parse_attributes/v0.6/core/valid/scene/path_to_name.json @@ -0,0 +1,40 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "intrinsic", + "path": "img" + }, + "output": { + "name": "atlas1" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/core/valid/scene/path_to_path.json b/cases/parse_attributes/v0.6/core/valid/scene/path_to_path.json new file mode 100644 index 0000000..d0d5985 --- /dev/null +++ b/cases/parse_attributes/v0.6/core/valid/scene/path_to_path.json @@ -0,0 +1,24 @@ +{ + "ome": { + "scene": { + "coordinateTransformations": [ + { + "input": { + "name": "intrinsic", + "path": "img" + }, + "output": { + "name": "intrinsic", + "path": "img2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/core/valid/scene/scene.json b/cases/parse_attributes/v0.6/core/valid/scene/scene.json deleted file mode 100644 index a27d6c6..0000000 --- a/cases/parse_attributes/v0.6/core/valid/scene/scene.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "ome": { - "scene": { - "coordinateSystems": [ - { - "axes": [ - { - "name": "c", - "type": "channel" - }, - { - "name": "z", - "type": "space", - "unit": "micrometer" - }, - { - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "translated_x50" - } - ], - "coordinateTransformations": [ - { - "input": { - "name": "rotated", - "path": "4995115_cropped_400_100_400_400_rot10.zarr" - }, - "name": "translate_tile_to_stitched_position", - "output": { - "name": "translated_x50" - }, - "translation": [ - 0, - 0, - 30.608878192215265, - 11.21775638443053 - ], - "type": "translation" - }, - { - "input": { - "name": "rotated", - "path": "4995115_cropped_700_700_400_400_rot45.zarr" - }, - "name": "translate_tile_to_stitched_position", - "output": { - "name": "translated_x50" - }, - "translation": [ - 0, - 0, - 91.8266345766458, - 41.8266345766458 - ], - "type": "translation" - }, - { - "input": { - "name": "translated_x50" - }, - "name": "translate_tile_to_stitched_position", - "output": { - "name": "physical", - "path": "4995115_full.zarr" - }, - "translation": [ - 0, - 0, - 0, - 50 - ], - "type": "translation" - } - ] - }, - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/scene_bijection_forward_missing_params.json b/cases/parse_attributes/v0.6/core/valid/scene/simple.json similarity index 71% rename from cases/parse_attributes/v0.6/core/invalid/scene/scene_bijection_forward_missing_params.json rename to cases/parse_attributes/v0.6/core/valid/scene/simple.json index c8b777a..ebdef92 100644 --- a/cases/parse_attributes/v0.6/core/invalid/scene/scene_bijection_forward_missing_params.json +++ b/cases/parse_attributes/v0.6/core/valid/scene/simple.json @@ -5,50 +5,47 @@ { "axes": [ { - "discrete": false, - "name": "x", + "name": "y", "type": "space", "unit": "micrometer" }, { - "discrete": false, - "name": "y", + "name": "x", "type": "space", "unit": "micrometer" } ], - "name": "one" + "name": "atlas1" }, { "axes": [ { - "discrete": false, - "name": "x", + "name": "y", "type": "space", "unit": "micrometer" }, { - "discrete": false, - "name": "y", + "name": "x", "type": "space", "unit": "micrometer" } ], - "name": "two" + "name": "atlas2" } ], "coordinateTransformations": [ { - "forward": { - "type": "scale" - }, "input": { - "name": "one" + "name": "atlas1" }, "output": { - "name": "two" + "name": "atlas2" }, - "type": "bijection" + "translation": [ + 50, + 50 + ], + "type": "translation" } ] }, diff --git a/cases/parse_attributes/v0.6/core/valid/scene/tile_stitching.json b/cases/parse_attributes/v0.6/core/valid/scene/tile_stitching.json deleted file mode 100644 index a88565c..0000000 --- a/cases/parse_attributes/v0.6/core/valid/scene/tile_stitching.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "ome": { - "scene": { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - } - ], - "name": "world" - } - ], - "coordinateTransformations": [ - { - "input": { - "name": "physical", - "path": "tile_0" - }, - "name": "tile_0_mm to world", - "output": { - "name": "world" - }, - "translation": [ - 0, - 0 - ], - "type": "translation" - }, - { - "input": { - "name": "physical", - "path": "tile_1" - }, - "name": "tile_1_mm to world", - "output": { - "name": "world" - }, - "translation": [ - 0, - 348 - ], - "type": "translation" - }, - { - "input": { - "name": "physical", - "path": "tile_2" - }, - "name": "tile_2_mm to world", - "output": { - "name": "world" - }, - "translation": [ - 276, - 0 - ], - "type": "translation" - }, - { - "input": { - "name": "physical", - "path": "tile_3" - }, - "name": "tile_3_mm to world", - "output": { - "name": "world" - }, - "translation": [ - 276, - 348 - ], - "type": "translation" - } - ] - }, - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/affine.json b/cases/parse_attributes/v0.6/core/valid/transforms/affine.json deleted file mode 100644 index c34638a..0000000 --- a/cases/parse_attributes/v0.6/core/valid/transforms/affine.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "sheared" - }, - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - } - ], - "coordinateTransformations": [ - { - "affine": [ - [ - 3, - 0.4, - 30 - ], - [ - 0.3, - 2, - 20 - ] - ], - "input": { - "name": "physical" - }, - "name": "physical-to-sheared", - "output": { - "name": "sheared" - }, - "type": "affine" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "s0" - }, - "name": "scale0_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 1, - 1 - ], - "type": "scale" - }, - { - "translation": [ - 0, - 0 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s0" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s1" - }, - "name": "scale1_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 2, - 2 - ], - "type": "scale" - }, - { - "translation": [ - 0.7071, - 0.7071 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s1" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s2" - }, - "name": "scale2_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 4, - 4 - ], - "type": "scale" - }, - { - "translation": [ - 2.1213, - 2.1213 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s2" - } - ], - "name": "multiscales" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/affineParams.json b/cases/parse_attributes/v0.6/core/valid/transforms/affineParams.json deleted file mode 100644 index c1eb599..0000000 --- a/cases/parse_attributes/v0.6/core/valid/transforms/affineParams.json +++ /dev/null @@ -1,80 +0,0 @@ -{ - "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "sheared" - }, - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - } - ], - "coordinateTransformations": [ - { - "input": { - "name": "physical" - }, - "name": "shearing-transform", - "output": { - "name": "sheared" - }, - "path": "affineParams", - "type": "affine" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "array" - }, - "name": "array-to-physical", - "output": { - "name": "physical" - }, - "scale": [ - 0.5, - 0.5 - ], - "type": "scale" - } - ], - "path": "array" - } - ], - "name": "multiscales" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/byDimension.json b/cases/parse_attributes/v0.6/core/valid/transforms/byDimension.json deleted file mode 100644 index d809d92..0000000 --- a/cases/parse_attributes/v0.6/core/valid/transforms/byDimension.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - }, - { - "axes": [ - { - "discrete": true, - "name": "dim_0", - "type": "array" - }, - { - "discrete": true, - "name": "dim_1", - "type": "array" - } - ], - "name": "array_coordinates" - } - ], - "coordinateTransformations": [ - { - "input": { - "name": "array_coordinates" - }, - "name": "transform-name", - "output": { - "name": "physical" - }, - "transformations": [ - { - "inputAxes": [ - 0 - ], - "outputAxes": [ - 0 - ], - "transformation": { - "scale": [ - 2 - ], - "type": "scale" - } - }, - { - "inputAxes": [ - 1 - ], - "outputAxes": [ - 1 - ], - "transformation": { - "translation": [ - -10 - ], - "type": "translation" - } - } - ], - "type": "byDimension" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "s0" - }, - "name": "transform-name", - "output": { - "name": "array_coordinates" - }, - "type": "identity" - } - ], - "path": "s0" - } - ], - "name": "multiscales" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/identity.json b/cases/parse_attributes/v0.6/core/valid/transforms/identity.json index 91873b8..9e240fe 100644 --- a/cases/parse_attributes/v0.6/core/valid/transforms/identity.json +++ b/cases/parse_attributes/v0.6/core/valid/transforms/identity.json @@ -1,46 +1,50 @@ { "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "array" - }, - "name": "transform-name", - "output": { - "name": "physical" - }, - "type": "identity" - } - ], - "path": "array" - } - ], - "name": "multiscales" - } - ], + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "type": "identity" + } + ] + }, "version": "0.6" } } diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/mapAxis.json b/cases/parse_attributes/v0.6/core/valid/transforms/mapAxis.json deleted file mode 100644 index ebc8a06..0000000 --- a/cases/parse_attributes/v0.6/core/valid/transforms/mapAxis.json +++ /dev/null @@ -1,157 +0,0 @@ -{ - "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "sheared" - }, - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - } - ], - "coordinateTransformations": [ - { - "input": { - "name": "physical" - }, - "mapAxis": [ - 1, - 0 - ], - "name": "physical-to-sheared", - "output": { - "name": "sheared" - }, - "type": "mapAxis" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "s0" - }, - "name": "scale0_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 1, - 1 - ], - "type": "scale" - }, - { - "translation": [ - 0, - 0 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s0" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s1" - }, - "name": "scale1_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 2, - 2 - ], - "type": "scale" - }, - { - "translation": [ - 0.7071, - 0.7071 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s1" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s2" - }, - "name": "scale2_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 4, - 4 - ], - "type": "scale" - }, - { - "translation": [ - 2.1213, - 2.1213 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s2" - } - ], - "name": "multiscales" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/projectAxis.json b/cases/parse_attributes/v0.6/core/valid/transforms/projectAxis.json deleted file mode 100644 index 01b8126..0000000 --- a/cases/parse_attributes/v0.6/core/valid/transforms/projectAxis.json +++ /dev/null @@ -1,168 +0,0 @@ -{ - "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": true, - "name": "c", - "type": "channel" - }, - { - "discrete": false, - "name": "z", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "world" - }, - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - } - ], - "coordinateTransformations": [ - { - "createdOutputs": [ - 0, - 1 - ], - "input": { - "name": "physical" - }, - "name": "physical-to-world", - "output": { - "name": "world" - }, - "type": "projectAxis" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "s0" - }, - "name": "scale0_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 1, - 1 - ], - "type": "scale" - }, - { - "translation": [ - 0, - 0 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s0" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s1" - }, - "name": "scale1_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 2, - 2 - ], - "type": "scale" - }, - { - "translation": [ - 0.7071, - 0.7071 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s1" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s2" - }, - "name": "scale2_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 4, - 4 - ], - "type": "scale" - }, - { - "translation": [ - 2.1213, - 2.1213 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s2" - } - ], - "name": "multiscales" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/projectAxis2.json b/cases/parse_attributes/v0.6/core/valid/transforms/projectAxis2.json deleted file mode 100644 index 31b34f4..0000000 --- a/cases/parse_attributes/v0.6/core/valid/transforms/projectAxis2.json +++ /dev/null @@ -1,176 +0,0 @@ -{ - "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "z", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "world" - }, - { - "axes": [ - { - "discrete": true, - "name": "c", - "type": "channel" - }, - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - } - ], - "coordinateTransformations": [ - { - "createdOutputs": [ - 0 - ], - "droppedInputs": [ - 0 - ], - "input": { - "name": "physical" - }, - "name": "physical-to-world", - "output": { - "name": "world" - }, - "type": "projectAxis" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "s0" - }, - "name": "scale0_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 1, - 1, - 1 - ], - "type": "scale" - }, - { - "translation": [ - 0, - 0, - 0 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s0" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s1" - }, - "name": "scale1_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 1, - 2, - 2 - ], - "type": "scale" - }, - { - "translation": [ - 0, - 0.7071, - 0.7071 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s1" - }, - { - "coordinateTransformations": [ - { - "input": { - "path": "s2" - }, - "name": "scale2_to_physical", - "output": { - "name": "physical" - }, - "transformations": [ - { - "scale": [ - 1, - 4, - 4 - ], - "type": "scale" - }, - { - "translation": [ - 0, - 2.1213, - 2.1213 - ], - "type": "translation" - } - ], - "type": "sequence" - } - ], - "path": "s2" - } - ], - "name": "multiscales" - } - ], - "version": "0.6" - } -} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/scale.json b/cases/parse_attributes/v0.6/core/valid/transforms/scale.json index f2afa1e..82b8010 100644 --- a/cases/parse_attributes/v0.6/core/valid/transforms/scale.json +++ b/cases/parse_attributes/v0.6/core/valid/transforms/scale.json @@ -1,50 +1,54 @@ { "ome": { - "multiscales": [ - { - "coordinateSystems": [ - { - "axes": [ - { - "discrete": false, - "name": "y", - "type": "space", - "unit": "micrometer" - }, - { - "discrete": false, - "name": "x", - "type": "space", - "unit": "micrometer" - } - ], - "name": "physical" - } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "array" - }, - "name": "transform-name", - "output": { - "name": "physical" - }, - "scale": [ - 3.0, - 2.0 - ], - "type": "scale" - } - ], - "path": "array" - } - ], - "name": "multiscales" - } - ], + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "nanometer" + }, + { + "name": "x", + "type": "space", + "unit": "nanometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "scale": [ + 1000, + 1000 + ], + "type": "scale" + } + ] + }, "version": "0.6" } } diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/sequence.json b/cases/parse_attributes/v0.6/core/valid/transforms/sequence.json new file mode 100644 index 0000000..8ae6711 --- /dev/null +++ b/cases/parse_attributes/v0.6/core/valid/transforms/sequence.json @@ -0,0 +1,66 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "x", + "type": "space", + "unit": "micrometer" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "transformations": [ + { + "translation": [ + 50, + 50 + ], + "type": "translation" + }, + { + "mapAxis": [ + 1, + 0 + ], + "type": "mapAxis" + } + ], + "type": "sequence" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/core/invalid/scene/scene_bijection_inverse_missing_params.json b/cases/parse_attributes/v0.6/core/valid/transforms/translation.json similarity index 71% rename from cases/parse_attributes/v0.6/core/invalid/scene/scene_bijection_inverse_missing_params.json rename to cases/parse_attributes/v0.6/core/valid/transforms/translation.json index d5e06b6..ebdef92 100644 --- a/cases/parse_attributes/v0.6/core/invalid/scene/scene_bijection_inverse_missing_params.json +++ b/cases/parse_attributes/v0.6/core/valid/transforms/translation.json @@ -5,50 +5,47 @@ { "axes": [ { - "discrete": false, - "name": "x", + "name": "y", "type": "space", "unit": "micrometer" }, { - "discrete": false, - "name": "y", + "name": "x", "type": "space", "unit": "micrometer" } ], - "name": "one" + "name": "atlas1" }, { "axes": [ { - "discrete": false, - "name": "x", + "name": "y", "type": "space", "unit": "micrometer" }, { - "discrete": false, - "name": "y", + "name": "x", "type": "space", "unit": "micrometer" } ], - "name": "two" + "name": "atlas2" } ], "coordinateTransformations": [ { "input": { - "name": "one" - }, - "inverse": { - "type": "scale" + "name": "atlas1" }, "output": { - "name": "two" + "name": "atlas2" }, - "type": "bijection" + "translation": [ + 50, + 50 + ], + "type": "translation" } ] }, diff --git a/cases/parse_attributes/v0.6/transform_affine/valid/transforms/affine_inline.json b/cases/parse_attributes/v0.6/transform_affine/valid/transforms/affine_inline.json new file mode 100644 index 0000000..4f8ab8d --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_affine/valid/transforms/affine_inline.json @@ -0,0 +1,62 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "affine": [ + [ + 1, + 0, + 10 + ], + [ + 0, + 1, + 20 + ] + ], + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "type": "affine" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_affine/valid/transforms/affine_path.json b/cases/parse_attributes/v0.6/transform_affine/valid/transforms/affine_path.json new file mode 100644 index 0000000..080b29e --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_affine/valid/transforms/affine_path.json @@ -0,0 +1,51 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "affine_array", + "type": "affine" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_bijection/valid/transforms/bijection.json b/cases/parse_attributes/v0.6/transform_bijection/valid/transforms/bijection.json new file mode 100644 index 0000000..2a700e1 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_bijection/valid/transforms/bijection.json @@ -0,0 +1,64 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "forward": { + "translation": [ + 50, + 50 + ], + "type": "translation" + }, + "input": { + "name": "atlas1" + }, + "inverse": { + "translation": [ + -50, + -50 + ], + "type": "translation" + }, + "output": { + "name": "atlas2" + }, + "type": "bijection" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_byDimension/valid/transforms/byDimension.json b/cases/parse_attributes/v0.6/transform_byDimension/valid/transforms/byDimension.json new file mode 100644 index 0000000..eb2aba2 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_byDimension/valid/transforms/byDimension.json @@ -0,0 +1,89 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "z", + "type": "space", + "unit": "micrometer" + }, + { + "name": "y", + "type": "space", + "unit": "nanometer" + }, + { + "name": "x", + "type": "space", + "unit": "nanometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "z", + "type": "space", + "unit": "nanometer" + }, + { + "name": "y", + "type": "space", + "unit": "nanometer" + }, + { + "name": "x", + "type": "space", + "unit": "nanometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "transformations": [ + { + "inputAxes": [ + 0 + ], + "outputAxes": [ + 0 + ], + "scale": [ + 1000 + ], + "type": "scale" + }, + { + "inputAxes": [ + 1, + 2 + ], + "outputAxes": [ + 1, + 2 + ], + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ], + "type": "byDimension" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_coordinates/valid/transforms/coordinates.json b/cases/parse_attributes/v0.6/transform_coordinates/valid/transforms/coordinates.json new file mode 100644 index 0000000..6093d74 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_coordinates/valid/transforms/coordinates.json @@ -0,0 +1,51 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "coordinates_multiscale", + "type": "coordinates" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_coordinates/valid/transforms/coordinates_interp.json b/cases/parse_attributes/v0.6/transform_coordinates/valid/transforms/coordinates_interp.json new file mode 100644 index 0000000..489d5d7 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_coordinates/valid/transforms/coordinates_interp.json @@ -0,0 +1,52 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "interpolation": "linear", + "output": { + "name": "atlas2" + }, + "path": "coordinates_multiscale", + "type": "coordinates" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_displacements/valid/transforms/displacements.json b/cases/parse_attributes/v0.6/transform_displacements/valid/transforms/displacements.json new file mode 100644 index 0000000..31dd01a --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_displacements/valid/transforms/displacements.json @@ -0,0 +1,51 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "displacements_multiscale", + "type": "displacements" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_displacements/valid/transforms/displacements_interp.json b/cases/parse_attributes/v0.6/transform_displacements/valid/transforms/displacements_interp.json new file mode 100644 index 0000000..8c090e7 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_displacements/valid/transforms/displacements_interp.json @@ -0,0 +1,52 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "interpolation": "linear", + "output": { + "name": "atlas2" + }, + "path": "displacements_multiscale", + "type": "displacements" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_mapAxis/valid/transforms/mapAxis.json b/cases/parse_attributes/v0.6/transform_mapAxis/valid/transforms/mapAxis.json new file mode 100644 index 0000000..4d21f11 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_mapAxis/valid/transforms/mapAxis.json @@ -0,0 +1,54 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "x", + "type": "space", + "unit": "micrometer" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "mapAxis": [ + 1, + 0 + ], + "output": { + "name": "atlas2" + }, + "type": "mapAxis" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_projectAxis/valid/transforms/projectAxis_create.json b/cases/parse_attributes/v0.6/transform_projectAxis/valid/transforms/projectAxis_create.json new file mode 100644 index 0000000..0d4ed44 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_projectAxis/valid/transforms/projectAxis_create.json @@ -0,0 +1,58 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "c", + "type": "channel" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "rgb" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "label" + } + ], + "coordinateTransformations": [ + { + "createdOutputs": [ + 0 + ], + "input": { + "name": "label" + }, + "output": { + "name": "rgb" + }, + "type": "projectAxis" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_projectAxis/valid/transforms/projectAxis_drop.json b/cases/parse_attributes/v0.6/transform_projectAxis/valid/transforms/projectAxis_drop.json new file mode 100644 index 0000000..3d07bee --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_projectAxis/valid/transforms/projectAxis_drop.json @@ -0,0 +1,58 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "c", + "type": "channel" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "rgb" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "label" + } + ], + "coordinateTransformations": [ + { + "droppedInputs": [ + 0 + ], + "input": { + "name": "rgb" + }, + "output": { + "name": "label" + }, + "type": "projectAxis" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_rotation/valid/transforms/rotation_inline.json b/cases/parse_attributes/v0.6/transform_rotation/valid/transforms/rotation_inline.json new file mode 100644 index 0000000..edd645b --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_rotation/valid/transforms/rotation_inline.json @@ -0,0 +1,60 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "rotation": [ + [ + 1, + 0 + ], + [ + 0, + 1 + ] + ], + "type": "rotation" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/parse_attributes/v0.6/transform_rotation/valid/transforms/rotation_path.json b/cases/parse_attributes/v0.6/transform_rotation/valid/transforms/rotation_path.json new file mode 100644 index 0000000..e5d77f9 --- /dev/null +++ b/cases/parse_attributes/v0.6/transform_rotation/valid/transforms/rotation_path.json @@ -0,0 +1,51 @@ +{ + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "rotation_array", + "type": "rotation" + } + ] + }, + "version": "0.6" + } +} diff --git a/cases/validate_zarr/v0.6/core/invalid/scene/input_output_not_object.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/invalid/scene/input_output_not_object.ome.zarr/zarr.json new file mode 100644 index 0000000..363a325 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/invalid/scene/input_output_not_object.ome.zarr/zarr.json @@ -0,0 +1,54 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": "atlas1", + "output": "atlas2", + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/invalid/scene/missing_scene.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/invalid/scene/missing_scene.ome.zarr/zarr.json new file mode 100644 index 0000000..d541f04 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/invalid/scene/missing_scene.ome.zarr/zarr.json @@ -0,0 +1,56 @@ +{ + "attributes": { + "ome": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/invalid/scene/missing_transformations.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/invalid/scene/missing_transformations.ome.zarr/zarr.json new file mode 100644 index 0000000..0a5e271 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/invalid/scene/missing_transformations.ome.zarr/zarr.json @@ -0,0 +1,28 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/invalid/scene/missing_version.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/invalid/scene/missing_version.ome.zarr/zarr.json new file mode 100644 index 0000000..843bac9 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/invalid/scene/missing_version.ome.zarr/zarr.json @@ -0,0 +1,57 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + } + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/invalid/scene/unknown_coordinate_system.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/invalid/scene/unknown_coordinate_system.ome.zarr/zarr.json new file mode 100644 index 0000000..a4793a1 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/invalid/scene/unknown_coordinate_system.ome.zarr/zarr.json @@ -0,0 +1,43 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/image/simple.ome.zarr/s0/zarr.json b/cases/validate_zarr/v0.6/core/valid/image/simple.ome.zarr/s0/zarr.json new file mode 100644 index 0000000..c29b2c3 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/image/simple.ome.zarr/s0/zarr.json @@ -0,0 +1,32 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 10, + 10 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "name": "bytes" + } + ], + "data_type": "uint8", + "fill_value": 0, + "node_type": "array", + "shape": [ + 10, + 10 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/image/simple.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/image/simple.ome.zarr/zarr.json new file mode 100644 index 0000000..1b6e790 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/image/simple.ome.zarr/zarr.json @@ -0,0 +1,46 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "intrinsic" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "intrinsic" + }, + "type": "identity" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/img/s0/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/img/s0/zarr.json new file mode 100644 index 0000000..c29b2c3 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/img/s0/zarr.json @@ -0,0 +1,32 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 10, + 10 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "name": "bytes" + } + ], + "data_type": "uint8", + "fill_value": 0, + "node_type": "array", + "shape": [ + 10, + 10 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/img/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/img/zarr.json new file mode 100644 index 0000000..1b6e790 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/img/zarr.json @@ -0,0 +1,46 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "intrinsic" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "intrinsic" + }, + "type": "identity" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/zarr.json new file mode 100644 index 0000000..d6887ee --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_name.ome.zarr/zarr.json @@ -0,0 +1,44 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "nanometer" + }, + { + "name": "x", + "type": "space", + "unit": "nanometer" + } + ], + "name": "atlas1" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "intrinsic", + "path": "img" + }, + "output": { + "name": "atlas1" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img/s0/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img/s0/zarr.json new file mode 100644 index 0000000..c29b2c3 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img/s0/zarr.json @@ -0,0 +1,32 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 10, + 10 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "name": "bytes" + } + ], + "data_type": "uint8", + "fill_value": 0, + "node_type": "array", + "shape": [ + 10, + 10 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img/zarr.json new file mode 100644 index 0000000..1b6e790 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img/zarr.json @@ -0,0 +1,46 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "intrinsic" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "intrinsic" + }, + "type": "identity" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img2/s0/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img2/s0/zarr.json new file mode 100644 index 0000000..c29b2c3 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img2/s0/zarr.json @@ -0,0 +1,32 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 10, + 10 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "name": "bytes" + } + ], + "data_type": "uint8", + "fill_value": 0, + "node_type": "array", + "shape": [ + 10, + 10 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img2/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img2/zarr.json new file mode 100644 index 0000000..1b6e790 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/img2/zarr.json @@ -0,0 +1,46 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "intrinsic" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "intrinsic" + }, + "type": "identity" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/zarr.json new file mode 100644 index 0000000..43788d2 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/path_to_path.ome.zarr/zarr.json @@ -0,0 +1,28 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateTransformations": [ + { + "input": { + "name": "intrinsic", + "path": "img" + }, + "output": { + "name": "intrinsic", + "path": "img2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/scene/simple.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/scene/simple.ome.zarr/zarr.json new file mode 100644 index 0000000..f3652f4 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/scene/simple.ome.zarr/zarr.json @@ -0,0 +1,58 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/transforms/identity.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/transforms/identity.ome.zarr/zarr.json new file mode 100644 index 0000000..14bfedd --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/transforms/identity.ome.zarr/zarr.json @@ -0,0 +1,54 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "type": "identity" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/transforms/scale.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/transforms/scale.ome.zarr/zarr.json new file mode 100644 index 0000000..0c5e27a --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/transforms/scale.ome.zarr/zarr.json @@ -0,0 +1,58 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "nanometer" + }, + { + "name": "x", + "type": "space", + "unit": "nanometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "scale": [ + 1000, + 1000 + ], + "type": "scale" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/transforms/sequence.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/transforms/sequence.ome.zarr/zarr.json new file mode 100644 index 0000000..5527047 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/transforms/sequence.ome.zarr/zarr.json @@ -0,0 +1,70 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "x", + "type": "space", + "unit": "micrometer" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "transformations": [ + { + "translation": [ + 50, + 50 + ], + "type": "translation" + }, + { + "mapAxis": [ + 1, + 0 + ], + "type": "mapAxis" + } + ], + "type": "sequence" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/core/valid/transforms/translation.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/core/valid/transforms/translation.ome.zarr/zarr.json new file mode 100644 index 0000000..f3652f4 --- /dev/null +++ b/cases/validate_zarr/v0.6/core/valid/transforms/translation.ome.zarr/zarr.json @@ -0,0 +1,58 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_inline.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_inline.ome.zarr/zarr.json new file mode 100644 index 0000000..958dd86 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_inline.ome.zarr/zarr.json @@ -0,0 +1,66 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "affine": [ + [ + 1, + 0, + 10 + ], + [ + 0, + 1, + 20 + ] + ], + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "type": "affine" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/affine_array/c/0/0 b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/affine_array/c/0/0 new file mode 100644 index 0000000..f48905b Binary files /dev/null and b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/affine_array/c/0/0 differ diff --git a/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/affine_array/zarr.json b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/affine_array/zarr.json new file mode 100644 index 0000000..42846bf --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/affine_array/zarr.json @@ -0,0 +1,35 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 2, + 3 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "configuration": { + "endian": "little" + }, + "name": "bytes" + } + ], + "data_type": "float32", + "fill_value": 0.0, + "node_type": "array", + "shape": [ + 2, + 3 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/zarr.json new file mode 100644 index 0000000..6a5de5d --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_affine/valid/transforms/affine_path.ome.zarr/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "affine_array", + "type": "affine" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_bijection/valid/transforms/bijection.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_bijection/valid/transforms/bijection.ome.zarr/zarr.json new file mode 100644 index 0000000..74b1c3a --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_bijection/valid/transforms/bijection.ome.zarr/zarr.json @@ -0,0 +1,68 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "forward": { + "translation": [ + 50, + 50 + ], + "type": "translation" + }, + "input": { + "name": "atlas1" + }, + "inverse": { + "translation": [ + -50, + -50 + ], + "type": "translation" + }, + "output": { + "name": "atlas2" + }, + "type": "bijection" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_byDimension/valid/transforms/byDimension.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_byDimension/valid/transforms/byDimension.ome.zarr/zarr.json new file mode 100644 index 0000000..4942393 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_byDimension/valid/transforms/byDimension.ome.zarr/zarr.json @@ -0,0 +1,93 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "z", + "type": "space", + "unit": "micrometer" + }, + { + "name": "y", + "type": "space", + "unit": "nanometer" + }, + { + "name": "x", + "type": "space", + "unit": "nanometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "z", + "type": "space", + "unit": "nanometer" + }, + { + "name": "y", + "type": "space", + "unit": "nanometer" + }, + { + "name": "x", + "type": "space", + "unit": "nanometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "transformations": [ + { + "inputAxes": [ + 0 + ], + "outputAxes": [ + 0 + ], + "scale": [ + 1000 + ], + "type": "scale" + }, + { + "inputAxes": [ + 1, + 2 + ], + "outputAxes": [ + 1, + 2 + ], + "translation": [ + 50, + 50 + ], + "type": "translation" + } + ], + "type": "byDimension" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/s0/c/0/0 b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/s0/c/0/0 new file mode 100644 index 0000000..f2fc87c Binary files /dev/null and b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/s0/c/0/0 differ diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/s0/zarr.json b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/s0/zarr.json new file mode 100644 index 0000000..2b31f58 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/s0/zarr.json @@ -0,0 +1,35 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 2, + 2 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "configuration": { + "endian": "little" + }, + "name": "bytes" + } + ], + "data_type": "float32", + "fill_value": 0.0, + "node_type": "array", + "shape": [ + 2, + 2 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/zarr.json b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/zarr.json new file mode 100644 index 0000000..4402a1c --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/coordinates_multiscale/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "c", + "type": "coordinate" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "atlas1" + }, + "scale": [ + 10, + 10 + ], + "type": "scale" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/zarr.json new file mode 100644 index 0000000..271d391 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates.ome.zarr/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "coordinates_multiscale", + "type": "coordinates" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/s0/c/0/0 b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/s0/c/0/0 new file mode 100644 index 0000000..f2fc87c Binary files /dev/null and b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/s0/c/0/0 differ diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/s0/zarr.json b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/s0/zarr.json new file mode 100644 index 0000000..2b31f58 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/s0/zarr.json @@ -0,0 +1,35 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 2, + 2 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "configuration": { + "endian": "little" + }, + "name": "bytes" + } + ], + "data_type": "float32", + "fill_value": 0.0, + "node_type": "array", + "shape": [ + 2, + 2 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/zarr.json b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/zarr.json new file mode 100644 index 0000000..4402a1c --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/coordinates_multiscale/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "c", + "type": "coordinate" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "atlas1" + }, + "scale": [ + 10, + 10 + ], + "type": "scale" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/zarr.json new file mode 100644 index 0000000..4ef6060 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_coordinates/valid/transforms/coordinates_interp.ome.zarr/zarr.json @@ -0,0 +1,56 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "interpolation": "linear", + "output": { + "name": "atlas2" + }, + "path": "coordinates_multiscale", + "type": "coordinates" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/s0/c/0/0 b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/s0/c/0/0 new file mode 100644 index 0000000..f2fc87c Binary files /dev/null and b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/s0/c/0/0 differ diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/s0/zarr.json b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/s0/zarr.json new file mode 100644 index 0000000..2b31f58 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/s0/zarr.json @@ -0,0 +1,35 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 2, + 2 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "configuration": { + "endian": "little" + }, + "name": "bytes" + } + ], + "data_type": "float32", + "fill_value": 0.0, + "node_type": "array", + "shape": [ + 2, + 2 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/zarr.json b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/zarr.json new file mode 100644 index 0000000..fd279bc --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/displacements_multiscale/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "d", + "type": "displacement" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "atlas1" + }, + "scale": [ + 10, + 10 + ], + "type": "scale" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/zarr.json new file mode 100644 index 0000000..dd2b9e6 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements.ome.zarr/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "displacements_multiscale", + "type": "displacements" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/s0/c/0/0 b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/s0/c/0/0 new file mode 100644 index 0000000..f2fc87c Binary files /dev/null and b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/s0/c/0/0 differ diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/s0/zarr.json b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/s0/zarr.json new file mode 100644 index 0000000..2b31f58 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/s0/zarr.json @@ -0,0 +1,35 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 2, + 2 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "configuration": { + "endian": "little" + }, + "name": "bytes" + } + ], + "data_type": "float32", + "fill_value": 0.0, + "node_type": "array", + "shape": [ + 2, + 2 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/zarr.json b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/zarr.json new file mode 100644 index 0000000..fd279bc --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/displacements_multiscale/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "multiscales": [ + { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "d", + "type": "displacement" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + } + ], + "datasets": [ + { + "coordinateTransformations": [ + { + "input": { + "path": "s0" + }, + "output": { + "name": "atlas1" + }, + "scale": [ + 10, + 10 + ], + "type": "scale" + } + ], + "path": "s0" + } + ] + } + ], + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/zarr.json new file mode 100644 index 0000000..73668b5 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_displacements/valid/transforms/displacements_interp.ome.zarr/zarr.json @@ -0,0 +1,56 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "interpolation": "linear", + "output": { + "name": "atlas2" + }, + "path": "displacements_multiscale", + "type": "displacements" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_mapAxis/valid/transforms/mapAxis.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_mapAxis/valid/transforms/mapAxis.ome.zarr/zarr.json new file mode 100644 index 0000000..3e74a44 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_mapAxis/valid/transforms/mapAxis.ome.zarr/zarr.json @@ -0,0 +1,58 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "x", + "type": "space", + "unit": "micrometer" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "mapAxis": [ + 1, + 0 + ], + "output": { + "name": "atlas2" + }, + "type": "mapAxis" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_projectAxis/valid/transforms/projectAxis_create.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_projectAxis/valid/transforms/projectAxis_create.ome.zarr/zarr.json new file mode 100644 index 0000000..9923dd1 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_projectAxis/valid/transforms/projectAxis_create.ome.zarr/zarr.json @@ -0,0 +1,62 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "c", + "type": "channel" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "rgb" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "label" + } + ], + "coordinateTransformations": [ + { + "createdOutputs": [ + 0 + ], + "input": { + "name": "label" + }, + "output": { + "name": "rgb" + }, + "type": "projectAxis" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_projectAxis/valid/transforms/projectAxis_drop.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_projectAxis/valid/transforms/projectAxis_drop.ome.zarr/zarr.json new file mode 100644 index 0000000..8ae7780 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_projectAxis/valid/transforms/projectAxis_drop.ome.zarr/zarr.json @@ -0,0 +1,62 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "discrete": true, + "name": "c", + "type": "channel" + }, + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "rgb" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "label" + } + ], + "coordinateTransformations": [ + { + "droppedInputs": [ + 0 + ], + "input": { + "name": "rgb" + }, + "output": { + "name": "label" + }, + "type": "projectAxis" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/cases/parse_attributes/v0.6/core/valid/transforms/rotation.json b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_inline.ome.zarr/zarr.json similarity index 52% rename from cases/parse_attributes/v0.6/core/valid/transforms/rotation.json rename to cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_inline.ome.zarr/zarr.json index c3b2b99..05bf270 100644 --- a/cases/parse_attributes/v0.6/core/valid/transforms/rotation.json +++ b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_inline.ome.zarr/zarr.json @@ -1,89 +1,64 @@ { - "ome": { - "multiscales": [ - { + "attributes": { + "ome": { + "scene": { "coordinateSystems": [ { "axes": [ { - "discrete": false, "name": "y", "type": "space", "unit": "micrometer" }, { - "discrete": false, "name": "x", "type": "space", "unit": "micrometer" } ], - "name": "rotated" + "name": "atlas1" }, { "axes": [ { - "discrete": false, "name": "y", "type": "space", "unit": "micrometer" }, { - "discrete": false, "name": "x", "type": "space", "unit": "micrometer" } ], - "name": "physical" + "name": "atlas2" } ], "coordinateTransformations": [ { "input": { - "name": "physical" + "name": "atlas1" }, - "name": "rotation", "output": { - "name": "rotated" + "name": "atlas2" }, "rotation": [ [ - 0, - 1 + 1, + 0 ], [ - -1, - 0 + 0, + 1 ] ], "type": "rotation" } - ], - "datasets": [ - { - "coordinateTransformations": [ - { - "input": { - "path": "array" - }, - "name": "array to physical", - "output": { - "name": "physical" - }, - "scale": [ - 1, - 1 - ], - "type": "scale" - } - ], - "path": "array" - } - ], - "name": "multiscales" - } - ], - "version": "0.6" - } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 } diff --git a/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/rotation_array/c/0/0 b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/rotation_array/c/0/0 new file mode 100644 index 0000000..d7de1a9 Binary files /dev/null and b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/rotation_array/c/0/0 differ diff --git a/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/rotation_array/zarr.json b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/rotation_array/zarr.json new file mode 100644 index 0000000..2b31f58 --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/rotation_array/zarr.json @@ -0,0 +1,35 @@ +{ + "attributes": {}, + "chunk_grid": { + "configuration": { + "chunk_shape": [ + 2, + 2 + ] + }, + "name": "regular" + }, + "chunk_key_encoding": { + "configuration": { + "separator": "/" + }, + "name": "default" + }, + "codecs": [ + { + "configuration": { + "endian": "little" + }, + "name": "bytes" + } + ], + "data_type": "float32", + "fill_value": 0.0, + "node_type": "array", + "shape": [ + 2, + 2 + ], + "storage_transformers": [], + "zarr_format": 3 +} diff --git a/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/zarr.json b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/zarr.json new file mode 100644 index 0000000..a577f9f --- /dev/null +++ b/cases/validate_zarr/v0.6/transform_rotation/valid/transforms/rotation_path.ome.zarr/zarr.json @@ -0,0 +1,55 @@ +{ + "attributes": { + "ome": { + "scene": { + "coordinateSystems": [ + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas1" + }, + { + "axes": [ + { + "name": "y", + "type": "space", + "unit": "micrometer" + }, + { + "name": "x", + "type": "space", + "unit": "micrometer" + } + ], + "name": "atlas2" + } + ], + "coordinateTransformations": [ + { + "input": { + "name": "atlas1" + }, + "output": { + "name": "atlas2" + }, + "path": "rotation_array", + "type": "rotation" + } + ] + }, + "version": "0.6" + } + }, + "node_type": "group", + "zarr_format": 3 +} diff --git a/scripts/mknode.py b/scripts/mknode.py index 55d104b..b6632c9 100755 --- a/scripts/mknode.py +++ b/scripts/mknode.py @@ -1,7 +1,7 @@ #!/usr/bin/env -S uv run --script # /// script # requires-python = ">= 3.12" -# dependencies = ["zarr >= 3.3.0"] +# dependencies = ["zarr >= 3.3.0", "numpy"] # /// """Script to create a new zarr node.""" @@ -18,6 +18,7 @@ from shutil import rmtree from typing import TypeVar +import numpy as np import zarr from zarr.core.common import JSON, ZarrFormat @@ -60,6 +61,7 @@ class ArrayArgs: shape: list[int] data_type: str fill_value: JSON + data: np.ndarray @property def chunk_shape(self) -> list[int]: @@ -71,17 +73,28 @@ def maybe_from_args( shape: list[int] | None, data_type: str | None, fill_value: JSON | None = None, + data: list[float] | None = None, ): - if shape is None and data_type is None: - return None if (shape is None) != (data_type is None): raise ValueError("All array args must be given or none") + if shape is None or data_type is None: + return None if fill_value is None: if data_type == "bool": fill_value = False else: fill_value = 0 - return cls(shape, data_type, fill_value) # type:ignore + if data is not None: + length = np.prod(shape) + if len(data) == 1: + data *= length + elif length != len(data): + raise ValueError(f"expected {length} values, got {len(data)}") + vals = np.array(data, dtype=data_type).reshape(shape) + else: + vals = None + + return cls(shape, data_type, fill_value, vals) # type:ignore @dataclass @@ -171,9 +184,15 @@ def parse(cls, raw_args: list[str] | None = None): type=json.loads, help="fill value to be used as JSON; not type-checked", ) + g.add_argument( + "--data", + "-d", + type=list_parser(float), + help="numeric values to be used as array contents; will be reshaped in C order", + ) parsed = parser.parse_args(raw_args) maybe_array = ArrayArgs.maybe_from_args( - parsed.shape, parsed.datatype, parsed.fill_value + parsed.shape, parsed.datatype, parsed.fill_value, parsed.data ) level = {0: logging.WARNING, 1: logging.INFO, 2: logging.DEBUG}.get( parsed.verbose, logging.DEBUG @@ -258,15 +277,25 @@ def main(): ) else: aargs = args.array_args - zarr.create_array( - args.path, - shape=aargs.shape, - dtype=aargs.data_type, - chunks=aargs.chunk_shape, - fill_value=aargs.fill_value, - attributes=args.attributes, - compressors=[], - ) + if aargs.data is None: + zarr.create_array( + args.path, + shape=aargs.shape, + dtype=aargs.data_type, + chunks=aargs.chunk_shape, + fill_value=aargs.fill_value, + attributes=args.attributes, + compressors=[], + ) + else: + zarr.create_array( + args.path, + data=aargs.data, + chunks=aargs.chunk_shape, + fill_value=aargs.fill_value, + attributes=args.attributes, + compressors=[], + ) return 0