This is a test repository exploring MDA file format integration into the silx toolkit. This is NOT an official silx release and should be used for testing purposes only.
Original silx project: https://github.com/silx-kit/silx
The purpose of the original silx project is to provide a collection of Python packages to support the development of data assessment, reduction and analysis applications at synchrotron radiation facilities. silx aims to provide reading/writing tools for different file formats, data reduction routines and a set of Qt widgets to browse and visualise data.
The current version features:
EXPERIMENTAL: MDA file format support (this test repository only)
OpenCL-based data processing: image alignment (SIFT), image processing (median filter, histogram), filtered backprojection for tomography, convolution
Data reduction: histogramming, fitting, median filter
A set of Qt widgets, including:
- 1D and 2D visualization widgets with a set of associated tools using multiple backends (matplotlib or OpenGL)
- OpenGL-based widgets to visualize data in 3D (scalar field with isosurface and cut plane, scatter plot)
- a unified browser for HDF5, SPEC and image file formats supporting inspection and visualization of n-dimensional datasets.
a set of applications:
For the official silx release (recommended for production use):
pip install silx[full]
For this test version with MDA support (experimental only):
conda env create -f environment.yml
conda activate silx-mda
pip install -e .
This will install silx in editable mode with the experimental MDA file support.
This test repository includes experimental support for MDA (Multi-Dimensional Array) file format:
conda activate silx-mda
silx view scan.mda
The MDA integration provides:
- HDF5-like interface for MDA files
- Integration with silx viewer for visualization
- Access to positioner and detector data
Note: This is experimental code and may not be stable or complete.
Unofficial packages for different distributions are available:
- Unofficial Debian10 and Ubuntu20.04 packages are available at http://www.silx.org/pub/linux-repo/
- CentOS 7 rpm packages are provided by Max IV at: http://pubrepo.maxiv.lu.se/rpm/el7/x86_64/
- Fedora 23 rpm packages are provided by Max IV at http://pubrepo.maxiv.lu.se/rpm/fc23/x86_64/
- Arch Linux (AUR) packages are also available: https://aur.archlinux.org/packages/python-silx
Detailed installation instructions are available in the documentation.
The documentation of latest release and the documentation of the nightly build are available at http://www.silx.org/doc/silx/
silx features a comprehensive test-suite used in continuous integration for all major operating systems:
Please refer to the documentation on testing for details.
Some examples of sample code using silx are provided with the silx documentation.
This test repository is based on the original silx project, which is licensed under the MIT license. See the LICENSE and copyright files for details.
The MDA integration code in this repository is also provided under the MIT license.