X-ray fluorescence (XRF) imaging typically involves the creation and analysis of 3D data sets, where at each scan position a full energy dispersive x-ray spectrum is recorded. This allows one to later process the data in a variety of different approaches, e.g., by spectral region of interest (ROI) summation with or without background subtraction, principal component analysis, or fitting. XRF-Maps is a C++ open source software package that implements these functions to provide a tool set for the analysis of XRF data sets. It is based on the MAPS software http://www.aps.anl.gov/Xray_Science_Division/Xray_Microscopy_and_Imaging/Software_and_Tools/maps.html
Visual Studio 2015 or greater (Windows build) GCC 6.0 or greater (Linux build) Cmake 3.5 or greater
HDF5 : https://www.hdfgroup.org/downloads/ NetCDF : http://www.unidata.ucar.edu/downloads/netcdf/index.jsp (Download http://www.unidata.ucar.edu/software/netcdf/docs/winbin.html) Eigen : http://eigen.tuxfamily.org/index.php?title=Main_Page (submodule in src/support)
QT : https://www.qt.io/download ZeroMQ : http://zeromq.org/area:download
- git clone --recurse-submodules https://github.com/AdvancedPhotonSource/XRF-Maps.git
- cd XRF-Maps
- mkdir build ; cd build
- cmake ../
- make
-DBUILD_WITH_QT=ON
-DBUILD_WITH_ZMQ=ON -DZeroMQ_INCLUDE_DIR={path to include} -DZeroMQ_LIBRARY_RELEASE={path to zmq.so/zmq.dll}
Python bindings (NOTE: this may interfere with QT options if QT lib version is different than python qt lib version as with anaconda python)
-DBUILD_WITH_PYBIND11=ON -DPYTHON_EXECUTABLE={path to python.exe if not found}
-DBUILD_FOR_PHI=ON
-DDOUBLE_PREC=ON
-DHDF5_ROOT={path to hdf5 root dir}
-DNETCDF_INCLUDE_DIRS={path} -DNETCDF_LIBRARIES={path including .so/.dll}
Libraries and executable stored in bin directory