XRFast a new software package for processing of MA-XRF datasets using machine learning

Marc Vermeulen, Alicia McGeachy, Bingjie Xu, Henry Chopp, Aggelos Katsaggelos, Rebecca Meyers, Matthias Alfeld, Marc Walton*

*Corresponding author for this work

Research output: Contribution to journalArticleScientificpeer-review

7 Citations (Scopus)
3 Downloads (Pure)


X-ray fluorescence (XRF) spectroscopy is a common technique in the field of heritage science. However, data processing and data interpretation remain a challenge as they are time consuming and often require a priori knowledge of the composition of the materials present in the analyzed objects. For this reason, we developed an open-source, unsupervised dictionary learning algorithm reducing the complexity of large datasets containing 10s of thousands of spectra and identifying patterns. The algorithm runs in Julia, a programming language that allows for faster data processing compared to Python and R. This approach quickly reduces the number of variables and creates correlated elemental maps, characteristic for pigments containing various elements or for pigment mixtures. This alternative approach creates an overcomplete dictionary which is learned from the input data itself, therefore reducing the a priori user knowledge. The feasibility of this method was first confirmed by applying it to a mock-up board containing various known pigment mixtures. The algorithm was then applied to a macro XRF (MA-XRF) data set obtained on an 18th century Mexican painting, and positively identified smalt (pigment characterized by the co-occurrence of cobalt, arsenic, bismuth, nickel, and potassium), mixtures of vermilion and lead white, and two complex conservation materials/interventions. Moreover, the algorithm identified correlated elements that were not identified using the traditional elemental maps approach without image processing. This approach proved very useful as it yielded the same conclusions as the traditional elemental maps approach followed by elemental maps comparison but with a much faster data processing time. Furthermore, no image processing or user manipulation was required to understand elemental correlation. This open-source, open-access, and thus freely available code running in a platform allowing faster processing and larger data sets represents a useful resource to understand better the pigments and mixtures used in historical paintings and their possible various conservation campaigns.

Original languageEnglish
Pages (from-to)2130-2143
JournalJournal of Analytical Atomic Spectrometry
Issue number10
Publication statusPublished - 2022

Bibliographical note

Green Open Access added to TU Delft Institutional Repository 'You share, we take care!' - Taverne project https://www.openaccess.nl/en/you-share-we-take-care
Otherwise as indicated in the copyright section: the publisher is the copyright holder of this work and the author uses the Dutch legislation to make this work public.

Cite this