CIVM Format

A CIVM image is consisted of a header file and bunch of files each representing a slice. AKAIK the header file resembles brucker image file format.

Header format:

The general format is like a property file where

[attribute] = [value]
is the general format.

There are plenty of redundancies in the header. Sometimes one or more attributes can be missing. So it is good to check all the redundant attributes in case one of them is missing.

For the image data type, it should be short, signed or not. But SHIVA does not care.

Old Civm file naming convention:

Header file: [abc].headfile Data files: [abc]roimx.001, [abc]roimx.002, etc

Newer file naming convention uses the same header and header type, just the data file names are changed to consider the possibility of over 1000 slices.

Header file: [abc].header Data files: [abc]roimx.0001.raw, [abc]roimx.0002.raw, etc

Possible property list:

X_DIM_STR_LIST = { "S_xres_img", "imatrix_X", "RH_image_size", "dim_X", "PARTAG_CUBESIZEX", "xray_FOV_width", "RH_xres", "S_xres", "rhuser6" };

Y_DIM_STR_LIST = { "S_yres_img", "imatrix_Y", "RH_image_size", "dim_Y", "PARTAG_CUBESIZEY", "xray_FOV_height", "RH_yres", "S_yres", "rhuser7" };

Z_DIM_STR_LIST = { "S_zres_img", "slquant", "PARTAG_CUBESIZEZ", "xray_no_images", "RH_zres", "S_zres", "rhuser8" };

X_FOV_STR_LIST = { "RH_xfov", "dfov" };

Y_FOV_STR_LIST = { "RH_yfov", "dfov_rect" };

Z_FOV_STR_LIST = { "RH_zfov", "slthick" };