TrackSpecification: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
No edit summary
Line 6: Line 6:


To just encode tracks, the mesh geometry fields and lineage fields can be skipped
To just encode tracks, the mesh geometry fields and lineage fields can be skipped
Minimal example for just storing tracks
<FileFormatGFX version=2.0>
<ListOfTracks>
<Track>
<TrackID>2</TrackID>
</Track>
</ListOfTracks>
<ListOfMeshes>
<Mesh>
<TrackID>2</TrackID>
<TCoord>2</TCoord>
<Centroid>
<X>114</X>
<Y>202</Y>
<Z>66</Z>
</Centroid>
</Mesh>
<Mesh>
<TrackID>2</TrackID>
<TCoord>3</TCoord>
<Centroid>
<X>115</X>
<Y>203</Y>
<Z>67</Z>
</Centroid>
</Mesh>
</ListOfMeshes>
</FileFormatGFX>
</pre>
Full example for storing tracks as well as geometry of meshes and the connection between tracks to form lineages. You should use only one method for storing the geometry of each mesh (label map file, label map embedded, vtk file, XOR vtk embedded)


<pre>
<pre>
XML TAGS                                    |REQUIRED| DESCRIPTION
<FileFormatGFX version=2.0>
<ImagingSession>                             |  n    | **** SESSION INFORMATION ****
<OriginalData>
  <HeaderFile>SampleData.meg</HeaderFile>   |  n    | Name of the MegaCapture File containing all the session information
<Source>Megason Laboratory</Source>
</ImagingSession>                           |  -    |
<Data>http://www.megason-lab.org/dataset/imaging-session.meg</Data>
<ListOfTracks>                               |  Y    | **** TRACK INFORMATION ****
</OriginalData>
  <Track>                                   |  Y    | This block will repeat once per track in this collection
<ListOfTracks>
    <TrackID>2</TrackID>                     |  n    | ID of this track
<Track>
    <LineageID>4</LineageID>                 |  n    | ID of the lineage that this track belongs to
<TrackID>2</TrackID>
    <MotherTrackID>2</MotherTrackID>         |  n    | TrackID of this track's mother. Used for constructing lineage trees
<MotherTrackID>1</MotherTrackID>
    <ListOfMeshes>                           |  Y    | **** MESHES IN THIS TRACK ****
<DaugtherTrackID>4</DaugtherTrackID>
      <Mesh>                                 |  Y    | This block will repeat once for every mesh in this track
<DaugtherTrackID>112</DaugtherTrackID>
        <MeshID>3</MeshID>                   |  n    | ID of this mesh
<LineageID>33</LineageID>
        <TCoord>0</TCoord>                   |  Y    | Time coordinate of the mesh
</Track>
        <Centroid>                           |  Y    | Spatial coordinate of the mesh's centroid
<Track>
          <X>114.4960</X>                   |  Y    | X coordinate
<TrackID>3</TrackID>
          <Y>202.7230</Y>                   |  Y    | Y coordinate
<MotherTrackID>1</MotherTrackID>
          <Z>66.7290>/Z>                   |  Y    | Z coordinate
<DaugtherTrackID>6</DaugtherTrackID>
        </Centroid>                         |  -    |   
<DaugtherTrackID>12</DaugtherTrackID>
        <Volume>537.92</Volume>             |  n    | Volume of mesh
</Track>
        <Geometry>(long string)</Geometry>   |  n    | A long string corresponding to a vtk file of the geometry of the mesh
</ListOfTracks>
        <Intensity>102</Intensity>           |  n    | average intensity
<ListOfMeshes>
      </Mesh>                               |  -    |
<Mesh>
      <Mesh>...</Mesh>                       |  -    | additional meshes
<MeshID>1234</MeshID>
    </ListOfMeshes>                         |  -    |
<TrackID>2</TrackID>
  <Track>                                   |  -    |
<TCoord>25</TCoord>
  <Track>...</Track>                         |  -    | additional tracks
<Centroid>
<ListOfTracks>                               |  -    |
<X>114.4960</X>
<Y>202.7230</Y>
<Z>66.7290</Z>
</Centroid>
<Geometry>
<LabelMap>
<File>
<Path>/path/to/label/map/at/time/point/25.mha</Path>
<label>56</label>
</File>
<Embedded>
<LineList>
<Line>
<BeginIndex>
<X></X>
<Y></Y>
<Z></Z>
</BeginIndex>
<Length></Length>
</Line>
</LineList>
</Embedded>
</LabelMap>
<Vector>
<Path>/path/to/mesh/file.vtk</Path>
<Encoded>
<Type>vtk</Type>
<Dump></Dump>
<Encoded>
</Vector>
</Geometry>
<Attributes>
<Volume unit="micro">123</Volume>
</Attributes>
</Mesh>
</ListOfMeshes>
</FileFormatGFX>


</pre>
</pre>

Revision as of 17:05, 26 July 2011

SCORE Track file format

The following format can be used to encode

  • meshes (3d surfaces)
  • tracks (collections of meshes over time)
  • lineages (binary trees of tracks representing the division of objects)

To just encode tracks, the mesh geometry fields and lineage fields can be skipped

Minimal example for just storing tracks

<FileFormatGFX version=2.0> <ListOfTracks> <Track> <TrackID>2</TrackID> </Track> </ListOfTracks> <ListOfMeshes> <Mesh> <TrackID>2</TrackID> <TCoord>2</TCoord> <Centroid> <X>114</X> <Y>202</Y> <Z>66</Z> </Centroid> </Mesh> <Mesh> <TrackID>2</TrackID> <TCoord>3</TCoord> <Centroid> <X>115</X> <Y>203</Y> <Z>67</Z> </Centroid> </Mesh> </ListOfMeshes> </FileFormatGFX>

Full example for storing tracks as well as geometry of meshes and the connection between tracks to form lineages. You should use only one method for storing the geometry of each mesh (label map file, label map embedded, vtk file, XOR vtk embedded)

<FileFormatGFX version=2.0>
	<OriginalData>
		<Source>Megason Laboratory</Source>
		<Data>http://www.megason-lab.org/dataset/imaging-session.meg</Data>
	</OriginalData>
	<ListOfTracks>
		<Track>
			<TrackID>2</TrackID>
			<MotherTrackID>1</MotherTrackID>
			<DaugtherTrackID>4</DaugtherTrackID>
			<DaugtherTrackID>112</DaugtherTrackID>
			<LineageID>33</LineageID>
		</Track>
		<Track>
			<TrackID>3</TrackID>
			<MotherTrackID>1</MotherTrackID>
			<DaugtherTrackID>6</DaugtherTrackID>
			<DaugtherTrackID>12</DaugtherTrackID>
		</Track>
	</ListOfTracks>
	<ListOfMeshes>
		<Mesh>
			<MeshID>1234</MeshID>
			<TrackID>2</TrackID>
			<TCoord>25</TCoord>
			<Centroid>
				<X>114.4960</X>
				<Y>202.7230</Y>
				<Z>66.7290</Z>
			</Centroid>
			<Geometry>
				<LabelMap>
					<File>
						<Path>/path/to/label/map/at/time/point/25.mha</Path>
						<label>56</label>
					</File>
					<Embedded>
						<LineList>
							<Line>
								<BeginIndex>
									<X></X>
									<Y></Y>
									<Z></Z>
								</BeginIndex>
								<Length></Length>
							</Line>
						</LineList>
					</Embedded>
				</LabelMap>
				<Vector>
					<Path>/path/to/mesh/file.vtk</Path>
					<Encoded>
						<Type>vtk</Type>
						<Dump></Dump>
					<Encoded>
				</Vector>
			</Geometry>
			<Attributes>
				<Volume unit="micro">123</Volume>
			</Attributes>
		</Mesh>
	</ListOfMeshes>
</FileFormatGFX>