Skip to article frontmatterSkip to article content

multiscales_strict Examples

This document contains JSON examples for multiscales_strict metadata layouts.

multiscales_reference_to_label

multiscales_reference_to_label.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{
  "ome": {
    "version": "0.6.dev4",
    "multiscales": [
      {
        "name": "Image",
        "datasets": [
          {
            "path": "s0",
            "coordinateTransformations": [
              {
                "type": "scale",
                "scale": [0.5, 0.5, 1],
                "input": {"path": "s0"},
                "output": {"name": "physical"}
              }
            ]
          }
        ],
        "coordinateSystems": [
          {
            "name": "physical",
            "axes": [
              {"name": "z", "unit": "micrometer"},
              {"name": "y", "unit": "micrometer"},
              {"name": "x", "unit": "micrometer"}
            ]
          }
        ],
        "coordinateTransformations": [
          {
            "type": "identity",
            "input": {"path": "labels/cell_segmentation","name": "physical"},
            "output": {"name": "physical"}
          }
         ]
      }
    ]
  }
}

multiscales_example

multiscales_example.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
{
  "zarr_format": 3,
  "node_type": "group",
  "attributes": {
    "ome": {
      "version": "0.6.dev4",
      "multiscales": [
        {
          "name": "example",
          "coordinateSystems": [
              {
                "name": "intrinsic",
                "axes": [
                  { "name": "t", "type": "time", "unit": "millisecond" },
                  { "name": "c", "type": "channel" },
                  { "name": "z", "type": "space", "unit": "micrometer" },
                  { "name": "y", "type": "space", "unit": "micrometer" },
                  { "name": "x", "type": "space", "unit": "micrometer" }
                ]
              }
          ],
          "datasets": [
            {
              "path": "s0",
              "coordinateTransformations": [
                {
                  // the voxel size for the first scale level (0.5 micrometer)
                  // and the time unit (0.1 milliseconds), which is the same for each scale level
                  "type": "scale",
                  "scale": [0.1, 1.0, 0.5, 0.5, 0.5],
                  "input": {"path": "s0"},
                  "output": {"name": "intrinsic"}
                }
              ]
            },
            {
              "path": "s1",
              "coordinateTransformations": [
                {
                  // the voxel size for the second scale level (downscaled by a factor of 2 -> 1 micrometer)
                  // and the time unit (0.1 milliseconds), which is the same for each scale level
                  "type": "sequence",
                  "input": {"path": "s1"},
                  "output": {"name": "intrinsic"},
                  "transformations": [
                    {
                      "type": "scale",
                      "scale": [0.1, 1.0, 1.0, 1.0, 1.0]
                    },
                    {
                      "type": "translation",
                      "translation": [0, 0, 0.25, 0.25, 0.25]
                    }
                  ]                  
                }
              ]
            },
            {
              "path": "s2",
              "coordinateTransformations": [
                {
                  // the voxel size for the third scale level (downscaled by a factor of 4 -> 2 micrometer)
                  // and the time unit (0.1 milliseconds), which is the same for each scale level
                  "type": "sequence",
                  "input": {"path": "s2"},
                  "output": {"name": "intrinsic"},
                  "transformations": [
                    {
                      "type": "scale",
                      "scale": [0.1, 1.0, 2.0, 2.0, 2.0]
                    },
                    {
                      "type": "translation",
                      "translation": [0, 0, 0.75, 0.75, 0.75]
                    }
                  ]
                }
              ]
            }
          ],
          "type": "gaussian",
          "metadata": {
            "description": "the fields in metadata depend on the downscaling implementation. Here, the parameters passed to the skimage function are given",
            "method": "skimage.transform.pyramid_gaussian",
            "version": "0.16.1",
            "args": "[true]",
            "kwargs": { "multichannel": true }
          }
        }
      ]
    }
  }
}

multiscales_example_relative

multiscales_example_relative.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
{
  "multiscales": [
    {
      "version": "0.6.dev4",
      "name": "example",
      "coordinateSystems" : [
        {
          "name" : "world",
          "axes": {
            "t": {"type": "time", "unit": "millisecond"},
            "c": {"type": "channel"},
            "z": {"type": "space", "unit": "micrometer"},
            "y": {"type": "space", "unit": "micrometer"},
            "x": {"type": "space", "unit": "micrometer"}
          }
        },
        {
          "name" : "intrinsic",
          "axes": [
            {"name": "t", "type": "time", "unit": "millisecond"},
            {"name": "c", "type": "channel"},
            {"name": "z", "type": "space", "unit": "micrometer"},
            {"name": "y", "type": "space", "unit": "micrometer"},
            {"name": "x", "type": "space", "unit": "micrometer"}
          ]
        }
      ],
      "datasets": [
        {
          "path": "s0",
          // the transformation of other arrays are
          // defined relative to this, the highest resolution, array
          "coordinateTransformations": [{
            "type": "scale",
            "scale": [1, 1, 1, 1, 1],
            "input": {"path": "s0"},
            "output": {"name": "intrinsic"}
          }]
        },
        {
          "path": "s1",
          "coordinateTransformations": [
             {
              // the second scale level (downscaled by a factor of 2 relative to "s0" in zyx)
              "type": "sequence",
              "input" : {"path": "s1"},
              "output" : {"name": "intrinsic"},
              "transformations": [
                {
                  "type": "scale",
                  "scale": [1, 1, 2, 2, 2]
                },
                {
                  "type": "translation",
                  "translation": [0, 0, 0.5, 0.5, 0.5]
                }
              ]
            }
          ]
        },
        {
          "path": "s2",
          "coordinateTransformations": [{
            // the third scale level (downscaled by a factor of 4 relative to "s0" in zyx)
            "type": "sequence",
            "input" : {"path": "s2"},
            "output" : {"name": "intrinsic"},
            "transformations": [
              {
                "type": "scale",
                "scale": [1, 1, 4, 4, 4]
              },
              {
                "type": "translation",
                "translation": [0, 0, 1.5, 1.5, 1.5]
              }
             ]
          }]
        }
      ],
      "coordinateTransformations": [
        {
          "name": "additional_translation",
          "type": "translation",
          "translation": [0, 0, 10, 20, 30],
          "input": {"name": "intrinsic"},
          "output": {"name": "world"}
        }
      ]
    }
  ]
}

multiscales_transformations

multiscales_transformations.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
{
  "zarr_format": 3,
  "node_type": "group",
  "attributes": {
    "ome": {
      "version": "0.6.dev4",
      "multiscales": [
        {
          "coordinateSystems": [
            {
              "name": "physical",
              "axes": [
                {
                  "name": "y",
                  "type": "space",
                  "unit": "micrometer"
                },
                {
                  "name": "x",
                  "type": "space",
                  "unit": "micrometer"
                }
              ]
            },
            {
              "name": "intrinsic",
              "axes": [
                {
                  "name": "y",
                  "type": "space",
                  "unit": "micrometer"
                },
                {
                  "name": "x",
                  "type": "space",
                  "unit": "micrometer"
                }
              ]
            }
          ],
          "datasets": [
            {
              "path": "s0",
              "coordinateTransformations": [
                {
                  "scale": [1, 1],
                  "type": "scale",
                  "input": {"path": "s0"},
                  "output": {"name": "intrinsic"}
                }
              ]
            }
          ],
          "coordinateTransformations": [
            {
              "scale": [10, 10],
              "type": "scale",
              "input": {"name": "intrinsic"},
              "output": {"name": "physical"}
            }
          ],
          "name": "image_with_coordinateTransformations",
          "type": "foo",
          "metadata": {
            "key": "value"
          }
        }
      ]
    }
  }
}