The NADIA Project
Instruction on how to install and begin using the software package are provided on the main website. The doxygen documentation provided here is aimed at more advanced users who are comfortable with c++ and this style of reference documentation.
All examples and there associated data files are provided in the examples directory. A brief description of each is listed below.
PlanarCDI_example.c This example reconstructs some planar diffraction data (Lachie's data). The shrinkwrap algorithm is used to improve the reconstruction. A combination of HIO and the error-reduction algorithm are used.
PlanarCDI_simulation_example.c The object from the PlanarCDI_example (in fact I used the reconstructed image as the object) is used to simulate a diffraction pattern for planar CDI. The diffraction pattern is thresholded to make it more realistic and then CDI reconstruction is performed.
FresnelCDI_WF_example.c - This example demonstrates how the phase of a white field can be recovered and saved for use in Fresnel CDI reconstruction. The data set comes from Corey.
FresnelCDI_example.c - This file provides an example of running the Fresnel CDI reconstruction on real data (from Corey's data). The white-field result from the FresnelCDI_wf_example.c is required as input. The error-reduction algorithm is used. The phase and magnitude of the transmission function are output to file.
PartialCDI_example.c This example reconstructs some Partial diffraction data (Diffractive imaging using partially coherent X rays Whitehead, L W, Physical review letters, 2009, v 103, 24, 243902). The shrinkwrap algorithm is used to improve the reconstruction. A combination of HIO and the error-reduction algorithm are used.
PartialCDI_simulation_example.c The object from the PartialCDI_example (in fact I used the reconstructed image as the object) is used to simulate a diffraction pattern for partial CDI. The diffraction pattern is thresholded to make it more realistic and then CDI reconstruction is performed.
PolyCDI_example.c This example reconstructs some poly diffraction data (Bo's data). The shrinkwrap algorithm is used to improve the reconstruction. A combination of HIO and the error-reduction algorithm are used.
PlanarCDI_example.sh - Some of the same reconstuctions as above will be performed using the CDI_reconstruction.exe command line program. A simple bash script and configuration file (planar_example.config) shows how this tool can be used. Other parts of the bash script can be uncommented to run Fresnel reconstruction or to run multiple times with a different starting seed.
CDI_reconstruction.exe A tool for performing Planar, Fresnel or Partial Coherent (spatial and temporal) ESW reconstruction. This tool is provided as a demonstrative tool and to obtain results quickly.
where reco_type may be:
- Usage: CDI_reconstruction.exe <config filename> <reco_type> <seed>
- "planar" - planar
- "fresnel_wf" - fresnel white-field reconstruction (3-plane propagation)
- "fresnel" - fresnel object reconstruction. with the white-field previously reconstructed.
- "partial" - partial spatial reconstruction.
- "poly" - polychromatic or partially temporally coherent reconstruction.
The seed should be an integer. If the seed is excluded from the command line arguments, it is assumed to be "0". If reco_type is also excluded, it is assumed to be "planar".
Perform planar CDI reconstruction using the configuration given in the file, "planar_example.config". The random number generator (used to initial the first guess) is given a seed value of 3.
CDI_reconstruction.exe planar_example.config "planar" 3
dbin2ppm.exe - Convert a binary file (2D double / 64 bit, format) to a ppm (grey-scale, 16 bit file). Note that this conversion loses information.
- Usage: dbin2ppm.exe <input dbin file> <output ppm file>
- <pixels in x> <pixels in y>
dbin2ppm.exe my_reconstruction.dbin my_reconstruction.ppm 1024 1024
hdf2ppm.exe - Extract the data from a HDF4 file and save as a ppm (grey-scale, 16 bit file).
Usage: hdf2ppm.exe <input hdf file> <output ppm file> <optional: data block name>
hdf2ppm.exe my_data.hdf my_data.ppm
tiff2ppm.exe - Convert a tiff image file into a ppm file (grey-scale, 16 bit file). Note that this conversion may lose information.
- Usage: tiff2ppm.exe <input tiff file> <output ppm file>
tiff2ppm.exe my_reconstruction.tif my_reconstruction.ppm
cplx2ppm.exe - Extract part of a complex binary file (2D fftw format) and save as a ppm file (grey scale P2 which is 16 bit per pixel). The real, imaginary, magnitude, phase and magnitude squared can be extracted.
- Usage: cplx2ppm.exe <input cplx file> <output ppm file> <component type> <size in x> <size in y>
- where component type is one of:
- 0: REAL
- 1: IMAG
- 2: MAG
- 3: PHASE
- 4: MAG_SQ
Extract the magnitude squared from a reconstucted white-field file.
cplx2ppm.exe my_white_field.cplx my_white_field_illum.pgm 4 1024 1024
Generated on Thu Aug 1 16:32:28 2013 for NADIA by