7 |
an empty line ('\n' alone). Some header lines give per-array |
an empty line ('\n' alone). Some header lines give per-array |
8 |
information, some give per-axis information. |
information, some give per-axis information. |
9 |
|
|
10 |
|
Note that the distinction between scalar and non-scalar images is |
11 |
|
given by the per-axis "kinds" field, so that is where further |
12 |
|
information is given about the constraints associated iwth non-scalar |
13 |
|
image data. |
14 |
|
|
15 |
============================================================ |
============================================================ |
16 |
The basic fields that should be there are: |
The basic fields that should be there are: |
96 |
The "space" kind is for a typical axis of the image, with samples that |
The "space" kind is for a typical axis of the image, with samples that |
97 |
subtend some region of the spatial domain of the image. All the other |
subtend some region of the spatial domain of the image. All the other |
98 |
kinds are the sequence of scalar values that compose a non-scalar |
kinds are the sequence of scalar values that compose a non-scalar |
99 |
image value (vectors and tensors). We are currently not allowing the |
image value (vectors and tensors). |
100 |
"measurement frame" field that identifies the coordinate system in |
|
101 |
which these are measured relative to the image orientation, so nothing |
We currently allow there to be *at* *most* *one* axis with a |
102 |
should be assumed about the space in which these coefficients are |
non-"space" kind. We can have non-scalar image values, but we don't |
103 |
measured: |
have cartesian products of non-scalar image values. The non-"space" |
104 |
|
kind can be anywhere in the axis ordering. If all the axis kinds are |
105 |
|
"space", then then image data is for scalars, else it is for |
106 |
|
non-scalar data. |
107 |
|
|
108 |
|
In scalar data, the image "dimension" must equal the "space dimension". |
109 |
|
In non-scalar data, the image "dimension" must equal *one* plus |
110 |
|
the "space dimension". That is, the spatial axes have to form a |
111 |
|
basis, not necessarily orthonormal, for world space (the vectors |
112 |
|
are defined by the "space directions" field, below). Thus, a |
113 |
|
3-D scalar image can't reside in a 2-D or 4-D world space, nor can |
114 |
|
a 3-D vector image reside in a 3-D or 5-D world space. |
115 |
|
|
116 |
|
We are currently not allowing the "measurement frame" field that |
117 |
|
identifies the coordinate system in which these are measured relative |
118 |
|
to the image orientation, so nothing should be assumed about the space |
119 |
|
in which these coefficients are measured. The order of coefficients |
120 |
|
for these non-scalar kinds is: |
121 |
|
|
122 |
2D-symmetric-matrix: Mxx Mxy Myy |
2D-symmetric-matrix: Mxx Mxy Myy |
123 |
2D-matrix: Mxx Mxy Myx Myy |
2D-matrix: Mxx Mxy Myx Myy |
124 |
3D-symmetric-matrix: Mxx Mxy Mxz Myy Myz Mzz |
3D-symmetric-matrix: Mxx Mxy Mxz Myy Myz Mzz |
125 |
3D-matrix: Mxx Mxy Mxz Myx Myy Myz Mzx Mzy Mzz |
3D-matrix: Mxx Mxy Mxz Myx Myy Myz Mzx Mzy Mzz |
126 |
|
|
|
We currently allow there to be *at* *most* *one* axis with a |
|
|
non-"space" kind. We can have non-scalar image values, but we don't |
|
|
have cartesian products of non-scalar image values. The non-"space" |
|
|
kind can be anywhere in the axis ordering. |
|
|
|
|
127 |
---------------- |
---------------- |
128 |
space directions: (<x1>,<x2>,...,<xN>) (<x1>,<x2>,...,<xN>) ... |
space directions: (<x1>,<x2>,...,<xN>) (<x1>,<x2>,...,<xN>) ... |
129 |
(and at most one of these vectors is actually "none") |
(and at most one of these vectors is actually "none") |