Specification Changes

The following listing contains the changes to the file format in its prior versions.

Version 1.2

  • Detector: new distinction between its "window" and additional "filters". All "filters" defined in previous versions of the file format should rather be re-interpreted as windows now (sec. Scintillator, window & filters).

Version 1.1

  • Material "composition" is now an array that can contain the components of a compound material, each with their specific "mass_fraction" (sec. Materials).

  • Bad pixel maps are now defined in their new "file" parameter (which can come with its own drift). The "value" property has therefore been removed (sec. Bad pixel map).

Version 1.0

  • Introduced a more general concept to specify geometric deviations (sec. Deviations). Instead of a strict order of rotations around the axes of the local coordinate system, an arbitrary order of translations and rotations around arbitrary axes and pivot points can be specified in a "deviations" array.

  • Re-introduced American spelling to keep consistency with most other software and IT standards, also in regard to the world of Python packages. Therefore: "centre""center", "grey""gray".

  • Added "endian" and "headersize" for RAW data files (sec. Two-dimensional data and Three-dimensional data). Also: more options for the data "type".

  • The detector’s quantum efficiency can no longer be expressed by a single number because it would be meaningless (the gray value characteristics already takes it into account, and it would currently have no effect on other parameters). For an energy-resolved quantum efficiency, an external characteristics file is still supported (sec. Quantum efficiency).

  • The parameter "mtf10_frequency" for the detector unsharpness has been removed. Instead, a full MTF should be defined in an external file. For single-value unsharpness definitions, the "basic_spatial_resolution" should be used (sec. Unsharpness).

  • Bad pixel maps: properly working pixels are now encoded with the value -1 instead of 0; the latter would now mean a defect, completely black pixel (sec. Bad pixel map).

  • Detector "gain" is now purely reserved for the documentation of a real CT scan parameter, but has no meaning for a simulation. All detector parameters in the JSON file are assumed to refer to the gain setting specified in the "gain" parameter (sec. Gain). The gain property "scale_signal_and_noise" has been removed because it was not well-defined.

  • X-ray source: the parameters "bremsstrahlung" and "characteristic" have been removed (sec. Spectrum).

Version 0.9

  • Introduced a new concept for drifts (sec. Drifts).

  • Uncertainties are now described in single "uncertainty" blocks that contain a "value" and "unit" element, instead of defining two separate elements for "uncertainty" and "uncertainty_unit" (sec. Uncertainty).

  • Removed noise FWHM as an alternative measure to the SNR (sec. Noise) to avoid inconsistencies.

  • Changed detector parameter name "sharpness" to "unsharpness" (sec. Unsharpness).

Version 0.8

  • Added the simulation software-specific parameter section "simulation" (sec. Software-specific properties).

  • Noise parameters (SNR, FWHM, sec. Noise) now specifically refer to one frame, not an averaged projection.

Version 0.7

  • Added further meta data fields to the "file" section (sec. File) and changed the previous parameter designations "type" and "version" to "file_format_type" and "file_format_version" to make room for their meta data equivalents.

  • The parameter "frames_to_average" has been renamed to "frame_average" (sec. Frame averaging).

  • Introduced acquisition parameters for dark field and flat field images (sec. Dark field and flat field acquisition and correction).

  • All uncertainties are assumed to be standard measurement uncertainties.

Version 0.6

  • Added "description" to "file" section (sec. File).

  • Split tube "window" and "filters" into two separate arrays (sec. Tube window and filters), and now demand that any tube spectrum provided through a file is only filtered by the window material, but none of the additional filters that can be placed in front of the tube (sec. Spectrum).

  • Added the detector’s noise FWHM as an equivalent measure next to the SNR (sec. Noise).

  • Sample scaling factors now correctly refer to the sample coordinate system {r, s, t} instead of the stage coordinate system {u, v, w} (sec. General properties).

Version 0.5

  • Added detector "type", options are: "real" and "ideal" (sec. General properties).

  • Spectra provided through CSV files are assumed to be filtered by all tube filters (sec. Spectrum).

Version 0.4

  • Grey value characteristics of the detector is now based on total collected energy E (in J) for each pixel instead of incident energy density (sec. Gray value characteristics).

  • Introduced "environment" section (sec. Environment), with the environment temperature and (atmospheric) composition.

  • Introduced "pixel_binning" to "acquisition" parameters (sec. Pixel binning).

  • The time index for drift trajectory files is now the frame number instead of the angular position to avoid floating point rounding discrepancies between description file and CT simulation (sec. Drifts).

  • Under "acquisition", the parameter "angular_steps" has been replaced by the parameter "number_of_projections" (sec. Number of projections).

  • Added support for RAW files for any 2D or 3D data.

  • 2D and 3D spot intensity profiles are now both handled by the parameter "intensity_map", which has been extended to support RAW files in both cases (sec. Spot intensity profile).

Version 0.3

  • New axis designations \vec{u}, \vec{v}, \vec{w} for local coordinate systems, whereas \vec{x}, \vec{y}, \vec{z} always designate the axes of the world coordinate system (sec. Geometry).

  • Introduced sample coordinate system {r, s, t} (sec. Sample positioning).

  • New geometry parameter "deviations" contains all deviations from the ideal (known) geometry. Deviation parameters can be unknown to the reconstruction. (Sec. Geometry)

  • Introduced British spelling: "center""centre", "gray""grey".

  • Removed FOD and FDD to prevent inconsistencies.

  • Removed detector "width" and "height" to prevent inconsistencies.

  • Removed option for gain characteristics file.

  • Detector: filters and rear panel merged into "front" and "rear" filters (sec. Scintillator, window & filters).

  • "image_lag" moved from "acquisition" to "detector" (sec. General properties).

  • Moved "integration_time" from "acquisition" to "detector", because other detector characteristics (such as image lag and possibly noise) are specific to it (sec. General properties).

  • Source: removed number of photons from "spectrum" to prevent inconsistencies with tube current.

  • Introduced uncertainties to CSV files.

  • Removed option for purely random drifts because it is not reproducible and was so far only limited to Gaussian distributions. Drift trajectories from CSV files remain the most general and reproducible approach.