XASDenoise is a Python package for denoising and preprocessing X-ray Absorption Spectroscopy (XAS) data.
It implements a data preprocessing method called stationarity warping, which aims at mitigating signal non-stationarity.
The package also includes advanced denoising techniques based on Gaussian Processes and convolutional autoencoders. The package comes with ready-to-run Jupyter notebook examples and example XAS datasets.
- Gaussian Process-based denoising for probabilistic signal recovery
- Convolutional autoencoder training and denoising pipeline utilizing autoencoder architecture
- Stationarity warping to mitigate signal non-stationarity and improve performance of any denoising method
- Preprocessing utilities for XAS data
- Example datasets and Jupyter notebooks included
pip install git+https://github.com/tomasaidukas/XASDenoise.git
or
git clone https://github.com/tomasaidukas/XASDenoise.git
cd XASDenoise
pip install -e .
The repository includes:
-
examples/— Jupyter notebooks:example0_spectrum_object_and_preprocessing.ipynb— creating and processing spectrum objectsexample1_regular_denoiser.ipynb— basic denoisingexample2_gaussian_process_denoiser.ipynb— Gaussian Process denoisingexample3_autoencoder_denoiser.ipynb— autoencoder denoisingexample4_time_resolved_data_denoising.ipynb— time-resolved spectra denoising
-
examples/data/— example XAS datasets
- Python >= 3.11
- See
requirements.txtfor core dependencies
This project is licensed under the MIT License — see the LICENSE file for details.