man m-anlz (Fichiers spéciaux) - Analyze (SPM) medical image format (MedCon)

NAME

m-anlz - Analyze (SPM) medical image format (MedCon)

DESCRIPTION

This is a very simple format. The basic headers are written in one file with extension `.hdr', the image data in another file with extension `.img'.

The basic defines for the format:

---------------------------------------------------------------------------

typedef struct Header_Key_t{ Int32 sizeof_hdr; /* 348 or 148 */ char data_type[10]; /* "dsr" */ char db_name[18]; /* filename without extension */ Int32 extents; /* 16384 */ Int16 session_error; char regular; /* 'r' */ char hkey_un0; } MDC_ANLZ_HEADER_KEY;

#define MDC_ANLZ_HK_SIZE 40

typedef struct Image_Dimensions_t{ Int16 dim[8]; /* [0] = # of dimensions */ /* [1] = X-dim */ /* [2] = Y-dim */ /* [3] = Z-dim */ /* [4] = t-dim */ /* ... */ Int16 unused[7]; Int16 datatype; /* pixel type */ /* 0 = Unknown 1 = one-bit */ /* 2 = Uint8 4 = Int16 */ /* 8 = Int32 16 = float */ /* 32 = complex 64 = double */ /*128 = RGB 255 = all */

Int16 bitpix; /* bits per pixel */ Int16 dim_un0; float pixdim[8]; /* [0] = # of dimensions */ /* [1] = X-dim (mm) */ /* [2] = Y-dim (mm) */ /* [3] = Z-dim (mm) */ /* [4] = t-dim (ms) */ /* ... */ float funused[6]; float compressed; float verified; Int32 glmax,glmin; } MDC_ANLZ_IMAGE_DIMS;

#define MDC_ANLZ_IMD_SIZE 108

typedef struct Data_History_t{ char descrip[80]; char aux_file[24]; char orient; /* patient orientation */ /* 0 = transverse unflipped */ /* 1 = coronal unflipped */ /* 2 = sagittal unflipped */ /* 3 = transverse flipped */ /* 4 = coronal flipped */ /* 5 = sagittal flipped */

char originator[10]; char generated[10]; char scannum[10]; char patient_id[10]; char exp_date[10]; char exp_time[10]; char hist_un0[3]; Int32 views; Int32 vols_added; Int32 start_field; Int32 field_skip; Int32 omax, omin; Int32 smax, smin; } MDC_ANLZ_DATA_HIST;

#define MDC_ANLZ_DH_SIZE 200

---------------------------------------------------------------------------

The structures are defined in the order as they should be found in the file. The Data_History header is not obliged. The SPM Analyze format, intended for the SPM software, differs a little from the normal Analyze format.

What does the format support or not support:

===========================================================================
Item            Supported                             Not Supported
===========================================================================
Color Map     : grayscale                                   -
File Endian   : little & big                                - 
Pixeltypes    : 1-bit, Uint8, Int16, Int32           Int8,Uint16,Uint32
                float, double, (complex)               Int64,Uint64
===========================================================================
Scaling factors  : quantify & calibrate factors/image  are NOT supported
---------------------------------------------------------------------------
Dimensions/Image : different dimensions for each image are NOT supported
---------------------------------------------------------------------------
Pixeltypes/Image : different pixeltypes for each image are NOT supported
---------------------------------------------------------------------------
SPM remarks      : 1) imd.funused[0] = the offset 
                   2) imd.funused[1] = one global scaling factor
                   3) (Int16)dh.originator[0...1] \
                      (Int16)dh.originator[2...3]  } =  origin (X, Y, Z)
                      (Int16)dh.originator[4...5] / 
===========================================================================

NOTES

A note about the image (patient) orientation in SPM:

X-axis
increases from leftside (hand) to rightside (hand).
Y-axis
increases from posterior (back) to anterior (front).
Z-axis
increases from inferior (feet) to superior (head).

Because our Ecat 6.4 951 PET scans require an inversion of all axes, you will need to specify the option -ar when converting with MedCon.

FILES

/usr/local/xmedcon/source/m-anlz.h      The header file.
/usr/local/xmedcon/source/m-anlz.c      The source file.

SEE ALSO

AUTHOR

(X)MedCon project was written by Erik Nolf (eNlf) for the PET-Centre at Ghent University (Belgium).

tab(=); lB l lB l. e-mail:=enlf-at-users.sourceforge.net=www:=http://xmedcon.sourceforge.net