Man Linux: Main Page and Category List

NAME

       rawtominc  -  converts  a  stream of binary image data to a minc format
       file

SYNOPSIS

       rawtominc [options] output.mnc [[sz4] sz3] sz2 sz1

DESCRIPTION

       Rawtominc reads a stream of binary data (byte, short,  long,  float  or
       double)  from  standard  input  (unless  the -input option is used) and
       writes it into the minc format file output.mnc. The user specifies  the
       dimension  sizes  from slowest varying to fastest varying. At least two
       dimensions must be given (an image)  but  there  can  be  up  to  four.
       Options  give  the  user  control  over dimension names, data types and
       voxel to world coordinate conversion. Vector type  data  (such  as  RGB
       pixel data) can be read in as well.

PIXEL VALUE SPECIFICATION

       Pixel  values  are  specified  by  a type and a sign (e.g. signed short
       integer). They are also characterized by a range of legal  values.  For
       example,  many  scanners produce images stored with short integer pixel
       values. Some have values in the range 0 to 4095,  others  0  to  32000,
       others -32768 to 32767. This range is the valid range, specified by the
       -range option (for floating  point  values,  the  valid  range  is  the
       maximum and minimum of the whole dataset). Rawtominc allows the user to
       specify both the input type, sign and range as well as the output type,
       sign and range (read short values, store byte values, for example).

       There  is  a further twist. Integer pixel values are generally taken to
       be simply scaled pixel representations of  real  (meaningful)  physical
       values.  Floating  point  values are taken to be the real value itself.
       Thus floating point values are scanned for  the  maximum  and  minimum,
       since  they  could  be  anything (they are stored in the MINC variables
       image-max and image-min). Integer values, however, are not  scanned  by
       default, since their range can be given by an option. To force scanning
       of integer values when the maximum and  minimum  are  not  known  (some
       scanners   produce   files   with  variable  ranges),  use  the  option
       -scan_range.

WORLD COORDINATES

       World coordinates refer to millimetric  coordinates  relative  to  some
       physical  origin  (either  the  scanner  or some anatomical structure).
       Voxel coordinates are simply the indices into the  image  volume  of  a
       given  voxel.   It  is  worth  describing  briefly  how MINC coordinate
       conversions work since this will affect how  successful  the  new  MINC
       file will be.

       Each  dimension  of  MINC  image  is  specified  by  name - the spatial
       dimensions are xspace,  yspace  and  zspace.  The  convention  is  that
       positive  xspace  coordinates run from the patient’s left side to right
       side,  positive  yspace  coordinates  run  from  patient  posterior  to
       anterior and positive zspace coordinates run from inferior to superior.
       For each of these spatial dimensions, the world  coordinate  conversion
       is specified by a pair of attributes: step and start.  The xspace world
       coordinate, for example, is calculated using x = v*step + start,  where
       x  is  the  x  world  coordinate  and v is the voxel count (starting at
       zero).  Thus the magnitude of the step attribute specifies the distance
       between  voxels  and  the  sign  of  the  step  attribute specifies the
       orientation of the axis. Programs will use this information to  display
       images with the correct aspect ratio and orientation, so make sure that
       you get it right. Many scanners store transverse images with the  first
       pixel at the patient’s anterior/right side, so it would be necessary to
       give negative  x  and  y  step  values.   Other  conventions  have  the
       opposite:  first  pixel at patient’s posterior/left, so step values are
       positive. Sometimes the first slice is inferior, so the z  step  should
       be positive. Other times it is superior, so z step is negative.

       The  image  axes  do  not  have to be aligned with the world coordinate
       axes. The axis directions are recorded in the file as direction cosines
       -  unit vectors - one for each spatial axis. In this case, the step and
       start attributes described in the previous paragraph refer to distances
       along  the axis, not to coordinates of the first voxel. This makes them
       invariant under a change of axis direction (the whole coordinate system
       can  in fact be rotated just by changing the direction cosines). If the
       coordinate of the first voxel  is  known,  then  it  can  be  converted
       (projected) to a set of start values by using the -origin option.

OPTIONS

Dimension ordering

       -transverse
              Transverse images   : [[time] z] y x (Default)

       -sagittal
              Sagittal images     : [[time] x] z y

       -coronal
              Coronal images      : [[time] y] z x

       -time  Time ordered images : [[z] time] y x

       -xyz   Dimension order     : [[time] x] y z

       -xzy   Dimension order     : [[time] x] z y

       -yxz   Dimension order     : [[time] y] x z

       -yzx   Dimension order     : [[time] y] z x

       -zxy   Dimension order     : [[time] z] x y

       -zyx   Dimension order     : [[time] z] y x

       -dimorder dim1,dim2[,dim3[,dim4]]
              Specify  an  arbitrary  dimension  order,  given  by  an  comma-
              separated list of between 2 and 4 dimension names.

       -vector size
              Gives the size of a vector dimension (always the fastest varying
              dimension). Default is no vector dimension.

Input data type and range

       -byte  8-bit integer values (default).

       -short 16-bit integer values.

       -int   32-bit integer values.

       -long  Superseded by -int.

       -float Single-precision floating point values.

       -double
              Double-precision floating point values.

       -signed
              Values are signed integers (default for short and long). Ignored
              for floating point types.

       -unsigned
              Values are unsigned integers (default  for  byte).  Ignored  for
              floating point types.

       -range min max
              specifies  the  valid range of pixel values. Default is the full
              range for the type and sign. This option is ignored for floating
              point values.

       -real_range min max
              specifies the real range of image values that corresponds to the
              pixel values of option -range. Default is to not store the  real
              image  minimum  and  maximum.  If  -scan_range is used, then the
              image minimum and maximum corresponding  to  the  scanned  pixel
              minimum  and  maximum  are calculated and stored. This option is
              ignored for floating point values.

       -swap_bytes
              Input values (either  -short  or  -int)  need  to  be  converted
              between  Motorola  (big-endian)  and  Intel (little-endian) data
              format.  If "short"  input  is  specified,  adjacent  bytes  are
              swapped.   If  "int"  input  is  specified, inner and outer byte
              pairs are swapped.  This option has no effect with  other  input
              types.

Output data type and range

       -obyte Store 8-bit integer values (default is input type).

       -oshort
              Store 16-bit integer values (default is input type).

       -oint  Store 32-bit integer values (default is input type).

       -olong Superseded by -oint.

       -ofloat
              Single-precision  floating point values (default is input type).

       -odouble
              Double-precision floating point values (default is input  type).

       -osigned
              Values are signed integers (default for short and long). Ignored
              for floating point types. If output type is not specified,  then
              default is input sign type.

       -ounsigned
              Values  are  unsigned  integers  (default for byte). Ignored for
              floating point types. If output  type  is  not  specified,  then
              default is input sign type.

       -orange min max
              specifies  the  valid range of pixel values. Default is the full
              range for the type and sign. This option is ignored for floating
              point  values.  If  output type and sign are not specified, then
              the default is the input range.

Scanning integers for range

       -noscan_range
              Do not scan integer values  for  their  minimum  and  maximum  -
              assume  that  the  -range  option gives the appropriate range of
              pixel values (default).  No rescaling of pixel  values  is  done
              (unless  the  output  type  differs from the input type) and the
              created images are assumed to have  a  real  (not  pixel  value)
              minimum and maximum of zero and one.

       -scan_range
              Integer  values are scanned for their minimum and maximum. Pixel
              values are rescaled to give the full range of pixel  values  and
              the  real  minimum  and maximum are set to the pixel minimum and
              maximum (unless -real_range is used). This should be  equivalent
              to  converting the input to a floating point type and reading it
              in with -float -oshort (for example) assuming  that  -real_range
              is not used.

Writing output file

       -2     Create MINC 2.0 format output files.

       -clobber
              Overwrite existing minc file (default).

       -noclobber
              Don’t overwrite existing minc file.

Reading from input file

       -input inputfile
              Read input data from inputfile instead of standard input.

       -skip length
              Skip the first length bytes of the input.

World coordinate conversion

       -xstep xstep
              Step size for x dimension (default = none).

       -ystep ystep
              Step size for y dimension (default = none).

       -zstep zstep
              Step size for z dimension (default = none).

       -xstart xstart
              Starting  coordinate for x dimension (default = none). This is a
              distance parallel to the axis.

       -ystart ystart
              Starting coordinate for y dimension (default = none). This is  a
              distance parallel to the axis.

       -zstart zstart
              Starting  coordinate for z dimension (default = none). This is a
              distance parallel to the axis.

       -xdircos x1 x2 x3
              Direction cosines for x dimension (default = none).

       -ydircos y1 y2 y3
              Direction cosines for y dimension (default = none).

       -zdircos z1 z2 z3
              Direction cosines for z dimension (default = none).

       -origin o1 o2 o3
              Specify the spatial coordinates  of  the  first  voxel.  If  the
              direction  cosines  are  not given or are the default ones, this
              option will give the same results as using the  -start  options.
              Otherwise,  the  coordinate is projected parallel to the axes to
              determine the appropriate start values.

Frame time and length specification

       -frame_times t1,t2,t3,...
              Specify the start of each time frame. The number of values given
              must  be  equal to the length of the time dimension specified on
              the command line. All  of  the  values  given  must  be  in  one
              argument (no spaces between them, or the string must be quoted).
              Separation by spaces instead of commas is permitted.

       -frame_widths w1,w2,w3,...
              Specify  the  length  of  each  time  frame.  The  comments  for
              -frame_times apply here as well.

       To  set the start and step values for a functional file with a constant
       frame times, use the -dattribute flag described below as follows:

           -dattribute time:step=1 -dattribute time:start=0

Imaging modality

       -nomodality
              Do not store modality type in file (default).

       -pet   PET data.

       -mri   MRI data.

       -spect SPECT data.

       -gamma Data from a gamma camera.

       -mrs   MR spectroscopy data.

       -mra   MR angiography data.

       -ct    CT data.

       -dsa   DSA data

       -dr    Digital radiography data.

Attribute specification

       -sattribute variable:attribute=value
              Specify that variable should be created  with  string  attribute
              set  to  value.  The complete specification, including variable,
              attribute and value, should be contained in only one argument to
              the  program  -  quoting  may  be  needed for strings containing
              blanks.

       -dattribute variable:attribute=value :
              Like -sattribute, but for specifying double-precision  attribute
              values.

       -attribute variable:attribute=value
              Like  -sattribute or -dattribute, except that the type is chosen
              by first trying to interpret the value as double precision -  if
              that fails, then the value is assumed to be a string.

Generic options

       -help  Print summary of command-line options and exit.

       -version
              Print the program’s version number and exit.

AUTHOR

       Peter Neelin

COPYRIGHTS

       Copyright © 1993 by Peter Neelin

                         $Date: 2005-02-09 19:27:18 $