Skip to article frontmatterSkip to article content

multiscales_strict

This document contains JSON examples for multiscales_strict metadata layouts.

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.6dev2",
      "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": "0",
              "coordinateTransformations": [
                {
                  "scale": [1, 1],
                  "type": "scale",
                  "input": "0",
                  "output": "intrinsic"
                }
              ]
            }
          ],
          "coordinateTransformations": [
            {
              "scale": [10, 10],
              "type": "scale",
              "input": "intrinsic",
              "output": "physical"
            }
          ],
          "name": "image_with_coordinateTransformations",
          "type": "foo",
          "metadata": {
            "key": "value"
          }
        }
      ]
    }
  }
}

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
{
  "zarr_format": 3,
  "node_type": "group",
  "attributes": {
    "ome": {
      "version": "0.5",
      "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": "0",
              "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": "0",
                  "output": "intrinsic"
                }
              ]
            },
            {
              "path": "1",
              "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": "scale",
                  "scale": [0.1, 1.0, 1.0, 1.0, 1.0],
                  "input": "1",
                  "output": "intrinsic"
                }
              ]
            },
            {
              "path": "2",
              "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": "scale",
                  "scale": [0.1, 1.0, 2.0, 2.0, 2.0],
                  "input": "2",
                  "output": "intrinsic"
                }
              ]
            }
          ],
          "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
{
  "multiscales": [
    {
      "version": "0.6dev2",
      "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": "s0",
            "output": "intrinsic"
          }]
        },
        {
          "path": "1",
          "coordinateTransformations": [{
            // the second scale level (downscaled by a factor of 2 relative to "0" in zyx)
            "type": "scale",
            "scale": [1, 1, 2, 2, 2],
            "input" : "/1",
            "output" : "array_0"
          }]
        },
        {
          "path": "2",
          "coordinateTransformations": [{
            // the third scale level (downscaled by a factor of 4 relative to "0" in zyx)
            "type": "scale",
            "scale": [1, 1, 4, 4, 4],
            "input" : "/2",
            "output" : "array_0"
          }]
        }
      ],
      "coordinateTransformations": [
        {
          "name": "additional_translation",
          "type": "translation",
          "translation": [0, 0, 10, 20, 30],
          "input": "intrinsic",
          "output": "world"
        }
      ]
    }
  ]
}