IsoGray file formats
IsoGray exports patient file information as a bunch of single files,
for CT numbers and VOI information separately.
IsoGray CT files
Filenames are
<examination_number>m<nn>.hdr
<examination_number>p<nn>.hdr
<examination_number>m<nn>.sca
<examination_number>p<nn>.sca
where <examination_number>
is a unique patient plan identifier,
<nn>
are running slice numbers, p
and m
stand for positive and negative slice numbers, respectively.
Header files (.hdr
) contain the following relevant entries
(among others):
PatientID = <id>
ExamNumber = <examination_number>
ImageNbDimensions = <number_dimensions>
ImageDimensions = <nx> <ny>
# Image Position (Patient) (mm) (0020, 0032)
ImagePosition = <posx> <posy> <posz>
# Image Spacing (mm) ((0028, 0030) (0018, 0050))
ImageSpacing = <dx> <dy> <dz>
# Slice Location (mm) (0020, 1041)
SliceLocation = <posz>
# Image Value Type (0=Hounsfield Numbers, 1=Gray Levels, 2=LUT)
ImageValueType = <ivt>
# Image Value Depth (bytes) (0028,0100)
ImageValueDepth = <ivd>
Lines with #
are comment lines.
An example is
here.
The corresponding data files (.sca
) comprise a
512-byte header record (ignored for the moment) followed by the CT data
organized as specified in the .hdr
file.
Array order is [y][x], i.e. x is running fastest.
Byte order is little endian.
IsoGray contour files
Contour information is kept in a variety of different files,
the most important ones are "structure" files, extension
.str
,
and contour files with extension
.ctr
.
Each structure file represents sort of a header for a particular VOI,
it contains (among others) the following important entries:
#Object User Name
ObjectName = "<voi-name>"
#---Component
...
#
ComponentNbArgs = 1
ComponentUID = "<UID1>"
#---Component
...
#
ComponentNbArgs = 1
ComponentUID = "<UIDn>"
An example is
here.
The ComponentUID
s are unique identifier strings which point
to corresponding .ctr
-files containing the same string as
ObjectUID
entry. .ctr
-files hold the actual data for contours and comprise the following
entries (some omitted):
#Object Unique Identifier
ObjectUID = "<OUID>"
# Coordinate Set Plane (TRANSVERSE, FRONTAL, SAGITTAL, ANY)
CoordSetPlane = TRANSVERSE
# Coordinate Set Points (mm)
CoordSetPoints :
<n>
<x1> <z1> <-y1>
...
<xn> <zn> <-yn>
An example is
here.
Last updated:
$Id: trip98fmtisogray.html,v 1.4 2011/03/08 19:02:49 kraemer Exp $
M.Kraemer@gsi.de